[d2 campus seminar]진지할 수도 있는...

35
진지할 수도 있는 자료구조와 알고리즘() 이야기 NHN NEXT 정호영

Upload: naver-d2

Post on 15-Jul-2015

4.626 views

Category:

Technology


4 download

TRANSCRIPT

진지할 수도 있는 자료구조와 알고리즘(듬) 이야기

NHN����������� ������������������  NEXT����������� ������������������  정호영����������� ������������������  

2����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

하고����������� ������������������  싶은����������� ������������������  이야기����������� ������������������  

자료구조/����������� ������������������  알고리즘����������� ������������������  참����������� ������������������  재밌다.����������� ������������������  

3����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

남자라면����������� ������������������  밀리터리����������� ������������������  이야기����������� ������������������  하나����������� ������������������  

1805년����������� ������������������  12월����������� ������������������  2일,����������� ������������������  오스트리아����������� ������������������  제국����������� ������������������  아우스터리츠����������� ������������������  

4����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

배경����������� ������������������  

-  트라팔가����������� ������������������  해전(프랑스����������� ������������������  VS����������� ������������������  영국)에서����������� ������������������  프랑스����������� ������������������  대패����������� ������������������  

-  나폴레옹은����������� ������������������  포기하지����������� ������������������  않고����������� ������������������  육군을����������� ������������������  신속하게����������� ������������������  오스트리아로����������� ������������������  보냅����������� ������������������  

-  프랑스����������� ������������������  제국����������� ������������������  VS����������� ������������������  러시아����������� ������������������  +����������� ������������������  오스트리아����������� ������������������  제국����������� ������������������  연합군의����������� ������������������  전쟁����������� ������������������  발발����������� ������������������  

5����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

진행����������� ������������������  

1.  프랑스����������� ������������������  군의����������� ������������������  실수����������� ������������������  

2.  빨간색이����������� ������������������  참����������� ������������������  많다.����������� ������������������  

6����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

경과����������� ������������������  

-  두����������� ������������������  조각으로����������� ������������������  연합군����������� ������������������  분단����������� ������������������  

-  각개격파����������� ������������������  

-  대승리����������� ������������������  

-  나폴레옹����������� ������������������  인생에서����������� ������������������  가장����������� ������������������  

빛나는����������� ������������������  순간����������� ������������������  

7����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

어려운����������� ������������������  문제����������� ������������������  해결����������� ������������������  방법����������� ������������������  

내가����������� ������������������  해결할����������� ������������������  수����������� ������������������  없는����������� ������������������  문제를����������� ������������������  만났을����������� ������������������  때����������� ������������������  

1.  문제를����������� ������������������  작게����������� ������������������  쪼갠다.����������� ������������������  

2.  해결할����������� ������������������  수����������� ������������������  있나?����������� ������������������  

3.  없다면����������� ������������������  1로����������� ������������������  

4.  해결할����������� ������������������  수����������� ������������������  있을����������� ������������������  만큼����������� ������������������  작아졌다면����������� ������������������  그����������� ������������������  문제를����������� ������������������  푼다.����������� ������������������  

5.  해결한����������� ������������������  문제를����������� ������������������  다����������� ������������������  합치면����������� ������������������  원본����������� ������������������  문제를����������� ������������������  푼����������� ������������������  것과����������� ������������������  동일!����������� ������������������  

8����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

Divide����������� ������������������  and����������� ������������������  Conquer����������� ������������������  (분할����������� ������������������  정복)����������� ������������������  

function F(x):

if F(x)의 문제가 간단 then:

return F(x)을 직접 계산한 값

else:

x 를 y1, y2로 분할

F(y1)과 F(y2)를 호출

return F(y1), F(y2)로부터 F(x)를 구한 값

9����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

분할����������� ������������������  정복을����������� ������������������  사용한����������� ������������������  예제����������� ������������������  

