Deep_Dev
article thumbnail
[Swift 기초] ν”„λ‘œνΌν‹°μ™€ λ©”μ„œλ“œ

πŸ“–ν”„λ‘œνΌν‹°μ™€ λ©”μ„œλ“œ ν”„λ‘œνΌν‹° : 클래슀, ꡬ쑰체 λ˜λŠ” μ—΄κ±°ν˜• 등에 κ΄€λ ¨λœ κ°’ λ©”μ„œλ“œ : νŠΉμ • νƒ€μž…μ— κ΄€λ ¨λœ 힘수 πŸ“– ν”„λ‘œνΌν‹° μ €μž₯ ν”„λ‘œνΌν‹° : μΈμŠ€ν„΄μŠ€μ˜ λ³€μˆ˜ λ˜λŠ” μƒμˆ˜ μ—°μ‚° ν”„λ‘œνΌν‹° : 값을 μ €μž₯ν•œ 것이 μ•„λ‹ˆλΌ νŠΉμ • 연산을 μ‹€ν–‰ν•œ κ²°κ³Όκ°’ ( 클래슀, ꡬ쑰체, μ—΄κ±°ν˜•μ— μ‚¬μš© ) νƒ€μž… ν”„λ‘œνŒŒν‹° : νŠΉμ • νƒ€μž…μ— μ‚¬μš©λ˜λŠ” ν”„λ‘œνΌν‹° ( 클래슀 λ³€μˆ˜ ) ν”„λ‘œνΌν‹° κ°μ‹œμž = ν”„λ‘œνΌν‹°μ˜ 값이 λ³€ν•˜λŠ” 것을 κ°μ‹œ ( 값이 λ³€ν•  λ•Œ κ°’μ˜ 변화에 λ”°λ₯Έ νŠΉμ • μž‘μ—… μ‹€ν–‰ ) πŸ“Œ μ €μž₯ ν”„λ‘œνΌν‹° 클래슀 λ˜λŠ” ꡬ쑰체의 μΈμŠ€ν„΄μŠ€μ™€ μ—°κ΄€λœ 값을 μ €μž₯ν•˜λŠ” κ°€μž₯ λ‹¨μˆœν•œ κ°œλ…μ˜ ν”„λ‘œνΌν‹° var λ₯Ό μ‚¬μš©ν•˜λ©΄ λ³€μˆ˜ μ €μž₯ ν”„λ‘œνΌν‹° let 을 μ‚¬μš©ν•˜λ©΄ μƒμˆ˜ μ €μž₯ ν”„λ‘œνΌν‹° 🍎 ꡬ쑰체와 클래슀의 μ €μž₯ ν”„λ‘œνΌν‹° ꡬ쑰체의 μ €μž₯ ν”„λ‘œνΌν‹°κ°€ μ˜΅μ…”λ„μ΄ μ•„λ‹ˆλ”λΌ..

article thumbnail
[Swift 기초] ꡬ쑰체와 클래슀

ꡬ쑰체와 클래슀 ꡬ쑰체와 ν΄λž˜μŠ€λŠ” 데이터λ₯Ό μš©λ„μ— 맞게 λ¬Άμ–΄ ν‘œν˜„ν•˜κ³ μž ν•  λ•Œ μœ μš©ν•˜λ‹€. ꡬ쑰체의 μΈμŠ€ν„΄μŠ€ = κ°’ νƒ€μž… 클래슀의 μΈμŠ€ν„΄μŠ€ = μ°Έμ‘° νƒ€μž… ꡬ쑰체 ꡬ쑰체의 μ •μ˜ struct ν‚€μ›Œλ“œλ‘œ μ •μ˜ struct ꡬ쑰체 이름{ ν”„λ‘œνΌν‹°μ™€ λ©”μ„œλ“œλ“€ } BaicInformation ꡬ쑰체 μ •μ˜ struct BasicInformation{ var name: String var age: Int } ꡬ쑰체 μΈμŠ€ν„΄μŠ€μ˜ 생성 및 μ΄ˆκΈ°ν™” ꡬ쑰체 μ •μ˜λ₯Ό 마친 ν›„, μΈμŠ€ν„΄μŠ€λ₯Ό μƒμ„±ν•˜κ³  μ΄ˆκΈ°ν™”ν•˜κ³ μž ν•  λ•ŒλŠ” 기본적으둜 μƒμ„±λ˜λŠ” λ©€λ²„μ™€μ΄μ¦ˆ μ΄λ‹ˆμ…œλΌμ΄μ¦ˆλ₯Ό μ‚¬μš© μΈμŠ€ν„΄μŠ€κ°€ μƒμ„±λ˜κ³  μ΄ˆκΈ°ν™”λœ ν›„ ν”„λ‘œνΌν‹° 값에 μ ‘κ·Όν•˜κ³  μ‹Άλ‹€λ©΄ λ§ˆμΉ¨ν‘œ . μ‚¬μš© ꡬ쑰체λ₯Ό μƒμˆ˜ let으둜 μ„ μ–Έν•˜λ©΄ μΈμŠ€ν„΄μŠ€ λ‚΄λΆ€μ˜ ν”„λ‘œνΌν‹° 값을 λ³€κ²½ν•  수 μ—†κ³ , λ³€μˆ˜ v..

