C์ธ์ด๋?
1. ๋ฌธ์ ํด๊ฒฐ์ ์ํ ๊ณผํ์ ์ฌ๊ณ
๊ณตํ์๋ค์ ์ด๋ ต๊ณ ๋ณต์กํ ๋ฌธ์ ์ ์ด๋ป๊ฒ ์ ๊ทผํ ๊น?
-> ๋ณต์กํ ๋ฌธ์ ๋ฅผ ์์ ๋ฌธ์ ๋ก ๋๋์ด ํ๋์ฉ ์ ๊ทผํ๋ค. ์ด๋ ๊ฒ ์์ ๋ฌธ์ ๋ฅผ ํ๋์ฉ ํด๊ฒฐํ๋ค ๋ณด๋ฉด ๊ฒฐ๊ตญ ํฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ฒ ๋๋ค.
์ด์ฒ๋ผ ํ์ค ์ธ๊ณ์ ๋ฌธ์ ๋ฅผ ๋ถ์ํ์ฌ ํด๊ฒฐ์ฑ ์ ์ฐพ๋ ๊ณผํ์ ์ฌ๊ณ ๋ฒ์ computational thinking์ด๋ผ๊ณ ํ๋ฉฐ, ์ด๋ ๊ฒ ์ค๊ณํ ํด๊ฒฐ์ฑ ์ ์ปดํจํฐ์ ๋ช ๋ น์ด๋ก ์์ฑํ๋ ๊ฒ์ ์ปดํจํฐ ํ๋ก๊ทธ๋๋ฐ์ด๋ผ๊ณ ํ๋ค. ์ฆ ์์ ๋ฌธ์ ๋ก ๋ถํดํ๊ณ , ๋ฌธ์ ์ ํจํด์ ๋ฐ๊ฒฌํ๊ณ , ์ด๋ค ๋ฐ์ดํฐ๋ฅผ ์ด์ฉํด์ผ ํ๋์ง ์ฐพ๋ ๊ณผ์ ์ด๋ค.
์๋ฅผ ๋ค์ด, ๋นํธ๋งต ํ์ผ์ ์์คํค ์ํธ๋ก ๋ณํํ๋ ๋ฌธ์ ๋ 1) ์ด๋ฏธ์ง ํฌ๋งท ์์๋ด๊ธฐ, 2) ํฝ์ ์ ์์์ ์ป์ด์ค๊ธฐ, 3) ํฝ์ ์ด ์์์ ๋ฐ๋ผ ํน์ ๋ฌธ์๋ก ์ถ๋ ฅํ๊ธฐ๋ก ๋๋์ด ์๊ฐํ ์ ์๋ค.
+) ์ฒ๋ฆฌํ๊ณ ์ ํ๋ ์์ ๋๋ ๋ฌธ์ ๋ ๋ค๋ฅธ ๋ง๋ก ์๊ตฌ์ฌํญ์ด๋ผ๊ณ ๋ ํ๋ค. ๋ฐ๋ผ์ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ ์์ ์ ์๊ตฌ์ฌํญ์ ๋ง์กฑ์ํค๋ ์ผ์ด ๋๋ค.
2. ์๊ณ ๋ฆฌ์ฆ๊ณผ ์ฝ๋ฉ
์๊ณ ๋ฆฌ์ฆ์ด๋ ๋ญ ์๋ฏธํ๋๊ฑธ๊น?
-> ๋ฌธ์ ์์ ์ผ์ ํ ํจํด์ ๋ฐ๊ฒฌํ๊ณ , ํจํด์ ํ ๋๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ์ ์ฐจ๋ฅผ ์๊ณ ๋ฆฌ์ฆ์ด๋ผ๊ณ ํ๋ค.
๊ทธ๋ฆฌ๊ณ ์ด ์๊ณ ๋ฆฌ์ฆ์ ์ฝ๋๋ก ํํํ๋ ํ๋์ ์ฝ๋ฉ์ด๋ผ๊ณ ํ๋ค. ์๊ณ ๋ฆฌ์ฆ์ ์ปดํจํฐ ๋ช ๋ น์ผ๋ก ์์ฑํ๋ ๊ฒ์ ํ๋ก๊ทธ๋๋ฐ์ด๋ผ๊ณ ํ๋ฉฐ, ์ด๋ ์ฝ๋ฉ๊ณผ ๊ฐ์ ๊ฐ๋ ์ด๋ค.
ํ๋ก๊ทธ๋๋ฐ๊ณผ ์ฝ๋ฉ?
-> ์ฌ์ค ๋ ๋ค ๊ฐ์ ์์ ์ ์ง์นญํ๋ค. ํ๋ก๊ทธ๋๋ฐ์ ์ปดํจํฐ ๋ช ๋ น์ด๋ก ํํํ๋ค๋ ๋ป์ด๋ผ๋ ์ปดํจํฐ ์ชฝ์ ๊ฐ๊น๊ณ , ์ฝ๋ฉ์ C ์ธ์ด ๋ฑ์ผ๋ก ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ์ฝ๋๋ฅผ ์์ฑํ๋ค๋ ๋ป์์ ์ธ์ด ์ชฝ์ ๊ฐ๊น์ด ํํ์ด๋ค.
3. C์ธ์ด๋?
BCPL(Basic Combined Programming Language) -> B์ธ์ด -> C์ธ์ด -> C++, Java, C#, PHP...
ํ์ฌ ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๊ณ ์๋ Window, Linux, iOS, Android ๋ฑ์ ์ด์์ฒด์ ์ ํต์ฌ ์์์ธ ์ปค๋์ C์ธ์ด๋ก ๋ง๋ค์ด์ ธ์๋ค(์ฝ๊ฐ์ ์ด์ ๋ธ๋ฆฌ์ด ํฌํจ). ์ฆ, ์ด์์ฒด์ ์ ๋ชจ๋ ๊ธฐ๋ฅ์ ์ด์ฉํ ์ ์๋ ๊ฑด C์ธ์ด๋ฅผ ํตํ๊ธฐ ๋๋ฌธ์ด๋ค. ๋ค๋ฅธ ์ธ์ด๋ค์ ๋ชจ๋ C์ธ์ด์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๊ฐ์ ธ๋ค ์ฐ๋ ๊ตฌ์กฐ์ด๋ค.
ํนํ ๋ฉ๋ชจ๋ฆฌ์ ํ๋์จ์ด๋ฅผ ์ง์ ์ ์ดํ๋๋ฐ C์ธ์ด๋ฅผ ๋ฐ๋ผ๊ฐ ์ธ์ด๊ฐ ์๋ค. C์ C++์ ์ ์ธํ๋ฉด ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ง์ ์ ์ดํ๋ ๋ฒ์ฉ ์ธ์ด๋ ๋ง์ง ์๋ค. ์ฐ๋ฆฌ ๋์ ์ ๋์ง๋ ์์ง๋ง C์ธ์ด๋ ์ปดํจํฐ ์ธ์์ ๋จ๋จํ ๊ธฐ๋ฐ์ ์ด๋ฃจ๊ณ ์๋ค.
C์ธ์ด๊ฐ ์ด๋ ต๋ค๋ ํ๊ฐ๋ ์์ง๋ง, ํ๋ก๊ทธ๋๋ฐ์ ๊ธฐ์ด๋ฅผ ์ ๋๋ก ๋ฐฐ์ฐ๊ธฐ ์ข์ ์ธ์ด์ด๊ธฐ๋ ํ๋ค. ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๋ ํ๋์จ์ด์ ๊ด๋ จ๋ ๋ด์ฉ๋ ๋ฐฐ์ฐ๊ธฐ ๋๋ฌธ์ ์ปดํจํฐ์ ๋์ ์๋ฆฌ๋ฅผ ํจ๊ป ์ดํดํ ์ ์๋ค.
BCPL
: ๋งํด ๋ฆฌ์ฒ๋๊ฐ ์ค๊ณํ ์ ์ฐจ์ ๋ช ๋ นํ, ๊ตฌ์กฐ์ ์ปดํจํฐ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ด๋ค.
BCPL์ ๊ดํธ {}๋ฅผ ์ฌ์ฉํ ์ต์ด์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ด๋ค. ๊ดํธ๋ ๊ฑฐ๋ญ๋๋ ๋ฌธ๋ฒ์ ๋ณํ๋ฅผ ์์กด์์ผฐ๊ณ , ํ๋ก๊ทธ๋จ ์์ค ์ฝ๋์ ๋ฌธ๋ค์ ํ๊ธฐํ๋ ์ผ๋ฐ์ ์ธ ์๋จ์ด ๋์๋ค.