π© κ°λ°νκ²½μ΄λ
νλ‘κ·Έλ¨ κ°λ°μ νμν μ»΄νμΌλ¬, ν΅ν©κ°λ°λꡬ(IDE), μλ² λ°νμ, νΈμ§κΈ° λ° μ νΈλ¦¬ν° λ±μ κ°λ° μ»΄ν¨ν°μ μΈν
ν΄ λμ κ².
π© Eclipse
μλ° κΈ°λ°μ μ€νμμ€ ν΅ν© κ°λ° νκ²½(IDE)μ
λλ€. μ΄ν΄λ¦½μ€λ νλ‘κ·Έλλ° μΈμ΄λ‘ μλ°λΏλ§ μλλΌ λ€μν λ€λ₯Έ νλ‘κ·Έλλ° μΈμ΄μ νλ μμν¬λ₯Ό μ§μνλ©°, μ½λ νΈμ§, λλ²κΉ
, λΉλ, ν
μ€νΈ λ° νλ‘μ νΈ κ΄λ¦¬λ₯Ό μν λ€μν κΈ°λ₯μ μ 곡ν©λλ€.
π© Web
- μ μ : μΉμ μΈν°λ· λΈλΌμ°μ λ₯Ό ν΅ν΄ μ κ·Όλλ μΉμ¬μ΄νΈλ μΉ μ ν리μΌμ΄μ
μ μλ―Έν©λλ€.
- μ κ·Ό λ°©μ : URLμ ν΅ν΄ μ κ·Όνλ©°, λ€μ΄λ‘λλ μ€μΉ κ³Όμ μμ΄ μ¬μ© κ°λ₯ν©λλ€.
- νΈνμ± : λ€μν λΈλΌμ°μ μ κΈ°κΈ°μμ μ¬μ©ν μ μμ΄ νΈνμ±μ΄ λμ΅λλ€.
- κ°λ° μΈμ΄ : HTML, CSS, JavaScript λ± μΉ νμ€ κΈ°μ μ μ¬μ©ν©λλ€.
π© Front-end κ°λ°
νλ‘ νΈμλλ λ¨μ΄μμ μμΈ‘ν μ μλ―μ΄ μ¬μ©μμ μμ 보μ΄λ νλ©΄, μ¦ μΈν°νμ΄μ€λ₯Ό λ§λλ μμ
μ΄λΌκ³ λ³Ό μ μλ€.
νλ‘ νΈμμ μ¬μ©μκ° μ νν μμ²μ¬νμ λ°λΌ λ°μ΄ν°λ μλΉμ€λ₯Ό μλ²μ μμ²νκ±°λ λλ μμ²ν΄μ μ»μ λ°μ΄ν°λ₯Ό μ¬μ©μμκ² λ³΄μ¬μ£Όλ κ². 보μ΄λ μΈν°νμ΄μ€μ λν κ°λ°μΈ λ§νΌ μ¬μ©μ μΈν°νμ΄μ€(UI)μ μ¬μ©μ κ²½ν(UX)κ³Ό λ°μ ν κ΄λ ¨μ΄ μλ€.
π© HTML(HyperText Markup Language)
•κΈ°λ₯ : HTMLμ μΉνμ΄μ§μ ꡬ쑰λ₯Ό μ μνλ λ§ν¬μ
μΈμ΄μ
λλ€. μΉνμ΄μ§μ νμ λ§λ€κ³ , ν
μ€νΈ, μ΄λ―Έμ§, λ§ν¬ λ±μ μ½ν
μΈ λ₯Ό μΉνμ΄μ§μ λ°°μΉν©λλ€.
•μν /νμμ± : HTMLμ μΉμ κΈ°λ³Έ ꡬ쑰λ₯Ό λ§λλ λ° νμμ μ
λλ€. μΉνμ΄μ§μ λͺ¨λ μμλ€μ΄ HTMLμ ν΅ν΄ μ μλλ©°, μ΄λ₯Ό ν΅ν΄ μ¬μ©μμκ² μ 보λ₯Ό μ 곡νκ³ μνΈμμ©μ κ°λ₯νκ² ν©λλ€.
π© CSS(Cascading Style Sheets)
CSS μ μ© μ - ν
•κΈ°λ₯ : CSSλ HTMLλ‘ λ§λ μΉνμ΄μ§μ λμμΈκ³Ό λ μ΄μμμ κΎΈλ©°μ£Όλ μ€νμΌ μνΈ μΈμ΄μ
λλ€. ν°νΈ μ€νμΌ, μμ, κ°κ²©, λ μ΄μμ λ° λ€μν μκ°μ ν¨κ³Όλ₯Ό μ μν©λλ€.
•μν /νμμ± : CSSλ μΉνμ΄μ§μ μκ°μ 맀λ ₯μ λμ΄λ λ° μ€μν©λλ€. μ¬μ©μ κ²½ν(UX)μ ν₯μμν€κ³ , μΉνμ΄μ§λ₯Ό λ μ½κΈ° μ½κ³ μ κ·ΌνκΈ° μ¬μ΄ ννλ‘ λ§λλλ€. λ°μν λμμΈμ ν΅ν΄ λ€μν κΈ°κΈ°μμλ μΉνμ΄μ§κ° μ 보μ΄κ² ν μ μμ΅λλ€.
π© JavaScript
•κΈ°λ₯ : JavaScriptλ μΉνμ΄μ§μ Interactiveν μμλ₯Ό μΆκ°νλ νλ‘κ·Έλλ° μΈμ΄μ
λλ€. μ¬μ©μμμ μνΈμμ©μ κ°λ₯νκ² νκ³ , λ°μ΄ν°λ₯Ό μ²λ¦¬νλ©°, λμ μΈ μ½ν
μΈ λ₯Ό μμ±ν©λλ€.
•μν /νμμ± : JavaScriptλ μΉνμ΄μ§λ₯Ό λμ μ΄κ³ μλκ° μκ² λ§λλλ€. μ¬μ©μμ μ
λ ₯μ λ°μνμ¬ μΉνμ΄μ§μ λ΄μ©μ μ€μκ°μΌλ‘ λ³κ²½ν μ μμΌλ©°, 볡μ‘ν μ¬μ©μ μΈν°νμ΄μ€μ μ λλ©μ΄μ
, κ²μ, μλ°©ν₯ μ΄ν리μΌμ΄μ
λ±μ ꡬνν μ μμ΅λλ€.
π© AJAX (Asynchronous JavaScript and XML)
• λΉλκΈ° ν΅μ : μλ²μμ ν΅μ μ μν΄ XMLHttpRequest κ°μ²΄λ₯Ό μ¬μ©νμ¬, μ¬μ©μμ νλμ λ°λΌ νμν λ°μ΄ν°λ§ μλ²λ‘λΆν° λΉλκΈ°μ μΌλ‘ μμ²νκ³ λ°μμ΅λλ€.
λκΈ° ν΅μ (μ’), λΉλκΈ° ν΅μ (μ°)
• νμ΄μ§ μΌλΆλΆλ§ κ°±μ : μλ²λ‘λΆν° λ°μ λ°μ΄ν°λ₯Ό μ΄μ©ν΄ μΉ νμ΄μ§μ νΉμ λΆλΆλ§μ μ
λ°μ΄νΈν©λλ€. μ΄λ νμ΄μ§ μ 체λ₯Ό μλ‘ κ³ μΉλ κ²λ³΄λ€ λΉ λ₯΄κ³ ν¨μ¨μ μ
λλ€.
• JSON, XML, HTML, ν
μ€νΈ λ°μ΄ν° μ²λ¦¬: AJAXλ JSON, XML, HTML, ν
μ€νΈ λ± λ€μν νμμ λ°μ΄ν°λ₯Ό μ²λ¦¬νκ³ , μ΄λ₯Ό νμ΄μ§μ λμ μΌλ‘ νμν μ μμ΅λλ€.
π© Back-end κ°λ°
λ°±μλ κ°λ°(Backend Development)μ μΉμ¬μ΄νΈλ μ ν리μΌμ΄μ
μ μλ², λ°μ΄ν°λ² μ΄μ€, κ·Έλ¦¬κ³ μ ν리μΌμ΄μ
μ ν΅μ¬ κΈ°λ₯μ λΆλΆμ ꡬμΆνλ κ³Όμ μ λ§ν©λλ€. μ¬μ©μκ° μ§μ 보거λ μνΈμμ©νλ νλ‘ νΈμλ(μΉ νμ΄μ§μ μκ°μ μμ λ±)μ λ¬λ¦¬, λ°±μλλ μ£Όλ‘ λ°μ΄ν° μ²λ¦¬, 보μ, μλ² κ΄λ¦¬ λ± μ¬μ©μμκ² μ§μ 보μ΄μ§ μλ λΆλΆμ λ΄λΉν©λλ€.
λ°±μλ κ°λ°μ μ£Όμ κ΅¬μ± μμλ λ€μκ³Ό κ°μ΅λλ€:
- μλ²: ν΄λΌμ΄μΈνΈ(μ: μΉ λΈλΌμ°μ )μ μμ²μ λ°μ μ²λ¦¬νκ³ , νμν λ°μ΄ν°λ₯Ό μλ΅μΌλ‘ 보λ΄λ μμ€ν
μ
λλ€.
- λ°μ΄ν°λ² μ΄μ€: μ 보λ₯Ό μ μ₯, κ²μ, μ
λ°μ΄νΈ, μμ ν μ μλ ꡬ쑰νλ λ°μ΄ν°μ μ§ν©μ²΄μ
λλ€. λ°±μλ κ°λ°μλ λ°μ΄ν°λ² μ΄μ€μμ μνΈμμ©μ ν΅ν΄ λ°μ΄ν°λ₯Ό κ΄λ¦¬ν©λλ€.
- μ ν리μΌμ΄μ
λ‘μ§: μ¬μ©μμ μμ²μ λ°λΌ νΉμ μμ
μ μννκ³ , κ²°κ³Όλ₯Ό μ¬μ©μμκ² μ λ¬νλ νλ‘κ·Έλ¨μ μΌλΆλΆμ
λλ€. μ΄ λ‘μ§μ μλ²μμ μ€νλ©λλ€.
λ°±μλ κ°λ°μλ μ£Όλ‘ μλ² μ¬μ΄λ νλ‘κ·Έλλ° μΈμ΄(μ: Java, Python, Ruby, Node.js λ±)μ λ°μ΄ν°λ² μ΄μ€ κ΄λ¦¬ μμ€ν
(μ: MySQL, PostgreSQL, MongoDB λ±)μ μ¬μ©νμ¬ μ΄λ¬ν κΈ°λ₯μ ꡬνν©λλ€. λν, API(μ ν리μΌμ΄μ
νλ‘κ·Έλλ° μΈν°νμ΄μ€) κ°λ°, μλ² λ³΄μ, λ°μ΄ν° μ²λ¦¬ λ° μ μ₯ μ΅μ ν λ±μ μ
무λ μνν©λλ€.
π© JAVA
• κΈ°λ₯ : μλ°λ κ°λ ₯ν κ°μ²΄μ§ν₯ νλ‘κ·Έλλ° μΈμ΄λ‘μ, λ€μν νλ«νΌμμ μ€νλ μ μλ μ ν리μΌμ΄μ
μ κ°λ°νλ λ° μ¬μ©λ©λλ€.
• μν /νμμ± : μλ°λ ‘WORA(Write Once, Run Anywhere)'μ΄λΌλ νΉμ§μ κ°μ§κ³ μμ΄, λ€μν νκ²½μμμ νΈνμ±κ³Ό μ΄μμ±μ μ 곡ν©λλ€.
• JDK (Java Development Kit) : μλ° μ ν리μΌμ΄μ
κ°λ°μ μν ν΅μ¬ λꡬ λͺ¨μμΌλ‘, μμ€ μ½λλ₯Ό μ»΄νμΌνκ³ μ€ννλ λ° νμν μ»΄νμΌλ¬μ λΌμ΄λΈλ¬λ¦¬λ₯Ό ν¬ν¨ν©λλ€. μλ° κ°λ°μμκ² νμμ μΈ νκ²½μ
λλ€.
• JRE (Java Runtime Environment) : μλ° μ ν리μΌμ΄μ
μ μ€ννλ λ° νμν νκ²½μ μ 곡νλ©°, JVMμ ν¬ν¨ν λΌμ΄λΈλ¬λ¦¬μ κΈ°ν νμΌλ‘ ꡬμ±λ©λλ€. μ¬μ©μκ° κ°λ°λ μλ° μ ν리μΌμ΄μ
μ μ€νν λ νμν©λλ€.
• JVM (Java Virtual Machine) : μλ° λ°μ΄νΈμ½λλ₯Ό μ€ννκ³ , λ€μν μ΄μ 체μ μμ μλ° μ ν리μΌμ΄μ
μ ꡬλν μ μλλ‘ νλ κ°μ μ€ν νκ²½μ
λλ€. 'ν λ² μμ±νλ©΄ μ΄λμλ μ€νλ μ μμ'μ κ°λ₯νκ² λ§λλ ν΅μ¬ μμμ
λλ€.
π© Spring
• μ μ : μν°νλΌμ΄μ¦μ© Java μ ν리μΌμ΄μ
κ°λ°μ νΈνκ² ν μ μκ² ν΄μ£Όλ μ€νμμ€ κ²½λκΈ μ ν리μΌμ΄μ
νλ μμν¬
•μ₯μ : λ€μν λΌμ΄λΈλ¬λ¦¬λ₯Ό μ 곡νλ©° μ
무 λΆμ
ν λ° λμ¨ν κ²°ν©μ ν΅ν΄ μ μ§λ³΄μμ μ©μ΄νκ² ν μ μλ€.
•λ¨μ : μ΄κΈ° μ€μ λ° λ¬λ컀λΈκ° λλ€.
π© git
• κΈ°λ₯ : λΆμ°ν λ²μ κ΄λ¦¬ μμ€ν
μ ν μ’
λ₯μ΄λ€.
β
λ²μ κ΄λ¦¬λ?
- κ° νμΌμ μ΄μ μνλ‘ λλ릴 μ μλ€.
- νλ‘μ νΈλ₯Ό ν΅μ§Έλ‘ μ΄μ μνλ‘ λλ릴 μ μλ€.
- μκ°μ λ°λΌ μμ λ΄μ©μ λΉκ΅ν΄ λ³Ό μ μλ€.
- λκ° λ¬Έμ λ₯Ό μΌμΌμΌ°λμ§λ μΆμ ν μ μλ€.
- λκ° μΈμ λ§λ€μ΄λΈ μ΄μμΈμ§λ μ μ μλ€.
- νμΌμ μμ΄λ²λ¦¬κ±°λ μλͺ» κ³ μ³€μ λλ μ½κ² 볡ꡬν μ μλ€.
β
gitμ μ₯μ ?
- μμ€ μ½λλ₯Ό μ£Όκ³ λ°μ νμ μμ΄, κ°μ νμΌμ μ¬λ¬ λͺ
μ΄ λμμ μμ
νλ λ³λ ¬κ°λ°μ΄ κ°λ₯νλ€.
- λΆμ° λ²μ κ΄λ¦¬μ΄κΈ° λλ¬Έμ μΈν°λ·μ΄ μ°κ²°λμ§ μμ κ³³μμλ κ°λ°μ μ§νν μ μκ³ , μ€μ μ μ₯μκ° λ λΌκ° λ²λ €λ μμ 볡ꡬν μ μλ€.
- ν νλ‘μ νΈκ° μλ, κ°μΈ νλ‘μ νΈμΌμ§λΌλ Gitμ ν΅ν΄ λ²μ κ΄λ¦¬λ₯Ό νλ©΄ 체κ³μ μΈ κ°λ°μ΄ κ°λ₯ν΄μ§κ³ , νλ‘κ·Έλ¨μ΄λ ν¨μΉλ₯Ό λ°°ν¬νλ κ³Όμ λ κ°λ¨ν΄μ§λ€.
π git 곡μμ¬μ΄νΈ
https://github.com/progit/progit2-ko/releases/download/2.1.80/progit.pdf
π© μΉ μλ² (Web Server)
ν΄λΌμ΄μΈνΈκ° GET, POST λ±μ λ©μλλ₯Ό μ΄μ©ν΄ μ μ‘ν μμ²μ λ°μ HTMLμ΄λ μ€λΈμ νΈλ₯Ό HTTP νλ‘ν μ½μ μ΄μ©ν΄ μ μ‘νλ νλ‘κ·Έλ¨ μ
λλ€. μΉ μλ²λ μΉ νμ΄μ§, μ΄λ―Έμ§ λ±μ μ μ μΈ μ»¨ν
μΈ λ§ μ 곡ν μ μμ΅λλ€.
β
Apache λ?
Apacheλ μνμΉ μννΈμ¨μ΄ μ¬λ¨μμ κ΄λ¦¬νλ HTTP μΉ μλ²μ
λλ€. Apacheλ μ€ν μμ€μ΄κΈ° λλ¬Έμ λꡬλ μ§ μμ , μ¬λ°°ν¬κ° κ°λ₯ν©λλ€. κ²λ€κ° Apacheλ λ€μν κΈ°λ₯μ μ 곡νκ³ λ€λ₯Έ μΉ μλ²λ€μ ꡬμΆμ΄ μ½λ€λ μ΄μ λ‘ λ§μ΄ μ¬μ©λκ³ μμ΅λλ€.
β
Tomcat λ?
Tomcatμ΄λ μνμΉ μ¬λ¨μμ λ§λ μ€ν μμ€ WAS(Web Application Server)μ
λλ€. Tomcatμ Java Servletκ³Ό JSPκ° μ€νν μ μλ νκ²½μ μ 곡νμ¬ λμ μΈ νμ΄μ§λ₯Ό μμ±ν©λλ€. κ·Έλ¦¬κ³ DB μ°κ²° λ° λ°μ΄ν° μ‘°μ, λ€λ₯Έ μμ©νλ‘κ·Έλ¨λ€κ³Ό μνΈ μμ©μ΄ κ°λ₯ν©λλ€.
π© App ?
• μ μ : μ±μ λͺ¨λ°μΌ κΈ°κΈ°(μ€λ§νΈν°, νλΈλ¦Ώ) λλ λ°μ€ν¬νμ μ€μΉλμ΄ μ¬μ©λλ μννΈμ¨μ΄ μμ© νλ‘κ·Έλ¨μ
λλ€.
• μ κ·Ό λ°©μ : μ± μ€ν μ΄(Apple App Store, Google Play Store λ±)λ₯Ό ν΅ν΄ λ€μ΄λ‘λνμ¬ μ€μΉν ν μ¬μ©ν©λλ€.
• νΈνμ± : νΉμ μ΄μ 체μ (iOS, Android)μ μ΅μ νλμ΄ μμ΄, κΈ°κΈ° κ° νΈνμ±μ΄ μΉμ λΉν΄ μ νμ μΌ μ μμ΅λλ€.
• κ°λ° μΈμ΄ : Swift, Kotlin, Java λ± νΉμ νλ«νΌμ νΉνλ μΈμ΄λ₯Ό μ¬μ©ν©λλ€.
π© λͺ¨λ°μΌ App κ°λ° λ°©μ ?
β
Native App
• μ μ : νΉμ μ΄μ 체μ μ μ΅μ νλμ΄ κ°λ°λ μ±μ
λλ€.
• κ°λ° μΈμ΄ : iOSμ κ²½μ° Swiftλ Objective-C, Androidμ κ²½μ° Javaλ Kotlinμ μ¬μ©ν©λλ€.
• μ₯μ : λμ μ±λ₯, μ΄μ 체μ μ κΈ°λ₯μ μ΅λν νμ©ν μ μμ΅λλ€.
• λ¨μ : κ° νλ«νΌμ λν΄ λ³λμ μ±μ κ°λ°ν΄μΌ νλ―λ‘ μκ°κ³Ό λΉμ©μ΄ λ λλλ€.
β
Hybrid App
• μ μ : μΉ κΈ°μ μ μ¬μ©νμ¬ κ°λ°λλ©°, λ€μ΄ν°λΈ μ±μΌλ‘ ν¨ν€μ§ν μ±μ
λλ€.
• κ°λ° μΈμ΄ : HTML, CSS, JavaScript λ± μΉ κΈ°μ μ μ¬μ©ν©λλ€.
• μ₯μ : νλμ μ½λλ² μ΄μ€λ‘ μ¬λ¬ νλ«νΌμ λ°°ν¬ν μ μμ΅λλ€.
• λ¨μ : λ€μ΄ν°λΈ μ±μ λΉν΄ μ±λ₯μ΄ λ¨μ΄μ§ μ μμ΅λλ€.
• λꡬ : Apache Cordova(PhoneGap), Ionic λ±μ΄ μμ΅λλ€.
β
Cross Platform App
• μ μ : μ¬λ¬ μ΄μ 체μ μμ μ€νλ μ μλλ‘ κ°λ°λ μ±μ
λλ€.
• κ°λ° μΈμ΄ : React Native(JavaScript), Flutter(Dart) λ± νΉμ νλ μμν¬μ μΈμ΄λ₯Ό μ¬μ©ν©λλ€.
• μ₯μ : νλμ μ½λλ² μ΄μ€μμ μ¬λ¬ νλ«νΌμ μ§μνλ©°, λ€μ΄ν°λΈμ κ°κΉμ΄ μ±λ₯μ μ 곡ν©λλ€.
• λ¨μ : 볡μ‘ν κΈ°λ₯μ΄λ μ΅μ API μ§μμ μ νμ΄ μμ μ μμ΅λλ€.