SlideShare a Scribd company logo
1 of 29
웹프레임워크의
소개
부제: 국내외 웹프레임워크의 동향과
webframeworks.kr
@W3C HTML5 Conference 2015
한국인터넷진흥원 유주열
위플래닛 정진태
웹 어플리케이션 프레임워크란?
동적인 웹 페이지나, 웹 애플리케이션, 웹 서비스 개발 보조용으로 만들어지는
애플리케이션 프레임워크의 일종이다.
웹 페이지를 개발하는 과정에서 겪는 어려움을 줄이는 것이 주 목적으로
통상 DB 연동, 템플릿 형태의 표준, 세션 관리, 코드 재사용 등의 기능을 포함하고 있다.
출처: https://ko.wikipedia.org/wiki/웹_애플리케이션_프레임워크
동 인
특정 플랫폼에 종속화
다양한 단말의 출현
기술중립성 (오픈 프리 라이센스)
One Source Multi Use
HTML5 등장
웹은 통합 기술안내서가 無
HTML5 개발은 너무 막연함
개발자들의 지지를 얻고 있는
공개SW 기술들을 적극 활용
웹 표준 기반으로
통합 개발 가이드를 제시
레이어별 모듈화 방식 적용,
새로운 신규 모듈 교체 가능
세미나, 코드랩, 컨퍼런스 등
적극적 활용 교육 추진
W ebframeworks.kr
출처: https://stackshare.io
해 외사례 (웹 프레임워크 개발)
해 외사례 (웹 프레임워크 활용)
출처: https://stackshare.io
국 내사례 (취업우대)
국 내사례 (세미나 등)
각 종도서
W ebframeworks.kr
다 양한 웹서비스
다 양한 개발요소들
출처: https://stackshare.io
웹 어플리케이션의 개발
구 성요소
백엔드 개발언어
& 프레임워크
JS 프레임워크
& 라이브러리
스캐폴딩
& 패키지 관리
CSS
프레임워크
&
프리프로세서
태스크
자동화
코딩
& 테스트
도 입하기전 딜레마
닭을 잡다보면
소도 잡지 않을까?
나는 무엇을 알고 있을까?
HTML? CSS? jQuery?
서비스 사용자가
사용하는
브라우져와의 호환성
나는 열심히 할건데,
다른 팀원도 그럴까?
적 용하기 전 살펴보기 (1)
출처: https://stackshare.io
적 용하기 전 살펴보기 (2)
적 용하기 전 살펴보기 (3-1)
적 용하기 전 살펴보기 (3-2)
적 용하기 전 살펴보기 (3-3)
계 속되는 딜레마
알 것 같아.
그런데
아직
용기가 나질
않아.
W ebframeworks.kr
Get
Started
Tutorial
Quick
Start
개발자
세미나
원데이
코드랩
G et Started
 철학 및 배경
 설치방법
 기본 사용 설명
 응용 사용 설명
 예제코드
Tutorial
Quick Start
T utorials
Q uick Start
D eveloper Seminar
O ne day Code-lab
이론 실습 수정
참 여하기
감사합니다

More Related Content

What's hot

개발자를 위한 웹표준 & 웹접근성이야기
개발자를 위한 웹표준 & 웹접근성이야기개발자를 위한 웹표준 & 웹접근성이야기
개발자를 위한 웹표준 & 웹접근성이야기
NAVER D2
 
[별천지 세미나] CSS3 Animation
[별천지 세미나] CSS3 Animation[별천지 세미나] CSS3 Animation
[별천지 세미나] CSS3 Animation
양귀 김
 
모바일 웹앱 프로그래밍 과정
모바일 웹앱 프로그래밍 과정모바일 웹앱 프로그래밍 과정
모바일 웹앱 프로그래밍 과정
Kenu, GwangNam Heo
 
JavaScript 프레임워크 살펴보기
JavaScript 프레임워크 살펴보기JavaScript 프레임워크 살펴보기
JavaScript 프레임워크 살펴보기
항희 이
 
