[C] Prologue
๐ ๋ค์ด๊ฐ๋ฉฐ
The computing world has undergone a revolution since the publication of The C Programming Language in 1978.
(1978๋ ์ฑ ใThe C Programming Languageใ ์ถํ ์ดํ ์ปดํจํ ์ธ๊ณ๋ ํ๋ช ์ ๊ฒช์ด์๋ค.)
โ The C Programming Language 2nd Edition, Dennis MacAlistair Ritchie
C ์ธ์ด ๊ณต๋ถ๋ฅผ ์์ํ๋ฉฐ ์ฒซ ๊ธ์ ๋จ๊ธด๋ค. ์์ผ๋ก ์ด ์๋ฆฌ์ฆ์์๋ ๋จ์ ๋ฐฉ์์ด ์๋๋ผ ๋ด๊ฐ ๋ฐฐ์ด ๊ฒ๊ณผ ๋๋ ๊ฒ์ ์ค์ฌ์ผ๋ก ๊ธฐ๋กํด ๋๊ฐ๋ ค ํ๋ค.
1. C ์ธ์ด๋?
1972๋ ๋ฒจ ์ฐ๊ตฌ์(Bell Labs)์ ๋ฐ๋์ค ๋ฆฌ์น(Dennis Ritchie)๊ฐ ๋ง๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ค. ์๋ ๋ช ์นญ์ ๊ทธ๋ฅ โCโ์ง๋ง, ํ๊ตญ์์๋ ํ์ ์ด์์ ๋ณด์ด๋ฏ โC์ธ์ดโ๋ผ๊ณ ์ฃผ๋ก ๋ถ๋ฅธ๋ค. ์ธ๊ณ์ ์ผ๋ก ๊ฐ์ฅ ๋ง์ด ์ฐ์ด๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ์ค ํ๋๋ค.
| ํญ๋ชฉ | ๋ด์ฉ |
|---|---|
| ๋ง๋ ์ฌ๋ | ๋ฐ๋์ค ๋ฆฌ์น (Dennis Ritchie) |
| ํ์ | 1972๋ , ๋ฒจ ์ฐ๊ตฌ์ |
| ์์ | ์ธ๊ณ์์ ๊ฐ์ฅ ๋๋ฆฌ ์ฐ์ด๋ ์ธ์ด ์ค ํ๋ |
| ์ฑ๊ฒฉ | ์ ์์ค ์ ์ด๊ฐ ๊ฐ๋ฅํ ์ ์ฐจ์ ์ธ์ด |
2. C์ ์ ์ โ โํ๋ก๊ทธ๋๋จธ๋ฅผ ๋ฏฟ์ด๋ผโ
C์ ์ค๊ณ ์ฒ ํ์ C99 Rationale์ ๋ค์๊ณผ ๊ฐ์ด ๋ฌ์ฌ๋์ด ์๋ค.
| ์์น (์๋ฌธ) | ์๋ฏธ |
|---|---|
| Trust the programmer | ํ๋ก๊ทธ๋๋จธ๋ฅผ ๋ฏฟ์ด๋ผ |
| Donโt prevent the programmer from doing what needs to be done | ํ๋ก๊ทธ๋๋จธ๊ฐ ํ ์ผ์ ๋ฐฉํดํ์ง ๋ง๋ผ |
| Keep the language small and simple | ์ธ์ด๋ฅผ ์๊ณ ๊ฐ๋จํ๊ฒ ์ ์งํ๋ผ |
| Provide only one way to do an operation | ํ ์์ ์ ํ๋ ๋ฐฉ๋ฒ์ ํ๋๋ง ์ ๊ณตํ๋ผ |
| Make it fast, even if it is not guaranteed to be portable | ์ด์์ฑ์ ์ฅ๋ด ๋ชป ํด๋, ๋น ๋ฅด๊ฒ ๋ง๋ค์ด๋ผ |
C๋ฅผ ๋ค๋ฅธ ์ธ์ด๋ค๊ณผ ๊ฐ์ฅ ํฌ๊ฒ ๊ตฌ๋ถ ์ง๋ ๊ฒ์ ์ฒซ ์ค, โํ๋ก๊ทธ๋๋จธ๋ฅผ ๋ฏฟ์ด๋ผโ๋ค.
1
2
3
4
5
6
[ํ๋ ์ธ์ด๋ค] [C ์ธ์ด]
ํ๋ก๊ทธ๋๋จธ๋ฅผ 100% ๋ฏฟ์ง ์๋๋ค ํ๋ก๊ทธ๋๋จธ๋ฅผ ๋ฏฟ๋๋ค
โ โ
๋ฌธ์ ๊ฐ ์๊ธธ ๊ฒ ๊ฐ์ผ๋ฉด "ํ๋ผ๋ ๋๋ก ํ๋ค"
์ปดํ์ผ๋ฌยท๊ฐ์๋จธ์ ์ด ์๋์ผ๋ก โ ์๋ ์ฒจ์ญ ์์ด
ํฝ์ฑํ๊ฑฐ๋ ๋น์ ์ ์ฝ๋๋ฅผ ๋ฐฉ์ง ๋ณธ์ฐ ๊ทธ๋๋ก์ ํ๋ก๊ทธ๋๋ฐ
๐ก ๋น๊ต์ ํ๋์ ์ธ์ด๋ค์ ํ๋ก๊ทธ๋๋จธ๋ฅผ ์์ ํ ๋ฏฟ์ง ์์์, ๋ฌธ์ ๊ฐ ๋ ๊ฒ ๊ฐ์ผ๋ฉด ์ปดํ์ผ๋ฌ๋ ๊ฐ์๋จธ์ ์ด ์๋์ผ๋ก ๊ณ ์ณ์ฃผ๊ฑฐ๋ ๋ง์์ค๋ค. ๋ฐ๋ฉด C๋ โํ๋ผ๋ ๋๋ก ํ๋คโ๋ ํน์ง์ด ๋งค๋ ฅ์ ์ด๋ค. ์ธ์ด์ ์๋์ ์ธ ์ฒจ์ญ์ด ์๋ ๋ณธ์ฐ ๊ทธ๋๋ก์ ํ๋ก๊ทธ๋๋ฐ์ ๋ฐฐ์ฐ๋ ๊ฒฝํ์ ์์ผ๋ก์ ํ์ต์๋ ์ข์ ์ํฅ์ ์ค ๊ฒ์ผ๋ก ๊ธฐ๋๋๋ค.
๐ ์ ๋ฆฌ
- C๋ 1972๋ ๋ฐ๋์ค ๋ฆฌ์น๊ฐ ๋ง๋ , ๊ฐ์ฅ ๋๋ฆฌ ์ฐ์ด๋ ์ธ์ด ์ค ํ๋๋ค.
- ํต์ฌ ์ฒ ํ์ โํ๋ก๊ทธ๋๋จธ๋ฅผ ๋ฏฟ์ด๋ผ(Trust the programmer)โ โ ์๋ ๋ณด์ ์์ด ์ง์ํ ๊ทธ๋๋ก ๋์ํ๋ค.
- ์ด ์๋ฆฌ์ฆ๋ ์ ๋ต์ ์ฎ๊ฒจ ์ ๋ ๊ฒ์ด ์๋๋ผ, ๋ฐฐ์ฐ๊ณ ๋๋ ๊ฒ์ ๋ด ๋ฐฉ์๋๋ก ๊ธฐ๋กํ๋ ๋ฐ ๋ชฉ์ ์ด ์๋ค.
Comments powered by Disqus.