-  퀵����������� ������������������  소트,����������� ������������������  머지����������� ������������������  소트,����������� ������������������  FFT����������� ������������������  등에����������� ������������������  사용됨����������� ������������������  

10����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

그����������� ������������������  외����������� ������������������  문제����������� ������������������  해결에����������� ������������������  사용되는����������� ������������������  알고리즘들����������� ������������������  

Divide����������� ������������������  and����������� ������������������  Conquer(분할����������� ������������������  정복)����������� ������������������  

Dyamic����������� ������������������  Programming����������� ������������������  (다이나믹����������� ������������������  프로그래밍)����������� ������������������  

Backtracking����������� ������������������  (백����������� ������������������  트래킹)����������� ������������������  ����������� ������������������  

����������� ������������������  

����������� ������������������  

11����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

정렬����������� ������������������  이야기:����������� ������������������  Quick-sort����������� ������������������  

이름처럼����������� ������������������  빠른����������� ������������������  정렬����������� ������������������  

대표적인����������� ������������������  분할����������� ������������������  정복����������� ������������������  알고리즘����������� ������������������  

평균적으로����������� ������������������  O(n����������� ������������������  log����������� ������������������  n)����������� ������������������  

12����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

잠깐����������� ������������������  Big����������� ������������������  O����������� ������������������  Notation����������� ������������������  

����������� ������������������  f(n)<=����������� ������������������  cg(n)을����������� ������������������  만족하는����������� ������������������  두����������� ������������������  양의����������� ������������������  상수����������� ������������������  c와����������� ������������������  n0가����������� ������������������  존재한다면����������� ������������������  

����������� ������������������  f(n)����������� ������������������  은����������� ������������������  O(g(n))에����������� ������������������  속한다.����������� ������������������  

그래프로����������� ������������������  따지면����������� ������������������  

1.  x값이����������� ������������������  큰����������� ������������������  경우만����������� ������������������  살펴보면����������� ������������������  된다.����������� ������������������  

2.  worst����������� ������������������  case를����������� ������������������  보려고����������� ������������������  할����������� ������������������  때����������� ������������������  사용����������� ������������������  

13����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

Big����������� ������������������  O����������� ������������������  Notation����������� ������������������  

O(1):����������� ������������������  상수형태����������� ������������������  

O(log����������� ������������������  n):����������� ������������������  로그����������� ������������������  형태����������� ������������������  

O(n):����������� ������������������  선형����������� ������������������  형태����������� ������������������  

O(n����������� ������������������  log����������� ������������������  n):����������� ������������������  선형로그����������� ������������������  형태����������� ������������������  

-------����������� ������������������  절취선����������� ������������������  ---------����������� ������������������  

O(n²),����������� ������������������  O(n³):����������� ������������������  다차����������� ������������������  형태����������� ������������������  

O(2ⁿ),����������� ������������������  O(3ⁿ):����������� ������������������  지수����������� ������������������  형태����������� ������������������  

O(n!):����������� ������������������  팩토리얼����������� ������������������  형태����������� ������������������  

14����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

다시����������� ������������������  퀵����������� ������������������  소트로����������� ������������������  돌아와서����������� ������������������  

실제����������� ������������������  구현은����������� ������������������  어떻게����������� ������������������  하나요?����������� ������������������  

-����������� ������������������  partition()����������� ������������������  과����������� ������������������  quickSort()����������� ������������������  로����������� ������������������  나눠서����������� ������������������  구현����������� ������������������  ����������� ������������������  

function partition(a, left, right, pivotIndex) pivotValue := a[pivotIndex] swap(a[pivotIndex], a[right]) // 피벗을 끝으로 옮겨 놓는다. storeIndex := left for i from left to right-1 if a[i] <= pivotValue then swap(a[storeIndex], a[i]) storeIndex := storeIndex + 1 swap(a[right], a[storeIndex]) // 피벗을 두 리스트 사이에 위치시킨다. return storeIndex

15����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

