https://gall.dcinside.com/m/game_dev/152629
https://gall.dcinside.com/m/game_dev/152629
μ½λ© λ°°μ°κΈ° μ°Έ μ’μ μΈμμ΄λ€ - μΈλ κ²μ κ°λ° λ§μ΄λ κ°€λ¬λ¦¬
AIκ° μμ€ μ°κΈ°λ νλ€κΈΈλ κ±±μ νλλ° μκ°λ³΄λ€ λ무 μ μλ €μ£Όλ€μ€λ§ μ΄κ²λ μμ€μ μλκ² μ§
gall.dcinside.com
eo
μ½λ© λ°°μ°κΈ° μ°Έ μ’μ μΈμμ΄λ€ - μΈλ κ²μ κ°λ° λ§μ΄λ κ°€λ¬λ¦¬
AIκ° μμ€ μ°κΈ°λ νλ€κΈΈλ κ±±μ νλλ° μκ°λ³΄λ€ λ무 μ μλ €μ£Όλ€μ€λ§ μ΄κ²λ μμ€μ μλκ² μ§
gall.dcinside.com
λκΈ μμ²μΌλ‘ μμ±ν κΈ
μ μ₯μ© λ»κΈμλ
첫λ²μ§Έμ§€μ λ§κΈ΄νλ° μ€λͺ μ΄ .Genericμ΄ μλΆμ λ€μμ€νμ΄μ€μ μλ£κ΅¬μ‘°λ object νμ μΌλ‘ μ μ₯λμ΄μ νλ³ν ν΄μ€μΌνκ³ .Genericμ νμ μ μ§μ ν μμμ(C# μ λ€λ¦ λ¬Έλ²) λλ²μ§Έ μ§€μλ΄μ₯λμ΄ μλκ² μλλΌ μμ°λκ±°λΌ μ§μ΄κ±° κ°μλ°...
μκΉλ μ§νΌν° κ°μ©λ€ νλ©΄μ μ¬λ Έλλ° λ€λ₯Έ μΉκ΅¬κ° κ·Έλ¬λλΌ μ§μ μμμΌλ©΄ κ·Έλ₯ κ·Έλλ‘ λ―Ώμλ»γ γ
μ§μ§ gptλ λ΄κ° μ΄λμ λ μλ μ μμ μ¨μΌμ§ νλλ λͺ¨λ₯΄λ μμ μ μ°λκΉ κ°μλ¦
κ·Έλ¦Ό AIλ μ μκΆ λ¬Έμ λ νν ν΅μΌ λ¬Έμ κ° μμ΄μ
AIκ° μ¬λμ μμ λ체νκΈ΄ μμ§ νλ€κ±°μμ μ°Έκ³ μ©μ΄μ§ κ·Έλ₯ ꡬκΈλ§μ μμλ²μ μΌλ‘ μκ°ν΄μ
μ§κΈ μ¬μ§ μ€μΈ νμ¬λ GPT μλ―Ώλκ±°λ μλλ° μΈλΆμ μ½λ μ μΆλλ€κ³ μ°μ§λ§λΌκ³ 곡μ§λ΄λ €μ κ·Έλ° λ¬Έμ λ μμ΄
μλλ°©μ μμ²΄κ° κ·Έλ°μμΌλ‘ λͺ¨μΈ λ°μ΄ν°λ‘ μ°λκ±°μλκ° λΉμ°ν νμ¬ λ΄λΆμλ£ κ°μκ±° μ¬λ¦¬κ±°λ νλ©΄ μλ κ² κ°μλ° μμ μ μ΄λ λκΈ°μ μμλ λ΄μ€λμλκ±° κ°μλ°
γ γ μ μ μΌμ±μ μμμ μ€κ³λ μ μΆλ λ¬Έμ κ° μμμ
μ λν° μμ§μμ μ¬μ©νλ using System.Collections;μ using System.Collections.Generic; ꡬ문μ C# νλ‘κ·Έλλ° μΈμ΄μ μΌλΆλ‘, νΉμ λ€μμ€νμ΄μ€λ₯Ό νμ¬ νμΌμ΄λ μ€ν¬λ¦½νΈμμ μ¬μ©ν μ μλλ‘ ν©λλ€. μ¬κΈ°μ λ€μμ€νμ΄μ€λ κ΄λ ¨λ ν΄λμ€, μΈν°νμ΄μ€, ν¨μ λ±μ κ·Έλ£Ήνν κ²μ λ§ν©λλ€. μ΄λ₯Ό ν΅ν΄ μ½λλ₯Ό λ μ μ‘°μ§νκ³ , κ΄λ ¨ κΈ°λ₯μ μ½κ² μ°Ύμ μ μμ΅λλ€.
using System.Collections; ꡬ문μ .NET Frameworkμ System.Collections λ€μμ€νμ΄μ€μ μ κ·Όμ νμ©ν©λλ€. μ΄ λ€μμ€νμ΄μ€λ λ°°μ΄μ΄λ ν΄μ ν μ΄λΈκ³Ό κ°μ λ€μν 컬λ μ (μ§ν©) νμ μ μ 곡ν©λλ€. μλ₯Ό λ€μ΄, ArrayList, Hashtable, Queue, Stack λ±μ 컬λ μ ν΄λμ€λ₯Ό μ¬μ©ν μ μκ² λ©λλ€. μ΄ μ»¬λ μ λ€μ κ°μ²΄μ μ§ν©μ κ΄λ¦¬νλ λ° μ¬μ©λλ©°, κ°κΈ° λ€λ₯Έ μ±λ₯κ³Ό μ¬μ© μ¬λ‘λ₯Ό κ°μ§λλ€.
using System.Collections.Generic; ꡬ문μ .NET Frameworkμ System.Collections.Generic λ€μμ€νμ΄μ€μ μ κ·Όμ νμ©ν©λλ€. μ΄ λ€μμ€νμ΄μ€λ νμ μμ ν 컬λ μ μ μ 곡ν©λλ€. μ¦, 컬λ μ μ μ μ₯λλ κ°μ²΄μ νμ μ μ§μ ν μ μμ΄, μ€ν μκ°μ νμ μ€λ₯λ₯Ό λ°©μ§νκ³ , μ±λ₯μ ν₯μμν¬ μ μμ΅λλ€. List, Dictionary, HashSet, Queue, Stack λ±μ΄ μ¬κΈ°μ μν©λλ€. μλ₯Ό λ€μ΄, Listλ μ μ(int)λ§μ μμλ‘ κ°λ 리μ€νΈλ₯Ό μμ±ν μ μκ² ν΄μ€λλ€.
μ΄ κ΅¬λ¬Έλ€μ μ λν°μμ κ²μ κ°λ° μ λ€μν λ°μ΄ν°λ₯Ό ν¨μ¨μ μΌλ‘ κ΄λ¦¬νκ³ , μ‘°μνκΈ° μν΄ νμμ μΌλ‘ μ¬μ©λ©λλ€. μλ₯Ό λ€μ΄, μ λ€μ λͺ©λ‘μ κ΄λ¦¬νκ±°λ, κ²μ λ΄ μμ΄ν μ μΈλ²€ν 리λ₯Ό κ΄λ¦¬νλ λ° μ¬μ©λ μ μμ΅λλ€. νμ μμ μ±κ³Ό 컬λ μ μ λ€μμ±μ νμ©νμ¬ λ μμ μ μ΄κ³ ν¨μ¨μ μΈ κ²μ μ½λλ₯Ό μμ±ν μ μμ΅λλ€.
κ°μμμ κ°μ¬κ° using System.Collections;μ using System.Collections.Generic; λ μ€μ μμνμλ§μ μ§μ°λ μ΄μ λ μ¬λ¬ κ°μ§κ° μμ μ μμ΅λλ€. μ£Όλ μ΄μ λ λ€μκ³Ό κ°μ΅λλ€:
μ¬μ©νμ§ μλ λ€μμ€νμ΄μ€ μ κ±°: μ€ν¬λ¦½νΈλ νλ‘κ·Έλ¨μμ ν΄λΉ λ€μμ€νμ΄μ€μ ν΄λμ€λ λ©μλλ₯Ό μ¬μ©νμ§ μμ κ²½μ°, λΆνμν λ€μμ€νμ΄μ€ μ μΈμ μ½λμ κ°λ μ±μ λ¨μ΄λ¨λ¦¬κ³ , κ΄λ¦¬λ₯Ό 볡μ‘νκ² λ§λ€ μ μμ΅λλ€. λ°λΌμ, κ°μ¬λ μ½λμ λͺ λ£μ±κ³Ό κΉλν¨μ μ μ§νκΈ° μν΄ μ¬μ©νμ§ μλ λ€μμ€νμ΄μ€ μ μΈμ μ κ±°νλ κ²μΌ μ μμ΅λλ€. μ±λ₯ μ΅μ ν: λΉλ‘ λ€μμ€νμ΄μ€ μ μΈμ΄ μ§μ μ μΌλ‘ νλ‘κ·Έλ¨μ μ€ν μ±λ₯μ ν° μν₯μ λ―ΈμΉμ§λ μμ§λ§, μ»΄νμΌλ¬κ° μ²λ¦¬ν΄μΌ ν μ 보μ μμ μ€μμΌλ‘μ¨ μ»΄νμΌ μκ°μ μ½κ°μ΄λλ§ λ¨μΆμν¬ μ μμ΅λλ€. ν° νλ‘μ νΈμμλ μ΄λ¬ν μμ μ΅μ νλ€μ΄ μμ¬ μ 체μ μΈ κ°λ° ν¨μ¨μ±μ λμΌ μ μμ΅λλ€.
νμν κΈ°λ₯ λͺ μ: νΉμ λ€μμ€νμ΄μ€λ₯Ό λͺ μμ μΌλ‘ μ μΈνλ κ²μ κ·Έ μ€ν¬λ¦½νΈλ νλ‘κ·Έλ¨μμ μ΄λ€ μ’ λ₯μ κΈ°λ₯μ΄λ κ°μ²΄λ₯Ό μ£Όλ‘ λ€λ£° κ²μΈμ§λ₯Ό λͺ ννκ² λ³΄μ¬μ€λλ€. μλ₯Ό λ€μ΄, System.Collections.Generic λ€μμ€νμ΄μ€λ₯Ό μ¬μ©νλ©΄, κ°λ°μλ μ΄ μ€ν¬λ¦½νΈμμ μ λ€λ¦ 컬λ μ μ μ¬μ©ν κ²μμ μ μ μμ΅λλ€. κ°μ¬κ° μ΄λ₯Ό μ κ±°ν κ²μ ν΄λΉ κΈ°λ₯μ μ¬μ©νμ§ μκ² λ€λ μλλ₯Ό λνλΌ μ μμ΅λλ€.
κ΅μ‘μ λͺ©μ : κ°μμμ κ°μ¬κ° μ½λμ νΉμ λΆλΆμ μ κ±°νλ κ²μ λλ‘λ κ΅μ‘μ μΈ λͺ©μ μ κ°μ§κ³ μμ μ μμ΅λλ€. μλ₯Ό λ€μ΄, κ°μ¬λ νμλ€μκ² λ€μμ€νμ΄μ€κ° 무μμΈμ§, μ νμνμ§, μΈμ μ¬μ©ν΄μΌ νλμ§ λ±μ μ€λͺ νκΈ° μν΄ μ΄λ¬ν λ€μμ€νμ΄μ€ μ μΈμ μ κ±°ν μ μμ΅λλ€. μ΄λ₯Ό ν΅ν΄ νμλ€μ΄ μ½λμ κ° λΆλΆμ΄ μ€μ λ‘ μ΄λ€ μν μ νλμ§ λ μ μ΄ν΄νλλ‘ λμ΅λλ€.
λ°λΌμ, κ°μ¬κ° μ΄ λ μ€μ μ§μ°λ κ²μ μ£Όλ‘ κ΅μ‘μ λͺ©μ , μ½λμ κ°λ μ± λ° κ΄λ¦¬μ± ν₯μ, κ·Έλ¦¬κ³ νμνμ§ μμ λΆλΆμ μ κ±°νμ¬ μ½λλ₯Ό λ κ°κ²°νκ² λ§λ€κΈ° μν¨μΌ μ μμ΅λλ€.