[Java] Java Platform(Java SE/EE/ME/FX)μ΄λ?
Java Platform
Java νλ«νΌμ Java μ ν리μΌμ΄μ μ κ°λ° λ° κ΄λ¦¬νκΈ° μν νκ²½μΌλ‘, 4κ°μ§ νλ«νΌμ΄ μ‘΄μ¬νλ€.
- Java SE(Standard Edition)
- Java EE(Enterprise Edition)
- Java ME(Micro Edition)
- Java FX
λͺ¨λ νλ«νΌμ JVM(Java Virtual Machine)κ³Ό API(Application Programming Interface)λ‘ κ΅¬μ±λλ€. → μ¦, κ°κ°μ νλ«νΌμ JVMκ³Ό APIλ₯Ό μ 곡νλ©°, Target Platformμμ λμλλλ‘ μμ±λ Applicationλ€μ΄ Java νλ‘κ·Έλλ° μΈμ΄μ μ₯μ (Platformμ λΉμ’ μμ , μμ μ±, κ°λ° μ©μ΄ λ±..)λ€μ μ μ§ν μ μλλ‘ νλ€.
- JVM(Java Virtual Machine) : νλμ¨μ΄μ μννΈμ¨μ΄ νλ«νΌμμ Java κΈ°μ μ μ¬μ©ν μ ν리μΌμ΄μ
μ λμμν€κΈ° μν νλ‘κ·Έλ¨. μ€νΌλ μ΄ν
μμ€ν
μ΄λ μΉ λΈλΌμ°μ μ μΆκ°ν μ μλ λ°νμ νκ²½μΌλ‘, Java μ»΄νμΌλ¬κ° μμ±νλ λͺ
λ Ήμ΄λ₯Ό μ€ννλ€. JVMμ μλ κ°λ°λ νλ«νΌμ μκ΄μμ΄ μ΄λ€ νλ«νΌμμλ Java ν΄λμ€ νμΌμ΄ μ€νλλλ‘ λ°μ΄νΈμ½λ μΈν°νλ¦¬ν° λ° λ°νμμΌλ‘ ꡬμ±λλ€.
→ Java νλ‘κ·Έλ¨μ JVM, κ°λ°μ νμν νμ€ λΌμ΄λΈλ¬λ¦¬ μΈνΈ, μ»΄νμΌλ¬μ νκ²½λ§ λ§μΆλ©΄ μ΄μ체μ λ νλμ¨μ΄μ μν₯μ λ°μ§ μκ³ λͺ¨λ νκ²½μμ λμΌνκ² λμνλ€. - API(Application Programming Interface) : κ°λ°μλ€μ΄ μ§μ μ»΄ν¬λνΈλ μ ν리μΌμ΄μ μ λ§λ€ λ μ¬μ©ν μ μλ μννΈμ¨μ΄ μ»΄ν¬λνΈμ μ§ν©. (=κ°λ°μ λμμ΄ λλ Functionλ€μ λͺ¨μλ κ²)
Java νλ«νΌ
Java™ νλ«νΌμ Java μ νλ¦Ώ λ° μ ν리μΌμ΄μ μ κ°λ° λ° κ΄λ¦¬νκΈ° μν νκ²½μ λλ€. μ΄ νλ«νΌμ μΈ κ°μ 1μ°¨ ꡬμ±μμμΈ Java μΈμ΄, Java ν¨ν€μ§ λ° JVM(Java Virtual Machine)μ λλ€. Java μΈμ΄ λ° ν¨ν€μ§λ
www.ibm.com
Java SE(Standard Edition)
κ°μ₯ λμ€μ μΈ(κΈ°λ³Έμ μΈ) μλ° νλ«νΌμ΄μ νν Java μΈμ΄λΌκ³ νλ λλΆλΆμ ν¨ν€μ§(java.lang.*, java.util.*, java.awt.*, javax.rmi.*, javax.net.* λ±)κ° ν¬ν¨λ μλμ μ΄λ€.
- Java SEμ APIλ Java νλ‘κ·Έλλ° μΈμ΄μ ν΅μ¬κΈ°λ₯λ€μ μ 곡νλ€.
: κΈ°μ΄μ μΈ νμ / λ€νΈμνΉ / 보μ / λ°μ΄ν°λ² μ΄μ€ μ²λ¦¬ / κ·Έλν½ μ¬μ©μ μΈν°νμ΄μ€ κ°λ° / XML νμ± / κ°μλ¨Έμ , κ°λ°λꡬ, λ°°ν¬κΈ°μ , λΆκ° ν΄λμ€ λΌμ΄λΈλ¬λ¦¬, ν΄ν· λ± μ 곡 - SDK(Java Software Development Kit)μΌλ‘ ꡬν
- JDK(Java Development Kit) : Java SEμ νμ€μμ λ°λΌ λ§λ€μ΄μ§ ꡬ체μ μΈ μννΈμ¨μ΄. Java νλ‘κ·Έλ¨ μ€νμ Java μ½λλ₯Ό μ»΄νμΌνλ μ»΄νμΌλ¬μ, κ°λ°μ νμν κ°μ’ λꡬ, JREκ° ν¬ν¨. (Java κ°λ°μ μν΄ νμ / κ°λ°μ)
- JRE(Java Runtime Environment) : Javaκ° μ€μ λ‘ λμνλ λ° νμν JVM, λΌμ΄λΈλ¬λ¦¬, κ°μ’ νμΌλ€μ΄ ν¬ν¨. (Java μ€νμ μν΄ νμ / μΌλ°μΈ)
Java EE(Enterprise Edition)
.Java SEμ μν°νλΌμ΄μ¦μ© μ¬λ¬ κΈ°λ₯(λΌμ΄λΈλ¬λ¦¬ λ±)μ μΆκ°ν νμ₯ λ²μ μΌλ‘, Java SE νλ«νΌμ κΈ°λ°μΌλ‘ κ·Έ μμ νμ¬λ¨. → κ°νΈνκ³ κ²¬κ³ νκ³ μ΄μ/νμ₯ κ°λ₯νλ©° μμ ν μλ²μΈ‘ Java μ ν리μΌμ΄μ μ μν μ°μ νμ€
- κ³΅ν΅ νμ€ μλΉμ€ κΈ°λ₯λ€μ μ 곡νλ€.
: μ΄λ¦ μ§μ / νΈλμμ κ΄λ¦¬ / λμμ± / 보μ / λ°μ΄ν°λ² μ΄μ€ μ‘μΈμ€ λ± - μΉ νλ‘κ·Έλλ°μ νμν κΈ°λ₯μ λ€μ ν¬ν¨νλ€. (JSP, Servlet, JDBC, JNDI, JTA, EJB λ±)
β· λΉλκΈ° λ©μμ§ μ²λ¦¬λ₯Ό μν JSM(Java Message Service)
β· νΈλμμ μ²λ¦¬, λΆμ° νΈλμμ μ§μμ μν JTA(Java Transaction API)
β· λλ ν 리 μλΉμ€λ₯Ό μν JNDI(Java Naming and Directory Interface)
β· λ©μΌ μλΉμ€λ₯Ό μν Java Mail API - λκ·λͺ¨, λ€κ³μΈ΅, νμ₯μ±, μ λ’°μ±, 보μ λ€νΈμνΉ API, νκ²½ λ±μ μ 곡
Java EEλ Java SEμμ API(lib λλ ν 리μ JAR νμΌλ€)κ° μΆκ°λ κ²
μ ν리μΌμ΄μ μμ νΈλμμ κ΄λ¦¬, μΉ μ»¨ν μ΄λ λλ 보μ λ±μ μλΉμ€λ₯Ό μꡬνλ κ²½μ° νμν (1) Java νμ₯ κΈ°λ₯μ Java SE νλ«νΌμ μΆκ°νκ±°λ, (2) Java EE μ ν리μΌμ΄μ μλ²λ₯Ό λ³κ²½ν μ μλ€.
Java ME(Micro Edition)
λͺ¨λ°μΌ ν°κ³Ό κ°μ΄ Java νλ‘κ·Έλλ° μΈμ΄ κΈ°λ°μ μ ν리μΌμ΄μ μ΄ λ³΄λ€ μ‘°κ·Έλ§ κ°μ λ¨Έμ μΌλ‘ λμμν¬ μ μλ κΈ°λ₯κ³Ό API μ 곡νλ€.
- Java EEμ²λΌ Java SEλ₯Ό κΈ°λ°(Java SE APIμ νλΆ κ΅¬μ‘°λ‘ APIκ° κ΅¬μ±λ¨)μΌλ‘ νμ¬ μΌκ΄μ±μλ κ°λ° κ°λ₯
- μμ μ₯μΉμμ λμνλ Java μ ν리μΌμ΄μ κ°λ°μ νμν μ μ© ν΄λμ€ λΌμ΄λΈλ¬λ¦¬λ€μ μ 곡
- Java EE νλ«νΌ μλΉμ€μ ν΄λΌμ΄μΈνΈ μν μ μννκΈ°λ ν¨
Java FX
κ²½λ μ¬μ©μ μΈν°νμ΄μ€ APIλ₯Ό μ¬μ©νμ¬ λ¦¬μΉ μΈν°λ· μ΄ν리μΌμ΄μ μ λ§λ€ λ μ¬μ©λλ€.
- νλμ¨μ΄ μμ€μμ κ°μ κΈ°λ₯μ μ¬μ©ν μ μλ κ·Έλν½κ³Ό λ―Έλμ΄ μμ§μ κ°μΆκ³ μμ΄ ν΄λΌμ΄μΈνΈμ μ±λ₯μ μ κ²½μ μ¨μΌνλ λΆμΌμμ μ¬μ©
- Java EE νλ«νΌ μλΉμ€μ ν΄λΌμ΄μΈνΈ μν μ μννκΈ°λ ν¨
Java SEμ Java EE μ ν리μΌμ΄μ
Java™ Platform, Standard Edition(Java SE) λ° Java Platform, Enterprise Edition(Java EE)μ Java νλ‘κ·Έλλ° μΈμ΄λ‘ μ ν리μΌμ΄μ μλ²λ₯Ό νλ‘κ·Έλλ°νκΈ° μν΄ νλκ² μ¬μ©λλ νλ«νΌμ λλ€. κ·μΉ μΈμ μ μ¬μ©νμ¬
www.ibm.com