article thumbnail
[Swift 기초] μ˜΅μ…”λ„

μ˜΅μ…”λ„ μ˜΅μ…”λ„ = '선택적인'. 즉, 값이 μžˆμ„μˆ˜λ„ μ—†μ„μˆ˜λ„ μžˆμŒμ„ λ‚˜νƒ€λ‚΄λŠ” ν‘œν˜„ μ΄λŠ” 'λ³€μˆ˜λ‚˜ μƒμˆ˜ 등에 κΌ­ 값이 μžˆλ‹€λŠ” 것을 보μž₯ν•  수 μ—†λ‹€. 즉, λ³€μˆ˜ λ˜λŠ” μƒμˆ˜μ˜ 값이 nil 일 μˆ˜λ„ μžˆλ‹€'λŠ” 것 nil을 λ°˜ν™˜ν•˜κΈ° μœ„ν•΄ ν•„μš”ν•œ 것이 λ°”λ‘œ μ˜΅μ…”λ„ 였직 μ˜΅μ…”λ„ νƒ€μž…λ§Œ nil을 λ°˜ν™˜ν•  수 μžˆλ‹€. 즉, 일반 μžλ£Œν˜•μ€ nil을 κ°€μ§€κ±°λ‚˜ λ°˜ν™˜ν•  수 μ—†λ‹€. μ˜΅μ…”λ„ μ‚¬μš© μ˜΅μ…”λ„ λ³€μˆ˜ λ˜λŠ” μƒμˆ˜κ°€ μ•„λ‹ˆλ©΄ nil ν• λ‹Ή λΆˆκ°€ 였λ₯˜κ°€ λ°œμƒν•˜λŠ” nil ν• λ‹Ή var myName: String = "yagom" myName = nil // 였λ₯˜ nil은 μ˜΅μ…”λ„λ‘œ μ„ μ–Έλœ κ³³μ—μ„œλ§Œ μ‚¬μš©ν•  수 μžˆλ‹€. μ˜΅μ…”λ„ λ³€μˆ˜ λ˜λŠ” μƒμˆ˜ 등은 데이터 νƒ€μž… 뒀에 λ¬ΌμŒν‘œ ? λ₯Ό λΆ™μ—¬ ν‘œν˜„ν•΄μ€€λ‹€. 정상적인 nil ν• λ‹Ή var myName: Stri..

article thumbnail
[Swift 기초] ν•¨μˆ˜

