μ΄νν°λΈ μλ°(84)
-
[μ΄νν°λΈ μλ°] Item02 μ벽곡λ΅. IllegalArgumentException
item02. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. " p19. IllegalArgumentException" IllegalArgumentException λ? : μ ν©νμ§ μκ±°λ, μ μ νμ§ λͺ»ν μΈμλ₯Ό λ©μλμ λ겨주μμ λ λ°μνλ μλ¬μ΄λ€. μ¦, νλΌλ―Έν°μ λκ° μλͺ»λ κ°μ΄ λμ΄μμ λ λ°μνλ μ€λ₯μ΄λ€. κ·Έλ¬λ―λ‘ λ©μλμ μ λ¬λ νλΌλ―Έν°κ° μ μ λ¬λκ±΄μ§ νμΈμ΄ νμνλ€. 보ν΅μ κ±°μ μλ¬ λ‘κ·Έλ§ μ νμΈν΄λ ν΄κ²° ν μ μλ€. μ΄λ κ² λ°°μ‘μΌμ λ³κ²½νλ λ©μλκ° μλ€κ³ νμ. μ΄λ, deliveryDateκ° νμ¬λ³΄λ€ μ μ΄λΌλ©΄ λ°°μ‘μ κ³Όκ±°λ‘ ν μ μκΈ° λλ¬Έμ IllegalArgumnetExceptionμ ν΅ν΄ νλΌλ―Έν°κ° μλͺ»λλ€κ³ μλ €μ£ΌκΈ° μν΄μ μλ¬λ₯Ό λ°μμν¨λ€. μλ¬λ₯Ό λμ§ λλ κ·Έλ₯ λ¨..
2023.01.09 -
[μ΄νν°λΈ μλ°] Item02 μ벽곡λ΅. λΉλ ν¨ν΄ Builder Pattern
item02. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. " p17. λΉλ ν¨ν΄" [μ΄νν°λΈ μλ°] Item2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. (λΉλ ν¨ν΄) (tistory.com) [μ΄νν°λΈ μλ°] Item2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. (λΉλ ν¨ν΄) μμ΄ν 2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. [μ΄νν°λΈ μλ°] Item2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. (μ μΈ΅μ μμ±μ ν¨ν΄, μλ°λΉμ¦ ν¨ν΄) (tistory.com) [μ΄νν°λΈ μλ°] Ite hyejin.tistory.com λΉλν¨ν΄ Builder Pattern μ΄λ? : λμΌν νλ‘μΈμ€λ₯Ό κ±°μ³ λ€μν ꡬμ±μ μΈμ€ν΄μ€λ₯Ό λ§λλ λ°©λ² -> 볡μ‘ν κ°μ²΄λ₯Ό λ§λλ νλ‘μΈμ€λ₯Ό λ 립μ μΌλ‘ λΆλ¦¬ν μμλ€..
2023.01.09 -
[μ΄νν°λΈ μλ°] Item02 μ벽곡λ΅. κ°μ²΄ νλ¦¬μ§ (freezing)
item02. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. " p17. κ°μ²΄ μΌλ¦¬κΈ° freezing" κ°μ²΄ μΌλ¦¬κΈ°(freezing) μ΄λ? κ°μ²΄ μΌλ¦¬κΈ° freezingμ μλ°μ€ν¬λ¦½νΈμμ μ¬μ©νλ κΈ°μ μ΄λ€. Objects.freeze() λΌλ λ©μλλ‘ κ°μ²΄λ₯Ό μΌλ¦¬λ κ²μΈλ°, μλ°μ€ν¬λ¦½νΈμμλ μλ°μ λ¬λ¦¬ λ°νμμλ κ°μ²΄μ νλ‘νΌν°λ₯Ό μΆκ°νκ³ μμ ν μ μλ€. var hyejin = { 'name' : 'Hyejin', 'age' : 26 } hyejin.hobby = ['λ μ'] hyejin.hobby.push('μ΄λ') console.log(hyejin.hobby); μ΄λ°μμΌλ‘ μΆκ°νλ©΄ μ·¨λ―Έκ° μΆκ°λλ€. κ·Έλ°λ° Object.freeze() λ‘ κ°μ²΄λ₯Ό μΌλ¦¬λ©΄ μ΄ κ°μ²΄λ λ μ΄μ λ³κ²½λ μ μλ μνκ° λλ€..
2023.01.09 -
[μ΄νν°λΈ μλ°] Item02 μ벽곡λ΅. μλ°λΉ(JavaBean)
item02. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. " p15. μλ°λΉμ¦" μλ°λΉ(Java Bean) μ΄λ? "A Java Bean is a reusable software component that can be manipulated visually in a builder tool" Java Beanμ λΉλ λꡬμμ μκ°μ μΌλ‘ μ‘°μν μμλ μ¬μ¬μ© κ°λ₯ν μννΈμ¨μ΄ ꡬμ±μμλ€. -> (μ£Όλ‘ GUIμμ) μ¬μ¬μ© κ°λ₯ν μννΈμ¨μ΄ μ»΄ν¬λνΈ μλ°λΉ(Java Bean) μ΄ μ§μΌμΌ νλ κ·μ½ - μλ°λΉμ μΈμκ° μλ κΈ°λ³Έ μμ±μ(default constructor)λ₯Ό κ°λλ€. - ν΄λμ€μ νλ‘νΌν°λ€μ Getter/Setter λ₯Ό ν΅ν΄ μ κ·Όν μ μμ΄μΌ νλ€. - Serializable μΈν°νμ΄μ€λ₯Ό ꡬνν΄μΌ..
2023.01.06 -
[μ΄νν°λΈ μλ°] Item2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. (κ³μΈ΅ν λΉλ)
μμ΄ν 2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. [μ΄νν°λΈ μλ°] Item2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. (λΉλ ν¨ν΄) (tistory.com) [μ΄νν°λΈ μλ°] Item2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. (λΉλ ν¨ν΄) μμ΄ν 2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. [μ΄νν°λΈ μλ°] Item2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. (μ μΈ΅μ μμ±μ ν¨ν΄, μλ°λΉμ¦ ν¨ν΄) (tistory.com) [μ΄νν°λΈ μλ°] Ite hyejin.tistory.com μ΄νν°λΈ μλ°μμλ μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ μ μΈ΅μ μμ±μ ν¨ν΄μ΄λ μλ°λΉμ¦ ν¨ν΄λ³΄λ€λ λΉλν¨ν΄ μ¬μ©μ κΆμ₯νκ³ μλ€. μ΄ λΉλν¨ν΄μ κ³μΈ΅μ μΌλ‘ μ€κ³λ ν΄λμ€μ ν¨κ» μ°κΈ°μ μ’λ€. μΆμ ν΄λμ€λ μΆ..
2023.01.06 -
[μ΄νν°λΈ μλ°] Item2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. (λΉλ ν¨ν΄)
μμ΄ν 2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. [μ΄νν°λΈ μλ°] Item2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. (μ μΈ΅μ μμ±μ ν¨ν΄, μλ°λΉμ¦ ν¨ν΄) (tistory.com) [μ΄νν°λΈ μλ°] Item2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. (μ μΈ΅μ μμ±μ ν¨ν΄, μλ° μμ΄ν 2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. μμμ λ°°μ λ μ μ ν©ν°λ¦¬μ μμ±μμλ μ μ½μ΄ μλλ°, μ νμ 맀κ°λ³μκ° λ§μ κ²½μ°μ μ μ νκ² λμνκΈ° μ΄λ ΅λ€λ μ μ΄λ€. μλ₯Ό λ€ hyejin.tistory.com μμ μμ±ν λ΄μ©μμλ μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ κ³ λ €ν μ μλ λ°©μμΌλ‘ μ μΈ΅μ μμ±μ ν¨ν΄κ³Ό μλ°λΉμ¦ ν¨ν΄μ λν΄μ μ€λͺ νλ€. κ·Όλ° μ΄ λκ°μ λμμλ κ°κ°μ λ¨μ μ΄ μμλλ°.. λ¨Όμ μ μΈ΅μ ..
2023.01.05 -
[μ΄νν°λΈ μλ°] Item2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. (μ μΈ΅μ μμ±μ ν¨ν΄, μλ°λΉμ¦ ν¨ν΄)
μμ΄ν 2. μμ±μμ 맀κ°λ³μκ° λ§λ€λ©΄ λΉλλ₯Ό κ³ λ €νλΌ. μμμ λ°°μ λ μ μ ν©ν°λ¦¬μ μμ±μμλ μ μ½μ΄ μλλ°, μ νμ 맀κ°λ³μκ° λ§μ κ²½μ°μ μ μ νκ² λμνκΈ° μ΄λ ΅λ€λ μ μ΄λ€. μλ₯Ό λ€μ΄ μν ν¬μ₯ μμ μ 보λ₯Ό νννλ ν΄λμ€κ° μλ€. μμ μ 보λ 1ν λ΄μ©λ, μ΄ nν μ 곡λ κ°μ νμ νλͺ©κ³Ό μ΄ μ§λ°©, νΈλμ€ μ§λ°©, ν¬ν μ§λ°©, μ½λ μ€νΈλ‘€, λνΈλ₯¨ λ± 20κ°κ° λλ μ ννλͺ©μΌλ‘ μ΄λ£¨μ΄μ Έ μλ€. κ·Όλ° μ΄ μ ννλͺ©μ κ°μ λλ€μ 0μ΄λ€. μ΄λ κ² μ νμ 맀κ°λ³μκ° λ§μ λ κ³ λ €ν μ μλ λ°©μμΌλ‘ λ¨Όμ μ μΈ΅μ μμ±μ ν¨ν΄ λλ μμ±μ 체μ΄λμ΄λΌκ³ λΆλ¦¬μ€λκ² μλ€. λμ1. μ μΈ΅μ μμ±μ ν¨ν΄ λλ μμ±μ 체μ΄λ servingSize, servingsλ νμ 맀κ°λ³μμ΄κ³ , λλ¨Έμ§λ μ ν 맀κ°λ³μμ΄λ€. pub..
2023.01.05 -
[μ΄νν°λΈ μλ°] Item01 μ벽곡λ΅. 리νλ μ reflection
item01. μμ±μ λμ μ μ ν©ν°λ¦¬ λ©μλλ₯Ό κ³ λ €νλΌ. " p.12 μλΉμ€ μ 곡μ μΈν°νμ΄μ€κ° μλ€λ©΄ κ° κ΅¬ν체λ₯Ό μΈμ€ν΄μ€λ‘ λ§λ€ λ 리νλ μ μ μ¬μ©ν΄μΌ νλ€. " 리νλ μ μ΄λ? : ν΄λμ€λ‘λλ₯Ό ν΅ν΄ μ½μ΄μ¨ ν΄λμ€ μ 보λ₯Ό μ¬μ©νλ κΈ°μ 리νλ μ μ ν μμμ λ‘λλ class νμ μ κ°μ²΄λ₯Ό ν΅ν΄ μνλ ν΄λμ€μ μΈμ€ν΄μ€λ₯Ό μμ±ν μ μλλ‘ μ§μνκ³ , μΈμ€ν΄μ€μ νλμ λ©μλλ₯Ό μ κ·Ό μ μ΄μμ μκ΄μμ΄ μ¬μ©ν μ μλλ‘ μ§μνλ api μ΄λ€. ꡬ체μ μΈ ν΄λμ€ νμ μ μμ§ λͺ»ν΄λ, κ·Έ ν΄λμ€μ λ©μλ, νμ , λ³μλ€μ μ κ·Όν μ μλλ‘ ν΄μ£Όλ μλ° API μ΄λ€. λ°νμμ μ§κΈ μ€νλκ³ μλ ν΄λμ€λ₯Ό κ°μ Έμμ μ€νν΄μΌ νλ κ²½μ°λ λμ μΌλ‘ κ°μ²΄λ₯Ό μμ±νκ³ λ©μλλ₯Ό νΈμΆν΄μΌ νλ κ²½μ°μ μλ° νΌλ₯Όλ μ κΈ°μ μ ..
2023.01.04 -
[μ΄νν°λΈ μλ°] Item01 μ벽곡λ΅. μλΉμ€ μ 곡μ νλ μμν¬
item01. μμ±μ λμ μ μ ν©ν°λ¦¬ λ©μλλ₯Ό κ³ λ €νλΌ. "p11. μλΉμ€ μ 곡μ νλ μμν¬λ₯Ό λ§λλ κ·Όκ°μ΄ λλ€." μλΉμ€ μ 곡μ νλ μμν¬λ? : λ€μν μλΉμ€ μ 곡μλ€μ΄ νλμ μλΉμ€λ₯Ό ꡬμ±νλ μμ€ν μΌλ‘ ν΄λΌμ΄μΈνΈλ μΈλΆμ μΈ κ΅¬ν λ΄μ©μ λͺ¨λ₯΄λλΌλ μλΉμ€λ₯Ό μ΄μ©ν μ μλ€. ex) mysql, oracle λ±μ μλΉμ€ μ 곡μλ€μ΄ λͺ¨μ¬ JDBCλΌλ νλμ μλΉμ€λ₯Ό ꡬμ±ν¨. -> νμ₯ κ°λ₯ν μ ν리μΌμ΄μ μ λ§λλ λ°©λ² μλΉμ€ μ 곡μ νλ μμν¬ μ£Όμ κ΅¬μ± μμ - μλΉμ€ μ 곡μ μΈν°νμ΄μ€(SPI) μ μλΉμ€ μ 곡μ (μλΉμ€ ꡬν체) - μλΉμ€ μ 곡μ λ±λ‘ API (μλΉμ€ μΈν°νμ΄μ€μ ꡬν체λ₯Ό λ±λ‘νλ λ°©λ²) - μλΉμ€ μ κ·Ό API (μλΉμ€μ ν΄λΌμ΄μΈνΈκ° μλΉμ€ μΈν°νμ΄μ€μ μΈμ€ν΄μ€λ₯Ό κ°μ Έμ¬ λ μ¬μ©ν..
2023.01.04 -
[μ΄νν°λΈ μλ°] Item01 μ벽곡λ΅. νλΌμ΄μ¨μ΄νΈ ν¨ν΄ Flyweight ν¨ν΄
item01. μμ±μ λμ μ μ ν©ν°λ¦¬ λ©μλλ₯Ό κ³ λ €νλΌ. " p9. κ°μ κ°μ²΄κ° μμ£Ό μμ²λλ μν©μ΄λΌλ©΄ νλΌμ΄μ¨μ΄νΈ ν¨ν΄μ μ¬μ©ν μ μλ€." Flyweight Pattern μ΄λ? : κ°μ²΄λ₯Ό κ°λ³κ² λ§λ€μ΄ λ©λͺ¨λ¦¬ μ¬μ©μ μ€μ΄λ ν¨ν΄μΌλ‘ μμ£Ό λ³νλ μμ±κ³Ό λ³νμ§ μλ μμ±μ λΆλ¦¬νκ³ μ¬μ¬μ©νμ¬ λ©λͺ¨λ¦¬ μ¬μ©μ μ€μΌ μ μλ€. https://velog.io/@hoit_98/%EB%94%94%EC%9E%90%EC%9D%B8-%ED%8C%A8%ED%84%B4-Flyweight-%ED%8C%A8%ED%84%B4 [λμμΈ ν¨ν΄] Flyweight ν¨ν΄ Flyweight(νλΌμ΄μ¨μ΄νΈ) ν¨ν΄ β μΈμ€ν΄μ€λ₯Ό κ°λ₯ν ν 곡μ ν΄μ μ¬μ©ν¨μΌλ‘μ¨ λ©λͺ¨λ¦¬λ₯Ό μ μ½νλ ν¨ν΄ πΏ λ¬Έμ μν© β λ§μΈν¬λννΈ κ²μμ λ무λ₯Ό μ€μΉνκ³ ..
2023.01.03 -
[μ΄νν°λΈ μλ°] Item01 μ벽곡λ΅. μ΄κ±°νμ Enumeration
item01. μμ±μ λμ μ μ ν©ν°λ¦¬ λ©μλλ₯Ό κ³ λ €νλΌ. "p9. μ΄κ±° νμ μ μΈμ€ν΄νΈκ° νλλ§ λ§λ€μ΄μ§μ 보μ₯νλ€." μ΄κ±° νμ μ΄λ? : μλ‘ μ°κ΄λ μμμ μ§ν©μ μ μ₯νλ μλ£ν, μμ λͺ©λ‘μ λ΄μ μ μλ λ°μ΄ν° νμ νμ λ λ°μ΄ν°λ₯Ό μ μ₯νκΈ° μν μλ£νμΌλ‘ κ°μ μ νν μ μλ€. μ΄κ±° νμ μ νΉμ ν λ³μκ° κ°μ§ μ μλ κ°μ μ ν ν μ μλ€. OrderStatusλΌλ Enum μ PREPARRING, SHIPPED, DELIVERING, DELIVERED μ΄λ κ² κ°μ μ νλ€λ©΄ Orderμμ OrderStatus κ°μ 4κ°μ§ μν κ° λ§κ³ λ€λ₯Έ κ°μ μ λ ₯ν μ μλλ‘ κ°μ μ νν μ μλ€. μ΄κ±°νμ μ μ¬μ©νμ§ μκ³ , κΈ°λ³Έ μλ£νμΌλ‘ μ΄λ κ² μ§μ ν΄μ£Όλ©΄ 200 λ± λ€λ₯Έ κ°μ΄ λ€μ΄κ° μ μκΈ° λλ¬Έμ ..
2023.01.03 -
[μ΄νν°λΈ μλ°] Item1. μμ±μ λμ μ μ ν©ν°λ¦¬ λ©μλλ₯Ό κ³ λ €νλΌ.
2μ₯. κ°μ²΄ μμ±κ³Ό νκ΄΄ μμ΄ν 1. μμ±μ λμ μ μ ν©ν°λ¦¬ λ©μλλ₯Ό κ³ λ €νλΌ. κΈ°λ³Έμ μΌλ‘ ν΄λΌμ΄μΈνΈκ° ν΄λμ€μ μΈμ€ν΄μ€λ₯Ό μ»λ λ°©λ² μ€ νν μ¬μ©νλ λ°©λ²μ public μμ±μμ΄λ€. λ€λ₯Έ λ°©λ² μ€ κΌ μμλ¬μΌ νλ λ°©λ²μ μ μ νν°λ¦¬ λ©μλλ₯Ό μ¬μ©νλ λ°©λ²μ΄λ€. ν΄λμ€λ μμ±μμ λ³λλ‘ μ μ ν©ν°λ¦¬ λ©μλ(static factory method)λ₯Ό μ 곡ν μ μλ€. (ν΄λμ€μ μΈμ€ν΄μ€λ₯Ό λ°ννλ λ¨μν μ μ λ©μλ) -> Booleanμ valueof() λ©μλμμ λ³Ό μ μλ―μ΄ κΈ°λ³Έ νμ μΈ boolean b κ°μ λ°μ Boolean κ°μ²΄ μ°Έμ‘°λ‘ λ³νν΄μ€λ€. βοΈ μ£Όμ μ μ ν©ν°λ¦¬ λ©μλλ λμμΈ ν¨ν΄μ ν©ν°λ¦¬ λ©μλμλ λ€λ₯Έ κ²μΌλ‘ ν·κ°λ¦¬λ©΄ μλλ€. ν΄λμ€λ ν΄λΌμ΄μΈνΈμκ² public μμ μ λμ λ..
2022.08.31