JavaScript로 오픈소스를 해보자. bsJS
JavaScript로 오픈소스를 해보자. bsJSJavaScript로 오픈소스를 해보자. bsJS
JavaScript로 오픈소스를 해보자. bsJS
NAVER D2
 

What's hot (20)

웹 디자이너의 도전: Vue.js 따라하기
웹 디자이너의 도전: Vue.js 따라하기웹 디자이너의 도전: Vue.js 따라하기
웹 디자이너의 도전: Vue.js 따라하기
 
[리뷰] 풀스택 개발자를 위한 MEAM 스택 입문
[리뷰] 풀스택 개발자를 위한 MEAM 스택 입문[리뷰] 풀스택 개발자를 위한 MEAM 스택 입문
[리뷰] 풀스택 개발자를 위한 MEAM 스택 입문
 
Angularjs, ionic, cordova 기반 syrup store app 개발 사례 공유
Angularjs, ionic, cordova 기반 syrup store app 개발 사례 공유Angularjs, ionic, cordova 기반 syrup store app 개발 사례 공유
Angularjs, ionic, cordova 기반 syrup store app 개발 사례 공유
 
[토크아이티] 프런트엔드 개발 시작하기 저자 특강
[토크아이티] 프런트엔드 개발 시작하기 저자 특강 [토크아이티] 프런트엔드 개발 시작하기 저자 특강
[토크아이티] 프런트엔드 개발 시작하기 저자 특강
 
구글 인박스 히드라 프로그래밍
구글 인박스 히드라 프로그래밍구글 인박스 히드라 프로그래밍
구글 인박스 히드라 프로그래밍
 
Vue.js와 Firebase활용기
Vue.js와 Firebase활용기Vue.js와 Firebase활용기
Vue.js와 Firebase활용기
 
개발자를 위한 웹표준 & 웹접근성이야기
개발자를 위한 웹표준 & 웹접근성이야기개발자를 위한 웹표준 & 웹접근성이야기
개발자를 위한 웹표준 & 웹접근성이야기
 
WordCamp Seoul 2012 - WordPress Multisite & Security
WordCamp Seoul 2012 - WordPress Multisite & SecurityWordCamp Seoul 2012 - WordPress Multisite & Security
WordCamp Seoul 2012 - WordPress Multisite & Security
 
[별천지 세미나] CSS3 Animation
[별천지 세미나] CSS3 Animation[별천지 세미나] CSS3 Animation
[별천지 세미나] CSS3 Animation
 
미래웹기술연구소는 왜 Sencha 를 채택하였는가?
미래웹기술연구소는 왜 Sencha 를 채택하였는가?미래웹기술연구소는 왜 Sencha 를 채택하였는가?
미래웹기술연구소는 왜 Sencha 를 채택하였는가?
 
vuetiful korea 발표자료
vuetiful korea 발표자료vuetiful korea 발표자료
vuetiful korea 발표자료
 
모바일 웹앱 프로그래밍 과정
모바일 웹앱 프로그래밍 과정모바일 웹앱 프로그래밍 과정
모바일 웹앱 프로그래밍 과정
 
가볍게 살펴보는 AngularJS
가볍게 살펴보는 AngularJS가볍게 살펴보는 AngularJS
가볍게 살펴보는 AngularJS
 
JavaScript 프레임워크 살펴보기
JavaScript 프레임워크 살펴보기JavaScript 프레임워크 살펴보기
JavaScript 프레임워크 살펴보기
 
JavaScript로 오픈소스를 해보자. bsJS
JavaScript로 오픈소스를 해보자. bsJSJavaScript로 오픈소스를 해보자. bsJS
JavaScript로 오픈소스를 해보자. bsJS
 
[D2 오픈세미나]1.무한스크롤성능개선
[D2 오픈세미나]1.무한스크롤성능개선[D2 오픈세미나]1.무한스크롤성능개선
[D2 오픈세미나]1.무한스크롤성능개선
 
