맀μΌλ§€μΌ TILμ μμ±νλ κ²μ΄ μ¬μ¬ νλ€μ΄μ§κΈ° μμνλ€... λΌλ μκ°μ΄ λλ μκ° λ΄ λ¨Έλ¦¬λ₯Ό μ£Όλ¨ΉμΌλ‘ 콩 νκ³ λ²μ μ£Όμ. μ§κΈμ νλ€μ§λ§ λ―Έλμ λ΄κ° μ€λμ λμκ² κ°μ¬ν΄ ν κ²μ΄λ€. κΎΈμ€ν¨μ μμ§ λ§μ !
μμ€ μ½λ νμΌμ μ»΄ν¨ν°λ ν΄λν°μμ μ€νν μ μλ λ 립(standalone) μννΈμ¨μ΄ κ°κ³΅λ¬Όλ‘ λ³ννλ κ³Όμ μ λ§νκ±°λ κ·Έμ λν κ²°κ³Όλ¬Όμ μΌμ»«λλ€. μννΈμ¨μ΄ λΉλμ μμ΄ κ°μ₯ μ€μν λ¨κ³λ€ κ°μ΄λ° νλλ μμ€ μ½λ νμΌμ΄ μ€ν μ½λλ‘ λ³νλλ μ»΄νμΌ κ³Όμ μ΄λ€.
μΈκ°μ΄ μ΄ν΄ν μ μλ κ³ κΈ μΈμ΄λ‘ μμ±λ νλ‘κ·Έλ¨ μμ€ μ½λλ₯Ό μ»΄ν¨ν°κ° μ΄ν΄ν μ μλ κΈ°κ³μ΄ λλ λ°μ΄νΈμ½λλ‘ λ²μν΄ μ£Όλ κ²μ΄λ€.
μμμ½λμμ λͺ©μ μ½λ(λͺ©μ νμΌ)λ‘ λ°κΎΈλ κ²μ΄ μ»΄νμΌμ΄κ³ , λͺ©μ νμΌμ μ€ν νμΌλ‘ λ°κΎΈλ κ²μ΄ λ§ν¬λ€. μμμ½λλ cμΈμ΄λ java, νμ΄μ¬ κ°μ μ¬λμ΄ μ΄ν΄ν μ μλ μΈμ΄λ₯Ό λ§νκ³ λͺ©μ νμΌμ μ»΄ν¨ν°κ° μ΄ν΄ν μ μλ μΈμ΄λ₯Ό λ§νλ€. μ€ν νμΌλ λ§μ°¬κ°μ§λ‘ μ»΄ν¨ν°κ° μ΄ν΄ν μ μλ μΈμ΄λ‘ ꡬμ±λμ΄ μλ€. μ»΄νμΌμ λν΄ μμ§ λͺ»ν μ¬λλ€μ΄ λ§μ΄ μ€ν΄νκ³ μλ λΆλΆμ΄ μμ€ μ½λλ₯Ό μμ±νκ³ μ€ν νμΌμ λ§λλ κ²μ μ»΄νμΌμ΄λΌκ³ μκ°νμ§λ§ μ΄κ²μ μ»΄νμΌλ¬κ° νλ μν μΌ λΏ, μ»΄νμΌμ΄λΌλ κ°λ
μ μμμ½λμμ λͺ©μ νμΌλ‘ λ°κΎΈλ κ²μ΄λ€. λͺ©μ νμΌμ λ¨μν μ»΄ν¨ν°κ° μ΄ν΄ν μ μλ νμΌ(μ½λ)μΌ λΏ μ€νν μλ μμΌλ©° μ΄κ²μ λ§μ»€κ° μ€ν κ°λ₯ν νμΌλ‘ λ§λλλ° μ΄ μ€ννμΌμ .exeνμΌμ΄λΌκ³ λΆλ₯Έλ€.
λΉλλ κΈ°λ³Έμ μΌλ‘ μ€ν νμΌμ λ§λλ κ²μ μλ―Ένλ€. μ¬μ€μ νλμ μμ€ νμΌμ΄ νλμ μ€ν νμΌλ‘ μμ±λκΈ° μν΄μλ μ»΄νμΌ κ³Όμ κ³Ό λ§ν¬ κ³Όμ μ κ±°μ³μΌ νλ€. λ§ν¬λΌλ κ²μ λ§ κ·Έλλ‘ μ€ννμΌλ‘ λ§λλλ° νμν κΈ°λ₯λ€μ μ»΄νμΌλ νμΌμ μ°κ²°μν¨λ€λ μλ―Έλ€. λ°λΌμ .cνμΌμ μ»΄νμΌν νμ μμ±λ μ€λΈμ νΈ νμΌλ€μ μ΄μ©νμ¬ λ§ν¬ μμ μ ν΄μΌ μ€ν νμΌμΈ .exeνμΌμ΄ μμ±λλ€. λΉμ£ΌμΌ C++μμλ λΉλλ₯Ό ν΅ν΄μ λ§ν¬ κ³Όμ μ μ€ννλ€. λ§μ½ .cνμΌμ΄ μ»΄νμΌ λμ΄μμ§ μμ μνμμ λΉλλ₯Ό μ€ννλ©΄ μ»΄νμΌκ³Ό λ§ν¬λ₯Ό λͺ¨λ μ€ννλ©° μ΄λ―Έ .objλ‘ μ»΄νμΌλ νμΌμ΄ μ‘΄μ¬νλ©΄ λΉλλ₯Ό μ€ννμ λ μ»΄νμΌ μμ μ μλ΅νκ³ λ§ν¬ μμ μ ν νμ μ€ννμΌμ μμ±νλ€. κ·Έλ¬λ μ»΄νμΌλ νμΌμ μ€ννμΌμ΄ μλλ€. λ€μ λ§νλ©΄ μ°λ¦¬κ° μλμ° νκ²½μμ μ€νν μ μλ .exeνμΌμ ννκ° μλλΌλ μλ―Έλ€. λΉμ₯¬μΌ C++μμλ .cλ‘ λμ΄μλ μμ€μ½λλ₯Ό μ»΄νμΌνλ©΄ .objνμΌλ‘ λ³ννλ€. λ§μ°¬κ°μ§λ‘ 리λ μ€λ μ λμ€μμλ .cλ‘ λμ΄μλ μμ€μ½λλ₯Ό μ»΄νμΌνλ©΄ .oνμΌλ‘ λ³ννλ€. μ΄μ κ°μ .objνμΌμ΄λ .oμ κ°μ νμΌλ€μ μ€λΈμ νΈ(λͺ©μ ) νμΌμ΄λΌκ³ λΆλ₯Έλ€.
μλ° μ»΄νμΌλ¬λ μλ°λ₯Ό κ°μ§κ³ μμ±ν μλ° μμ€ μ½λλ₯Ό μλ° κ°μ λ¨Έμ μ΄ μ΄ν΄ν μ μλ μλ° λ°μ΄νΈ μ½λλ‘ λ³ννλ€.
μλ° μ»΄νμΌλ¬λ μλ°λ₯Ό μ€μΉνλ©΄ javac.exeλΌλ μ€ν νμΌ ννλ‘ μ€μΉλλ€.
μλ° λ°μ΄νΈ μ½λ(Java bytecode)λ μλ° κ°μ λ¨Έμ μ΄ μ΄ν΄ν μ μλ μΈμ΄λ‘ λ³νλ μλ° μμ€ μ½λλ₯Ό μλ―Ένλ€.
μλ° μ»΄νμΌλ¬μ μν΄ λ³νλλ μ½λμ λͺ
λ Ήμ΄ ν¬κΈ°κ° 1λ°μ΄νΈλΌμ μλ° λ°μ΄νΈ μ½λλΌκ³ λΆλ¦¬κ³ μλ€.
μ΄λ¬ν μλ° λ°μ΄νΈ μ½λμ νμ₯μλ .classμ΄λ€.
μλ° λ°μ΄νΈ μ½λλ μλ° κ°μ λ¨Έμ (JVM, Java Virtual Machine)λ§ μ€μΉλμ΄ μμΌλ©΄, μ΄λ€ μ΄μ체μ μμλΌλ μ€νλ μ μλ€.
μλ° κ°μ λ¨Έμ (JVM, Java Virtual Machine)μ΄λ μλ° λ°μ΄νΈ μ½λλ₯Ό μ€νμν€κΈ° μν κ°μμ κΈ°κ³λΌκ³ ν μ μλ€.
μλ°λ‘ μμ±λ λͺ¨λ νλ‘κ·Έλ¨μ μλ° κ°μ λ¨Έμ μμλ§ μ€νλ μ μμΌλ―λ‘, μλ° νλ‘κ·Έλ¨μ μ€ννκΈ° μν΄μλ λ°λμ μλ° κ°μ λ¨Έμ μ΄ μ€μΉλμ΄ μμ΄μΌ νλ€.
μ°Έκ³
βμννΈμ¨μ΄ λΉλ.β Wikipedia, Wikimedia Foundation, 10 July 2021, https://ko.wikipedia.org/wiki/%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4_%EB%B9%8C%EB%93%9C.
βμ»΄νμΌ.β μ»΄νμΌ - ν΄μλ·, http://wiki.hash.kr/index.php/%EC%BB%B4%ED%8C%8C%EC%9D%BC.
βμ½λ©κ΅μ‘ ν°μ¨νΌμ€μΏ¨.β TCPschool, http://www.tcpschool.com/java/java_intro_programming.