xecon2015 :: [1-2] 이현석 - learning laravel

66

Upload: xpressengine

Post on 16-Apr-2017

379 views

Category:

Software


3 download

TRANSCRIPT

Page 1: XECon2015 :: [1-2] 이현석 - Learning Laravel
Page 2: XECon2015 :: [1-2] 이현석 - Learning Laravel
Page 3: XECon2015 :: [1-2] 이현석 - Learning Laravel

야매 주의!전적으로 발표자의 경험에 의거한 매우 주관적이고 편협

한 내용으로 이뤄져 있으므로 주의가 필요합니다.

Page 4: XECon2015 :: [1-2] 이현석 - Learning Laravel

결론

• 짧은 시간에 마스터 할 수 없습니다.

• 거의 배우지 않고도 라라벨을 라라벨은 사용할 수 있습니다. 방대한 학습량에 쫄지 마세요.

• 커뮤니티에 참여하세요(특히 오프라인).

Page 5: XECon2015 :: [1-2] 이현석 - Learning Laravel

http://www.sitepoint.com/best-php-frameworks-2014/

Page 6: XECon2015 :: [1-2] 이현석 - Learning Laravel

http://www.sitepoint.com/best-php-framework-2015-sitepoint-survey-results/

Page 7: XECon2015 :: [1-2] 이현석 - Learning Laravel

어려워요

Page 8: XECon2015 :: [1-2] 이현석 - Learning Laravel

왜 어려울까요?

Page 9: XECon2015 :: [1-2] 이현석 - Learning Laravel
Page 10: XECon2015 :: [1-2] 이현석 - Learning Laravel
Page 11: XECon2015 :: [1-2] 이현석 - Learning Laravel

모르는 용어와 개념 난무

Page 12: XECon2015 :: [1-2] 이현석 - Learning Laravel

"입문자의 가장 큰 고충은 무엇을 모르는지 모르는 상태"일 것이다.

- 이고잉

Page 13: XECon2015 :: [1-2] 이현석 - Learning Laravel

composer vagrant gulp

Homestead Artisan

Middleware Contracts

laravel elixir Eloquent ORM

Closure CSRF

RESTful Namespaces

OOP ORM

Autoloading Traits

Routing Controller Model View

Service Provider Service Container

Facade

Page 14: XECon2015 :: [1-2] 이현석 - Learning Laravel

composer vagrant gulp

Homestead Artisan

Middleware Contracts

laravel elixir Eloquent ORM

Closure CSRF

RESTful Namespaces

OOP ORM

Autoloading Traits

Routing Controller Model View

Service Provider Service Container

Facade

생산성 증대 프로그램

디자인 패턴개념/기법

라라벨

Page 15: XECon2015 :: [1-2] 이현석 - Learning Laravel

Laravel 에 특화된 지식 +

일반적으로 개발을 잘하기 위해 필요한 지식들

Page 16: XECon2015 :: [1-2] 이현석 - Learning Laravel

단기간에 개발 고수가 되긴 힘듭니다. 단기간에 Laravel 마스터 하는 것도

힘듭니다.

Page 17: XECon2015 :: [1-2] 이현석 - Learning Laravel

발표자는 어떻게 공부했는가• 컴포저 스터디 2013년 11월

• 디자인 패턴 스터디 2013년 12월

• Modern PUG 에서 Laravel 스터디 2014년

• 클린코드 스터디 2014년 10월 ~ 12월

• 컴포저 스터디 2차 2015년 1월~2월

• Modern PHP 스터디 2015년 3월~4월

• Laravel Testing 스터디 2014년 10월~

• Laracasts - Laravel 5 Fundamental

• allblog.modernpug.org

• XE 오픈세미나 - Testing

Page 18: XECon2015 :: [1-2] 이현석 - Learning Laravel

공부에 왕도는 없다 피할 수 없으면 즐겨라

Page 19: XECon2015 :: [1-2] 이현석 - Learning Laravel

피할 수 없으면 즐겨라 ==

피할 수 있으면 피해라

Page 20: XECon2015 :: [1-2] 이현석 - Learning Laravel

그래서 어떻게 하라고?

Page 21: XECon2015 :: [1-2] 이현석 - Learning Laravel
Page 22: XECon2015 :: [1-2] 이현석 - Learning Laravel

일단 입문만 하세요잘 하는건 그 다음에

Page 23: XECon2015 :: [1-2] 이현석 - Learning Laravel
Page 24: XECon2015 :: [1-2] 이현석 - Learning Laravel

