- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- substr
- tapply
- swiftUI
- 시각화
- Python
- ios
- ReLU
- rest api
- barplot
- rxswift
- r
- 딥러닝
- Observable
- sigmoid
- MVC
- 오블완
- 티스토리챌린지
- HTTP
- 명령어
- decode
- struct
- SWIFT
- SQL
- scheduledTimer
- Request
- Optional
- deeplearning
- Linux
- 연산자
- cocoapods
목록전체 글 (126)
iOS 개발 기록 블로그

Optional을 이해하기 위한 5가지 단계 Force Unwrapping Check for nil value Optional Binding Nil Coalsecing Operator Optional Chaining OptionalsDemo라는새로운 프로젝트 생성 let myOptional: String? myOptional = "CrazyDeer" let text: String = myOptional 위와 같은 코드에서 세번째 줄이 에러가 나온다. text 변수는 String이지만 myOptional이라는 데이터 타입이 String?이기 때문이다. 이 Optional 데이터를 사용하기 위한 방법 5가지인 것이다. 간단한 방법이 이것이다. Force Unwrapping 변수 뒤에 ! 느낌표를 붙여주는 방..

Struct vs Class struct는 properties 값을 주지 않아도 된다. 그러나 class는 init을 해줘야 한다. 코드 class Enemy { // properties var health: Int var damage: Int init(health: Int, damage: Int) { self.health= health self.damage= damage } // functions (methods) func move() { print("Walk forwards.") } func attack() { print("Land a hit, does \(damage)damage.") } } 이렇게 init을 해주면 된다. 그럼 Enemy 클래스에 takeDamage라는 함수를 만들어보자. clas..

이번 글에서는 Swift 뿐만 아니라 다른 언어에서 너무나도 중요한 개념인 'Class'에 대해서 알아볼 것이다. 개념 Class는 아래 링크에서 알아봤던 Struct (Structure, 구조체)와 비슷하고 프로그래밍이 오랜 기간 성장해오면서 발달, 도태, 변화해온 결과물 중 하나이다. iOS(Swift) 구조체(struct) 사용 방법 Swift에서도 역시 구조체(struct)가 있고 그 사용 방법에 대해 알아보자. 개념 스위프트에서 데이터 타입은 Int, Float, String, Boolean, Array, Dictionary 등 여러 가지가 존재한다. 우리는 직접 개인화(커스터 crazydeer.tistory.com 구조체는 Property나 Method들이 담겨 있는 설계도면과 같다고 설명했다..

Slider 사용자에게 수치를 받기 위한 UI인 Slider에 대해 알아보자. 위와 같이 생긴 걸 슬라이더(Slider)라고 한다. 초기 값을 Value라는 속성으로 설정할 수 있고 이어서 최솟값, 최댓값을 설정할 수 있다. 나머지 값들은 추후에 필요 시 알아보는 걸로 하자. 스토리보드에 슬라이더를 Control 키를 누른 채로 드래그 앤 드롭하면 위와 같은 이미지가 나온다. Type을 UISlider로 변경하고 만들어 준다. 여기서 Event를 보면 'Value Changed'라고 이미 되어 있다. 게임 엔진인 유니티와 비슷한데 사용자가 슬라이더를 움직이는 순간 값이 변화하고 그때마다 이벤트로 전달된다는 의미로 보면 된다. 값이 변화할 때마다 콘솔창에 값이 출력되게 해 보자. 여기서 값은 소수점 2자리..

지난 글에서 디자인 패턴 MVC에 대해서 개념과 장점 등을 알아봤다. iOS(Swift) Design Pattern: MVC (Model View Controller) 1편 iOS App 프로그래밍에서 정말 정말 중요한 디자인 패턴 MVC를 알아보자. 우선 이 MVC나 MVVM 등 애플이 채택(?)한 디자인 패턴은 대부분의 채용에 필수요건으로 포함되어 있다. 그만큼 이것은 정말 중 crazydeer.tistory.com 이 MVC 패턴을 실제 프로젝트에 적용해보겠다. 적용 간단한 문제 풀이하는 앱을 MVC 패턴으로 바꿔보겠다. 우선 아래와 같이 Model, View, Controller 폴더를 만들어주고 파일을 옮긴다. 그동안 ViewController.swift 파일에서 전부 다 적었던 코드를 디자인 ..

프로그래밍에서 함수는 빈 함수 (Void)가 있고 input이 있는 함수가 있고 output이 있는 함수가 있다. 예시 코드 func getMilk (money: Int) -> Int { let change = money - 2 return change } -> : 이 화살표가 return arrow 정수형 데이터를 보내는 함수이다. Int : return data type 예시 코드 2 // void function func greeting1() { print("Hello") } greeting1() // Input function func greeting2(name: String) { print("Hello \(name)") } greeting2(name: "Cdeer") // Output & Inp..

일단 제품 이름은 USB-C Digital AV Multiport 어댑터이다. 링크 USB-C Digital AV Multiport 어댑터 USB-C Digital AV Multiport 어댑터를 사용하면 USB-C 또는 Thunderbolt 3(USB-C) 지원 Mac을 HDMI 디스플레이, 표준 USB 기기, 충전 케이블에 연결할 수 있습니다. 지금 apple.com에서 구입하세요. www.apple.com 가격은 79,000원. 제 기준에는 비싸게 느껴졌지만 iOS App 개발하는데 필요하다고 느꼈고 그냥 정품이 좋아서 장만하게 되었다. 전날 오전에 주문했는데 정확히 다음날 오후에 왔다. 빠른 배송 만족스러웠다. 스토어에서 본거랑 다르게 더 작다고 느꼈다. 언박싱하고 맥북과 크기 비교해보자. 참고로..

iOS App 프로그래밍에서 정말 정말 중요한 디자인 패턴 MVC를 알아보자. 우선 이 MVC나 MVVM 등 애플이 채택(?)한 디자인 패턴은 대부분의 채용에 필수요건으로 포함되어 있다. 그만큼 이것은 정말 중요한 개념이라는 것이다. 디자인 패턴 디자인 패턴이란 프로그래밍에서 흔한 문제들의 증명된 솔루션이라고 볼 수 있다. 말이 어려운데 지금부터 자세히 파헤쳐보겠다. 소프트웨어는 일반적으로 복잡하다. 다음 글(2편)에서 이 디자인 패턴을 적용할 Quizzler라는 프로젝트에 대해 간단히 설명하자면 여러 퀴즈를 내고 사용자가 진실 혹은 거짓을 선택하는 단순한 문제 풀이 앱이다. 지금까지와 마찬가지로 ViewController라는 파일 내에서 퀴즈 데이터, 퀴즈 로직, UI 요소 등 모두 다뤘다. 하지만 퀴..

Swift에서도 역시 구조체(struct)가 있고 그 사용 방법에 대해 알아보자. 개념 스위프트에서 데이터 타입은 Int, Float, String, Boolean, Array, Dictionary 등 여러 가지가 존재한다. 우리는 직접 개인화(커스터마이징)한 데이터 구조체를 만들 수 있다. 그걸 구조체, structure, struct, class(?)라고 부른다. 코드 먼저 예시 코드를 보자. // custom data type struct Town { // Properties let name = "CdeerLand" var citizens = ["Cdeer", "SunnyAn"] var resources= ["Grain": 100, "Ore": 42, "Wool": 75] // Method func..

Progress Bar는 아래 링크에 달걀 삶는 프로젝트에서 시간이 시각적으로 얼마나 남았는지 보여줄 수 있는 UI 요소 중에 하나이다. https://crazydeer.tistory.com/entry/iOSSwift-Timer-Code-타이머-코드-개요-이슈-해결-추가 iOS(Swift) Timer Code (타이머 코드 개요, 이슈, 해결, 추가) Swift에서 타이머를 생성하는 방법이다. 우선 다들 이러한 기능이 필요하면 하는 거 있잖아요. 구글링 합니다. 바로 위에 들어가면 코드가 딱 나온다. 그거 들어가서 아래로 내리면서 가장 투표 crazydeer.tistory.com 생성 방법 우선 Main.storyboard에서 우상단에 + 버튼을 클릭하여 Progress View를 드래그 앤 드롭하여 생..