πŸ“– ν•¨μˆ˜ πŸ“Œ ν•¨μˆ˜μ™€ λ©”μ„œλ“œ λ©”μ„œλ“œ : ꡬ쑰체, 클래슀, μ—΄κ±°ν˜• λ“± νŠΉμ •νƒ€μž…μ— μ—°κ΄€λ˜μ–΄ μ‚¬μš©ν•˜λŠ” ν•¨μˆ˜ 함 수 : λͺ¨λ“ˆ μ „μ²΄μ—μ„œ μ „μ—­μ μœΌλ‘œ μ‚¬μš©ν•  수 μžˆλŠ” ν•¨μˆ˜ πŸ’‘ ν•¨μˆ˜μ™€ λ©”μ„œλ“œλŠ” μ •μ˜ν•˜λŠ” μœ„μΉ˜μ™€ ν˜ΈμΆœλ˜λŠ” λ²”μœ„λ§Œ λ‹€λ₯Ό 뿐, μ •μ˜ν•˜λŠ” ν‚€μ›Œλ“œμ™€ κ΅¬ν˜„ν•˜λŠ” 방법은 κ°™λ‹€. πŸ“Œ ν•¨μˆ˜μ˜ μ •μ˜μ™€ 호좜 ν•¨μˆ˜λŠ” μ†Œκ΄„ν˜Έ()λ₯Ό μƒλž΅ν•  수 μ—†λ‹€. μŠ€μœ„ν”„νŠΈ ν•¨μˆ˜λŠ” μž¬μ •μ˜(μ˜€λ²„λΌμ΄λ“œ)와 쀑볡 μ •μ˜(μ˜€λ²„λ‘œλ“œ)λ₯Ό λͺ¨λ‘ μ§€μ›ν•œλ‹€. πŸ’‘λ”°λΌμ„œ λ§€κ°œλ³€μˆ˜μ˜ νƒ€μž…μ΄ λ‹€λ₯΄λ©΄ 같은 μ΄λ¦„μ˜ ν•¨μˆ˜λ₯Ό μ—¬λŸ¬ 개 λ§Œλ“€ 수 있고, λ§€κ°œλ³€μˆ˜μ˜ κ°œμˆ˜κ°€ 달라도 같은 μ΄λ¦„μ˜ ν•¨μˆ˜λ₯Ό λ§Œλ“€ 수 μžˆλ‹€. ν•¨μˆ˜λ₯Ό μ •μ˜ν•˜λŠ” ν‚€μ›Œλ“œ : func λ°˜ν™˜μ„ μœ„ν•œ ν‚€μ›Œλ“œ : return ν•¨μˆ˜μ΄λ¦„μ„ 지정해쀀 ν›„ λ§€κ°œλ³€μˆ˜λŠ” μ†Œκ΄„ν˜Έ() 둜 감싸쀀닀. λ°˜ν™˜νƒ€μž…μ„ λͺ…μ‹œν•˜κΈ° μ „μ—λŠ” -> λ₯Ό μ‚¬μš©ν•˜μ—¬..

article thumbnail
[Swift 기초] νλ¦„μ œμ–΄

