λμ 첫 νκ³ λ₯Ό μ μ΄λ³΄κ³ μ νλ€.
νκ³ λ₯Ό μμ±ν΄ λ³Έ μ μ΄ μκΈ° λλ¬Έμ μ΄λ μ λμ κΈ°κ°μ λκ³ νκ³ λ₯Ό μμ±ν΄μΌ νλμ§ μ λͺ¨λ₯΄κ² λ€. κ·Έλμ μ΄λ²μ νκ³ λ₯Ό νλ² μμ±ν΄ λ³΄κ³ κ³μν΄μ λ°κΈ°λ₯Ό κΈ°μ€μΌλ‘ μ κ±°λ, μλλ©΄ λΆκΈ° λ¨μλ‘ λλ μκ°μ΄λ€.
μ΄λ² κΈμ νμμ ν° μ£Όμ λ€ κΈ°μ€μΌλ‘ λ΄μ©μ μ κ°ν΄ λκ°λ κ²μΌλ‘ νκ² λ€.
β 1. λΆνΈμΊ ν
2023λ 1μ 4μΌλΆν° SSAFY(μΌμ± μ²λ SW μμΉ΄λ°λ―Έ, Samsung Software Academy For Youth, μ΄ν λΆνΈμΊ ν)μμ κ΅μ‘μ λ£κ³ μλ€.
κ΅μ‘μ λ€μΌλ©΄μ μ’μ μ μ€ νλλ 'λκΈ°λ€ λλΆμ 곡λΆλ₯Ό νλλ° λ§μ λμμ λ°λλ€λ κ²'μ΄λ€. μ·¨μ μ 보 곡μ λ λ¬Όλ‘ μ΄κ³ μ€ν°λ λλ νλ‘μ νΈκ° μννκ² μ§νλλλ‘ λκΈ°λ€μ΄ λ§μ λμμ μ£Όκ³ μλ€.
νΉν, μ€ν°λμμ κΎΈμ€ν 곡λΆν μ μλλ‘ μ€ν°λ μμ€ν μ μ κ΄λ¦¬ν΄ μ£Όλ κ² λ§€μ° κ³ λ§λ€. μ΄ κΈμ ν΅ν΄ λ€μ νλ² κ°μ¬ν λ§μμ μ νλ€. πβοΈπβοΈ
λ λ€λ₯Έ μ’μ μ μ, λΆνΈμΊ νλ₯Ό ν΅ν΄ 'λ΄κ° 무μμ΄ λΆμ‘±νκ³ μ΄λ€ κ²μ μΆκ°μ μΌλ‘ 곡λΆν΄μΌ νλμ§'λ₯Ό μ μ μκ² λμλ€λ μ μ΄λ€.
곡λΆν λ κ°μ₯ λ΅λ΅ν μνκ° 'μ΄λ€ κ°λ μ΄ λΆμ‘±νμ§λ₯Ό λͺ¨λ₯΄λ μν'λΌκ³ μκ°νλ€.
μ΄λ¬ν μνλ 'κ°λ μ΄ λΆμ‘±ν¨μλ λΆκ΅¬νκ³ κ·Έ κ°λ μ μκ³ μλ€κ³ μ°©κ°νκ±°λ', 'λΆμ‘±ν κ°λ μ λν 곡λΆλ₯Ό 무μμμ μΌλ‘ ννΌνκ³ μμ΄μ' λ°μν μ μλ€. λ¬Όλ‘ λ€ λ΄ μκΈ°λ€.π
λΆνΈμΊ νμλ 컀리νλΌμ΄ μ‘΄μ¬νκ³ λ§€μ£Ό μν μλ€. κ·Έλμ κ°μ¬νκ²λ λ΄κ° 무μμ λͺ¨λ₯΄λμ§ μμ£Ό λ±λ±μ΄ νμΈν μ μλ€.
λΆνΈμΊ νμ μ΄λ¬ν μμ€ν μ μ΄μ©νμ¬ λΆμ‘±ν κ°λ μ ν루ν루 μ±μλκ°κ³ μλ μ€μ΄λ€.
β 2. λΈλ‘κ·Έ
2023λ μλ°κΈ°μ κ°μ₯ μ΄μ¬ν ν κ²μ νλ κΌ½λλ€λ©΄ λΈλ‘κΉ μ΄λ€. 'μλ°, μ€νλ§, μλ£κ΅¬μ‘°, μκ³ λ¦¬μ¦, λ€νΈμν¬, λ°μ΄ν°λ² μ΄μ€' λ±μ μ£Όμ λ‘ μ½ 140κ°μ κΈμ μ μλ€.
κΈλ€μ 곡λΆν λ΄μ©μ μ 리νκ³ κΈ°λ‘νλ λλμΌλ‘ μ μκΈ° λλ¬Έμ μ’μ κΈμ΄λΌκ³ λ§ν μλ μκ² λ€.
νμ§λ§, κΉλν κΈμ μ κΈ° μν΄μ ν λ²μ΄λΌλ λ λ΄μ©μ μ΄ν΄λ³΄κ³ 체νμν€κ³ μ νμκΈ° λλ¬Έμ λΈλ‘κΉ μ΄ λμκ²λ λ§μ λμμ΄ λμλ€.
λΈλ‘κΉ μ ν΅ν΄ 곡λΆνλ κ² λΈλ‘κΉ μ νμ§ μκ³ κ³΅λΆνλ κ²λ³΄λ€ μκ°μ΄ λ°°λ‘ λ€κΈ°λ νλ€. νμ§λ§, λμ€μ κ³ λ €νμμ λ μ§κΈ κ°λ μ μ μ‘μλκ³ μ λ¦¬ν΄ λλ κ² κΈΈκ² λ³΄μμ λ λ μκ°μ μλ μ μλ λ°©λ²μ΄λΌκ³ μκ°νλ€.
β 3. κ°λ° κ΄λ ¨ μ±
곡λΆλ₯Ό νλ€ λ³΄λ μ‘°κΈ λ κΉμ λ΄μ©λ€μ΄ κΆκΈνμ¬ μμ°μ€λ½κ² κ°λ° κ΄λ ¨ μ± λ€μ μ½κΈ° μμνμλ€.
- μ΄νν°λΈμλ° (1/2 μ½κ³ μλ μ€)
- Real MySQL (1/2 μ½κ³ μλ μ€)
- κ°μ²΄μ§ν₯μ μ¬μ€κ³Ό μ€ν΄
- ν΄λ¦°μ½λ
- κ·Έλ¦ΌμΌλ‘ λ°°μ°λ HTTP & Network Basic
- μ±κ³΅κ³Ό μ€ν¨λ₯Ό κ²°μ νλ 1%μ λ€νΈμν¬ μ리 (1/2 μ½μ)
- μ»΄ν¨ν° λ€νΈμνΉ, νν₯μ μ κ·Ό (1/2 μ½μ)
- ν¨κ» μλΌκΈ°
- μ€μ©μ£Όμ νλ‘κ·Έλλ¨Έ
- SQL 첫걸μ
κ°λ°μλ‘μ μ λ¬Έμ±μ κ°μ§κ³ κ°λ°μ νκ³ μΆλ€λ μκ°μ μμ£Ό νμλ€. κ·Έλ¬λ μ λ¬Έμ±μ λν λͺ νν κΈ°μ€μ΄ μμλλ°, μ± λ€μ ν΅ν΄ μ λ¬Έμ±μ κΈ°μ€μ μ΄λ μ λ μ‘μ μ μμλ€.
μ λ¬Έμ±μ κ°μ§κΈ° μν΄μλ μκ°λ³΄λ€ λ... λ... μ΄μ¬ν ν΄μΌ νλ€...π₯π₯π₯
β 4. κ°μ
κΉμν λμ μ€νλ§κ³Ό JPAκ°μλ₯Ό λ€μ 보μλ€.
1λ μ μ κ°μλ₯Ό μ²μ λ³Ό λλ 'μ΄λ»κ² νλ©΄ 빨리 νλ‘μ νΈμμ μ¨λ¨Ήμ μ μμκΉ?'λΌλ μκ°μΌλ‘ κ°μλ₯Ό μκ°νμλ€. νμ§λ§, μ΄λ²μλ κ·Έ κΈ°μ μ΄ μ΄λ»κ² ꡬνλκ³ μλμ§μ λν΄μ μ€μ μ λκ³ κ°μλ₯Ό 보μλ€.
μ²μ λ³Ό λλ λͺ°λλλ° λ€μ κ°μλ₯Ό λ£λ€ 보λ μ κ·Έλ κ² λ§μ μ¬λλ€μ΄ κΉμν λμ κ°μλ₯Ό μκ°νμλμ§λ₯Ό μ μ μμλ€.π
κ·Έλ¦¬κ³ μλ‘μ΄ κ°μ 3κ°λ₯Ό μκ°νμλ€.
π 1. ν μ€νΈ μ½λ κ°μ
ν μ€νΈ μ½λ κ°μλ‘ λ°μ λΉ λμ 'Practical Testing: μ€μ©μ μΈ ν μ€νΈ κ°μ΄λ'λ₯Ό μκ°νμλ€.
ν μ€νΈ μ½λ κ΄λ ¨ν΄μλ μ°ν μ½ ν리μ½μ€ κ³Όμ (μ λ° κ³Όμ )μμ ν μ€νΈ μ½λλ₯Ό μ‘°κΈ μ§λ³Έ κ² μ λΆμλ€.
ν μ€νΈ μ½λλ₯Ό μ§μΌνλ€κ³ νμ μκ°μ νμ§λ§, λ§μ μμ±νλ €λ©΄ λμ μμ€μμ 'ν μ€νΈ μ½λλ₯Ό μμ±ν μ μλ μν©'μ΄ λ§μλ€. ν μ€νΈλ₯Ό ν μ μλ μ½λμκΈ°λ νμκ³ , λ μ΄μ΄λ³λ‘ ν μ€νΈλ₯Ό νκ±°λ, Mockμ μ΄μ©νλ κ²μ λͺ°λκΈ° λλ¬Έμ΄λ€.
κ·Έλμ κ°μλ₯Ό ν΅ν΄ 'λ μ΄μ΄ λ³λ‘ ν μ€νΈνλ λ°©λ², Mockμ μ¬μ©νλ λ°©λ²,...' λ±μ λ°°μ λ€. λμκ² μμ£Ό μ μ©ν κ°μμκ³ μλ°κΈ°μ λ€μ κ°μ μ€ κ°μ₯ λ§μ‘±λκ° ν° κ°μλ€.
μ΄ κ°μλ₯Ό λ£κ³ λμλ μλ‘μ΄ κ°λ μ λ°°μΈ λ νμ΅ ν μ€νΈλ₯Ό κ³μν΄μ μμ±νκ³ μλ€. ν μ€νΈ μ½λ μμ±μ μ°μ΅νκΈ° μν λͺ©μ λ μμ§λ§, μ΄λ‘λΆ λ¨λ κ² μκ°λ³΄λ€ λ§μ΄ μ§λ¦Ών΄μ νμ΅ν μ€νΈλ₯Ό μμ£Ό μ§λ κ±° κ°λ€... π
π 2. Java8 κ°μ
streamμ λΉλ‘―νμ¬ Java8μ κΈ°λ₯λ€μ μ¬μ©ν μΌμ΄ λ§μμλλ°, κ°μ¬νκ²λ(?) μΈν 리μ μ΄κ° κ·Έλ° μΌμ λ맑μ ν΄μ£Όμλ€.
μμνλ―μ΄ μ΄κ² λμκ² μμ£Ό ν° λ μ΄ λμλ€. λ΄κ° streamμ λ€λ£° μ€ μλ€κ³ μ°©κ°νκ³ μμκΈ° λλ¬Έμ΄λ€.
μ΄λ¬ν λ¬Έμ λ₯Ό μΈμνκ³ , λ°±κΈ°μ λμ 'λ μλ°, Java 8'μ μκ°νμλ€. κ°μλ₯Ό ν΅ν΄ streamμ λ¬Όλ‘ μ΄κ³ , ν¨μν μΈν°νμ΄μ€, λλ€ ννμ, Optional λ± Java8κ³Ό κ΄λ ¨λ λ΄μ©λ€μ νμ΅νμλ€.
κ°μμμλ System.out.println()λ₯Ό μ΄μ©ν μΆλ ₯μΌλ‘ μμ μ΄ μ§νλμμ§λ§, νΌμμ ν μ€νΈ μ½λλ₯Ό μ§λ©΄μ κ°λ λ€μ 곡λΆνλ€. μ΄μ΄ μ’κ²λ ν μ€νΈ μ½λ κ°μλ₯Ό λ¨Όμ λ€μ΄μ Java8μ λ΄μ©λ€μ νμ΅ ν μ€νΈνλ©΄μ μ¬λ°κ² 곡λΆνλ€. μμ£Ό μ΄μ΄ μ’μλ€.
π 3. λ€νΈμν¬ κ°μ
KOCWλ₯Ό μ΄μ©νμ¬ "νμλνκ΅ μ΄μ볡 κ΅μλμ 'μ»΄ν¨ν° λ€νΈμν¬' κ°μ"λ₯Ό μκ°νμλ€. κ΅μλμ κ°μλ ₯ λλΆμ λ€νΈμν¬μ ν° νλ¦μ λμΉμ§ μμΌλ©΄μ μμΈν λΆλΆκΉμ§ 곡λΆλ₯Ό ν μ μμλ€.
κ·Έλ¦¬κ³ κ°μλ₯Ό λ€μΌλ©΄μ λλ¬λ μ μ΄ νλ μλλ°, λ°λ‘ νμλ€μ μ§λ¬Έμ΄λ€. κ·Έλ λ°°μ΄ μ£Όμ λ‘ λ€μν μ§λ¬Έμ μκ°νλ€λ κ² μ체μμλ λλ¬λλ°, μ§λ¬Έμ κΉμ΄λ μλΉνλ€.
μ§κΈ μκ°ν΄ 보면 λμ νλΆ μμ μ 곡과λͺ©μ λν μκ°μ "μ§λλ₯Ό μ λ°λΌκ°λ©΄μ μνμ μ μΉμ!"λΌλ κ²μ΄μλ€.
νμ§λ§, νμλ€μ μ§λ¬Έμ 보면μ 'λ°°μ΄ κ²λΏλ§ μλλΌ, λ λ₯λμ μ¬κ³ νκ³ λ λ€μν μΈ‘λ©΄μμ 곡λΆν΄μΌ νλ€.'λΌλ κ²μ κΉ¨λ«κ² λμλ€.
'λ₯λμ 'μ΄λΌλ λ¨μ΄μ μ€μμ±μ μκ³ μμμ§λ§, κ·Έκ²μ μ€μ λ‘ ννλ λͺ¨μ΅μ 보면μ μ’μ μκ·Ήμ λ°μ μ μμλ€. π₯
β 5. μκ³ λ¦¬μ¦
λ°±μ€μ solved.ac(a.k.a μλΈλ₯) νλ ν°λμ λ¬μ±νμλ€.
μλΈλ₯μ νλ ν°λμ΄ ν° μλ―Έκ° μλ κ²μ μλλΌκ³ μκ°νλ€. κ·Έλ¬λ μκ³ λ¦¬μ¦ λ¬Έμ νΈλ κ²μ μ¦κΈ°μ§ λͺ»νλ λμκ²λ μλΈλ₯μ λ§€μ° μ’μ μμ€ν μ΄λ€.
μ‘°κΈ λ λμ λ 벨μ λ¬μ±νκΈ° μν΄μ ν λ¬Έμ λΌλ λ νκΈ° λλ¬Έμ΄λ€.
κ·Έλμ ν루빨리 μλΈλ₯μ μ¬λ¬ κΈ°λ₯λ€μ΄ λμ λμ΄ ν λ¬Έμ λΌλ λ νλλ‘ λ λ§μ΄ μκ·Ήν΄ μ€¬μΌλ©΄ μ’κ² λ€...πͺ
β 6. SQLD
SQL κ°λ°μ(SQLD) μνμ 6μ 10μΌ(ν μμΌ)λ‘ μ μ²νμλ€.
κ·Έλ°λ°, 6μ 7μΌ(μμμΌ) ~ 6μ 9μΌ(κΈμμΌ) λμ μλΉκ΅° νλ ¨μ κ°μΌ νλ€.
λ€νν νλ ¨μκ°μ μ μΈνκ³ λ νΈλν°μ μ¬μ©ν μ μμκΈ° λλ¬Έμ, 3μΌ λμ νΈλν°μΌλ‘ μμ½μ§κ³Ό κΈ°μΆλ¬Έμ λ₯Ό κ³μν΄μ 보μλ€.
κ·Έλ κ² νλ ¨μ λ§μΉκ³ μν μ λ (6μ 9μΌ κΈμμΌ) 19μ μ λμ μ§μ λμ°©νλ€. μ»κ³ μ λ λ¨Ήκ³ λ°λ‘ μ€ν°λ μΉ΄νμ κ°μ 3μκ° λμ 곡λΆλ₯Ό λ§λ¬΄λ¦¬νκ³ λ€μ λ μνμ μ³€λ€.
κ·Έλ¦¬κ³ μ΄μ΄ μ’κ²λ SQLκ°λ°μ(SQLD) μ격μ¦μ μ·¨λν μ μμλ€.
λ§μ½ μνμ΄ μμλλΌλ©΄ 'λμ νλ ¨ κΈ°κ°(2λ° 3μΌ)' λμ λ°λ‘ 곡λΆλ₯Ό νμ§ μμμ κ²μ΄λ€. (곡λΆν κ²μ μ±κ²¨κ°κΈ°λ νκ² μ§λ§,,, 곡λΆλ₯Ό νμ κ±°λΌλ νμ μ μλ€.)
μ€νλ € κ³ννμ§ μμ μν©(μν μ λ μ μλΉκ΅°μ κ°μΌ νλ μν©) λλΆμ 3μΌ λμ μκ°μ μ μ΄ κ±° κ°λ€.
μμ νλλ€μ νλ©΄μ 2023λ
μλ°κΈ°λ₯Ό 보λλ€. μ§λκ³ λλ μμ¬μ΄ μ λ€μ΄ λ§μ΄ 보μΈλ€.
νλ°κΈ°μλ μ΄λ¬ν μ λ€μ 보κ°νμ¬ λ μ’μ κ°λ°μκ° λλλ‘ λ
Έλ ₯ν΄μΌκ² λ€.π₯π₯π₯