-
Notifications
You must be signed in to change notification settings - Fork 10
/
0287.txt
235 lines (235 loc) · 10.1 KB
/
0287.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
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
안녕하세요 포프입니다
최근들어 이상하게 프로그래밍에 관심이 많아지는
사람들이 많은 것 같아요
아니면은 이게 뭐 정부에서
초등 교과과정으로 넣어서 그런가? 그럴 수도 있고
음 그래서 오늘 비디오는
프로그래밍이 뭐냐고 물어보는 사람들이 많은데
그거에 대한 답을 할 생각은 없어요 사실은
그것보다는 프로그래밍을 되게 어렵게 생각을 하고
되게 복잡하게 생각하는데
저는 프로그래밍은 일단 기본적인 개념이
되게 간단한 거라고 생각을 하거든요
음
그래서
딱 한 2분 정도의 요약을 하면은
일단은 뭐 프로그래밍은 기본적으로 이제
컴퓨터에서 돌아가는 프로그램을 짜는 과정이죠
그럼 컴퓨터가 이해할 수 있는 언어로,
이해할 수 있는 방법으로
이런이런이런이런이런이런 일을 하렴
이라고 말하는 게 프로그래밍이고
뭐 간단하게 보면 계산기에서 버튼 두드리는 것도
프로그래밍일 수도 있어요 3하고 5를 더하렴 이런 식으로
근데
프로그래밍하려면 복잡한데 이 엄청난 프로그램을
어떻게 돌려요 막 이런 생각을 많이 해요
근데 정말 단순하게 보면 좋겠어요
프로그래밍이라는 게
저는 보통 누구한테나 그렇게 얘기를 해요
프로그래밍은 복잡한 게 아니라
딱 두 개만 알면 돼
딱 두 개만
조건문과 반복문
전 이 얘기만 해요 사실은
그 외의 거는 뭐.. 추가고
기본적인 프로그래밍 개념은 조건문과 반복문일 뿐이고
그거를 이제 좀..
거기에서 시작을 해서 복잡한 걸 만드는 거죠
단순하게 만들면 그거인 거에요
그래서
심지어는 우리가 테니스를 칠 때도 보면은
테니스가 뭐에요
뭐 열심히 배우면 폼도 나오고
뭐 이런 스매싱도 나오고 그러지만
정작 친구하고 놀러 나가면
테니스 채 하나 들고 공 하나 들고 치면 되는 거거든요?
공이 엉뚱한 데로 날아가지
일단은 치면 돼요
테니스는 칠 수 있어요
그럼 테니스는 테니스 공에
테니스 채 맞추는 게 전부잖아요 규칙은 있지만
그런 것처럼 프로그래밍도 기본은 정말 단순해요
조건문과 반복문이라고 봐요
그러면
아 제가 이 얘길 왜 하냐면은
이 생각을 요즘 너무 많이 했어요 사실은
그러다가 최근에 이제 한빛 미디어에 책 제안서를 냈고
프로그래밍 입문 책을 만들자
언어 입문 책이 아니라 아무것도 모르는 사람들이
처음으로 프로그래밍을 할 수 있는 책을 만들자
를 얘기하다 보니까 정말 쉽게 써야 됐고
쉽게 쓸려면
이게 되는 거죠
그니까 정말 쉬운 거라고 생각이 들더라고요
조건문과 반복문이면 된다라고
그래서
그 책은 지금 이제.. 아직 계약서는 안 썼고
("Hello Coding 프로그래밍" 2018-01-02 출간)
이 비디오 나갔을 때 썼을 수도 있고
지금 계약이 진행 중이에요
("Hello Coding 프로그래밍" 2018-01-02 출간)
그래서
아마 제가 되게 바빠서
올해는 못 나오지 않을까?
못 나오지 늦었구나
내년쯤에 나올 것 같아요
중간에 제가 이상하게 뻘짓하고 취소만 안 한다면?
그거를 계획 중이고
거기서 나오는 얘기가 돼요 이게
조건문과 반복문이면 된다라는 얘기가 뭐냐면
프로그래밍 하신 분들은 알겠지만
결과적으로는 프로그래밍에서 뭔가를 할 때 모든 거는
일단 최소한 반복이에요
예를 들어서 제가 뭐 크롬 브라우저를 쓴다고 해 보죠
뭐 인터넷 익스플로러라든가
그러면 화면을 보면은
화면을 계속 그려줘야 될 거 아니에요, 얘가?
화면에 나오는 거를
화면에 움직이는 것도 많고
그러면 얘는 반복하면서 반복하면서
계속 화면에 그려 주는 것뿐이에요 맞잖아요?
그러면 이게 동일한 이미지면은
계속 그려 주면 되는 거고 동일한 이미지로
이게 바뀌는 거면은 뭐 글자가 바뀐다거나 그러면
바뀌는 걸 보여 주면 돼요
자 그러면 글자가 바뀐다 그랬잖아요
그럼 글자가 바뀌는 건 어떻게 바뀌냐
어 그러면 시간따라 뭐 글자가 바뀌잖아요
5초마다 한 번씩 검색어가 바뀐다거나 뭐 이런 것들
그런 거는 그냥 간단한 거에요
한 바퀴 반복문을 돌아요 프로그램이
반복을 하잖아요? 똑같은 걸 그려 주면서?
반복하다가 한 번 확인을 해요
야 내가 지금 시간이 몇 초나 지났어?
어, 3초
어, 같은 거 그려
조건이죠?
그러다가 5초가 됐어
야 5초가 지났어 어떻게 해
어, 화면에 그리는 그 글자를 이걸로 바꿔 줘 다른 걸로
그러면 그 조건이 충족하냐 안 하느냐에따라
현재 그려 줘야 되는 글자를 바꿔 주는 거고
그럼 계속 글자를 그리는 과정은 반복일 뿐이에요
그럼 뭐 이제 어떤 글자를 보여주냐가 뭐 상태라고도 하고
뭐 프로그램에서는 변수라고도 하지만
뭐 결과적으로는
뭐.. 계산기에도 메모리 기능이 있잖아요
값 기억해 놓는 거 좋은 거는
그런 것처럼,
아니면 노트에 적어두거나
그런 식으로 다른 게 나오는 것 뿐이고
값을 저장할 수 있는 거? 상태를 저장할 수 있는거?
그래도 그거는 프로그램의 상태라고 보고
그 상태를 변경하는 거나
이 상태를 화면에 보여 주는 거나
이 모든 거는 결과적으로는
조건문과 반복문으로 해결이 된다라는 거에요
그래서..
문제는 이렇게 조건문과 반복문을 얘기를 하면은
그래 그럼 여기서 과연 나중에 게임은 어떻게 만들까
이런 얘기까지 나와요
굉장히 복잡한 과정이에요
물론 그거는 프로그래밍을 할 수 있다의 범위보다
훨씬 넘어서는 거죠
게임 프로그램을 만들 수 있다라는 것 자체가
그래서 프로그래밍을 처음 배우는 사람들은
이렇게 너무 큰 거에 압도를 당하지 말고
작은 것부터 만들면 되는 것 같아요
처음에 화면에 구구단 출력하기
굉장히 많이 하잖아요
그거 할려면은
구구단 출력할려면은
1 곱하기 1, 1 곱하기 2 해서,
1부터 9까지 늘어나고
그게, 뒤에 있는 뒤항이
그리고 전항도 1부터 9까지 들어가잖아요
그러면 반복을 9번 돌리고 이 뒤에 걸로
그와 동시에 그 앞에 것도
반복을 9번 돌리는 거 아니에요?
총 81번
반복을 돌리면서
그리고 뭐 이제
뭐 줄바꿈 하면은
이 반복을 9번 돌았으면 줄바꿈 하고
그래서 그런 개념으로 조건문과 반복문을 굉장히..
뭐랄까
씹어먹는다고 그러나요?
씹어서 먹어서 소화시킨다?
그 정도까지 이해를 해 놓으면 그 위에 나중에 쌓는 거는
그렇게 생각보다 어렵지는 않아요
그 다음에는 그냥 문제 풀기죠
이 문제를 풀려면 어떤 방법으로 풀어야 되냐
뭐 좋은 자료들 많고
그거는 배워 가는 과정이고
뭐 우리가 솔직한 얘기로
산수 더하기만 겨우 할 줄 알았지
나중에 수학을 보면은
뭐 길이 구하기 이런 것도
배워서 보면은 아 이거 쉬웠구나 하지만
배우기 전에는 모르는 거잖아요
근데 그걸 하든 말든 간에
뭐든 간에 기초가 되는 거는 사칙연산이잖아요
더하기 곱하기 빼기
그래서 그런 거가 되게 중요하기 때문에 결국에는 기본은
조건문과 반복문이에요
그래서
실제로 제가 생각하고 있는 제 책의 분량도
되게 적을 것 같긴 한데
조건문과 반복문을 잘 다룰 줄 알고
그리고 화면에 아까 말했던 구구단같이 단순한 것들을
뭔가 해 줄 수 있는 그 정도까지만 되면은
분명히 그 다음 단계는 더 배워 나갈 과정이고
더 재밌다는 거죠
그래서..
근데 그거를 안 하고 사람들이 자꾸만 이제
프로그래밍을 너무 크게 보고
처음 배울 때부터 막 이상한 클래스라든가 이런 개념부터
배우기 시작하면서 더 헷갈려하는 게 문제인 것 같아요
제가 하고 싶었던 말은
프로그래밍에 관심있는 사람들은
정말 단순한 것들부터 먼저 하기를 바라고
그리고..
뭐 더 좋은 거는 제 책이 나올 때까지 기다린 다음에
제 책을 보시고 따라하시면 돼요
제가 그런 책을 잘 써요
광고했고
암..
그래서
오늘 해주고 싶었던 말은
프로그래밍에 대한 관심이 많아지고
사람들이 과연 이게 뭐냐
굉장히 무슨
뭐 블랙매직, 그니까 막 부두매직
이런 걸로 생각을 하는데
사실은 그게 아니라 그냥 단순하게
계속 반복으로 뭔가를 하면서
조건에 따라 뭔가를 바꿔 주는 거
그게 프로그래밍의 전부에요
그래서..
그 정도로 생각을 하고 그냥 한 번쯤은
누구나 뛰어들어 봤으면 좋겠어요
저도 처음 시작할 때는
뭐 이런 전문 프로그래밍 안 했죠 저도
근데 그때 자잘한 프로그래밍 할 수 있는 것만으로도
엄청나게 많은 일을 할 수 있었어요
막 엑셀 스프레드 식 같은 거 있잖아요?
그런 것도 열심히 막 조작해 보고
이런 거 알면은 자동화가 되게 쉬워요
이것저것들 단순 노동해야 되는 것들
원래 그럴려고 컴퓨터가 만들어진 것 같기도 하고
그래서..
아 프로그래밍은 정말 쉬운 거다
조건문과 반복문만 알면은 프로그래머는 될 수 있다
물론 거기서 전문적인 프로그래머까지 가기까지는
또 먼 길이 있지만
모든 사람이 가야 되는 건 아니니까
음..
그리고 알아 두면은
나름대로 도움이 되니까
뭐 옛날에 어릴 때
주판 다루는 거 알았던 거랑 똑같은 것 같아요
주판은 대충 하잖아요 다들
못하나 이제?
예 그 정도였고요
예 포프였습니다