πŸ“– νλ¦„μ œμ–΄ ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜λ‹€λ³΄λ©΄ νŠΉμ • μ‘°κ±΄μ—μ„œ μ½”λ“œλ₯Ό μ‹€ν–‰ν•΄μ•Ό ν•˜κ±°λ‚˜ μ‹€ν–‰ν•˜μ§€ 말아야 ν•˜λŠ” 상황이 생기기 λ§ˆλ ¨μ΄λ‹€. 또, νŠΉμ • λͺ…λ Ήμ–΄λ₯Ό λ°˜λ³΅ν•΄μ„œ μ‹€ν–‰ν•΄μ•Ό ν•˜λŠ” 일도 μ’…μ’… λ°œμƒν•œλ‹€. μ΄λŸ΄λ•Œ μ‚¬μš©ν•˜λŠ” 것이 쑰건문과 λ°˜λ³΅λ¬Έμ΄λ‹€. μŠ€μœ„ν”„νŠΈμ˜ νλ¦„μ œμ–΄ κ΅¬λ¬Έμ—μ„œλŠ” μ†Œκ΄„ν˜Έ()λ₯Ό λŒ€λΆ€λΆ„ μƒλž΅ν•  수 μžˆλ‹€. λ¬Όλ‘  μ‚¬μš©ν•΄λ„ λ¬΄κ΄€ν•˜μ§€λ§Œ μ€‘κ΄„ν˜Έ{} λŠ” μƒλž΅ν•  수 μ—†λ‹€. πŸ“– 쑰건문 πŸ“Œ if ꡬ문 μŠ€μœ„ν”„νŠΈμ˜ if ꡬ문은 쑰건의 값이 κΌ­ Bool νƒ€μž…μ΄μ–΄μ•Ό ν•œλ‹€. let first: Int = 5 let second: Int = 7 if first > second{ print("first > second") } else if first < second { print("first < second") } else { print("f..

article thumbnail
[Swift 기초] μ—°μ‚°μž

πŸ“– μ—°μ‚°μž ν• λ‹Ή μ—°μ‚°μž μ‚°μˆ  μ—°μ‚°μž 비ꡐ μ—°μ‚°μž μ‚Όν•­ 쑰건 μ—°μ‚°μž λ²”μœ„ μ—°μ‚°μž λΆ€μšΈ μ—°μ‚°μž λΉ„νŠΈ μ—°μ‚°μž 볡합 ν• λ‹Ή μ—°μ‚°μž μ˜€λ²„ν”Œλ‘œ μ—°μ‚°μž 기타 μ—°μ‚°μž πŸ“Œ 비ꡐ μ—°μ‚°μž 두 값을 비ꡐ할 λ•Œ μ‚¬μš© A==B A>=B AB A

article thumbnail
[Swift 기초] 데이터 νƒ€μž… κ³ κΈ‰

πŸ“– 데이터 νƒ€μž… μ•ˆμ‹¬ μŠ€μœ„ν”„νŠΈλŠ” νƒ€μž…μ— ꡉμž₯히 λ―Όκ°ν•˜κ³  μ—„κ²©ν•˜λ‹€. μ„œλ‘œ λ‹€λ₯Έ 데이터 νƒ€μž… 끼리의 데이터 κ΅ν™˜μ€ νƒ€μž…μΊμŠ€νŒ…(Type-Casting)을 거쳐야 ν•œλ‹€. μŠ€μœ„ν”„νŠΈμ—μ„œ κ°’ νƒ€μž…μ˜ 데이터 κ΅ν™˜μ€ μ—„λ°€νžˆ λ§ν•˜λ©΄ νƒ€μž…μΊμŠ€νŒ…μ΄ μ•„λ‹Œ μƒˆλ‘œμš΄ μΈμŠ€ν„΄μŠ€λ₯Ό μƒμ„±ν•˜μ—¬ ν• λ‹Ήν•˜λŠ” 것이닀. πŸ“Œ 데이터 νƒ€μž… μ•ˆμ‹¬μ΄λž€ μŠ€μœ„ν”„νŠΈλŠ” 데이터 νƒ€μž…μ„ μ•ˆμ‹¬ν•˜κ³  μ‚¬μš©ν•  수 μžˆλŠ” 언어이닀. 예λ₯Ό λ“€μ–΄, Int νƒ€μž… λ³€μˆ˜μ— ν• λ‹Ήν•˜λ €λŠ” 값이 Character νƒ€μž…μ΄λ©΄ 컴파일 였λ₯˜κ°€ λ°œμƒν•œλ‹€. μ΄λ ‡κ²Œ μŠ€μœ„ν”„νŠΈκ°€ 컴파일 μ‹œ νƒ€μž…μ„ ν™•μΈν•˜λŠ” 것을 νƒ€μž…ν™•μΈ 이라고 ν•œλ‹€. πŸ“Œ νƒ€μž… μΆ”λ‘  μŠ€μœ„ν”„νŠΈμ—μ„œλŠ” λ³€μˆ˜λ‚˜ μƒμˆ˜λ₯Ό μ„ μ–Έν•  λ•Œ νŠΉμ • νƒ€μž…μ„ λͺ…μ‹œν•˜μ§€ μ•Šμ•„λ„ μ»΄νŒŒμΌλŸ¬κ°€ ν• λ‹Ήλœ 값을 κΈ°μ€€μœΌλ‘œ λ³€μˆ˜λ‚˜ μƒμˆ˜μ˜ νƒ€μž…μ„ κ²°μ •ν•œλ‹€. // νƒ€μž…μ„ μ§€μ •ν•˜μ§€ μ•Šμ•˜μœΌλ‚˜..

article thumbnail
[Swift 기초] 데이터 νƒ€μž… κΈ°λ³Έ

πŸ“– λ¬Έμžμ—΄ 보간법 λ³€μˆ˜ λ˜λŠ” μƒμˆ˜ λ“±μ˜ 값을 λ¬Έμžμ—΄ 내에 λ‚˜νƒ€λ‚΄κ³  싢을 λ•Œ μ‚¬μš©ν•©λ‹ˆλ‹€. λ¬Έμžμ—΄ 내에 \(λ³€μˆ˜λ‚˜ μƒμˆ˜)의 ν˜•νƒœλ‘œ ν‘œκΈ°ν•˜λ©΄ 이λ₯Ό λ¬Έμžμ—΄λ‘œ μΉ˜ν™˜ν•΄μ„œ λ„£μŠ΅λ‹ˆλ‹€. let name: String = "yagom" print("My Name is \(name)") // My name is yagom πŸ“– λ³€μˆ˜μ™€ μƒμˆ˜ πŸ“Œ λ³€μˆ˜ μŠ€μœ„ν”„νŠΈμ—μ„œ λ³€μˆ˜λ₯Ό μƒμ„±ν•˜λ €λ©΄ var ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. var [λ³€μˆ˜λͺ…]: [데이터 νƒ€μž…] = [κ°’] var name: String = "yagom" var age: Int = 100 print("μ €μ˜ 이름은 \(name)이고 λ‚˜μ΄λŠ” \(age)μ‚΄ μž…λ‹ˆλ‹€.") // μ €μ˜ 이름은 yagom이고 λ‚˜μ΄λŠ” 100μ‚΄ μž…λ‹ˆλ‹€. πŸ“Œ μƒμˆ˜ μŠ€μœ„ν”„νŠΈμ—μ„œ μƒμˆ˜λ₯Ό μƒμ„±ν•˜λ €λ©΄ let ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•©..