HTML5 관점에서 2015년 웹 앱 개발 동향과 사례 및 2016년 발전 방향 저...
HTML5 관점에서 2015년 웹 앱 개발 동향과 사례 및 2016년 발전 방향 저...HTML5 관점에서 2015년 웹 앱 개발 동향과 사례 및 2016년 발전 방향 저...
HTML5 관점에서 2015년 웹 앱 개발 동향과 사례 및 2016년 발전 방향 저...
 
Html초급 1강 웹표준의 이해
Html초급 1강 웹표준의 이해Html초급 1강 웹표준의 이해
Html초급 1강 웹표준의 이해
 
Golang+on+analytics+and+blockchain
Golang+on+analytics+and+blockchainGolang+on+analytics+and+blockchain
Golang+on+analytics+and+blockchain
 
리액트 적용기
리액트 적용기리액트 적용기
리액트 적용기
 

Viewers also liked

어플리케이션 및 웹 개발
어플리케이션 및 웹 개발어플리케이션 및 웹 개발
어플리케이션 및 웹 개발
Leonardo Taehwan Kim
 
보다 나은 웹 어플리케이션 설계
보다 나은 웹 어플리케이션 설계보다 나은 웹 어플리케이션 설계
보다 나은 웹 어플리케이션 설계
Eb Styles
 

Viewers also liked (20)

2016 W3C Conference #1 : 웹 개발의 현재와 미래
2016 W3C Conference #1 : 웹 개발의 현재와 미래2016 W3C Conference #1 : 웹 개발의 현재와 미래
2016 W3C Conference #1 : 웹 개발의 현재와 미래
 
어플리케이션 및 웹 개발
어플리케이션 및 웹 개발어플리케이션 및 웹 개발
어플리케이션 및 웹 개발
 
배포
배포배포
배포
 
2016 W3C Conference #2 : VANILA JS로 개발하기
2016 W3C Conference #2 : VANILA JS로 개발하기2016 W3C Conference #2 : VANILA JS로 개발하기
2016 W3C Conference #2 : VANILA JS로 개발하기
 
보다 나은 웹 어플리케이션 설계
보다 나은 웹 어플리케이션 설계보다 나은 웹 어플리케이션 설계
보다 나은 웹 어플리케이션 설계
 
Bootstrap과 UI-Bootstrap
Bootstrap과 UI-BootstrapBootstrap과 UI-Bootstrap
Bootstrap과 UI-Bootstrap
 
Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점
Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점 Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점
Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점
 
Webframeworks angular js 세미나
Webframeworks angular js 세미나Webframeworks angular js 세미나
Webframeworks angular js 세미나
 
Celltrion Healthcare 102 weeks with Remsima(non-HCP)
Celltrion Healthcare 102 weeks with Remsima(non-HCP)Celltrion Healthcare 102 weeks with Remsima(non-HCP)
Celltrion Healthcare 102 weeks with Remsima(non-HCP)
 
웹 브라우저는 어떻게 동작하나? (2)
웹 브라우저는 어떻게 동작하나? (2)웹 브라우저는 어떻게 동작하나? (2)
웹 브라우저는 어떻게 동작하나? (2)
 
2016 W3C Conference #9 : 컨테이너와 웹 어플리케이션
2016 W3C Conference #9 : 컨테이너와 웹 어플리케이션2016 W3C Conference #9 : 컨테이너와 웹 어플리케이션
2016 W3C Conference #9 : 컨테이너와 웹 어플리케이션
 
Meteor2015 codelab
Meteor2015 codelab Meteor2015 codelab
Meteor2015 codelab
 
One-day-codelab
One-day-codelabOne-day-codelab
One-day-codelab
 
React를 이용하여 멀티플랫폼에서 개발하기
React를 이용하여 멀티플랫폼에서 개발하기React를 이용하여 멀티플랫폼에서 개발하기
React를 이용하여 멀티플랫폼에서 개발하기
 
