Clean Frontend Development : Prologue

Deview 2016에서 ‘Clean Frontend Development’을 주제로 발표를 하게 됐네요.

대상은 웹 프론트엔드 개발을 고민하고 있는 개발자 입니다.

FE 는 최근 JavaScript Fatigue라는 키워드가 온라인을 달구고 있습니다. 
수 년간 FE개발에 집중한 사람들조차 피곤함을 느끼는 상황이죠. 물론 JavaScript나 FE 개발이 잘못된 방향으로 가고 있는 건 아니라고 생각합니다.

image : https://hackernoon.com/how-it-feels-to-learn-javascript-in-2016-d3a717dd577f#.mdtm38i8o

어찌됐든 FE개발은 무척 복잡하고 개발자는 새로운 무기가 쏟아져 나올때마다 관심과 학습을 하고 있습니다.

이런 상황에서도 Good UX, Maintainable Code 는 FE개발에서 늘 중요합니다. 모든 서비스 개발에서 그렇겠죠.

걱정스러운 건, 새로운 도구가 멋지고 지나치게 끌려가는 건 아닌가? 하는 점이죠. 그러다보면 UX와 좋은code의 중요성을 뒤로 미루게 되는 일이 생길 수 있을 거 같네요.
또한 JavaScript개발 기초가 부족하면 트렌드를 분류하고 학습하느라 더 시간을 쏟아야하고 더욱더 기초를 다질 기회가 없습니다. 악순환이죠.

서비스를 하다보면 사실 Framework이 제공하는 기능이 다 필요로 하지도 않습니다. 심지어 Framework이 가진 가치와 철학이 나의 상황과 안맞을 수도 있습니다. 멋진 옷이 모두 다 나에게 어울리진 않죠.

이런 상황에서 브라우저 세상은 긍정적으로 변하고 있습니다.

아직도 IE가 우리의 발목을 잡고는 있지만, 점차 나아지고 있습니다. 우리에게는 점진적인 개선이라는 방법도 있고요.
계속 성장중인 모바일웹 브라우저에서는 Android4.0이상을 지원하면 되는 상황입니다. (물론 전국민서비스들은 .. 그렇지 않다는 것도 아직 현실이지만..)

그 사이에 ES2015, ES2016.. 으로 JavaScript 표준은 더 많은 좋은 기능을 적극 수용하고 있고, babel, webpack과 같은 좋은도구와 수많은 polyfill은 우리가 더 새로운 무기를 쓸 수 있는 기회를 제공합니다.

Standard Code, with all tools

이번 발표에 숨은 Catchphrase 입니다. 물론 현실 세계에서는 쉽지 않을 수 있습니다.

그리고 발표의 scope는 이 쯤입니다.

발표 SCOPE

당일 세션에서는 아래 주제를 가지고 Standard Code, with all tools 를 어떻게 구현할 수 있을지 알아볼 예정입니다.

jQuery Free, 
Modules, 
Two way binding, 
Asynchronous Pattern, 
Templating, 
Virtual DOM, 
Depedency Injection, 
Resuable Codes

발표 시간이 짧아서 주로 동작가능한 code를 가지고 이야기를 나눌 것 같습니다. 이후에 코드는 github에 공유를 하겠습니다.

이번기회에 Clean frontend development 에 대해 많은 분들과 함께 계속 많은 고민을 할 수 있는 기회가 되길 바랍니다.

코드스쿼드 마스터 윤지수입니다.

프론트엔드를 담당하고 있습니다.
crong@codesquad.kr
http://codesquad.kr
https://www.facebook.com/codesquad.kr/