Laravel 인듯 Laravel 아닌 Laravel 같은 Todo List 만들기로 시작하는 Stay Hungry, Stay Foolish

Agile 학습전략!

현재 아는 것만 가지고 Laravel은 최소한만 학습해서 학습용 Todo List를 만들어 봅시다

내가 언젠간 라라벨 능통자가 되겠다는 갈망을 가진채

Page 25: XECon2015 :: [1-2] 이현석 - Learning Laravel

http://www.agilenutshell.com

Page 26: XECon2015 :: [1-2] 이현석 - Learning Laravel

최소한?

Page 27: XECon2015 :: [1-2] 이현석 - Learning Laravel
Page 28: XECon2015 :: [1-2] 이현석 - Learning Laravel
Page 29: XECon2015 :: [1-2] 이현석 - Learning Laravel
Page 30: XECon2015 :: [1-2] 이현석 - Learning Laravel

마음이 편안해지지요?

Page 31: XECon2015 :: [1-2] 이현석 - Learning Laravel
Page 32: XECon2015 :: [1-2] 이현석 - Learning Laravel
Page 33: XECon2015 :: [1-2] 이현석 - Learning Laravel

12

Page 34: XECon2015 :: [1-2] 이현석 - Learning Laravel

진짜 이것만 알면 Laravel로 Todo List를 만들 수 있을까?

Page 35: XECon2015 :: [1-2] 이현석 - Learning Laravel

Laravel 한국어 매뉴얼 http://xpressengine.github.io/laravel-korean-docs/

Page 36: XECon2015 :: [1-2] 이현석 - Learning Laravel

Homestead http://dev.meye.net/entry/Homestead-사용하기

http://dev.meye.net/entry/Windows에서-Homestead-사용하기

메뉴얼의 홈스테드 내용이 어렵다면 위 문서를 참고해보세요. 유투브에도 많습니다.

Page 37: XECon2015 :: [1-2] 이현석 - Learning Laravel

학습해야할 내용이 엄청 많다는 압박에서 벗어나 일단 입문

에 성공했다. 그 다음은?

Page 38: XECon2015 :: [1-2] 이현석 - Learning Laravel

연습용 Todo List 의 코드를 하나씩 하나씩 Laravel 로 대체해보세요

Page 39: XECon2015 :: [1-2] 이현석 - Learning Laravel

가장 먼저 학습용 Todo List의

데이터베이스 관련 코드를 Eloquent ORM으로

대체 해보세요

Page 40: XECon2015 :: [1-2] 이현석 - Learning Laravel
Page 41: XECon2015 :: [1-2] 이현석 - Learning Laravel

$articles = Articles::paginate(10)->get(); $articles->load(‘boards’,’user’,’comments’); foreach($articles as $article) { $article->board->name $article->id $article->title $article->like $article->hate $article->user->name }

Page 42: XECon2015 :: [1-2] 이현석 - Learning Laravel

사실 좋은 Laravel 입문용 튜토리얼들이

이미 여럿 있습니다그럼에도 불구하고 뭔가 좀 어렵다면

“Laravel 인듯 Laravel 아닌 Laravel 같은 Todo List 만들기로 시작하는 Stay Hungry Stay Foolish Agile 학습 전략”을 떠올려주세요 :)

Page 43: XECon2015 :: [1-2] 이현석 - Learning Laravel

Laravel Documentation Tutorial

Basic Task Listhttp://laravel.com/docs/5.1/quickstart

Page 44: XECon2015 :: [1-2] 이현석 - Learning Laravel

Appkr님의 입문자를 위한 라라벨 5! 따라하면서 배워보자!

https://github.com/appkr/l5essential

Page 45: XECon2015 :: [1-2] 이현석 - Learning Laravel

XE 오픈 세미나 - 라라벨 프레임워크 따라하기 #1 기본 익히기 https://www.youtube.com/watch?

v=L6nvYwG347c

Page 46: XECon2015 :: [1-2] 이현석 - Learning Laravel

lesstif 님이 집필 중인 Laravel 도서

https://www.lesstif.com/pages/viewpage.action?pageId=28606603

Page 47: XECon2015 :: [1-2] 이현석 - Learning Laravel

입문용 튜토리얼을 정리 해두신 분도 이미 계십니다

Page 48: XECon2015 :: [1-2] 이현석 - Learning Laravel

http://www.phpschool.com/link/tipntech/80303

Page 49: XECon2015 :: [1-2] 이현석 - Learning Laravel