웹프레임워크를 이용하여 개발된 오픈소스 CMS프로젝트 샤인
웹프레임워크를 이용하여 개발된 오픈소스 CMS프로젝트 샤인웹프레임워크를 이용하여 개발된 오픈소스 CMS프로젝트 샤인
웹프레임워크를 이용하여 개발된 오픈소스 CMS프로젝트 샤인
 
안정적인 서비스 운영 2014.03
안정적인 서비스 운영   2014.03안정적인 서비스 운영   2014.03
안정적인 서비스 운영 2014.03
 
Nodejs를 이용한 개발
Nodejs를 이용한 개발Nodejs를 이용한 개발
Nodejs를 이용한 개발
 
HTML5로 만드는 데스크탑 어플리케이션 (Node-Webkit)
HTML5로 만드는 데스크탑 어플리케이션 (Node-Webkit)HTML5로 만드는 데스크탑 어플리케이션 (Node-Webkit)
HTML5로 만드는 데스크탑 어플리케이션 (Node-Webkit)
 
Comparing JVM Web Frameworks - February 2014
Comparing JVM Web Frameworks - February 2014Comparing JVM Web Frameworks - February 2014
Comparing JVM Web Frameworks - February 2014
 
Meteor를 통해서 개발하는 웹어플리케이션 서비스
Meteor를 통해서 개발하는 웹어플리케이션 서비스Meteor를 통해서 개발하는 웹어플리케이션 서비스
Meteor를 통해서 개발하는 웹어플리케이션 서비스
 

Similar to Webframeworks.kr의 소개

Html5 guide
Html5 guideHtml5 guide
Html5 guide
camusice
 
드래그홈2010홈페이지제안서
드래그홈2010홈페이지제안서드래그홈2010홈페이지제안서
드래그홈2010홈페이지제안서
draghome
 
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Channy Yun
 
웹표준을 기반한 크로스 브라우징 표준화 (2005)
 웹표준을 기반한 크로스 브라우징 표준화 (2005) 웹표준을 기반한 크로스 브라우징 표준화 (2005)
웹표준을 기반한 크로스 브라우징 표준화 (2005)
Channy Yun
 
JavaScript MEAN 스택
JavaScript MEAN 스택JavaScript MEAN 스택
JavaScript MEAN 스택
Tai Hoon KIM
 
[D2 오픈세미나]3.자바스크립트mean스택 김태훈
[D2 오픈세미나]3.자바스크립트mean스택 김태훈[D2 오픈세미나]3.자바스크립트mean스택 김태훈
[D2 오픈세미나]3.자바스크립트mean스택 김태훈
NAVER D2
 
차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"
Changhwan Yi
 
W3C와 국제적 웹 기술 협력을 위한 제언 (2005)
W3C와 국제적 웹 기술 협력을 위한 제언 (2005)W3C와 국제적 웹 기술 협력을 위한 제언 (2005)
W3C와 국제적 웹 기술 협력을 위한 제언 (2005)
Channy Yun
 

Similar to Webframeworks.kr의 소개 (20)

Html5 guide
Html5 guideHtml5 guide
Html5 guide
 
Html5 Guide
Html5 GuideHtml5 Guide
Html5 Guide
 
Html5 guide
Html5 guideHtml5 guide
Html5 guide
 
HTML5 Tutorial(Korean)
HTML5 Tutorial(Korean)HTML5 Tutorial(Korean)
HTML5 Tutorial(Korean)
 
01.모바일 프레임워크 이론
01.모바일 프레임워크 이론01.모바일 프레임워크 이론
01.모바일 프레임워크 이론
 
W3C 온라인 트레이닝 한국어과정
W3C 온라인 트레이닝 한국어과정W3C 온라인 트레이닝 한국어과정
W3C 온라인 트레이닝 한국어과정
 
개발 방식을 바꾸는 15가지 기술
개발 방식을 바꾸는 15가지 기술개발 방식을 바꾸는 15가지 기술
개발 방식을 바꾸는 15가지 기술
 
