CS ๋ฐ ๊ธฐ์ ๋ฉด์ ์ค๋น ์คํฐ๋
๐ CS ๋ฐ ๊ธฐ์ ๋ฉด์ ์์ ์ง๋ฌธ์ ๋ํ ๋ต๋ณ์ ์ํ ์คํฐ๋ ์ ๋๋ค.
๐ก ๋จ์ํ QNA ํ์ ๋ณด๋ค, ๊น์ด ์๋ ๋ด์ฉ๋ค์ด ๋ง์ด ์์ต๋๋ค. ๊ธฐ์ ๋ฉด์ , ์ง์ ํจ์ ๋ฑ์ ๋์ ๋์ค ๊ฒ๋๋ค.
โ๏ธ ์คํ ๋ฐ ์ํ ๊ธฐ์ ์ Issue ๋ฅผ ํตํด ์๋ ค์ฃผ์ธ์.
๐ฉ QNA ํ์์ ์ง์ ์๋ต ์ฐ์ต์ ํด๋น ๋งํฌ๋ฅผ ํตํด ๊ฐ๋ฅํฉ๋๋ค.
โญ Star๋ Watching๋ฅผ ํตํ ๋ง์ ๊ด์ฌ ๋ถํ๋๋ฆฝ๋๋ค. :)
๐ข Info
๐ฃ Contributors
โ๏ธ Network
- ์ฟ ํค, ์ธ์
, JWT ํ ํฐ
- Cookie / Session
- ์ธ์ ๊ธฐ๋ฐ ์ธ์ฆ / ํ ํฐ ๊ธฐ๋ฐ ์ธ์ฆ
- JWT
- ๋คํธ์ํฌ ์์คํ
์ Layered Architecture
- ์น์ ๋์ ๋ฐฉ์
- TCP/IP 5 Layer
- OSI 7 Layer
- TCP, UDP, IP, PORT
- HTTP ์ HTTPS
- HTTP/HTTPS
- HTTP 2.0
- ๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)
- ๋ก๋๋ฐธ๋ฐ์ฑ
- Scale out, Scale up
- ํ๋ก์(Proxy)
- ํฌ์๋ ํ๋ก์, ๋ฆฌ๋ฒ์ค ํ๋ก์
- DMZ
- ๋คํธ์ํฌ ๋ณด์(Network Security)
- ๋ณด์ 3๋์์, ์น ํดํน, ๋ฐฉํ๋ฒฝ
- IPSec, SSL ๊ณผ TLS
- SQL Injection, OS Command Injection, XSS, CSRF
- ์น ์์ผ(Web Socket)
- HTTP Polling, HTTP Long Polling
- HTTP vs ์น ์์ผ
- SocketJs ์ Socket.io
- CORS(Cross Origin Resource Sharing)
- CORS
- SOP
- ์คํ๋ง ๋ถํธ์์ CORS ํด๊ฒฐ ํ๋ ๋ฐฉ๋ฒ
- REST and RESTful
- REST ๊ตฌ์ฑ์์์ ๊ธฐ๋ณธ ์์น
- REST API ๋์์ธ ๊ฐ์ด๋
- OAuth(Open Authorization)
- OAuth1.0, OAuth2.0
- ์ผ๋ฐ๋ก๊ทธ์ธ๊ณผ OAuth๋ก๊ทธ์ธ ์ฐจ์ด
- ์ธ์ฆ ์ ์ฐจ ์ข ๋ฅ
โ๏ธ OS(Operating System)
- ์ด์์ฒด์ ์ ์ปดํจํฐ ์์คํ ๊ตฌ์กฐ
- CPU
- ์บ์์ ์ง์ญ์ฑ
- ์บ์์ ์ข ๋ฅ์ ์ฐ๊ธฐ
- ์บ์์ ์ง์ญ์ฑ, ์บ์ ์นํ์ ์ธ ์ฝ๋
- Mapping Function
- ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์ฑ
- ์คํ ๋์ ๊ณผ์
- Stack ๊ณผ Heap
- ํ๋ก์ธ์ค/์ค๋ ๋์์์ ์คํ
- ํ๋ก์ธ์ค์ ์ค๋ ๋
- Multi Process, Multi Thread, PCB, ํ๋ก์ธ์ค ์ํ ์ ์ด
- Interrupt, Context Switching
- WAS, ThreadPool
- ์คํ๋ง์์ ๋์์ฑ ์ด์๋ฅผ ํผํ๋ ๋ฐฉ๋ฒ
- Thread Safe ํ๊ฒ ์ค๊ณํ๋ ๋ฐฉ๋ฒ
- ํ๋ก์ธ์ค ๋๊ธฐํ
- ๊ฒฝ์ ์ํ(race condition)
- ์๊ณ ๊ตฌ์ญ(ciritical section)
- ๋ฎคํ ์ค ๋ฝ(Mutex Locks)
- ์ธ๋งํฌ(semaphore)
- ๊ต์ฐฉ์ํ์ ๊ธฐ์์ํ
- ๊ต์ฐฉ์ํ
- ๊ต์ฐฉ์ํ ํด๊ฒฐ ๋ฐฉ๋ฒ
- ๊ธฐ์์ํ, Livelock
- CPU ์ค์ผ์ค๋ง ๊ธฐ๋ฒ
- FIFO, SJF, STCF
- Round Robin
- Busy Waiting
- Multi-Level Feedback Queue
- Priority Boost
- ๋ธ๋ฝํน๊ณผ ๋
ผ๋ธ๋ฝํน, ๋๊ธฐ์๊ณผ ๋น๋๊ธฐ์
- ๋๊ธฐ์๊ณผ ๋น๋๊ธฐ์
- ๋ธ๋ฝํน๊ณผ ๋ ผ๋ธ๋ฝํน
- System Call
- ์ปค๋ ๋ชจ๋์ ์ ์ ๋ชจ๋
- System Call Interrupt ๋์ ๊ณผ์
- ํ์ผ ์์คํ
- ํ์ผ์ ๊ธฐ๋ณธ ๊ตฌ์ฑ
- ํ์ผ ์์คํ ์ด ํ์ํ ์ด์
- ํธ๋ฆฌ ๊ตฌ์กฐ ๋๋ ํ ๋ฆฌ
- ํ์ผ ์์คํ ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํ๋ ์ด์
- ์ฃผ์ ๋ฐ์ธ๋ฉ๊ณผ ์ค์ํ
- ๋ ผ๋ฆฌ ์ฃผ์ vs ๋ฌผ๋ฆฌ ์ฃผ์
- ์ปดํ์ผ ํ์ ๋ฐ์ธ๋ฉ, ์ ์ฌ ํ์ ๋ฐ์ธ๋ฉ, ์คํ ํ์ ๋ฐ์ธ๋ฉ
- ์ค์ํ
- ๋ฉ๋ชจ๋ฆฌ ํ ๋น๊ณผ ๋จํธํ
- ๊ณ ์ ๋ถํ , ๊ฐ๋ณ ๋ถํ
- ๋ฉ๋ชจ๋ฆฌ ํ ๋น ์๊ณ ๋ฆฌ์ฆ(์ต์ด ์ ํฉ, ์ต์ ์ ํฉ, ์ต์ ์ ํฉ)
- ์ธ๋ถ ๋จํธํ, ๋ด๋ถ ๋จํธํ
- ํ์ด์ง๊ณผ ์ธ๊ทธ๋ฉํ
์ด์
- ํ์ด์ง, ์ธ๊ทธ๋ฉํ ์ด์
- ํ์ด์ง ์ค์ํ
- ํ์ด์ง ๊ต์ฒด ์๊ณ ๋ฆฌ์ฆ
- OPT, FIFO
- LRU, NUR
- LFU, MFU, SCR
โ๏ธ Database
- RDBMS vs NoSQL
- RDBMS ์ NoSQL ์ฐจ์ด
- RDBMS ์์ ์๋ฒ ํ์ฅํ๋ ๋ฐฉ๋ฒ(Master and Slave)
- ElasticSearch
- ๊ฒ์์์ง, ๊ฒ์์์คํ , ๊ฒ์์๋น์ค
- ๊ฒ์์์คํ ๊ตฌ์ฑ์์
- ์์ธ๊ณผ ์ญ์์ธ
- ๊ฒ์๊ธฐ ํ์ง
- ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ฐจ์ด์
- ์๋ผ์คํฑ์์น ์ฃผ์ API
- Transaction
- ํธ๋์ญ์ ์ ์ฌ์ฉํ๋ ์ด์
- ACID
- ํธ๋์ญ์ ๊ฒฉ๋ฆฌ ์์ค
- ํธ๋์ญ์ ๊ฒฉ๋ฆฌ ์์ค์ ์ค์ ํ ๋ ๋ฐ์ ํ๋ ๋ฌธ์ ์ ๋ค
- Redis
- Redis
- Look Aside Cache, Write Back
- CAP
- DB Lock
- Lock ์ ์ข ๋ฅ์ ๋จ์
- ๋ธ๋กํน(Blocking)
- ๋ฐ๋๋ฝ(Deadlock)
- ์ ๊ทํ, ๋ฐ์ ๊ทํ
- ์ด์ ํ์
- ์ ๊ทํ์ ๋ฐ์ ๊ทํ
- Index, Hint
- ์์ฐจ I/O, ๋๋ค I/O
- ์ฟผ๋ฆฌ ํ๋์ ๋ชฉ์
- B-Tree Index, Hash Index, InnoDB Adaptive Hash Index
- MySQL ์์ B-tree ๋ฅผ ์ฌ์ฉํ๋ ์ด์
- ์ธ๋ฑ์ค ๋ ์ธ์ง ์ค์บ, ์ธ๋ฑ์ค ํ ์ค์บ
- ํด๋ฌ์คํฐ๋ง ์ธ๋ฑ์ค, ๋ ผ ํด๋ฌ์คํฐ๋ง ์ธ๋ฑ์ค
- MySQL ์์ PK ๋ฅผ ์ธ์กฐํค๋ก ์ฌ์ฉํ๊ณ Auto_Increment ๋ฅผ ์ฌ์ฉํ๋ ์ด์
- Hint
- ๋์์ฑ ์ ์ด
- ๋์์ฑ ์ ์ด๋ฅผ ํ์ง ์์ ์ ๋ฐ์ํ๋ ๋ฌธ์ ์
- ๋์์ฑ ์ ์ด ๋ฐฉ๋ฒ
- Oracle Sequence
- ์ํ์ค ๊ฐ๋ ๋ฐ ์ฌ์ฉ๋ฒ
- ์ํ์ค ์ฌ์ฉ์ ์ฅ๋จ์
- Join
- Inner Join
- Natural Join
- Outer Join
- Semi Join
- MySQL Architecture
- MySQL ์์ง
- ์คํ ๋ฆฌ์ง ์์ง
- ํธ๋ค๋ฌ API
- MySQL ์ค๋ ๋ฉ ๊ตฌ์กฐ
- ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๋ฐ ์ฌ์ฉ ๊ตฌ์กฐ
- ์ฟผ๋ฆฌํ์, ์ ์ฒ๋ฆฌ๊ธฐ, ์ตํฐ๋ง์ด์ , ์คํ์์ง
- ์ค๋ ๋ํ, ํธ๋์ญ์ ์ง์ ๋ฉํ๋ฐ์ดํฐ
- ์คํค๋ง(Schema)
- ์คํค๋ง 3๊ณ์ธต๊ณผ 3๊ณ์ธต์ผ๋ก ๋๋์ด ์ฌ์ฉํ๋ ์ด์
- ํ ์ด๋ธ vs ์คํค๋ง
- DB ํด๋ฌ์คํฐ๋ง, ๋ฆฌํ๋ฆฌ์ผ์ด์
- ํด๋ฌ์คํฐ ์ฌ์ฉ ์ฅ์ ๊ณผ ๊ตฌํ ๋ฐฉ๋ฒ
- ๋ฆฌํ๋ฆฌ์ผ์ด์ , ๋ฆฌํ๋ฆฌ์ผ์ด์ ๋๊ทธ
- ํํฐ์ ๋
- ์ค๋ฉ
- Trigger
- ํธ๋ฆฌ๊ฑฐ ์ข ๋ฅ(ํ ํธ๋ฆฌ๊ฑฐ, ๋ฌธ์ฅ ํธ๋ฆฌ๊ฑฐ)
- ํธ๋ฆฌ๊ฑฐ ์ฅ์ /๋จ์
- ํธ๋ฆฌ๊ฑฐ ๋ฌธ๋ฒ๊ณผ ์์
- ConnectionPool
- ์ปค๋ฅ์ ํ ๊ฐ์ ์ค์ ๋ฐฉ๋ฒ
- ์ปค๋ฅ์ ํ ๋์์๋ฆฌ(HikariCP)
- ์ปค๋ฅ์ ํ์ ์ฅ์
โ๏ธ Computer Architecture
- RAID
- RAID ์ฌ์ฉ ์ด์
- RAID ์์ ์ฐ์ด๋ 3๊ฐ์ง ๊ธฐ์
- RAID ์ข ๋ฅ์ ํน์ง
- ๊ฐ์ ๋จธ์ , ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ
- ๊ฐ์ ๋จธ์ ๊ณผ ๊ฐ์๋จธ์ ์ ์ฌ์ฉํ๋ ์ด์
- ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ์ด์ , ์๋ฆฌ
- ์๊ตฌ ํ์ด์ง
โ๏ธ Java
- ๋ค์ํ ์๋ฐ ํ๋ซํผ
- ์๋ฐ ์ญ์ฌ์ ๋ฒ์ ๋ณ ํน์ง
- ์๋ฐ ์ธ์ด์ ํน์ง
- ํ๋ก๊ทธ๋จ ์คํ ๊ณผ์
- JVM ์ํคํ ์ฒ์ JMM
- Garbage Collection
- ๊ฐ์ฒด์งํฅ ์ธ์ด์ ํน์ง
- ์บก์ํ, ์์, ๋คํ์ฑ
- ํด๋์ค
- ์ธํฐํ์ด์ค
- ๋ฐ์ดํฐ ํ์
- Call by value vs Call by reference
- Promotion, Casting
- Boxing, Unboxing
- Reflection
- Annotation
- JDBC
- Collection Framework
- SOLID
- Stream
- ๋ง์ฌ๋ง๊ณผ ์ง๋ ฌํ
- ์ ๋ค๋ฆญ
- POJO, JavaBeans, Entity, VO, DTO
- ๊น์ ๋ณต์ฌ์ ์์ ๋ณต์ฌ
- equals and hashCode
- Thread
- Exception Handling
- Immutable, Synchronized
- Logging
- Lambda, Functional Interface, Method References
- JDK Dynamic Proxy, CGLIB