다시����������� ������������������  퀵����������� ������������������  소트로����������� ������������������  돌아와서����������� ������������������  

실제����������� ������������������  구현은����������� ������������������  어떻게����������� ������������������  하나요?����������� ������������������  

-����������� ������������������  partition()����������� ������������������  과����������� ������������������  quickSort()����������� ������������������  로����������� ������������������  나눠서����������� ������������������  구현����������� ������������������  ����������� ������������������  

function quicksort(a, left, right) if right > left then select a pivot value a[pivotIndex] pivotNewIndex := partition(a, left, right, pivotIndex) quicksort(a, left, pivotNewIndex-1) quicksort(a, pivotNewIndex+1, right)

16����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

그����������� ������������������  외����������� ������������������  정렬����������� ������������������  알고리즘����������� ������������������  

삽입정렬����������� ������������������  O(n����������� ������������������  *����������� ������������������  n)����������� ������������������  

힙정렬����������� ������������������  O(n����������� ������������������  log����������� ������������������  n)����������� ������������������  

머지정렬����������� ������������������  O(n����������� ������������������  log����������� ������������������  n)����������� ������������������  

����������� ������������������  

bogo����������� ������������������  sort����������� ������������������  (list):����������� ������������������  

while����������� ������������������  (is����������� ������������������  not����������� ������������������  i����������� ������������������  order):����������� ������������������  

����������� ������������������  shuffle(list)����������� ������������������  

17����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

그����������� ������������������  외����������� ������������������  정렬����������� ������������������  알고리즘����������� ������������������  

https://www.youtube.com/watch?v=kPRA0W1kECg����������� ������������������  ����������� ������������������  

18����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

퀵����������� ������������������  소트����������� ������������������  정말����������� ������������������  많이����������� ������������������  사용할까요?����������� ������������������  

퀵����������� ������������������  소트의����������� ������������������  단점����������� ������������������  

-  평균����������� ������������������  복잡도는����������� ������������������  n����������� ������������������  log����������� ������������������  n����������� ������������������  ����������� ������������������  이지만����������� ������������������  최악의����������� ������������������  경우����������� ������������������  n����������� ������������������  *����������� ������������������  n����������� ������������������  

-  병렬����������� ������������������  프로그래밍으로����������� ������������������  구현하기����������� ������������������  어렵다.����������� ������������������  

-  실제로����������� ������������������  많이����������� ������������������  사용되지는����������� ������������������  잘����������� ������������������  모르겠음...����������� ������������������  

-  stable����������� ������������������  sort����������� ������������������  가����������� ������������������  아님����������� ������������������  

19����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

그럼����������� ������������������  어떤����������� ������������������  정렬을����������� ������������������  사용할까요?����������� ������������������  

멀티쓰레드를����������� ������������������  활용해서����������� ������������������  성능을����������� ������������������  높이고����������� ������������������  싶은����������� ������������������  경우����������� ������������������  ����������� ������������������  

-  힙����������� ������������������  정렬:����������� ������������������  O����������� ������������������  (n����������� ������������������  log����������� ������������������  n)����������� ������������������  

-  최악의����������� ������������������  경우에도����������� ������������������  n����������� ������������������  log����������� ������������������  n����������� ������������������  보장����������� ������������������  

-  병렬����������� ������������������  프로그래밍으로����������� ������������������  짜기����������� ������������������  용이함����������� ������������������  

20����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

그럼����������� ������������������  어떤����������� ������������������  정렬을����������� ������������������  사용할까요?����������� ������������������  

배열����������� ������������������  말고����������� ������������������  리스트를����������� ������������������  정렬하려면?����������� ������������������  

-����������� ������������������  구현이����������� ������������������  간편함����������� ������������������  ����������� ������������������  

-  merge����������� ������������������  sort����������� ������������������  (병합����������� ������������������  정렬):����������� ������������������  O����������� ������������������  (n����������� ������������������  log����������� ������������������  n)����������� ������������������  