드래그홈2010홈페이지제안서
드래그홈2010홈페이지제안서드래그홈2010홈페이지제안서
드래그홈2010홈페이지제안서
 
실전 Html5 guide
실전 Html5 guide실전 Html5 guide
실전 Html5 guide
 
[Tech meet up] 2018 프론트엔드 트렌드&인사이트
[Tech meet up] 2018 프론트엔드 트렌드&인사이트[Tech meet up] 2018 프론트엔드 트렌드&인사이트
[Tech meet up] 2018 프론트엔드 트렌드&인사이트
 
Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)Mozilla 오픈 웹 모바일 플랫폼 (2012)
Mozilla 오픈 웹 모바일 플랫폼 (2012)
 
웹표준을 기반한 크로스 브라우징 표준화 (2005)
 웹표준을 기반한 크로스 브라우징 표준화 (2005) 웹표준을 기반한 크로스 브라우징 표준화 (2005)
웹표준을 기반한 크로스 브라우징 표준화 (2005)
 
JavaScript MEAN 스택
JavaScript MEAN 스택JavaScript MEAN 스택
JavaScript MEAN 스택
 
[D2 오픈세미나]3.자바스크립트mean스택 김태훈
[D2 오픈세미나]3.자바스크립트mean스택 김태훈[D2 오픈세미나]3.자바스크립트mean스택 김태훈
[D2 오픈세미나]3.자바스크립트mean스택 김태훈
 
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안
차세대 웹(Html5) 플랫폼의 동향과 기업 업무 적용 방안
 
차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"차세대 웹비즈니스를 위한 "HTML5"
차세대 웹비즈니스를 위한 "HTML5"
 
웹접근성 검수 툴 - 김현주
웹접근성 검수 툴 - 김현주웹접근성 검수 툴 - 김현주
웹접근성 검수 툴 - 김현주
 
W3C와 국제적 웹 기술 협력을 위한 제언 (2005)
W3C와 국제적 웹 기술 협력을 위한 제언 (2005)W3C와 국제적 웹 기술 협력을 위한 제언 (2005)
W3C와 국제적 웹 기술 협력을 위한 제언 (2005)
 
Intro to hpe helion stackato_paa_s
Intro to hpe helion stackato_paa_sIntro to hpe helion stackato_paa_s
Intro to hpe helion stackato_paa_s
 
HTML5 기업 적용시 고려사항 : 미래웹기술연구소
HTML5 기업 적용시 고려사항 : 미래웹기술연구소 HTML5 기업 적용시 고려사항 : 미래웹기술연구소
HTML5 기업 적용시 고려사항 : 미래웹기술연구소
 

Webframeworks.kr의 소개

