์ฒ์๋ถํฐ ์๋ฒฝํ ํ๋ก๊ทธ๋จ์ ์๋ค.
์ผ๋จ, ๋ง์ด ์คํจํด๋ด์ผ ํฉ๋๋ค.
์๋์ด ๊ฐ๋ฐ์๋ถ๋ค์ด ๊ณตํต์ ์ผ๋ก ํ๋ ๋ง๋ค์ด ์๋ค. ์ผ๋จ, ๋ง์ด ๋ง๋ค์ด๋ณด๋ผ๋ ๊ฒ.
๊ฐ๋ฐ์ ์
๋ฌธํ ์ฌ๋๋ค์, ์ผ๋จ ์ฝ๋๋ฅผ ๋ง์ด ์ง๋ณด๋๊ฒ ๊ฐ์ฅ ๋น ๋ฅธ ๊ธธ์ด๋ค.
์ค๋ฅ๋ฅผ ๋ง๋๊ณ , ๊ทธ๊ฒ์ ๋ํด์ ์ง์ ํด๊ฒฐํด๊ฐ๋ ๊ณผ์ ์ ๊ฑฐ์น ๋ ๊ฐ์ฅ ๋น ๋ฅธ ์ฑ์ฅ์ ์ด๋ฃฌ๋ค.
๋ง์ ์์ ๋ณธ์ธ๋ง์ ์๋น์ค๋ฅผ ๊ทธ๋ฆฌ์.
๐ ์์ฐ์ค๋ฝ๊ฒ ๊ธฐ์ ๋ค์ด ํ์ํด์ง๋ค. GITHUB FLOW, MVC, DRY ์์น, SOLID ์์น, ...
์น ํด๋ผ์ด์ธํธ์ ์น ์๋ฒ, HTTP
๊ตฌ์กฐ
์น ํด๋ผ์ด์ธํธ๋ ํญ์ '์์ฒญ'๋ง ํ๊ณ , ์น ์๋ฒ๋ ํญ์ '์๋ต'๋ง ํ๋ค. ์ด ํต์ ๊ณผ์ ์ ํ์ํ ๊ท์ฝ์ด ๋ฐ๋ก HTTP
์ด๋ค!!
** ์น ์๋ฒ๋ก๋ถํฐ ๋ฌด์์ ๋ฐ์์ค๋์ง ๊ถ๊ธํ๋ค๋ฉด, ์น ์ฌ์ดํธ์์ ctrl + u
๋ฅผ ๋๋ฌ๋ณด์.
- ์น ํด๋ผ์ด์ธํธ
- ํด๋ผ์ด์ธํธ๋ ์๋ฒ์ ์ฃผ์(IP)์ ํฌํธ(Port)๋ ๋ฌด์กฐ๊ฑด ์๊ณ ์์ด์ผ ํ๋ค.
- ์น ์๋ฒ
- ์๋ฒ๋ ์์ฒญ์ด ๋ค์ด์ฌ ๋๋ง ํด๋ผ์ด์ธํธ ์ ๋ณด๋ฅผ ๊ฐ๊ณ ์๋๋ค.
์ ์์ด ๊บผ์ง๋ฉด, ์๋ฒ์ ์ ์ฅ๋ ์ ๋ณด๋ ๋ชจ๋ ๋ ์๊ฐ๋ค. ๐ DB๊ฐ ํ์ํ ์ด์
- ์๋ฒ๋ ํด๋ผ์ด์ธํธ์ ์์น๋ฅผ ํ์์ ๋ชฐ๋ผ๋ ๋๋ค. (ํด๋ผ์ด์ธํธ๊ฐ ์์ฒญ ์ ๋งค๋ฒ ์๋ ค์ค.)
- ์๋ฒ๋ ๋ชจ๋ ํด๋ผ์ด์ธํธ๋ค์ ๋ํด ์ ํด์ง ๊ท์ฝ์ ๋ฐ๋ฅธ ์๋ต๋ง ํ๋ค. (ํน๋ณ ๋์ฐ ์์)
๐ ์น ์ด์ฐฝ๊ธฐ์๋, '๋ก๊ทธ์ธ'์ ํตํด ์ถ๊ฐ์ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ด ์์๋ค. ํ์ฌ๋ ์ฟ ํค, ์ธ์
๋ฑ ์ถ๊ฐ.
- ์๋ฒ๋ ํด๋ผ์ด์ธํธ ์์ฒญ์ ๋ํด ํ์์ ๋ณด(์ถ๊ฐ์ ๋ณด)๋ค๊น์ง ๋ชจ๋ ๋ ๋๋งํ๋ค. (๊ด๊ณ ๊ฐ ๋ณด์ด๋ ์ด์ )
- HTTP
- ํด๋ผ์ด์ธํธ์ ์๋ฒ์ ํต์ ๊ณผ์ ์ ๋ํ ๊ท์น์ ๋ด์ ๊ฒ์ด HTTP ์ด๋ค.
- http ํ๋กํ ์ฝ ํ์๊ณผ ํฌํธ๋ ์ผ์นํด์ผ ํ๋ค.
๐ https://www.naver.com:443
๊ณผ ๊ฐ์ด https๋ 443 ํฌํธ๋ง ํ์ฉํ๋ค. (http ๋ 80 ํฌํธ)
์ด์์ฒด์
- ๋ํ์ ์ผ๋ก macOS, Linux, Windows ๊ฐ ์๋ค. ์ํํธ์จ์ด์ ์ํจ.
- Hardward ( CPU, Memory, Disk ) ์ ์ํ๋๊ฒ๋ ๊ฐ์ด๋ฐ์์ ์ค์ํ ์ญํ ์ ํ๋ค.
- Disk์ ํ์ผ(ํ๋ก๊ทธ๋จ)์ด ์ฌ๋ผ์ค๋ฉด, Memory์ ์ฌ๋ผ๊ฐ๊ณ , CPU์ ์ํด ๋ช
๋ น์ด ์คํ.
๐ ์ ๋ง์ ํ๋ก๊ทธ๋จ๋ค์ด ์๋ถํ ์์คํ
์ ๋ฐ๋ผ ์คํ๋๊ณ ์๋ค. ( ์๊ฐ์ ์ชผ๊ฐ์ ์คํ )
- CPU๋ ์ฒ๋ฆฌํ ์ผ๋ค์ ์ ํํ๋ ๊ฒ์ด ์๋๋ผ, ์ด์์ฒด์ ๊ฐ ๊ฐ์ ธ๋ค ์ฃผ๋ ๊ฒ.
์ด์์ฒด์ ๊ฐ ์ผ๋งํผ์ ์ผ์ ์ฒ๋ฆฌํด์ผ ํ ์ง CPUํํ
์ ๋ฌ. -> ์ด์์ฒด์ ๊ฐ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ด๋ฆฌ
ํ๋ค๋ ๋ง์ด ์ฌ๊ธฐ์ ๋์จ๋ค.
์ด์์ฒด์ ๊ฐ ํ์ํ ์ด์
- ์ฌ์ฉ์๊ฐ ์ปดํจํฐ๋ฅผ ์ฝ๊ฒ ๋ค๋ฃฐ ์ ์๋๋ก ํด์ฃผ๋ ์ธํฐํ์ด์ค์ ๊ธฐ๋ฅ.
- ๊ณผ๊ฑฐ์๋(OS๊ฐ ์์ ๋) ํน์ํ ๋ชฉ์ ์ ๊ฐ์ง ํ๋ก๊ทธ๋จ์ ์ค์นํด์ ๊ทธ ๋ชฉ์ ์ ๋ง๊ฒ ์ด์ฉํ๊ณ ... ๋ฒ๊ฑฐ๋ก์ ๋ค.
- ์ปดํจํฐ ์์์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๋ ์์คํ
.
- ์๋์ฐจ๋ก ์๋ฅผ ๋ค๋ฉด, ์์๋ค(๋ฐํด, ์์ด์ปจ, ๋ค๋น๊ฒ์ด์
๋ฑ)์ ๋ฐ๋ก ๊ด๋ฆฌ ๋ฐ ์กฐ์ํ๋ค๊ณ ํ๋ฉด ๋งค์ฐ ๋ถํธํ๋ค. ๐ ๋ชจ๋ ์์ฐ๋ฅด๋ Operating System(์ด์์ฒด์ )๊ฐ ์์ผ๋ฉด ๊ต์ฅํ ํธ๋ฆฌํด์ง๋ ๊ฐ๋
.
- ํ๋์จ์ด์ ์ ๊ทผํด ์ฌ์ฉ์ ๋ช
๋ น์ ์ ๋ฌํด์ฃผ๋ ๋งค๊ฐ์ฒด.
- ์ฐ๋ฆฌ๊ฐ ํํ ์ฌ์ฉํ๋
ํด๋ ์์ฑ
์ญ์ ํ๋๋์คํฌ
์์ ๋ด์ฉ์ ์ ์ฅํ๋ ๊ฒ์ด๋ค.
- ๋ฌผ๋ฆฌ์ ์ธ ํ๋์จ์ด ์ฅ์น๋ฅผ ๋ค๋ฃจ๋ ๊ฒ ์ฌ์ด ์ผ์ด ์๋์๋๋ฐ, ์ด์ ์ฒด์ ๊ฐ ๊ทธ๋ฐ ๊ฒ๋ค์ ์ฝ๊ฒ ํด์ค๋ค.
(์๋ฅผ ๋ค๋ฉด, ๋ชจ๋ํฐ์ ์ด๋ค ๊ทธ๋ฆผ์ ๋ณด์ฌ์ค๋ค๊ฑฐ๋, ๋ง์ฐ์ค ํด๋ฆญ์ ๋ฐ์์ ํ๋ค๋๊ฐ)
๋น์ ๋ฅผ ํตํด ์์๋ณด์!
'ํ๋์จ์ด'๋ฅผ ๋ค๋ฃฐ๋ ค๋ฉด ๊ธฐ๊ณ ์ธ์ด๋ฅผ ๋ฐฐ์์ผ ํ๋๋ฐ, ๊ทธ๋ฌ๊ธด ๊ท์ฐฎ๋ค. ๋ง์น ์ธ๊ตญ์ ๋๋ฌ๊ฐ์ ๋, ๋ฒ์ญ๊ธฐ ์ฑ์ ์ฌ์ฉํ๋ ๊ฒ์ฒ๋ผ, ์ฐ๋ฆฌ(์ฌ์ฉ์)๊ฐ ์ ๋ฌํ ๋ง(๋ช
๋ น์ด)๋ค์ ๋ฒ์ญํด์ฃผ๋ ๊ธฐ๋ฅ์ ๋ด๋นํ๋ ๊ฒ์ด ๋ฐ๋ก 'OS(์ด์์ฒด์ )'๋ผ๊ณ ํ ์ ์๋ค!
์ฆ, ์ฌ์ฉ์๊ฐ ์์ฉ ํ๋ก๊ทธ๋จ ์คํ
-> ์์ฉ ํ๋ก๊ทธ๋จ์ ์ด์ ์ฒด์ ํํ
์์ฒญ
-> ์ด์์ฒด์ ๋ ํ๋์จ์ดํํ
์์ฒญ.
ํ์จ์ด์ ROM
- ํ์จ์ด : ๋ฉ์ธ ํ๋ก๊ทธ๋จ์ด ๋จ๋๋ฐ ๋์์ ์ฃผ๋ ํ๋ก๊ทธ๋จ. ๊ต์ฅํ ์์ ํ๋ก๊ทธ๋จ์ด๊ณ , ROM์ ์์ฃผํ๋ค.
- pc ๋ถํ
์ ์ํด์ ์ด์์ฒด์ ์ผ๋ถ๋ถ์ด ์คํ๋์ด์ผ ํ๋ค. ๊ทธ๋ฐ๋ฐ ์ปดํจํฐ๋ฅผ ๋๋ฉด RAM์ด ๋ ์๊ฐ๋ฒ๋ฆฐ๋ค.
์ปค๋๊ณผ ์
- ์ปค๋๊ณผ ์ ๋ชจ๋
์ด์์ฒด์
์ ์ํ๋ค๋ ์ !
์ปค๋ (์ ๋ถ)
- ํ๋ก๊ทธ๋จ์ด ์คํ๋๋ฉด
ํ๋ก์ธ์ค
๋ผ๊ณ ํ๋ค.
ํ๋ก์ธ์ค a : ํ์ผa.txt ์์ฑ -> ์ปค๋์ ์์ฒญ.
ํ๋ก์ธ์ค b : ํ์ผa.txt ์์ฑ -> ์ปค๋์ ์์ฒญ.
์ปค๋์ ์๋ก์ ์์
์ด ์นจํด๋์ง ์๋๋ก, ์ค์ผ์ค๋งํด์ค๋ค. (์ค๊ฐ๊ณผ์ )
- ๋ง์ฝ, ๊ธฐ์ ์๋์ฐจ์ ์ปค๋์ด ์๋ค๋ฉด, ์์
์ ๋ํ ์๋ ์ ํ์ด ๋ค์ด๊ฐ๋ค.
์ฆ, ์์คํ
์ด ์ง์ ๊ฐ๋ฅํ๋๋ก '๋ณดํธ ์ฅ์น' ์ญํ ์ ํด์ฃผ๋ ๊ฒ.
- ๊ฒฐ๊ตญ, ๋จ์ํ
ํด๋ ๋ง๋ค๊ธฐ
์ ๊ฐ์ ์์
๋, ์ปค๋
ํํ
์์ฒญ์ ํ ๊ฒ์ด๊ณ , ์ปค๋
์ด ๊ทธ๊ฑธ ๋์ ํด์ค์ ์์ฑ๋๋ ๊ฒ.
- ์ด์์ฒด์ ์ ์ฌ์ฅ์ด์ ์ด์์ฒด์ ๋ฅผ ๊ท์ ์ง๋ ๋งค์ฐ ์ค์ํ ๋ถ๋ถ. ์ด์์ฒด์ ๋งจ ํ๋จ์ ์์นํ๋ค.
- ํ๋์จ์ด ์์์ ๊ทธ๊ฒ์ ํ์๋กํ๋ ํ๋ก์ธ์ค์ ๋๋ ์ค๋ค. + ๋ฉ๋ชจ๋ฆฌ ์ ์ด
์ (Shell)
- ๋ณดํต ์ปค๋ํํ
์ง์ ๋ช
๋ น์ ๋ด๋ฆฌ๋ ๋ฐฉ์์ ์ด๋ ต๋ค. ๊ทธ๋์
์
์ ํตํด ์ปค๋์ ์ ๋ฌํ๋ ๋ฐฉ์์ ์ฌ์ฉ.
์๋ฅผ ๋ค์ด, ๋๋ ํ ๋ฆฌ๋ฅผ ๋ณด์ฌ์ฃผ๋ dir
๋ช
๋ น์ด๋ ์
์ ๊ฑฐ์ณ์ ์ปค๋์ ์ ๋ฌ๋๋, ์ปค๋์ ์ฝ๊ฒ ์ธ ์ ์๊ฒ ํด์ฃผ๋ ๋ช
๋ น์ด์ด๋ค.
- ์ฌ์ฉ์ ๋ช
๋ น์ ํด์ํ๊ณ ์ด๋ฅผ ์ปค๋์ ๋ฟ๋ ค์ฃผ๋ ์์คํ
ํ๋ก๊ทธ๋จ์ด๋ค.
- ์ปค๋๊ณผ ์ ์์ฒญ ๊ณผ์
- ์ฌ์ฉ์ ์์ฉ ํ๋ก๊ทธ๋จ ์คํ -> ์ด์์ฒด์ ๊ฐ ์ปค๋์ ์ ๋ฌ -> ํ๋์จ์ด
- ์ฌ์ฉ์ ์์ฉ ํ๋ก๊ทธ๋จ ์คํ -> ์ด์์ฒด์ ๊ฐ ์์ ์ ๋ฌ -> ์์ด ์ปค๋์ ์ ๋ฌ -> ํ๋์จ์ด
- ์ฌ์ฉ์ ์๊ฒฉ ํฐ๋ฏธ๋ ์คํ -> ์ด์์ฒด์ ๊ฐ ์์ ์ ๋ฌ -> ์์ด ์ปค๋์ ์ ๋ฌ -> ํ๋์จ์ด
- ์ข
๋ฅ
- CLI (๋๋ CUI ๋ผ๊ณ ๋ ํจ. Character(Console) User Interface)
- GUI (Graphic User Interface)
- ๊ทธ ์ธ์๋ ๋ณด์์ ์ ํ๋ก๊ทธ๋จ(SSH; Secure SHell)์ ์ผ์ปซ๋ ๋ง์ด๊ธฐ๋ ํ๋ค.
C ์ธ์ด
C ์ธ์ด์ ํน์ง
- C์ธ์ด๋ ์ปดํ์ผ ์ ํ์ด ์๊ฒฉํ์ง ์๋ค. (์ ํ์ด ์์ด์ ์์ ๋ก์)
- C์ธ์ด๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๋ฅผ ํด์ฃผ์ง ์๋๋ค. (unmanaged)
- ์ข ๋ ์ธ๋ฐํ๊ฒ ์กฐ์ ํ ์ ์๋๋ก, deatil ์ ์ ๊ณตํด์ฃผ๋ ๊ฐ๋
.
- C์ธ์ด์๋ boolean ์๋ฃํ์ด ์๋ค!
- true ๋
1
, false ๋ 0
์ผ๋ก ์ถ๋ ฅ๋๋ค!
- ์๋ฃ์
์ถ๋ ฅ
#include <stdio.h> // stdio : standard , input & output
int main() {
int age;
scanf("%d", &age); // 10 ์ง์ format์ผ๋ก ๋ฐ๊ฒ ๋ค, age๋ผ๋ ๋ณ์์ ๋ฃ๊ฒ ๋ค.