π» κ°λ°/iOS
ν΄λ‘μ ν΄λ‘μ λ λ€μν ννλ‘ ννμ΄ κ°λ₯νλ€. νν ν΄λ‘μ : ν¨μμ λ§μ§λ§ 맀κ°λ³μλ‘ μ λ¬λλ ν΄λ‘μ λ ννν΄λ‘μ λ‘, ν¨μ λ°μ ꡬνλ μ μλ€. λ°ν νμ
μλ΅ : μ»΄νμΌλ¬κ° ν΄λ‘μ μ λ°ν νμ
μ μ μΆν μ μλ κ²½μ°, λ°ν νμ
μ μλ΅ν μ μλ€. 맀κ°λ³μ μ΄λ¦ μλ΅ : 맀κ°λ³μμ μ΄λ¦μ΄ νμ μκ³ , μ»΄νμΌλ‘κ° νμ
μ μ μΆν μ μλ κ²½μ°, μΆμ½λ μ λ¬ μΈμ ννλ‘ μ¬μ©ν μ μλ€. μμμ λ°ν : λ°ν κ°μ΄ μλ κ²½μ°, ν΄λ‘μ μ 맨 λ§μ§λ§ μ€μμ returnμ μλ΅ν μ μλ€. 1. λ°ν νμ
μλ΅ calculate ν¨μμ method 맀κ°λ³μλ Intνμ΄ λ°νλλ€λ κ²μ μ»΄νμΌλ¬λ μκ³ μκΈ°μ ν΄λ‘μ Έμμ λ°ν νμ
μ λͺ
μν΄μ£Όμ§ μμλ λλ€. νμ§λ§ in ν€μλλ μλ΅ν μ μλ€. let res..
π» κ°λ°/iOS
μ΅μ€ν
μ
μ€μννΈμ κ°λ ₯ν κΈ°λ₯μΌλ‘, ꡬ쑰체, ν΄λμ€, μ΄κ±°ν, νλ‘ν μ½ νμ
μ μλ‘μ΄ κΈ°λ₯μ μΆκ°ν μ μκ² ν΄μ€λ€. κΈ°λ₯μ μΆκ°νλ €λ νμ
μ ꡬνλ μμ€ μ½λλ₯Ό μμ§ λͺ»νλλΌλ νμ
λ§ μκ³ μλ€λ©΄ κΈ°λ₯μ νμ₯ν μ μλ€. μ΅μ€ν
μ
μΌλ‘ νμ
μ μΆκ°ν μ μλ κ²λ€μλ μ°μ° νμ
νλ‘νΌν° / μ°μ° μΈμ€ν΄μ€ νλ‘νΌν° νμ
λ©μλ / μΈμ€ν΄μ€ λ©μλ μ΄κΈ°ν μλΈμ€ν¬λ¦½νΈ μ€μ²© νμ
νΉμ νλ‘ν μ½μ μ€μν μ μλλ‘ κΈ°λ₯ μΆκ° μλ‘μ΄ κΈ°λ₯μ μΆκ°ν μλ μμ§λ§ κΈ°μ‘΄μ μ‘΄μ¬νλ κΈ°λ₯μ μ¬μ μ(override)λ λΆκ°λ₯νλ€. μ΄κ²μ΄ λ°λ‘ μμκ³Όμ μ°¨μ΄μ΄λ€. μμ VS μ΅μ€ν
μ
μμ - ν΄λμ€ νμ
μ νμ© - μμ§μ μΌλ‘ νμ₯ - μ¬μ μ κ°λ₯ μ΅μ€ν
μ
- ν΄λμ€, ꡬ쑰체, μ΄κ±°ν, νλ‘ν μ½ λ± λͺ¨λ νμ
μ νμ© - μ..
π» κ°λ°/iOS
곡λΆν κ² λΆμ€νΈμ½μ€ - iOS νλ‘κ·Έλλ°μ μν μ€μννΈ κΈ°μ΄ μκ²λ κ² 1. μ΅μ
λ // someOptionalParmμ nilμ΄ ν λΉλ μ μμ func someFunction(someOptionalParam: Int?) { // .... } /// someOptionalParmμ nilμ΄ ν λΉλ μ μμ func someFunction(someOptionalParam: Int) { // .... } nilμ΄ ν λΉλ μ μλμ§ μλμ§λ₯Ό νν nilμ κ°λ₯μ±μ λͺ
μμ (μ½λ)μΌλ‘ νν κ°λ₯ μ΅μ
λμ΄ μλ κ²½μ° nil μ²΄ν¬ μμ΄ λ°λ‘ μ¬μ© κ°λ₯ nilλ‘ μΈν μμΈ μν©μ μ΅μν 2. μ΅μ
λ νν λ°©λ² // μμμ μΆμΆ μ΅μ
λ var optionalValue: Int! = 10 switch optionVa..
π» κ°λ°/iOS
곡λΆν κ² λΆμ€νΈμ½μ€ - iOS νλ‘κ·Έλλ°μ μν μ€μννΈ κΈ°μ΄ μκ²λ κ² 1. 맀κ°λ³μ κΈ°λ³Έ κ° func setUserInfo(name : String, age : Int, region : String = "Deajeon") {} ν¨μλ₯Ό μ μν λ 맀κ°λ³μμ κΈ°λ³Έμ μΌλ‘ μ λ¬λ κ°μ 미리 μ μ₯ν μ μμ κΈ°λ³Έ κ°μ κ°λ 맀κ°λ³μλ 맀κ°λ³μ λͺ©λ‘ μ€ λ§¨ λ€μ μμΉνλ κ²μ΄ μ’μ 2. μ λ¬μΈμ λ μ΄λΈ // λ΄λΆμμλ 맀κ°λ³μ μ΄λ¦ func greeting(to friend : String, from me : String) { print("Hello, \(friend)!, my name is \(me)") } // νΈμΆν λλ μ λ¬μΈμ λ μ΄λΈ greeting(to : "doko", from : "kodo") ..
π» κ°λ°/iOS
iOS μμ νλ©΄ μ΄λμ νλ λ°©λ²μλ 4κ°μ§κ° μλ€. ViewController μμ νλ©΄ μ ν ViewController κ° λ€λ₯Έ ViewController λ₯Ό νΈμΆνμ¬ νλ©΄ μ ν NavigationViewController λ₯Ό μ¬μ©νμ¬ νλ©΄ μ ν νλ©΄ μ νμ© κ°μ²΄ Segue λ₯Ό μ¬μ©νμ¬ νλ©΄ μ ν 1. ViewController μμ νλ©΄ μ ν ViewController μμ View λ₯Ό λ€λ₯Έ View λ‘ κ΅μ²΄νλ λ°©μμΌλ‘ λ©λͺ¨λ¦¬ λμλ‘ μΈν΄ μ¬μ©μ μ§μνλ€. νΉμ ν κ²½μ°μλ§ μ¬μ©νλ€. μλλ‘μ΄λμμλ View μ Visibility μμ±μ μ΄μ©νμ¬ λ³κ²½νλ λ°©μμ μμ£Ό μ¬μ©νμλλ° iOS μμλ μ§μνλ€κ³ νλ μ’ μ κΈ°νλ€. μ΄ λΆλΆμ λν΄μ μ’ λ μ°Ύμλ³΄κ³ μ 리ν΄λ΄μΌκ² λ€. 2. ViewContr..
π» κ°λ°/iOS
곡λΆν κ² Swift λ¬Έλ² μκ²λ κ² 1. Guard Guard ν€μλλ₯Ό μ¬μ©νλ©΄ 쑰건μ falseμΈ κ²½μ°μλ else κ΅¬λ¬Έμ΄ μ€νλμ΄ μ΄νμ μ½λλ₯Ό μ€ννμ§ λͺ»νκ² νλ€. continue μ λΉμ·νλ€. import Foundation func guardTest(value : Int?) { guard let value = value else {return} print(value) } guardTest(value : 2) guardTest(value : nil) // μ무κ²λ μΆλ ₯λμ§ μμ 쑰건문과 μ μ¬ν κΈ°λ₯μ΄λΌκ³ λ³Ό μ μλλ° Guard λ else λ₯Ό κ°μ νλ€. // μΌλ°μ μΈ μ‘°κ±΄λ¬Έ if 쑰건 == true { // μ°ΈμΈ κ²½μ°μ μ€νν μ½λ } else { // κ±°μ§μΈ κ²½μ°μ μ€νν μ½λ } // G..
π» κ°λ°/iOS
곡λΆν κ² Swift λ¬Έλ² μκ²λ κ² 1. ν΄λμ€μ ꡬ쑰체μ μ°¨μ΄ 1. 곡ν΅μ κ°μ μ μ₯ν νλ‘νΌν°λ₯Ό μ μΈν μ μμ ν¨μμ κΈ°λ₯μ νλ λ©μλλ₯Ό μ μΈν μ μμ λ΄λΆ κ°μ .λ₯Ό ν΅ν΄ μ κ·Όν μ μμ μμ±μλ₯Ό μ¬μ©ν΄ μ΄κΈ° μνλ₯Ό μ€μ ν μ μμ Extension μ μ¬μ©νμ¬ κΈ°λ₯μ νμ₯ν μ μμ Protocol μ μ±ννμ¬ κΈ°λ₯μ μ€μ ν μ μμ 2. μ°¨μ΄μ - ν΄λμ€ μ°Έμ‘° νμ
ARC λ‘ λ©λͺ¨λ¦¬λ₯Ό κ΄λ¦¬ μμ κ°λ₯ νμ
μΊμ€ν
μ ν΅ν΄ λ°νμμμ ν΄λμ€ μΈμ€ν΄μ€μ νμ
μ νμΈν μ μμ deinit μ μ¬μ©νμ¬ ν΄λμ€ μΈμ€ν΄μ€μ λ©λͺ¨λ¦¬ ν λΉμ ν΄μ ν μ μμ κ°μ ν΄λμ€ μΈμ€ν΄μ€λ₯Ό μ¬λ¬ κ°μ λ³μμ ν λΉν λ€μ κ°μ λ³κ²½μν€λ©΄ λͺ¨λ λ³μμ μν₯μ μ€ (λ©λͺ¨λ¦¬λ₯Ό 볡μ¬) - ꡬ쑰체 κ° νμ
κ°μ ꡬ쑰체λ₯Ό ..
π» κ°λ°/iOS
곡λΆν κ² μ μ²κΈ° 21λ
3νμ°¨ μκ²λ κ² [1κ³Όλͺ©] μννΈμ¨μ΄ μ€κ³ 1. λλ°μ° λΆμ κΈ°λ² - κ°μ²΄ λͺ¨λΈλ§ -> λμ λͺ¨λΈλ§ -> κΈ°λ₯ λͺ¨λΈλ§ μμΌλ‘ μ§νΉ - κ°μ²΄ λͺ¨λΈλ§ : μ 보 λͺ¨λΈλ§μ΄λΌκ³ λ λΆλ₯΄λ©° ν΄λμ€ λ€μ΄μ΄κ·Έλ¨μ μμ± - λμ λͺ¨λΈλ§ : μν λ€μ΄μ΄κ·Έλ¨μ μμ± - κΈ°λ₯ λͺ¨λΈλ§ : μλ£ νλ¦λ(Data Flow Diagram)μ μμ± 2. μꡬμ¬ν κ°λ° νλ‘μΈμ€ λμΆ(μꡬμ¬ν μμ§) -> λΆμ -> λͺ
μΈ -> νμΈ(μꡬμ¬ν κ²μ¦) 3. μ μμΌ κ°λ° νλ‘μΈμ€ - μ΅μ€νΈλ¦Ό νλ‘κ·Έλλ° : XP, κ³ κ°κ³Ό ν¨κΌ 2μ£Ό μ λμ λ°λ³΅ κ°λ°, TDD - μ€ν¬λΌ : 30μΌλ§λ€ λμ κ°λ₯ν μ νμ μ 곡νλ μ€νλ¦°νΈ κ°λ° 4. UML κ΄κ³ - μΌλ°ν : Generalization, μ€μ μΌκ° νμ΄ν, μΌλ°μ μΈ κ²κ³Ό ..
π» κ°λ°/iOS
곡λΆν κ² μ μ²κΈ° 21λ
1νμ°¨ μκ²λ κ² [1κ³Όλͺ©] μννΈμ¨μ΄ μ€κ³ 1. λμμΈ ν¨ν΄ - μμ± ν¨ν΄ : μΆμ ν©ν 리, λΉλ, ν©ν 리 λ©μλ, νλ‘ν νμ
, μ±κΈν€ - ꡬ쑰 ν¨ν΄ : μ΄λν°, λΈλ¦¬μ§, μ»΄νΌμ§νΈ, λ°μ½λ μ΄ν°, νΌμ¬λ, νλ‘μ - νμ ν¨ν΄ : 컀맨νΈ, μ΅μ λ², μ λ΅, μν 2. κ°μ²΄μ§ν₯ λΆμ λ°©λ²λ‘ - Cord-Yourdon : E-R λ€μ΄μ΄κ·Έλ¨μ μ¬μ©νμ¬ κ°μ²΄μ νμλ₯Ό λ°μ΄ν° λͺ¨λΈλ§ νλλ° μ΄μ 3. μννΈμ¨μ΄ μμ€ν
λΆμ - νλ«νΌ κΈ°λ₯ λΆμ - νλ«νΌ μ±λ₯ νΉμ± λΆμ - μ΄μ체μ λΆμ - λ€νΈμν¬ λΆμ - DBMS λΆμ 4. UML - ν΄λμ€ λ€μ΄μ΄κ·Έλ¨ : μμ€ν
μ ꡬμ±νλ ν΄λμ€λ€ μ¬μ΄μ κ΄κ³λ₯Ό νμ - μ‘ν°λΉν° λ€μ΄μ΄κ·Έλ¨ : μμ€ν
λ΄λΆμ μ‘΄μ¬νλ μ¬λ¬ νμμ λΆκΈ° λ° μ‘°κ±΄μ νμ ..
π» κ°λ°/iOS
곡λΆν κ² μ μ²κΈ° 22λ
1νμ°¨ μκ²λ κ² [1κ³Όλͺ©] μννΈμ¨μ΄ μ€κ³ 1. μννΈμ¨μ΄ μ€κ³ λ°©λ² - μν₯μ μ€κ³ λ°©λ² : λ°ν
μ
, μμ λ¬Έμ λ₯Ό ν΄κ²°νμ¬ ν° λ¬Έμ λ‘ ν΅ν©, κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ° (Java) - νν₯μ μ€κ³ λ°©λ² : νλ€μ΄, ν° λ¬Έμ λ₯Ό μμ λ¬Έμ λ‘ λΆν΄, μ μ°¨ μ€μ¬ νλ‘κ·Έλλ° (C) 2. λ°μ΄ν° νλ¦λ - νλ‘μΈμ€ : μ - λ°μ΄ν° νλ¦ : νμ΄ν - λ°μ΄ν° μ μ₯ : ννμ - μ’
λ£ : μ¬κ°ν 3. UI μ€κ³ λꡬ - μμ΄μ΄ νλ μ : νμ΄μ§μ λν λλ΅μ μΈ λ μ΄μμ λ° UI μμ μ€κ³ - λͺ©μ
: μμ΄μ΄ νλ μμμ λμμΈ, μ¬μ© λ°©λ² μ€λͺ
, νκ°λ₯Ό μν΄ μ€μ νλ©΄κ³Ό μ μ¬νλλ‘ UIλ₯Ό λ³κ²½ (μ μ ) - μ€ν 리보λ : μμ΄μ΄ νλ μμμ μ½ν
μΈ μ€λͺ
, νλ¦λ μΆκ° - νλ‘ν νμ
: μμ΄μ΄ νλ μ..