Editor's Notes

  1. 안녕하세요 웹프레임워크의 소개로 발표를 진행할 한국인터넷진흥원 유주열입니다. 저는 웹프레임워크의 국내외 사례와 동향등에 대해 발표를 진행할 예정이구요. 위플래닛의 정진태님께서는 웹프레임워크 정보공유사이트인 webframeworks.kr에 대해 소개를 진행해주실 예정입니다.
  2. 안녕하세요. 웹프레임워크를 활용하는 개발자들을 위한 온오프라인 오픈 커뮤니티인 Webframeworks.kr의 운영을 맡고 있는 위플래닛 정진태입니다. 혹시 이 사이트 보신적들 있으신가요? 아직 많이 홍보가 되진 못하것 같은데 열심히 활동하도록하겠습니다.
  3. 안그래도 정말 다양했던 웹들이, 사람들 손에 스마트폰이 쥐어지고 많은 사랑을 받으면서, O2O와 함께 종류가 더욱 다양해진것 같습니다. 말그대로 기존에 생각지도 못했던 서비스들이 웹으로 개발되고 있습니다. 요즘 우리는 웹을 통해 세계의 재미있는 다양한 영상을 보구요. 웹과앱으로 지도에서 위치를 확인하며 집을 찾습니다. 프로그래머를 채용하기 위해, 코딩 인터뷰를 웹으로 보기도 하죠. 그뿐만아니라, 웹으로 전세계에 흟어져있는 사람들과 온라인으로 미팅을 진행하기도 하죠. 당연히 웹으로 게임도 합니다. 그리고 오늘 컨퍼런스에 오기위해 세미나 참여신청을 하고 결제도 했지요. 그냥 간단하게 추려만봤는데도 참 다양한것 같습니다. 그런데 이런 웹서비스들이 개발될때, 항상 웹의 순수기술로만 개발되어지진 않을것입니다. 보다 생산성을 가지고 개발하기 위해서 웹프레임워크과 도구들을 이용하며 만들어져 나가고 있겠죠
  4. 다양한 개발요소들이 이용됩니다. 이화면은 제가 Stackshare.io라는 사이트에서 웹과 여러 프레임워크들과 툴을 한번 긁어왔습니다. 물론 한 화면에 담을 수 없기에, 조금 더 익숙한 요소들을 여러 종류로 모아봤습니다. 오늘 자리에 참석해주신 분들은 몇개정도 알고 계실지 궁금하네요. 간단히 설문을 해보도록하겠습니다. 5개이상알고 계신분들? 10개이상알고 계신분들? 이 많은 개발요소들 웹어플리케이션 개발에 쓰이는 것들이긴 할텐데 과연 어떤용도로 사용되는 것들일까요?
  5. 네 물론 웹어플리케이션을 개발하는데 사용되고 있을 것입니다. 그런데 웹어플리케이션을 개발한다는 것은 어떤것들을 하는 것일까요? 요즘 웹프론트 기술이 굉장히 발달하면서, 이 개발에 대한 흐름도 계속 바껴가는 것 같습니다. 사실 10년전에 웹에서 뭔가 만들때 <table>태그로 레이아웃을 잡아서 개발하고는 했는데, 요즘에 그랬다가는 난감해지겠죠. 지금 이화면은, 물론 이것은 개발사마다 다르긴 하겠지만, 제가 했던 방법, 들었던 방법으로 웹 어플리케이션의 개발 프로세스를 정리를 해보았습니다. 저희 회사같은경우는 프론트보다는 언제나 모델링 등을 위해서 백엔드 개발언어와 프레임워크를 먼저 정합니다. 아 마 대부분에 중소팀에서 그렇게 진행을 하고 있지 않나 싶습니다. 않나 싶습니다. 그뒤로도 계속 선택의 연속이죠. 더 나은 UI를 구성하기위해 Bootstrap과 같은 CSS 프레임워크를 선택하고, 더 편하게 사용하기 위해 Sass나 less 같은 프리프로세서등을 선택하게 되죠. 기술이 빠르게 발전하고 있는 웹프론트에서 규모가 어느정도 있는 웹이라면 JS프레임워크의 선택은 이제 필수가 아닐까 싶은데요. 자바스크립트 프레임워크와 라이브러리를등을 선택하게 되죠. 여러 선택들이 끝나고 나면 웹어플리케이션 프로젝트의 구조들을 하나씩 잡고, 패키지들을 설치해가며, 코딩을 진행하고, 테스트를하고, 버그잡고 코딩하고를 진행하게되겠죠. 이 타이밍에 배포, 빌드, 테스트등 더 편하게 하기 위해 테스크 자동화툴을 선택해서 사용하게 되겠죠. 제가 웹 개발이 공백이 좀 길게 있긴했지만, 뭔가 예전에 jquery, html, css만 고민하던 때와 많이 달라진것 같습니다.
  6. 앞에 수많은 업무들을 실제 프레임워크 라이브러리 툴과 한번 매핑해보았습니다. 백엔드쪽에 프레임워크는 다들 많이 익숙하시지 않을가 싶습니다. 파이썬에서 대표 웹프레임워크로 활약하고 있는 Django. 물론 플라스크도 유명하죠 생산성높은 개발의 대명사가 되어가는 Rails 가장 많이 사용해보신 프레임워크가 아닐까요? 스프링 php에서 요즘 가장 핫한 라라벨 프레임워크도 있구요. 최고 대세죠. nodejs의 Meteor와 Express가 백엔드프레임워크에 있습니다. 물론 여기있는게 다는 아니고, 더욱 많은 백엔드 프레임워크가 존재합니다. 그 옆으로는 CSS프레임워크가 있습니다. 모스트 파풀러 CSS프레임워크인 부트스트랩이 있구요. 중간에는 모스트 어드밴스드 CSS프레임워크를 지향하는 파운데이션이 있습니다. 구글의 polymer도 보이구요. 프리프로세서인 less 와 sass도 있습니다. 가장 관심이 많이 가는 분야인 JS프레임워크를 보자면, 많이들 익숙하실것 같습니다. 구글의 AngularJS. 아마 웹에 관심있는 분들이라면 책한권은 사보시지 않았을까 싶습니다. 미니멀리즘의 철학을 갖고 있는 백본이 있구요. 그아래로는 프론트엔드의 유지보수를 향상시키는 엔터프라이즈급 프레임워크라고 할 수 있는 엠버가 있구요. 요즘 정말 많은 사랑을 받고 있는 유저인터페이스를 만들기위해, View에 집중하고 있는 React 가 있습니다. 그 쪽으로는 패키지 매니저인 npm, 웹을 위한 패키지매니저인 바워, 그리고 스캐폴딩을 위한 여맨이 보이네요. 전 개인적으로 여맨을 굉장히 좋아하는데요, 개발을 진행하면서, 폴더구조를 어떻게 짤가에대해서 고민이 많으신분이라면 강력추천해드리고 싶습니다. git이나 subversion을 통해서 소스관리를 진행하시구요. 테스트 생상선을 높히기 위해 jasmin, mocha, karma등을 사용하시기도 하실 겁니다. 개발에서 테스트, 배포코드 난독화, 배포 등 이런저런 작업들, 즉 태스크를 좀더 편하게 작업하기 위해 그런트나 걸프를 쓰기도 하죠. 참 좋은 프레임워크와 툴이 많네요.
  7. 하지만 도입하기란 참 머뭇거려지는 일인것 같습니다. 보통 도입이전에 이런 딜레마에 빠지지 않을가 싶습니다. 이게 우리 실제 유저들에게 문제가 없을지. 내가 사용할 수 있을지. 내 옆에 개발자가 열심히 배워서, 우리팀이 잘 사용할 수 있을지? 러닝커브가 참 ... 그리고 우리가 만드는게 간단한 웹페이지라면, 닭잡는데 소잡는 칼을 쓰고있는건 아닌지. 혹은 닭을 잡다보면 소를 잡게 되진 않을지. 그리고 이 프레임워크의 철학이 나랑 맞는건지..? 고민을 하게 될 것같습니다. 이 프레임워크의 철학이라는건 예를들자면, 백본의 미니멀리즘을 예로 들 수 있을 것 같습니다. 이미 잘 셋팅되어진 프론트 프레임워크를 사용하고 싶으신 분이라면, 미니멀리즘의 백본보다는 엠버를 사용하시는게 맞기 떄문이죠. 도입 전 딜레마를 위해서 몇가지 방법을 공유해볼까 합니다.
  8. 우선 스택쉐어닷 아이오입니다. 가령 제가 airbnb유사 사이트를 만들고 싶다고 했을때, 스택쉐어닷 아이오에서 airbnb를 검색해봄으로써, airbnb가 사용한 개발스택정보를 얻을 수 가있습니다. 백엔드로는 ruby on rails를 사용하고 디비는 mysql을 사용했네요. 프론트에서는 요즘 핫한 react 라이브러리를 사용하고, sass를 전처리기로 사용했다고 나오네요. 혹시 react가 먼지 헷갈린다면, 클릭을해보시면 react에 대한 정보를 보여주게 됩니다. 피쳐 정보, 지금 사용하는 회사들, 유사 도구들 등을 말이죠.
  9. 이 다음 방법은 이미 많이들 하고 계실거라고 생각됩니다. 개발커뮤니티에 물어보고 슬라이드쉐어등에서 여러 자료들을 찾는거죠.
  10. 마지막으로 추천해드릴 방법은 ToDo MVC를 이용하는 것입니다. 특히 웹프론트쪽 프레임워크를 선택하실때 이용하시면 좋은 방법이신데요. Todomvc.com은 MV아스타리크 프레임워크를 선택할 수 있게 도와줍니다. 한번 살펴볼까요
  11. ToDo MVC는 동일한 UI를 여러 웹프레임워크를 이용하여 구현해 놓았습니다. 지금 화면은 백본을 예로 보여주고 있는데요. 단순 백본으로 했을때의 코드뿐만아니라 백본과 엔요를 함께 사용했을떄, 백본과 타입스크립트를 함께 사용했을떄의 소스도 제공을 하고 있습니다.
  12. 물론 github에서 제공하고 있습니다. 백문이 불여일런 직접 클론하셔서 코드도 살펴보시면서, 자기 입맛에 맞는 프레임워크를 찾는데 아주 좋은 방법이라고 생각됩니다.
  13. 하지만 그래도 어렵죠. 프레임워크의 신규도입이란...
  14. 그래서 웹프레임웍스가 시작되었습니다. 웹프레임워크는 온라인과 오프라인 커뮤니티로 온오프라인 전반에 걸쳐서 활동하고 있습니다. 온라인에서는 webframeworks.kr라는 사이트를 통해서 get started 시작학습정보. tutorials 응용학습정보. quick start 보일러플레이트형태의 샘플코드를 제공하고 있습니다. 오프라인에서는 여러 개발자 커뮤니티와 함께 세미나를 진행하고, 원데이 코드랩을 진행하며 개발자들이 웹프레임워크를 배우고, 지식을 공유할 수 있는 장을 만들어가고 있습니다.
  15. Get Started 에 대해 좀 더 자세히 말씀드리면 웹프레임워크나 도구를 사용하기앞에서 프레임워크의 철학 및 배경, 설치방법, 기본사용설명, 응용사용설명, 예제코드, 참조사이트등의 정보를 담고 있어서, 한번 읽고나신후에, Tutorials이나 Quick start를 이용하실 수 있는 기본학습을 진행하고 있습니다.
  16. 튜토리얼은 웹프레임워크전문가들이 웹프레임워크 별로 여러 응용방법을 공유하고 있구요.
  17. 퀵스타트는 백문이 불여일런, 실제로 개발자들이 빠르게 시작해볼수있도록 보일러플레이트 형태의 샘플코드를 제공하고 있습니다.
  18. 오프라인에서는 앞에서 말씀드린봐아 같이 GDG Seould, Meteor Korea, ModernPHP, Facebook developer Group, 언디파인드등의 개발커뮤니티와 함께 세미나를 공동 주최하며, 웹어플리케이션에 대한 여러 사례를 공유하고 있습니다.
  19. 원데이 코드랩은 세미나와는 다르게 약 7~8시간을 잡고 하루동안 진행되며, 이론부터 실습까지 웹프레임워크로 실무를하고 계시는 전문개발자를 강사로 초빙하여, 교육을 진행하고 있습니다. 그리고 실제로 실습할때 코드를 여러방면으로 수정해보실수 있도록 돕고있습니다.
  20. webframeworks.kr은 여러 활동을 깃헙위에서 진행하고 있으며, 사이트 자체도 github page로 운영을 하고 있습니다. 아마도 웹개발자들에게 익숙한 가장 웹개발자 커뮤니티 다운 모습이 아닐까 싶습니다. 여러분들도 자신의 경험을 webframeworks.kr를 통해서 여러 웹개발자들과 함꼐 나눠보시면 좋을 것 같습니다.
  21. 이상 발표를 맞치겠습니다. 감사합니다.