-  최악의����������� ������������������  경우에도����������� ������������������  n����������� ������������������  log����������� ������������������  n����������� ������������������  보장����������� ������������������  

-  완전����������� ������������������  이진����������� ������������������  트리의����������� ������������������  특별한����������� ������������������  형태인����������� ������������������  힙(heap)����������� ������������������  사용����������� ������������������  

-  펄은����������� ������������������  기본으로����������� ������������������  머지����������� ������������������  정렬을����������� ������������������  사용함����������� ������������������  

21����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

그럼����������� ������������������  어떤����������� ������������������  정렬을����������� ������������������  사용할까요?����������� ������������������  

이미����������� ������������������  대부분의����������� ������������������  데이터가����������� ������������������  정렬되어����������� ������������������  있다면����������� ������������������  

-����������� ������������������  삽입����������� ������������������  정렬����������� ������������������  또는����������� ������������������  shell����������� ������������������  sort����������� ������������������  

-����������� ������������������  거의����������� ������������������  다����������� ������������������  정렬����������� ������������������  되어����������� ������������������  있다면����������� ������������������  O(n)����������� ������������������  이내로����������� ������������������  정렬이����������� ������������������  가능함����������� ������������������  

-  엄청����������� ������������������  빠름����������� ������������������  

-  그리고����������� ������������������  stable����������� ������������������  sort����������� ������������������  

22����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

그럼����������� ������������������  어떤����������� ������������������  정렬을����������� ������������������  사용할까요?����������� ������������������  

라이브러리는?����������� ������������������  

-  Timsort����������� ������������������  사용����������� ������������������  

-  현실에서����������� ������������������  사용하기����������� ������������������  위한����������� ������������������  정렬����������� ������������������  알고리즘����������� ������������������  

-  merge����������� ������������������  sort����������� ������������������  +����������� ������������������  insertion����������� ������������������  sort의����������� ������������������  하이브리드����������� ������������������  알고리즘����������� ������������������  

-  파이썬,����������� ������������������  JDK����������� ������������������  7����������� ������������������  이후����������� ������������������  버전에서����������� ������������������  timsort����������� ������������������  사용����������� ������������������  

23����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

알고리즘����������� ������������������  왜����������� ������������������  이렇게����������� ������������������  종류도����������� ������������������  많고����������� ������������������  공부할����������� ������������������  것도����������� ������������������  많을까요?����������� ������������������  

정렬����������� ������������������  알고리즘만����������� ������������������  해도����������� ������������������  용도에����������� ������������������  따라����������� ������������������  종류가����������� ������������������  엄청����������� ������������������  많다.����������� ������������������  

굳이����������� ������������������  꼭����������� ������������������  이렇게����������� ������������������  나눠서����������� ������������������  써야����������� ������������������  할까요?����������� ������������������  

과제����������� ������������������  제출할����������� ������������������  때는����������� ������������������  대충����������� ������������������  버블소트만����������� ������������������  써도����������� ������������������  잘����������� ������������������  돌아����������� ������������������  가던데?����������� ������������������  

24����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

차이가����������� ������������������  뭘까요?����������� ������������������  

25����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

Why,����������� ������������������  Algorithm?����������� ������������������  Why?����������� ������������������  

현업에서는����������� ������������������  매우����������� ������������������  크고����������� ������������������  다양한����������� ������������������  유형의����������� ������������������  데이터를����������� ������������������  다루게����������� ������������������  됩니다.����������� ������������������  

이����������� ������������������  데이터를����������� ������������������  담을����������� ������������������  수����������� ������������������  있는����������� ������������������  적절한����������� ������������������  그릇과����������� ������������������  

그릇에서����������� ������������������  내가����������� ������������������  원하는����������� ������������������  데이터를����������� ������������������  뽑을����������� ������������������  수����������� ������������������  있는����������� ������������������  어떤����������� ������������������  방법이����������� ������������������  필요합니다.����������� ������������������  

26����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

Why,����������� ������������������  Algorithm?����������� ������������������  Why?����������� ������������������  

현업에서는����������� ������������������  매우����������� ������������������  크고����������� ������������������  다양한����������� ������������������  유형의����������� ������������������  데이터를����������� ������������������  다루게����������� ������������������  됩니다.����������� ������������������  

이����������� ������������������  데이터를����������� ������������������  담을����������� ������������������  수����������� ������������������  있는����������� ������������������  적절한����������� ������������������  자료구조와����������� ������������������  

이����������� ������������������  자료구조를����������� ������������������  잘����������� ������������������  처리할����������� ������������������  수����������� ������������������  있는����������� ������������������  효율적인����������� ������������������  알고리즘이����������� ������������������  필요합니다.����������� ������������������  

����������� ������������������  

공부����������� ������������������  열심히����������� ������������������  안하면����������� ������������������  돌아가지만����������� ������������������  ����������� ������������������  

느려서����������� ������������������  사용할����������� ������������������  수����������� ������������������  없는����������� ������������������  부끄러운����������� ������������������  프로그램이����������� ������������������  됩니다.����������� ������������������  

27����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

F����������� ������������������  파일����������� ������������������  시스템과����������� ������������������  동영상����������� ������������������  플레이어����������� ������������������  이야기����������� ������������������  

28����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

F����������� ������������������  파일����������� ������������������  시스템과����������� ������������������  동영상����������� ������������������  플레이어����������� ������������������  이야기����������� ������������������  

꼭����������� ������������������  필요한����������� ������������������  뒤로����������� ������������������  감기����������� ������������������  기능이����������� ������������������  많이����������� ������������������  

느립니다.����������� ������������������  

왜����������� ������������������  그럴까요?����������� ������������������  

29����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

적절한����������� ������������������  자료구조����������� ������������������  선택의����������� ������������������  중요성����������� ������������������  

어떤����������� ������������������  자료구조를����������� ������������������  선택하냐에����������� ������������������  따라����������� ������������������  같은����������� ������������������  알고리즘이라도����������� ������������������  성능이����������� ������������������  완전히����������� ������������������  달라질����������� ������������������  수����������� ������������������  있습니

다.����������� ������������������  

����������� ������������������  

아예����������� ������������������  알고리즘이����������� ������������������  달라지기도����������� ������������������  합니다.����������� ������������������  

����������� ������������������  ����������� ������������������  

30����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

쥬니어����������� ������������������  개발자,����������� ������������������  어디까지����������� ������������������  공부해야����������� ������������������  하나요?����������� ������������������  

최소����������� ������������������  성능에����������� ������������������  필요한����������� ������������������  기본적인����������� ������������������  자료구조와����������� ������������������  알고리즘을����������� ������������������  사용할����������� ������������������  수는����������� ������������������  있어야����������� ������������������  합니다.����������� ������������������  

ex)����������� ������������������  더블����������� ������������������  링크드����������� ������������������  리스트,����������� ������������������  어레이����������� ������������������  리스트,����������� ������������������  해시,����������� ������������������  그래프,����������� ������������������  B-트리����������� ������������������  

����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  ����������� ������������������  각종����������� ������������������  탐색,����������� ������������������  순회����������� ������������������  알고리즘,����������� ������������������  문제����������� ������������������  해결����������� ������������������  전략����������� ������������������  

31����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

면접����������� ������������������  때����������� ������������������  가끔����������� ������������������  나오는����������� ������������������  것들����������� ������������������  ����������� ������������������  

-  Big����������� ������������������  O����������� ������������������  Notation����������� ������������������  /����������� ������������������  알고리즘의����������� ������������������  복잡도����������� ������������������  

-  배열,����������� ������������������  리스트,����������� ������������������  스택,����������� ������������������  큐,����������� ������������������  힙,����������� ������������������  해시,����������� ������������������  그래프,����������� ������������������  트리(이진,����������� ������������������  레드블랙,����������� ������������������  B+)����������� ������������������  