입문에 성공하고 Laravel이 익숙해졌다. 그 다음은?

Page 50: XECon2015 :: [1-2] 이현석 - Learning Laravel

대부분의 현대적인 프레임워크들은 자체적인 의존성 주입 컨테이너를 가지고 있어서, 코드가 아닌 설정을 통해 의존 관계를 설정할 수 있게 되어 있습니다. 이러한 프레임워크를 잘 사용하면 깔끔하고 디커플링이 잘 된 어플리케이션 코드를 작성

할 수 있습니다. - PHP The Right Way 중 발췌

Page 51: XECon2015 :: [1-2] 이현석 - Learning Laravel

얩니다

Page 52: XECon2015 :: [1-2] 이현석 - Learning Laravel

Laravel은 자신이 채용한 기법과 도구에 대해 일일이 설명할 만큼

친절하지 않습니다. (사실 그럴 이유도 없죠)

Page 53: XECon2015 :: [1-2] 이현석 - Learning Laravel

낮선 용어/도구에 대해서는 Laravel 메뉴얼만 봐서는 알

수 없어요. 각자도생!

Page 54: XECon2015 :: [1-2] 이현석 - Learning Laravel

이제부터는 단지 Laravel에 국한된 이야기가 아닌게 됩니다

Page 55: XECon2015 :: [1-2] 이현석 - Learning Laravel

일반적인 개발고수가 되면 자연스럽게 라라벨을 더 잘 사용하게 됩니다 되는거라 생각합니다

Page 56: XECon2015 :: [1-2] 이현석 - Learning Laravel

PHP 최신 개념 및 기법 챙기기 PHP The Right Way

http://modernpug.github.io/php-the-right-way/

Lesstif 님의 쉽게 배우는 라라벨 중 5 PHP5의 특징 https://www.lesstif.com/pages/viewpage.action?pageId=24445740

Modern PHP

Page 57: XECon2015 :: [1-2] 이현석 - Learning Laravel

의존성 주입

PHP The Right Way 의존성 주입 http://modernpug.github.io/php-the-right-way/

#dependency_injection

토비의 스프링 1장 오브젝트와 의존관계

Page 58: XECon2015 :: [1-2] 이현석 - Learning Laravel

Laracast 추천도서 목록 https://laracasts.com/recommended-reading

Page 59: XECon2015 :: [1-2] 이현석 - Learning Laravel

이 머나먼 여정을 혼자하기엔 너무 법찹니다

Page 60: XECon2015 :: [1-2] 이현석 - Learning Laravel

발표자는 어떻게 공부했는가• 컴포저 스터디 2013년 11월

• 디자인 패턴 스터디 2013년 12월

• Modern PUG 에서 Laravel 스터디 2014년

• 클린코드 스터디 2014년 10월 ~ 12월

• 컴포저 스터디 2차 2015년 1월~2월

• Modern PHP 스터디 2015년 3월~4월

• Laravel Testing 스터디 2014년 10월~

• Laracasts - Laravel 5 Fundamental

• allblog.modernpug.org

• XE 오픈세미나 - Testing

Page 61: XECon2015 :: [1-2] 이현석 - Learning Laravel

온라인 커뮤니티에 참여하고 오프라인에서 만나세요

Page 62: XECon2015 :: [1-2] 이현석 - Learning Laravel

발표를 빙자해 질문하기 https://github.com/ModernPUG/meetup/

blob/master/2013_12/02_Composer/Composer_PUG_study.pdf

Page 63: XECon2015 :: [1-2] 이현석 - Learning Laravel

커뮤니티• Facebook

• Modern PHP User Group

• Laravel 오프라인 스터디

• 선데이 홍대 (정기꾸준코딩모임)

• laravel korea

• 사이트

• laravel.co.kr

• laravel.kr

• Slack

• Modern PHP User Group

• Laravel

Page 64: XECon2015 :: [1-2] 이현석 - Learning Laravel

다시 한 번 결론

• 짧은 시간에 마스터 할 수 없습니다.

• 방대한 학습량에 쫄지 마세요. 거의 배우지 않고도 라라벨을라라벨은 사용할 수 있습니다.

• 커뮤니티에 참여하세요(특히 오프라인).

Page 65: XECon2015 :: [1-2] 이현석 - Learning Laravel

Q & A

Page 66: XECon2015 :: [1-2] 이현석 - Learning Laravel

이현석 [email protected]

https://github.com/smartbos http://facebook.com/leehs

@smartbosslee