[μ°λ¦¬ μμ΄λ₯Ό μν Java κ°μ 2μΌμ°¨] 무μμ λ°λΌνκΈ°
μ§λ μκ°μλ νλ‘κ·Έλλ°μ΄λ 무μμΈμ§μ λν΄ κ°λ΅νκ² μ€λͺ μ ν΄λ³΄μμ΅λλ€.
λ무 μ§λ£¨ν μ΄λ‘ μ μΈ μ΄μΌκΈ° 보λ€λ κ°λ°μλ‘ κ°λ°μ νλ©΄μ λλμ μ λ°νμΌλ‘ μ μλ₯Ό λ΄λ Έμλλ°
μ΄ν΄νλλ° λμμ΄ λμμΌλ¦¬λΌ μκ°ν©λλ€.
μ΄λ² μκ°μλ 무μμ λ°λΌνκΈ° μκ°μ κ°μ Έλ³΄κ² μ΅λλ€.
μ°μ μ¬λ¬λΆλ€ μ»΄ν¨ν°μ μλμ κ°μ κ²λ€μ μ€λΉν΄μΌ ν©λλ€.
1. JDK (Java Development Kit)
2. μ΄ν΄λ¦½μ€ IDE (Integrated Development Environment)
μ€μΉνκΈ° μ μ μ΄μΉκ΅¬λ€μ΄ λμ§λΆν° μκ³ μ€μΉλ₯Ό ν΄μΌκ² μ£ ? ν΄νΉνλ‘κ·Έλ¨μ΄λ©΄ ν° μΌ λ ν λκΉμ.
μ°μ , JDKλΌλ μΉκ΅¬λ "μλ° κ°λ° ν΄" μ€μ¬μ "μκ°ν΄"μ΄λΌλ λ μμ΄μ£ . μλ° μΈμ΄ μ¬μ μ΄λΌκ³ μκ°νμλ©΄ λ©λλ€.
μ΄ λ μμ΄ μμ΄μΌ μ¬λ¬λΆλ€μ΄ μμ±ν μλ°μμ€μ½λλ₯Ό μ»΄ν¨ν°κ° μ΄ν΄νλ μΈμ΄λ‘ λ³κ²½μ΄ κ°λ₯νκ³ ,
μλ° νλ‘κ·Έλ¨μ μ€νμν¬ μκ° μμ΅λλ€. νμλΆν° νμ¬κΉμ§ 무λ£μ
λλ€. (Java 8μ νΉμ λ²μ λΆν°λ μ λ£λΌμ΄μΌμ€λ‘ μ νλμμ΅λλ€)
λ€μμΌλ‘ μ΄ν΄λ¦½μ€λΌλ μΉκ΅¬λ μ¬λ¬λΆλ€μ΄ κ°λ°μ μ’ λ μ½κ² ν μ μλλ‘ νκΈ°μν΄
μ€νμμ€λ‘ 곡κ°λ 무λ£λ‘ μ¬μ©κ°λ₯ν "ν΅ν© κ°λ° νκ²½"μ μ 곡νλ λꡬμ λλ€.
κ°λ°μκ° μμ€μκ°λΌλ©΄ μ΄ν΄λ¦½μ€ IDEλ μλνλ‘μΈμμ κ°μ κ²μ λλ€.
μ, κ·ΈλΌ μ€μΉλ₯Ό νλ¬ κ°λ³ΌκΉμ??
1. JDK 8 (Java SE Development Kit 8) μ€μΉ -> λ€μ΄λ‘λ λ§ν¬
-> νΉμ λ€μ΄λ‘λ λ§ν¬ λ€μ΄κ°λλ° cookie κ΄λ ¨ μλμ κ°μ μ°½μ΄ λ¬λ€λ©΄ κ·Έλ₯ I agree νμ§λ§μκ³ μλμ²λΌ λ°λΌν΄μ£ΌμΈμ.
2. μ΄ν΄λ¦½μ€(κ°λ°ν΄, IDE) μ€μΉ -> λ€μ΄λ‘λ λ§ν¬
3. μ΄μ λ€μ΄λ‘λ λ°μ JDK μ€μΉ νμΌμ "λλΈν΄λ¦"ν΄μ μ€μΉν΄μ£ΌμΈμ.
-> μ€μΉ μ μΈν (μ€μΉ κ²½λ‘ λ³κ²½ λ±)μ νμ§λ§κ³ κΈ°λ³Έκ° κ·Έλλ‘ Next, Next νμλ©΄ λ©λλ€.
μ€μΉκ° μλ£λλ©΄ μλμ°μμλ cmdμ°½, Macμμλ ν°λ―Έλμ°½μμ μλμ κ°μ΄ μλ°μ λ²μ μ νμΈνλ λͺ λ Ήμ΄λ₯Ό μ λ ₯ν΄λ³΄μΈμ.
java -version
κ²°κ³Όλ μλμ²λΌ λμμΌ ν©λλ€. λ¬Όλ‘ λ²μ μ λνλ΄λ μ«μλ λ€λ₯Ό μ μμ΅λλ€.
μ¬κΈ°μ νμΈν κ²μ μΈ λ² μ§Έ μ€μ HotSpotμ΄λΌκ³ λ¨λμ§κ° μ€μν©λλ€.
(μλ°λ μ€ννκ²½λ§ μ 곡νλ JREμ κ°λ°νκ²½κΉμ§ μ 곡νλ JDKκ° μμ΅λλ€.
μ ν¬λ JDKλ₯Ό μ€μΉν κ²μ΄κ³ JDKμ λ²μ μλ μ λ κ² HotSpot Server VMμ΄λΌλ κ² μΆλ ₯λ©λλ€.)
μ¬κΈ°κΉμ§ μ λ°λΌμ€μ ¨λ€λ©΄ μ΄μ μ΄ν΄λ¦½μ€λ₯Ό μ€μΉν΄μ£ΌμΈμ.
μ°λ¦¬λ μ΄ν΄λ¦½μ€ μΈμ€ν¨λ¬μμ μμμ λ λ²μ§Έ κΊΌλ₯Ό μ νν΄μ μ€μΉν κ²λλ€.
μ€μΉ μμΉλ κΈ°λ³Έμ μΌλ‘ μΈν μ΄ λμ΄μμ΅λλ€. κ·Έλ₯ INSTALL λ²νΌμ κΎΉ λλ¬μ£Όμλ©΄ λ©λλ€.
λ§μ½ Java κ²½λ‘κ° λμ€μ§ μλλ€λ©΄ Java μ€μΉκ° μ λλ‘ μλμλ€λ μλ―Έμ΄λ―λ‘ νμΈμ ν΄λ³΄μ μΌ ν©λλ€.
μ€μΉκ° μ§νλκ³ μμ΅λλ€.
μ΄λ° μ λ° νμΌλ€μ μΈν°λ·μμ λ€μ΄λ‘λ λ°μκ°λ©΄μ μ€μΉλ₯Ό ν©λλ€.
μ€κ°μ μ΄λ° λΌμ΄μΌμ€ λμ νμ μ°½μ΄ λ¨λ©΄ "Remember accepted licenses"μ 체ν¬ν΄μ£Όκ³ "Accept"λ²νΌμ λλ¬μ€λλ€.
μ¬κΈ°λ λ§μ°¬κ°μ§μ λλ€. "Remember choice"μ 체ν¬ν΄μ£Όμκ³ , "Accept" κ³ κ³ μ±~
μ΄ νλ©΄μ μλμ° μ΄μ체μ μμλ μλμ¬ μ μμΌλ, "μ΄λ° νλ©΄μ μ μλμ€μ§?"νμ€ νμκ° μμ΅λλ€.
μλμ°μμλ κ·Έλ₯ next, next νμλ©΄ λ κ²λλ€.
μ¬κΈ°μλ 체ν¬ν΄μ£Όκ³ "Accept selected" κ³ κ³ μ±~
μ€μΉκ° μλ£λλ©΄ Launch λ²νΌμ΄ νμ±νλ©λλ€.
μ΄μ Launch λ²νΌμ λλ¬ μ€νμ μμΌλ³΄λλ‘ νκ² μ΅λλ€.
μ€ννλ©΄ μμ κ°μ μ°½μ΄ λ¨λλ° λ¬΄μνκ³ κ·Έλ₯ "Launch" λ²νΌμ ν΄λ¦ν©λλ€. (κ²½λ‘λ λ€λ₯Ό μ μμ΅λλ€.)
welcome μ°½μ΄ λ μμ΅λλ€. μ΄λ°μ λ° λ©λ΄κ° 보μ΄κ³ λ°λ‘ νλ‘μ νΈλ₯Ό λ§λ€μ΄ λ³Ό μ μλ λ©λ΄λ 보μ λλ€.
μ΄μ κ°λ¨ν νλ‘μ νΈλ₯Ό νλ λ§λ€μ΄ λ³΄κ² μ΅λλ€.
λ°λ‘ "μλ νλ‘μ νΈ"μ λλ€.
welcome μ°½μ μ°μΈ‘μμ "Tutorials"λ₯Ό μ νν©λλ€.
"Create a Hello World application"μ μ νν©λλ€.
λκ° λ°λνμ²λΌ μκΈ΄ 볡μ‘ν΄λ³΄μ΄λ νλ©΄μ΄ λμλλ° μ κ²½λκ³ μ€λ₯Έμͺ½μ 보μ΄λ "μ°μ»΄μ°½"λ§ λ³΄μλ©΄ λ©λλ€.
λ°λΌνκΈ°μ²λΌ λμ΄μλλ° λ²νΌλ§ λλ₯΄λ©΄ μμμ μ΄κ²μ κ² ν΄μ€λλ€.
μ¬κΈ°μ μ€μν κ²μ μμμ λλ€.
Hello World μ ν리μΌμ΄μ μ λ§λ€κΈ° μν μμ μμλ₯Ό νλ² μ°μ΅νκ³
λ€μμ λ€λ₯Έ μ ν리μΌμ΄μ μ λ§λ€ λ λμΌν μμλ‘ μμ μ μ§ννλ©΄ λ©λλ€.
κ°μ΄λ° νλμμΌλ‘ "Click to Begin"μ ν΄λ¦ν΄λ΄ μλ€.
λ°λ‘ μλμͺ½μ μλ "Open the Java perspective" λ©λ΄κ° μ΄λ¦¬λ©΄μ μ΄λ°μ λ° μ€λͺ μ΄ λ λμ΅λλ€.
μ€λͺ μ μ΄λ ΅μ§ μμΌλ νλ² μ½μ΄λ³΄κ³ , "Click to perform"μ ν΄λ¦ν©λλ€.
λκ° μ€ννλ λ― νλλ μ΄ν΄λ¦½μ€ μ°½ μ°μλ¨μ μ νλ μμ΄μ½μ΄ λ³κ²½λμμ΅λλ€.
μλ 컀νΌμ½© λͺ¨μμ΄ μλ μμ΄μ½μ΄ μ νλμ΄μμλλ°, μ΄μ JλΌλ κΈμκ° μλ μμ΄μ½μ΄ μ νλμ΄μ Έ μλ€μ.
κ·Έλ¦¬κ³ μ°μ»΄μ°½μμλ λ€μ λ¨κ³μΈ "Create a Java project" λ©λ΄κ° μ΄λ Έμ΅λλ€.
μ€λͺ μ νλ² μ½μ΄λ³΄κ³ λ "Click to perform" μ ν΄λ¦ν©λλ€.
μλ° νλ‘μ νΈ μμ±μ°½μ΄ λ΄λλ° μ¬κΈ°μ "Project name"λ§ μ λ ₯ν΄μ£Όκ³ "Finish"λ²νΌμ ν΄λ¦ν©λλ€.
μ’μΈ‘μ "Project Explorer" λ·°μ μ λ ₯λ§ νλ‘μ νΈλͺ μ΄ λ³΄μ΄λμ§ νμΈν©λλ€.
μ΄μ λ€μ λ¨κ³μΈ "Create your HelloWorld class" λ₯Ό μ§νν©λλ€.
μ€λͺ μ μλλλ‘ λ°λΌνκ±°λ "Click to perform"μ ν΄λ¦ν©λλ€.
ν΄λμ€ μμ±μ°½μ΄ λ¨λλ° μ¬κΈ°μλ "Name"μ "HelloWorld" μ λ ₯ ν μλμͺ½μ "public static void main(String[] args)" μμ 체ν¬λ°μ€λ₯Ό 체ν¬νκ³ "Finish" ν©λλ€.
HelloWorld ν΄λμ€κ° μμ±λμ΄ μ’μΈ‘μ Package Explorer μλ νμΌμ΄ μμ±λ κ²μ νμΈν μ μκ³ ,
κ°μ΄λ° ν ν λΉμ΄μλ μ°½μλ λκ°κ° λνλ¬μ΅λλ€.
μ΄κ²μ΄ λ°λ‘ μλ° λ¬Έλ²μ κΈ°μ΄ν μμ€μ½λμ λλ€.
μ, μ΄μ μ²μμΌλ‘ μμ€μ½λλ₯Ό μμ±ν΄λ³Ό μ°¨λ‘μ λλ€.
μ°μ»΄μ°½μ μ€λͺ λλ‘ μλμ²λΌ μΆλ ₯λ¬Έμ νλ μμ±ν΄ μ£ΌμΈμ.
μ μ²λΌ νμ€μ μΆκ°νκ³ μ μ₯ν©λλ€.
μ΄μ λ§μ§λ§μΌλ‘ μ°λ¦¬κ° μμ±ν μ½λλ₯Ό μ€νν΄λ³΄κ² μ΅λλ€.
μ°μ»΄μ°½ λ§μ§λ§ λ¨κ³μ μ€λͺ μ λ°λΌμ μ€νν΄λ΄ λλ€.
HelloWorldμ μμ±ν μΆλ ₯λ¬Έμ λ°λΌ κ·Έλλ‘ μΆλ ₯λλ κ²μ νμΈν μ μμ΅λλ€.
μ¬κΈ°κΉμ§κ° HelloWorld νν 리μΌμ λμ λλ€.
μ°λ¦¬λ νλλ§ λ ν΄λ³΄μ£ .
System.out.println("Hello world!");
μ¬κΈ°μ "Hello world!" λ₯Ό "μλ νλ‘μ νΈ μ±κ³΅" μΌλ‘ λ°κΏμ μΆλ ₯ν κ²λλ€.
μλμ²λΌ λ³κ²½ν΄μ£Όμλ©΄ λ©λλ€.
System.out.println("μλ
νλ‘μ νΈ μ±κ³΅");
μ΄μ λ€μ μ€νν΄λ³΄μΈμ.
μλμ²λΌ κ²°κ³Όκ° μ λμ€λ©΄ λ©λλ€.
μ¬κΈ°κΉμ§ μ λ°λΌ μ€μ ¨μ΅λλ€.
μ¬λ¬λΆμ μ΄μ κ°λ°μκ° λμμ΅λλ€.
μ΄λ² μκ°μλ JDK μ€μΉμ μ΄ν΄λ¦½μ€ IDE μ€μΉ κ·Έλ¦¬κ³ ν¬λ‘μλ μ ν리μΌμ΄μ λ§λ€κΈ° κΉμ§
무μμ λ°λΌν΄λ³΄λ μκ°μ κ°μ‘μ΅λλ€.
μ΄μ κ°λ°μ μν κΈ°λ³Έμ μΈ μ€λΉλ λͺ¨λ λλ¬μ΅λλ€.
λ€μ μκ°λΆν°λ μλ°μΈμ΄λ₯Ό μ΄μ©νμ¬ κ°λ¨ν μ ν리μΌμ΄μ μ μ§μ λ§λ€μ΄λ³΄λ μκ°μ κ°μ§λλ‘ νκ² μ΅λλ€.