λ°μν
μλ°λ?
- μ²μλΆν° κ°μ²΄ μ§ν₯μΈμ΄λ‘ κ°λ°λ νλ‘κ·Έλλ° μΈμ΄μ΄λ€.
- μλ° κ°μ λ¨Έμ (JVM)μ μ¬μ©νμ¬, μ΄μ체μ μλ λ
립μ μΌλ‘ λμν μ μλ€.
β μλ°λ μ΄λ μ΄μ체μ μμλ κ°μ νμ±λ‘ μ€νλ μ μλ€. - μ μΈκ³μμ κ°μ₯ λ§μ΄ μ¬μ©νλ νλ‘κ·Έλλ° μΈμ΄ μ€ νλμ΄λ€.
- https://www.tiobe.com/tiobe-index/ (TIOBE μΈμ΄ μμ )
μλ°μ νΉμ§
μ₯μ
- μ΄μ체μ μλ λ 립μ μΌλ‘ μ€νν μ μλ€.
- λΆνμν κΈ°λ₯μ κ³Όκ°ν μ κ±°νμ¬ λ€λ₯Έ μΈμ΄μ λΉν΄ λ°°μ°κΈ°κ° μ½λ€.
- μλ λ©λͺ¨λ¦¬ κ΄λ¦¬ λ±μ μ§μνμ¬ λ€λ₯Έ μΈμ΄μ λΉν΄ μμ μ±μ΄ λλ€.
- μ°μ°μ μ€λ²λ‘λ©μ κΈμ§νκ³ μ λ€λ¦μ λμ ν¨μΌλ‘μ¨ μ½λμ κ°λ μ±μ λμλ€.
- μλ§μ μ°Έκ³ μλ£λ₯Ό μ°Ύμ μ μλ€.
λ¨μ
- μ€νμ μν΄ μλ° κ°μ λ¨Έμ μ κ±°μ³μΌ νλ―λ‘, λ€λ₯Έ μΈμ΄μ λΉν΄ μ€ν μλκ° λ리λ€.
- μμΈ μ²λ¦¬κ° μ λμ΄ μμ§λ§, κ°λ°μκ° μΌμΌμ΄ μ²λ¦¬λ₯Ό μ§μ ν΄ μ€μΌ νλ€λ λΆνΈν¨μ΄ μλ€.
- λ€λ₯Έ μΈμ΄μ λΉν΄ μμ±ν΄μΌ νλ μ½λμ κΈΈμ΄κ° κΈ΄ νΈμ΄λ€.
μλ° νλ‘κ·Έλ¨μ μ€ν κ³Όμ
- μλ° μ»΄νμΌλ¬
- μλ° μ»΄νμΌλ¬λ μλ°λ₯Ό κ°μ§κ³ μμ±ν μλ° μμ€ μ½λλ₯Ό μλ° κ°μ λ¨Έμ μ΄ μ΄ν΄ν μ μλ μλ° λ°μ΄νΈ μ½λλ‘ λ³ννλ€.
- μλ° μ»΄νμΌλ¬λ μλ°λ₯Ό μ€μΉνλ©΄ javac.exeλΌλ μ€ν νμΌ νμ±λ‘ μ€μΉλ©λλ€.
- μλ° λ°μ΄νΈ μ½λ
- μλ° λ°μ΄νΈ μ½λλ μλ° κ°μ λ¨Έμ μ΄ μ΄ν΄ν μ μλ μΈμ΄λ‘ λ³νλ μλ° μμ€ μ½λλ₯Ό μλ―Ένλ€.
- μλ° μ»΄νμΌλ¬μ μν΄ λ³νλλ μ½λμ λͺ λ Ήμ΄ ν¬κΈ°κ° 1λ°μ΄νΈλΌμ μλ° λ°μ΄νΈ μ½λλΌκ³ λΆλ¦¬κ³ μλ€.
- μλ° λ°μ΄νΈ μ½λμ νμ₯μλ .classμ΄λ€.
- μλ° κ°μ λ¨Έμ λ§ μ€μΉλμ΄ μμΌλ©΄, μ΄λ€ μ΄μ체μ μμλΌλ μ€νλ μ μμ΅λλ€.
- μλ° κ°μ λ¨Έμ
- μλ° κ°μ λ¨Έμ μ΄λ μλ° λ°μ΄νΈ μ½λλ₯Ό μ€νμν€κΈ° μν κ°μμ κΈ°κ³λΌκ³ ν μ μλ€.
- μλ°λ‘ μμ±λ λͺ¨λ νλ‘κ·Έλ¨μ μ€ννκΈ° μν΄μλ μλ° κ°μ λ¨Έμ μ΄ νμνλ€.
- μ€λΌν΄μ λλΆλΆμ μ£Όμ μ΄μ체μ λΏλ§ μλλΌ μΉ λΈλΌμ°μ , μ€λ§νΈ ν°, κ°μ κΈ°κΈ° λ±μμλ μλ° κ°μ λ¨Έμ μ μμ½κ² μ€μΉν μ μλλ‘ μ§μνκ³ μλ€.
- λ€λ₯Έ μ΄μ체μ λΌλ μλ° κ°μ λ¨Έμ λ§ μ€μΉλμ΄ μλ€λ©΄, κ°μ μλ° νλ‘κ·Έλ¨μ΄ μλ¬΄λ° μΆκ° μ‘°μΉ μμ΄ λμν μ μλ€.
- μλ° κ°μ λ¨Έμ μ μ΄μ체μ μ μ’ μμ μ΄λ―λ‘, κ° μ΄μ체μ μ λ§λ μλ° κ°μ λ¨Έμ μ μ€μΉν΄μΌ νλ€.
- μλ° κ°μ λ¨Έμ μ ꡬμ±
- μλ° μΈν°ν리ν°(interpreter) : μλ° μ»΄νμΌλ¬μ μν΄ λ³νλ μλ° λ°μ΄νΈ μ½λλ₯Ό μ½κ³ ν΄μνλ μν μ νλ€.
- ν΄λμ€ λ‘λ(class loader) : μλ°λ λμ μΌλ‘ ν΄λμ€λ₯Ό μ½μ΄μ€λ―λ‘, νλ‘κ·Έλ¨μ΄ μ€ν μ€μΈ λ°νμμμμΌ λͺ¨λ μ½λκ° μλ° κ°μ λ¨Έμ κ³Ό μ°κ²°λλ€. μ΄λ κ² λμ μΌλ‘ ν΄λμ€λ₯Ό λ‘λ©ν΄μ£Όλ μν μ νλ κ²μ΄ λ°λ‘ ν΄λμ€ λ‘λμ΄λ€.
- JIT μ»΄νμΌλ¬(Just-In-Time compiler) : νλ‘κ·Έλ¨μ΄ μ€ν μ€μΈ λ°νμμ μ€μ κΈ°κ³μ΄λ‘ λ³νν΄ μ£Όλ μ»΄νμΌλ¬λ₯Ό μλ―Ένλ€. λμ λ²μ(dynamic translation)μ΄λΌκ³ λ λΆλ¦¬λ μ΄ κΈ°λ²μ νλ‘κ·Έλ¨μ μ€ν μλλ₯Ό ν₯μμν€κΈ° μν΄ κ°λ°λμλ€.
- κ°λΉμ§ 컬λ ν°(garbage collector) : λλ μ¬μ©νμ§ μλ λ©λͺ¨λ¦¬λ₯Ό μλμΌλ‘ νμν΄ μ€λ€. λ°λΌμ κ°λ°μκ° λ°λ‘ λ©λͺ¨λ¦¬λ₯Ό κ΄λ¦¬νμ§ μμλ λλ―λ‘, λμ± μμ½κ² νλ‘κ·Έλλ°μ ν μ μλλ‘ λμμ€λλ€.
μ°Έκ³ μλ£
λ°μν
'Java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Java] μ€νΈλ¦Ό(Stream) (0) | 2022.02.16 |
---|---|
[Java] μλ° μ»¬λ μ Map (0) | 2022.01.11 |
[Java] μλ° μ»¬λ μ Set (0) | 2022.01.11 |
[Java] String ν΄λμ€ μ 리 (0) | 2022.01.08 |
[Java] μμμ΄λ? (0) | 2022.01.06 |