λ§€μ° μ격ν μ½λ© κ°λ₯ νμμ μ¬μ©νκΈ° λλ¬Έμ μ± κ°νΌλ ꡬ쑰체λ₯Ό μμ ν λλ§λ€ μ¬μ€μ λ©λλ€.
μ¦κ±° μλ£ A: https://github.com/rnystrom/GitHawk/blob/10e7b67f581ee05403fe44e4e9a444bafda0f05f/Classes/Bookmark/BookmarkModel.swift#L28 μ΄(κ°) λ€μ κΉ¨μ‘μ΅λλ€(μ£μ‘ν©λλ€!)
μ΄κ²μ μ’ λ μ μ°νκ² λ³κ²½ν μ μλ λ°©λ²μ΄ μμ΅λκΉ? κ·Έλ μ§ μμΌλ©΄ μΌλ¨ μ€νλλ©΄ κΈ°λ³Έμ μΌλ‘ μΊμλ₯Ό νκ΄΄νμ§ μκ³ λ κΈ°λ₯μ μμ ν μ μλ λ¬Έμ κ° λ°μν©λλ€!
λλ codableλ‘ λ§μ μΌμ νμ§ μμκΈ° λλ¬Έμ κ°λ₯νμ§ μμ μλ μλ€λ κ²μ μΌλμ λκ³ μκ°νκ³ μμ΅λλ€. κ·Έλ¬λ μ°λ¦¬κ° codableμμ μ°λ¦¬ μμ μ μ΄κΈ°νλ₯Ό μμ±νλ€λ©΄ μλ‘μ΄ κ°μ μ ν μ¬νμ΄μ κΈ°λ³Έκ°μΌλ‘ μ·¨κΈλ μ μμ΅λκΉ? (μλ₯Ό λ€μ΄ μμ κ°μ κ²½μ°μλ λ¬Έμ κ° λ°μν©λλ€. κΈ°λ³Έ λΆκΈ° = μλͺ»λ = μ½λ λ³΄κΈ°κ° μλͺ»λ κ²μ΄λ―λ‘ π)
@rizwankce μμ΄λμ΄κ° νμ€νμ§ μμ΅λκΉ?
μλ‘μ΄ λ§€κ°λ³μλ₯Ό μΆκ°νκΈ° λλ¬Έλ§μ μλλλ€. NSMutableOrderedSet
λ₯Ό μ¬μ©νλλ‘ μμ μ λ³κ²½νκΈ° λλ¬Έμ μ¬μ€μ μ΄ λ°μνμ΅λλ€.
μ΄κ²μ DB/λ§μ΄κ·Έλ μ΄μ μ μ²λ¦¬νλ κ²κ³Ό λμΌν λ¬Έμ λ₯Ό μ 곡ν©λλ€. π€¦ββοΈ
GitHawk μ ν¨κ»
Codableμ΄ κ΅¬μ‘° λ³κ²½μ μ²λ¦¬ν μ μμ΅λλ€. λ°λΌμ μ μμ±μ μΆκ°νλ©΄ μμ§λ ¬νμ μ€ν¨ν©λκΉ?
μ΄ κ²½μ° NSCoding
λμκ° μλ μμ΅λλ€.
GitHawk μ ν¨κ»
μ νν, μ κ·Έλ μ΄λνλ©΄ μ½μμμ μ΄ κ°μ²΄κ° 무μμΈμ§ λͺ¨λ₯΄κ³ μ€ν¨(λ°λΌμ μ¬μ€μ )νλ€λ μ€λ₯κ° λ§μ΄ λ°μν©λλ€.
NSCoding
κ° κ·Έκ²μ λ μ μ²λ¦¬νλ€λ©΄ μ, λ°κΏ κ°μΉκ° μμ κ²μ
λλ€ π
NSCodingμ μ¬μ©νλ©΄ λͺ¨λ κΆνμ΄ μκ³ μ κ°μ μ ν μ¬νμΌλ‘ λ§λ€κ±°λ initWithCodingμμ κΈ°λ³Έκ°μ μ 곡ν©λλ€.
1.12 μ΄μ μ μ΄κ²μ λ³κ²½ν΄μΌ ν©λλ€.
GitHawk μ ν¨κ»
λ°λΌμ μμμ μ μν λλ‘ Codableλ‘ κ·Έλ κ² ν μ μμ΅λλ€. νμ§λ§ λ¬Έμ λ μ¬μ©ν μ μκ³ λ²κ·Έκ° μλ κΈ°λ³Έκ°μ΄ μλ€λ κ²μ λλ€. λ΄ λ§μ λΉμ μ΄ "μ΅μνμ κ²½μ°"λΌκ³ μ£Όμ₯ν μ μλ€κ³ νμ νμ§λ§ μ€μ λ‘ μ°λ¦¬λ μμ²μ μννκ³ μλ‘μ΄ μ λ³΄λ‘ λΆλ§ν¬λ₯Ό μ λ°μ΄νΈν μ μλ λ§μ΄κ·Έλ μ΄μ μμ€ν μ΄ νμν©λλ€ π€
@Sherlouk Sparkμ "λ°μ΄ν°λ² μ΄μ€ μ κ·Έλ μ΄λ" μ€νλμκ°
GitHawk μ ν¨κ»
κ·Έλ° μλ―Έμμ μ°λ¦¬λ μ΄λ―Έ λ²κ·Έκ° μμ΅λλ€. repoκ° ββκΈ°λ³Έ λΈλμΉλ₯Ό λ³κ²½νλ©΄ μ΄λ»κ² λ©λκΉ?
νλͺ©μ λ°©λ¬Έν λ νλͺ©μ μλ‘ κ³ μΉλ μμ€ν μ΄ νμν κ²μ²λΌ λ€λ¦½λλ€.
GitHawk μ ν¨κ»
μ± κ°νΌμ μλ―Έμμ λ§€μ° μ¬μ€μ λλ€. Issues/Search/etcλ λͺ¨λ μ μ₯μμ μ΅μ μ°Έμ‘°μ΄λ―λ‘ ν΄λΉ μ λ³΄κ° μ νν©λλ€.
μ± κ°νΌ λ° μ΅κ·Ό κ²μμλ μ λ ₯νκΈ° μ μ λ€λ₯Έ μ 보λ₯Ό κ°μ Έμ€κΈ° μν΄ μμ μ/μ΄λ¦μμ μ μ₯μλ₯Ό λ‘λνλ λ°©λ²μ΄ νμν©λλ€.
μ°λ¦¬κ° κ·Έλ κ² νλ€λ©΄ μ΄μμ λν 리ν¬μ§ν 리μ λ μ΄λΈμ λ³ μλ₯Ό νμν μ μμμ΅λλ€. κ°λ¨νκ² μ μ§νκ³ μ¬λ¬Όμ μ λ ₯ν λλ§ μλ‘ κ³ μΉ μ μμ΅λλ€(μΌλΆ λκΈ°ν μλΉμ€μ λΉκ΅).
μ°Έκ³ λ‘ λ¨μΌ gql μμ²μμ μ¬λ¬ μ μ₯μλ₯Ό 쿼리ν μ μμ΅λκΉ? μ΄λ¦μΌλ‘ 4κ°μ 리ν¬μ§ν 리μ λν νλμ μμ²κ³Ό κ°μ΅λκΉ?
GitHawk μ ν¨κ»
μ κ° μκΈ°λ‘λ 1:1λ‘ μκ°νμλ©΄ λ©λλ€. λ³, λ μ΄λΈ, μ»€λ° μ 보 π€π€
GitHawk μ ν¨κ»
μ¬κΈ°μ 무μμ ν κΉ? μ΄λ² μ£Όμ 1.12λ₯Ό μ μΆνκ³ μΆμ΅λλ€. λλ μ΄ ATMμ λν΄ ν¬κ² κ±±μ νμ§ μμΌλ©° λ§μ΄κ·Έλ μ΄μ κ³νμ λν΄ μκ°ν΄μΌ ν©λλ€.
μ₯κΈ°μ μΌλ‘ μλ‘ κ³ μΉ¨ λ©μ»€λμ¦μ΄ νμν κ²μ²λΌ λ€λ¦¬μ§λ§ μΆκ°νκΈ°κ° λ무 μ΄λ ΅μ§λ μμ κ²μ λλ€.
μλ³μλ₯Ό κΈ°λ°μΌλ‘ O(1) μ‘°νλ₯Ό μννκ³ κ°μ²΄λ₯Ό μ λ°μ΄νΈν μ μλλ‘ μ± κ°νΌλ₯Ό μ½κ° 리ν©ν λ§ν΄μΌ ν©λκΉ?
λλ κ°μΈμ μΌλ‘ μ΄κ²μ λν κ³ν μμ΄ μ± κ°νΌλ₯Ό μΆμνλ κ²μ λν΄ κ½€ μ°λ €νκ³ μμ΅λλ€. λ§μΉ μ°λ¦¬κ° κ·Έκ²μ μ²λ¦¬νμ§ μμΌλ©΄ μ¬μ©μ μ± κ°νΌλ₯Ό κ³μ μ§μ°λ €κ³ ν κ²μ΄κΈ° λλ¬Έμ λλ€!
GitHawk μ ν¨κ»
μ°λ¦¬λ μ± κ°νΌλ₯Ό μ§μ°λ λ²μ μ κ²°μ½ λ°μ‘νμ§ μμ κ²μ λλ€. λλ κ·Έκ²μ λ°μλ€μ΄μ§ μμ κ²μ λλ€. μ± κ°νΌλ₯Ό νκ΄΄νλ λͺ¨λ λ³κ²½ μ¬νμλ μλμ΄λλΌλ λ§μ΄κ·Έλ μ΄μ μ΄ ν¬ν¨λμ΄μΌ ν©λλ€.
GitHawk μ ν¨κ»
μ°λ¦¬κ° μ§κΈ ν΅μ νκ³ μλ€κ³ μκ°νκΈ° λλ¬Έμ μ΄κ²μ λ«μ΅λλ€. λͺ¨λ μ 릴리μ€μ λν΄ μ΄κ²μ νμΈνκ±°λ μλνν λ°©λ²μ μ°ΎμμΌ ν©λλ€.
κ°μ₯ μ μ©ν λκΈ
μ°λ¦¬λ μ± κ°νΌλ₯Ό μ§μ°λ λ²μ μ κ²°μ½ λ°μ‘νμ§ μμ κ²μ λλ€. λλ κ·Έκ²μ λ°μλ€μ΄μ§ μμ κ²μ λλ€. μ± κ°νΌλ₯Ό νκ΄΄νλ λͺ¨λ λ³κ²½ μ¬νμλ μλμ΄λλΌλ λ§μ΄κ·Έλ μ΄μ μ΄ ν¬ν¨λμ΄μΌ ν©λλ€.
GitHawk μ ν¨κ»