-  이진����������� ������������������  검색����������� ������������������  

-  여러가지����������� ������������������  정렬����������� ������������������  

-  그래프����������� ������������������  순회����������� ������������������  

-  최단거리����������� ������������������  (다익스트라,����������� ������������������  A*)����������� ������������������  

-  욕심쟁이(?),����������� ������������������  분할정복,����������� ������������������  동적계획법,����������� ������������������  백트래킹����������� ������������������  

-  P����������� ������������������  /����������� ������������������  NP!����������� ������������������  

32����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

책을����������� ������������������  하나����������� ������������������  고르라면?����������� ������������������  

����������� ������������������  

33����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

어쩌면����������� ������������������  더����������� ������������������  중요한����������� ������������������  것들����������� ������������������  

-  프로그래밍����������� ������������������  

-  C����������� ������������������  언어,����������� ������������������  그리고����������� ������������������  포인터����������� ������������������  

-  객체����������� ������������������  지향����������� ������������������  프로그래밍����������� ������������������  

-  소프트웨어����������� ������������������  공학����������� ������������������  

-  이산수학,����������� ������������������  확률통계����������� ������������������  

-  네트워크����������� ������������������  (TCP/IP,����������� ������������������  HTTP),컴퓨터����������� ������������������  구조����������� ������������������  

-  유닉스����������� ������������������  운영체제를����������� ������������������  능숙하게����������� ������������������  사용할����������� ������������������  것(리눅스,����������� ������������������  맥OS)����������� ������������������  

-  SCM,����������� ������������������  그����������� ������������������  중에서도����������� ������������������  git����������� ������������������  

-  그리고����������� ������������������  에자일����������� ������������������  

-  협업,����������� ������������������  팀����������� ������������������  단위����������� ������������������  활동����������� ������������������  

34����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

어쩌면����������� ������������������  더����������� ������������������  중요한����������� ������������������  것들����������� ������������������  

내����������� ������������������  생각,����������� ������������������  그리고����������� ������������������  내����������� ������������������  패러다임을����������� ������������������  바꿀����������� ������������������  수����������� ������������������  있는����������� ������������������  것들:����������� ������������������  

공부를����������� ������������������  통해����������� ������������������  패러다임이����������� ������������������  바뀔����������� ������������������  수����������� ������������������  있다.����������� ������������������  

많은����������� ������������������  것들을����������� ������������������  경험하자.����������� ������������������  

책,����������� ������������������  영화,����������� ������������������  만화,����������� ������������������  게임,����������� ������������������  연애,����������� ������������������  …⋯����������� ������������������  

����������� ������������������  

그린����������� ������������������  팩토리����������� ������������������  앞����������� ������������������  미용실����������� ������������������  주인����������� ������������������  아주머니:����������� ������������������  ����������� ������������������  

“네이버에서����������� ������������������  만든����������� ������������������  많은����������� ������������������  앱들이����������� ������������������  제����������� ������������������  생활의����������� ������������������  패러다임을����������� ������������������  바꿔����������� ������������������  놨어요”����������� ������������������  

35����������� ������������������  /����������� ������������������  NHN����������� ������������������  NEXT����������� ������������������  

마지막으로����������� ������������������  

-  다독,����������� ������������������  다작,����������� ������������������  다상량����������� ������������������  

-  많이����������� ������������������  읽고,����������� ������������������  많이����������� ������������������  쓰고,����������� ������������������  많이����������� ������������������  생각해라.����������� ������������������  

-  open����������� ������������������  source����������� ������������������  +����������� ������������������  github����������� ������������������  -  무언가����������� ������������������  쓸모����������� ������������������  있는����������� ������������������  걸����������� ������������������  만들어����������� ������������������  보자����������� ������������������  

-  전문가의����������� ������������������  도움을����������� ������������������  받자����������� ������������������