-
Notifications
You must be signed in to change notification settings - Fork 10
/
0243.txt
189 lines (189 loc) · 8.3 KB
/
0243.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
얼마전에 봤던 웹툰 중에
네컷짜리 해외 웹툰 이었는데,
되게 재밌는게 있었어요.
코딩 스탠다드에 관한 내용이었나?
코딩 스타일에 대한 내용이었나 둘중 하나였는데.
우리는 코딩 스타일이 너무 나쁘다
어쩌구 저쩌구 하더니,
그래! 그러면
업계에서 사람들이 쓰는
가장 좋은 코딩스타일을 만들어서
최고의 코딩..
가장 많이 쓰는 코딩 스타일들, 유명한거,
큰 회사가 쓰고있는거.
'걔네들을 모아서 장점만을 뽑아서
우린 최고의 코딩 스탠다드를 만들겠다.'
했는데..
그게 불가능한 거에요.
왜냐면 서로 상충하는게 너무 많아서..
이 얘기를 왜 하냐면,
제가 원칙있게 코딩하라는 말을 되게 많이 해요.
그러니까 원칙있게 코딩하라는게,
자기 자신만의 원칙이 있어야 한다는 것이거든요.
예를 들어서,
뭐 전에 종교전쟁이라고 얘기했던,
If 안에 코드가 하나있을때 Bracket'{ }''을 여냐 마냐.
이런 경우 있잖아요?
자기만의 소신이 있고, 자기만의 원칙이있고,
그걸 왜 그래야 하는지를
믿고 따르라는 말을 하고싶어요.
저는 중괄호 여는 게 제 소신이고.
제가 짜는 코드에는
언제나 중괄호가 열려있어요.
근데 가끔 어떤사람이 짠 코드보면은,
코드를 체킹해요.
파일이 5개가 있는데, 이 파일에서는 안열어.
이 파일 에서는 열어..
모든 스타일이 중구난방으로 섞여있는 경우가 있거든요.
이게 가장 단순한 예를 들어서 중괄호 여는건데,
그 뿐만이 아니라,
오브젝트 디자인이라던가,
인터페이스 뭐 이런 얘기, 전에 했던 것들.
그런것도 자기만의 원칙이 있으면,
일관적인 코드가 나와요.
그러면 거기서 오는 장점과 단점이 있기 때문에,
단점만 조심을 하면 되거든요.
근데 원칙이 없게 짜는 사람들,
세상 모든것에 장점이 보이니까,
그걸 그냥 다 가져오겠다.
라고 하는 사람들이 있어요.
새로운거 나오면 일단 써보고,
여기서 하는 이거 가져오고, 저기서 하는 저거 가져오고...
그래서 코딩이..
어찌보면은
그 안에 10가지 방법이있어요.
하나로 할 수있는거야.
근데 열가지 방법을 다 쓰고있는거야.
이거의 단점은 뭐냐면요.
장점이 10배가 된만큼,
단점도 10배가 되요.
그러면
원래 한가지 코딩스타일만 있고,
한가지 원칙으로만 코딩을 짰을때,
주의해야할것이 이만큼 이라면은 .
지금은 갑자기 10개가 들어오면서,
서로 섞이면서, 주의해야할것이 10배로 늘은거에요.
원래 코드에 절반은 디버깅이라고
제가 전에도 말씀드렸잖아요.
진짜 코드 짜다보면은,
아무리 잘하는 코드 짜는애들도 실수 한두개 만들고.
처음에 안보이고, 버그로 생겨서
버그 고치면서 고친다고요.
근데 결국 단점이 10배가 된다는것은,
버그를 만들 확률도 10배가 된다는 얘기거든요.
왜냐면 사람이라는게 그렇자나요.
운전 배울 때
우회전할때, 처음 배우시는 분들 보면은.
" 야 오른쪽 깜빡이 키고, 오른쪽에 누구있는지 본다음에
핸들을 꺾어서 도는데 그전에 브레이크로
속도를 약간 줄여줘야 돼."
다섯가지 거든요?
처음엔 진짜 힘들어해요.
다섯가지를 다 봐야하니까.
나중에 익숙해지면 몸이 알아서 하겠지만,
저는 코딩도 그렇다고 보거든요.
운전 처음하는사람도
"야 핸들잡고 앞만 똑바로 보고 가."
그러면 더 잘해요.
근데, 사이드 미러 체크해야되고, 백미러 체크해야되고,
이러면 3,4가지가 되니까 점점 힘들어지는거죠.
코딩도 똑같다고 봐요.
코딩도 한가지 원칙만 있으면,
그 원칙을 따라가고
그 원칙에 같이 줄서지 않는 다른 원칙들은,
내가 쓸수 없는 원칙으로 빼면돼요.
단, 이 원칙을 도입하고 지금있는 원칙을 버릴때
그 장점이 단점보다 워낙 크고
그러면 이걸 없애고 한쪽으로 넘어가는것은 당연한데,
그냥 이거는 무슨 프랑켄 슈타인
덕지 덕지 붙혀버리듯이
막 한조각 한조각 붙여가지고
돌게는 만들었는데,
그 안에는 뭐가 떨어질지 모르는
그런 말도안돼는
시한폭탄이 잠재되는 그런 경우가 있거든요.
그래서
코딩을 제가 가능성이 있다고 보는 사람들도
주니어 부터 시작해서 자기 원칙대로 코딩짜는사람을
되게 좋아해요. 그런부분에서.
그렇고
제가 굉장히 '책벌레'
시중에 나와있는 모든 책을 다 읽어봤고,
그 모든책에서 이만큼 떼와서 이야기 하는거에요.
그러면서 '아 이책은 이게좋았고, 저게좋았고,...'
심지어는 그런걸 만들어가지고 멋진 강연도 해요.
난 그런사람들 굉장히 실력이 없다고 보는 이유가
이 사람들은 어쩌피 책을 쓰는사람들은 장점을
이야기 해야하거든요?
뭐든간에 내가 하는 방식의 장점?
그럼 장점만보고 그렇다니까 나는 모아서 쓰겠단
이야기인데,
거기에대한 단점은 어떻게 할꺼냐고.
어떻게 세상에 사람들이 다 성향이 다르고 원칙이 다른데
책 100권에있는 장점을 뽑아와서
코딩을 짤수 있다는 것 자체가 좀 말이안된다고 봐요.
그 중에서 한..
사람이 생각이 10개 정도로 갈린다면,
그 중에 10권 정도라면 이해가 되는데.
100권에서 100개의 아이디어를 가지고 와서
그걸 다 만들 수있다는것은 말이 안된다고 보죠.
자기가 코드를 짤때, 누군가 와서
'이거는 왜 다른스타일로 짰냐?' 라고 말했을때,
그게 '나는 이게이게 맞다고 봐서 이렇게 짰고,
그렇기 때문에 다른것도 이렇게 짜고있다.'
라는 원칙이 있어야 한다고 생각을 해요.
그게 없으면, 솔직한 얘기로
그냥 코드 몽키에요 사실.
우리는 앞으로 코드몽키로서도
돈을 벌고 살수 있을거에요.
그러면
그 코드몽키로 그냥 일용직
일용직은 말이 너무 심했고..
그냥 '야 이런이런거좀 만들어줘.' 그러면
'네!' 뚝딱뚝딱으로 만들어서 돌게만 만들고 그런정도?
어쩌면 단순노동인데,
그걸 코딩으로하는 단순노동일뿐이죠.
그런사람 이상은 안된다고 봐요.
그러면 이제
뭐 흔히들 그런거 하잖아요
'정말 잘하는 프로그래머 될거야.'
그게 보통은
어찌보면은 엔지니어라는거에 좀 가깝거든요?
내가 스스로 무에서 유를 창조하고,
그 디자인을 내가만들고,
그 밑에 많은 사람들이 같이 협업을 해서,
이 제품을 제대로 만들겠다.
그런 개념이 더 가깝거든요.
장인의 정신에 조금더..
아니면 '내가 만든 제품은 크게 문제가 없어야 한다.'
이런것들.
그런 자세를 하는 사람들은
한가지 원칙을 따라요. 소수의 원칙
절대 이 사람들이 중구난방으로 하면서
이 책에서 이랬으니까,
이러쿵, 저러쿵 새로나온 거 막 최고야~
이런 사람들은 대부분이 그냥
뭐, 한국에서 '입턴다' 라 그러더라구요.
'입 터는' 사람들?
제가 볼땐 정치하는 사람들?
실력없으면서 어떻게든 버티려는 사람들이고.
그래서
어릴때부터 원칙의 코딩을 짜는 건 좋은거같아요.
이런저런 시도해 보는것 좋고
그러나 결과적으론,
'시도해봤는데 이게 안좋아하고 이리로 가야 되겠어.'
라는 그런 원칙적으로 코딩하는 사람들.
전 그게 맞다고
저는 언제나 원칙의 코딩을 하라그래요.
코드 한줄, 한줄 짤때도
왜 이렇게 짰는지 생각하면서 짜라고.
누가 물어봤을때 대답을 못한다는것 자체는,
원칙 없게 짠다는거고
그거는 결과적으론
코드 몽키 수준 이상을 가지못한다고 봐요.
그게 본인이 원하는거라면,
나쁘지않지만.
저 개인적으로는 그렇지 않기 때문에
저는 원칙있게 짜는걸 추천해요 사람들에게
'소신있게 코딩해라'
이게 좀더 멋진 제목이 되겠네요.