[์๊ฒฉ์ฆ] ์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ ์ ๋ฆฌ
์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ ์๊ฒฉ์ฆ์ ๋ฐ๋ ๊ฒ์ ์ฑ๊ณต์ ํ์ง๋ง ๋ด์ฉ์ ์๋ฒฝํ ๊ณต๋ถํ ๊ฒ ์๋๋ผ ์์ฌ์ด ๋ง์์ ์ค์ํ ๋ถ๋ถ๋ง ์ ๋ฆฌํ๊ณ ์ ์ฐ๋ ๊ธ!
1. ์ ์์ผ ๋ฐฉ๋ฒ๋ก
- ๊ธฐ๋ฅ ์ค์ฌ
- ๊ฐ์ธ, ์ํต
- ์ ์ฐ
- SW ์คํ ๊ฐ์น
- ๊ณ ๊ฐ ํผ๋๋ฐฑ ๋ฐ์
ex) XP, SCRUM, LEAN
2. ๋น๋ ์๋ํ ๋๊ตฌ
- CI(continuous integration) ์๋ฒ : Hudson(์ด์ ๋ฒ์ ), Jenkins
- SCM(source code management) : SVN, Git
- ๋น๋ ๋๊ตฌ : Ant(์๋ฐ), Maven(์๋ฐ), Gradle(์๋๋ก์ด๋), Jenkins(Servlet Container)
- ํ ์คํธ ๋๊ตฌ : JUnit, Selenium
3. ๋ธ๋๋ฐ์ค ํ ์คํธ & ํ์ดํธ๋ฐ์ค ํ ์คํธ
- ๋ธ๋๋ฐ์ค ํ ์คํธ : ๋๋ฑ๋ถํ , ๊ฒฝ๊ณ๊ฐ ๋ถ์ (๋ด๋ถ๊ตฌ์กฐ X)
- ํ์ดํธ๋ฐ์ค ํ ์คํธ : ์์ค์ฝ๋ ์ํ O
4. ์๋ฃ๊ตฌ์กฐ
- ์ ํ๊ตฌ์กฐ : ๋ฆฌ์คํธ, ์คํ, ํ, ๋ฐํฌ
- ๋น์ ํ๊ตฌ์กฐ : ํธ๋ฆฌ, ๊ทธ๋ํ
5. ์๊ณ ๋ฆฌ์ฆ
[๊ธฐ๋ฒ]
1) ๋ถํ ๊ณผ ์ ๋ณต : ๋ถํ & ๋ณํฉ
2) ๋์ ๊ณํ๋ฒ : ๊ณผ๊ฑฐ์ ํด๊ฐ ๋ฏธ๋์ ๋์
3) ํ์๋ฒ : ํด๋น ์์ ์ ์ต์ ํด๊ฐ ์ ์ฒด์ ์ต์ ํด
4) ๋ฐฑํธ๋ํน : ์ด์ ์ผ๋ก ๋ค์ ๋์๊ฐ๋ ๋ฐฉ์
(dfs์์ ์ฐจ์ด๋, ๋ฐฑํธ๋ํน: ๊ฐ๋ฅ์ฑ ์๋ ๋ฃจํธ ์กฐ๊ธฐ ์ฐจ๋จ)
[์๊ฐ๋ณต์ก๋]
O(1) : ํด์ฌ
O(log2n) : ์ด์งํ์
O(n) : ์์ฐจํ์
O(nlog2n) : ํต / ํฉ๋ณ / ํ
O(n^2) : ๋ฒ๋ธ / ์ฝ์ / ์ ํ
[ํ์ ์๊ณ ๋ฆฌ์ฆ]
1) ์์ฐจํ์ : ์ฐจ๋ก๋๋ก ํ์ธ
2) ์ด์งํ์ : ์ค์๊ฐ์ผ๋ก ์ง์์ ํฌ๊ธฐ ๋น๊ต
[์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ]
1) ํต์ ๋ ฌ(๋ถํ ์ ๋ณต) : pivot๊ฐ๊ณผ ์ธ๋ฑ์ค( ์ผ์ชฝ๋ ํผ๋ด์ i, ์ค๋ฅธ์ชฝ๋j )๋ก pivot์์๊ฐ j์ ํฐ๊ฐ j์ ๋ฐ๊ฟ์ค๋ค. i,j๊ฐ ์๊ฐ๋ฆฌ๋ฉด ๋ถํ ํ์ฌ ์๋ก์ด pivot๊ฐ์ ์ก๊ณ ๋๊ฐ์ด ๋ฐ๋ณตํ๋ค. (์ต์ ์ต์ ์ ๊ฒฝ์ฐ๊ฐ ๊ฐ๋ฆฐ๋ค)
์ต์ : nlog2n
์ต์ : n^2
2) ํฉ๋ณ์ ๋ ฌ(๋ถํ ์ ๋ณต) : pivot๊ฐ ์์ด ์ ๋ฐ์ผ๋ก ๋ชจ๋ ์ชผ๊ฐ ํ, ๊ฐ์ ๋น๊ตํ๋ฉด์ ํฉ์ณ์ค๋ค
nlog2n ๋ณด์ฅ
3) ํ์ ๋ ฌ : max heap์ ๊ฒฝ์ฐ ์์ ์ด์งํธ๋ฆฌ ๊ฐ์ฅ ํฐ ํค๊ฐ์ ๊ฐ๋๋ ๋ฃจํธ๋ฅผ ์ ๊ฑฐํ๋ ๊ณผ์ ์ ๋ฐ๋ณต
nlog2n ๋ณด์ฅ
4) ๋ฒ๋ธ์ ๋ ฌ : ์๋ค๋ก ๋น๊ตํ๋ฉฐ ๊ฐ์ ๊ตํํด์ฃผ๋ ๊ฒ์ ๋ฐ๋ณต. ์์์ ํญ์ ์ฒ์๋ถํฐ ๋น๊ตํ๋ค.
n(n-1)/2 ๋ฒ ๋ฐ๋ณตํ๊ธฐ ๋๋ฌธ์ ์๊ฐ๋ณต์ก๋ : n^2
5) ์ฝ์ ์ ๋ ฌ : key๊ฐ์ ๋ฐ๋ก ์ด์ ๊ฐ๋ถํฐ ์ฐจ๋ก๋ก ์ผ์ชฝ์ผ๋ก ๋น๊ต. key๊ฐ์ ๋ ๋ฒ์งธ์์ ์์
n^2
6) ์ ํ์ ๋ ฌ : ์ต์๊ฐ ํ์ ํ ์ฒซ๋ฒ์งธ ์๋ฆฌ ๊ฐ๊ณผ ๊ตํ, ๋ค์ ์ต์๊ฐ ํ์ ํ ๋๋ฒ์งธ ์๋ฆฌ ๊ฐ๊ณผ ๊ตํ ๋ฐ๋ณต
n^2
6. ๊ฐ๋ฐ ํ๊ฒฝ
1) ํ๋์จ์ด ๊ฐ๋ฐํ๊ฒฝ
- ์น์๋ฒ(Web Server) : HTTP, ๋ธ๋ผ์ฐ์ ์์ฒญ, HTML ์ ์ก (์ํ์น)
- WAS(Web Application Server) : ์น ์๋ฒ๋ก๋ถํฐ ์์ฒญ๋ฐ์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ (JEUS, Tomcat, Websphere, Servlet, JSP์ฒ๋ฆฌ -> ๋์ )
2) ์ํํธ์จ์ด ๊ฐ๋ฐํ๊ฒฝ
- ์ด์์ฒด์ : ํ๋์จ์ด ์ ์ฉํ๊ฒ ์ฌ์ฉ
- ๋ฏธ๋ค์จ์ด (JVM) : ์ปดํจํฐ๊ฐ ์ฐ๊ฒฐ
- DBMS : DB ๊ด๋ฆฌ
3) ์ธํฐํ์ด์ค ๊ตฌํ
- JSON : ์์ฑ-ํค ๊ฐ์ผ๋ก ์ด๋ฃจ์ด์ง ํ ์คํธ ๊ธฐ๋ฐ ๊ฐ๋ฐฉํ ํ์ค ํฌ๋งท
- XML : HTML ๋ณด์ ์ธํฐ๋ท ํน์ ๋ชฉ์ ๋งํฌ์ ์ธ์ด
- AJAX : JS์ด์ฉํ์ฌ ์น์๋ฒ์ ํด๋ผ์ด์ธํธ๊ฐ ๋น๋๊ธฐ์ ์ผ๋ก XML ๋ฐ์ดํฐ ๊ตํ ๋ฐ ์กฐ์ ์ํ ๊ธฐ์ (์ผ๋ถ ํ์ด์ง ๋ก๋ ๊ฐ๋ฅ)
- REST : ์น ํ๊ฒฝ์์ ์์ ์ ๋ณด ํ์คํ๋ HTTP ๋ฉ์๋๋ก ๊ตํ ๊ฐ๋ฅํ๊ฒํ๋ ์น ์ํคํ ์ณ (CRUD)
7. ํ๋ก๊ทธ๋๋ฐ ์ธ์ด
[์ข ๋ฅ]
- ์ ์ฐจ์งํฅ ํ๋ก๊ทธ๋๋ฐ (PP) : ๋ช ๋ นํ ํ๋ก๊ทธ๋๋ฐ (C์ธ์ด)
- ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ (OOP) : ์ถ์ํ / ์์ / ๋คํ์ฑ / ๋์ ๋ฐ์ธ๋ฉ / ์ ๊ทผ์ ์ด์ (Java, C++, C#)
- ์คํฌ๋ฆฝํธ ์ธ์ด : php, javascript, python
[java]
- new : ๊ฐ์ฒด์์ฑ
- static ๋ฉ์๋ : ํด๋์ค๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ๊ฐ ๋ ์๋ ์์ฑ ๋ฉ์๋ (์ธ์คํด์ค ์์ฑํ์ง ์์๋ ํธ์ถ ๊ฐ๋ฅ)
- ์์ฑ์ : ํด๋์ค์ ๊ฐ์ฒด๊ฐ ์์ฑ๋ ๋ ์๋์ผ๋ก ํธ์ถ๋๋ ๋ฉ์๋
- ์ ๊ทผ์ ์ด์ : public(์ธ๋ถ ๋ชจ๋ ํด๋์ค ๊ฐ๋ฅ) / protected(๊ฐ์ ํจํค์ง ๋ด๋ถ + ํ์ ํด๋์ค) / default(ํจํค์ง ๋ด๋ถ ํด๋์ค) / private(๊ฐ์ ํด๋์ค ๋ด๋ถ)
- this (๊ฐ์ฒด ๊ฐ๋ฆฌํค๋ ํฌ์ธํฐ) OR (์์ฑ์) - ํ์ด์ฌ self
- ์ค๋ฒ๋ก๋ฉ(๋์ผ ์ด๋ฆ ๋ฉ์๋๋ฅผ ๋งค๊ฐ๋ณ์๋ง ๋ค๋ฅด๊ฒ ์ ์) / ์ค๋ฒ๋ผ์ด๋ฉ(ํ์ ํด๋์ค์์ ์์ ํด๋์ค ๋ฉ์๋ ์ฌ์ ์)
- super : ์์ ํด๋์ค ์ ๊ทผ
8. ๋คํธ์ํฌ
[OSI 7layer]
1) ์ฌ์ฉ์-๋คํธ์ํฌ : application : ํ๋กํ ์ฝ ํ์ฉ HTTP, FTP, SMTP ๋ฑ
2) ์ํธํ/๋ถํธํ : presentation : ์ฌ์ฉ์ ์ดํด ํํ (JPEG, MPEG)
3) ๋ ผ๋ฆฌ์ฐ๊ฒฐ : session : ๋ ผ๋ฆฌ์ ์ฐ๊ฒฐ (๋ฉ์ธ์ง, ๋ฐ์ดํฐ)
4) ์ค๋ฅ์ ์ด : transport : ์ ๋ขฐ์ฑ ์๋ ๋ฐ์ดํฐ ์ ๋ฌ, ์ค๋ฅ์ ์ด / ํ๋ฆ์ ์ด / ํผ์ก์ ์ด (TCP - ์์ ์ , ์๋ฌ X, UDP - ์ ๋ขฐ์ฑ X) - ์ธ๊ทธ๋จผํธ
5) ๊ฒฝ๋ก : network : ๋ผ์ฐํ ํ์ฉ -> ์ต์ ๊ฒฝ๋ก (IP- ํจํท๋จ์ ๋ฐ์ดํฐ๊ตํ, ํต์ ๊ท์ฝ, ARP - IP -> MAC, RARP - MAC O IP X)- ํจํท <๋ผ์ฐํฐ>
6) ์ ์ก์ค๋ฅ์ ์ด : data link : ์ค๋ฅ์ ์ด / ํ๋ฆ์ ์ด / ํ์ ์ ์ด - ํ๋ ์ <์ค์์น>
7) ๋นํธ : physical : ๋ฌผ๋ฆฌ๊ณ์ธต, bit ๋ณํ
9. ์ ๊ธฐ์
- ๋์ปค, ์ฟ ๋ฒ๋คํฐ์ค
- NOSQL
- ๋ฐ์ดํฐ๋ง์ด๋
* ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ จ ๋ด์ฉ์ SQLD ํฌ์คํธ์์ ํ ๋ฒ์ ์ ๋ฆฌ ์์
'๐ Certificate > Programming' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์๊ฒฉ์ฆ] SQLD ์ ๋ฆฌ (0) | 2022.06.26 |
---|---|
[์๊ฒฉ์ฆ] ์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ (์ค๊ธฐ) (0) | 2022.06.17 |
[์๊ฒฉ์ฆ] SQLD (0) | 2022.04.01 |
[์๊ฒฉ์ฆ] ์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ (ํ๊ธฐ) (0) | 2022.03.25 |
์ต๊ทผ๋๊ธ