일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- MainScheduler.Instance
- MainScheduler
- baseviewcontroller
- 청년취업사관학교
- 등굣길
- 오픈채팅방
- MethodSwilzzling
- combine
- rxswift
- IOS
- DiffableDataSource
- SeSAC
- cleanarchitecture
- gitflow
- MainScheduler.asyncInstance
- swift
- DispatchQueue
- Realm
- GCD
- CoreBluetooth
- 코테
- SRP
- 프로그래머스
- DependencyInjection
- DynamicMemberLookup
- SwiftUI
- data_structure
- RaceCondition
- leetcode
- 명품cppProgramming c++
- Today
- Total
목록전체 글 (74)
Do.
Function Notation은 함수를 표시하는 법을 뜻한다. func viewDidLoad() 뷰 컨트롤러에 viewdidLoad라는 메서드가 있다는 것은 다들 알 것이다. 이를 표기할때는 `viewDidLoad()` 로 표시하면 된다. 인자가 있는 함수의 경우는 어떨까? 다음은 SceneDelegate에 있는 메서드 중 하나이다. func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) 이런 경우는 어떻게 써야할까? 복사 붙여넣기 해서 길에 늘여써야 할까? 아니다 swift 에서는 이를 scene(_:willConnectTo:options:..
Swift쓰다보면 Any와 AnyObject 둘 다 쓰이는 걸 볼 수 있는데, Any는 함수 타입을 포함해서 모든 타입의 인스턴스를 나타낼 수 있다. 반면 AnyObject는 모든 클래스 타입의 인스턴스를 나타낼 수 있다. { "name": "henry", "age": 27 } 위와 같은 json 형태로 데이터가 들어올 때, Decode용 모델을 만들어서 Decodable을 해도 되지만 JSONSerialization을 이용해서 간편하게 쓸 수도 있다. let fetchedData = try! JSONSerialization.jsonObject(with: json) jsonObject(with:) Any를 리턴한다. 예를 어떻게 접근할 수 있을까? let fetchedData = try! JSONSeri..
잘 알겠지만 프로토콜은 '해야할 것'을 명시하는 것으로 만약 클래스에서 프로토콜을 채용하고 있다면 해당 클래스는 채용한 프로토콜에서 알려주는 것들을 꼭 구현 해야 한다. protocol Spell { associatedtype SpellType var word: SpellType { get } } struct Fireball: Spell { typealias SpellType = String var word: String { "Go FireBall!!" } } Spell 프로토콜은 주문을 외우기 위한 word라는 속성을 읽기 속성으로 구현해야 한다. word의 타입은 associatedtype인 SpellType 이어야 한다. 그리고 Fireball은 Spell을 채용한다. 그럼 Fireball 마법은 ..

sh파일 실행해애 해서 terminal에서 입력했는데 위 사진처럼 나온다. Xcode는 당연히 설치되어있는데? 싶어서 보니 Xcode - Preferences - Locations 에 Command Line Tools 가 비어있더라, 선택해주면 해결된다.
Reference Swift Apprentice 출처 입력 Intro Swift는 Autometic Reference Counting(ARC)를 통해 사용자가 특별히 메모리를 관리하지 않아도 메모리를 잘 관리해주기는 하지만 그것만으로는 부족한 경우가 있다. ARC가 개체 간 적절한 관계를 추론할 수 없는 경우가 있는데 여기서 바로 볼 수 있는 키워드가 참조 사이클(Reference Cycle) 이다. 클래스에 대한 참조 주기 클래스의 인스턴스 끼리 서로 강한 참조를 하게 되면 메모리 누수로 이어지는 Strong Refernece Cycle을 만들게 된다. 어느 한쪽이 비활성화 되어도 참조 카운팅 회수가 0이 되지 않게 되기 때문이다. class Audio { let title: String var edi..

코드 스닙펫은 코드 자동완성과 비슷한 개념이다. Xcode에서 작성중인 페이지에서 라이브러리를 열면 보이는 것이 바로 그것 대표사진 삭제 사진 설명을 입력하세요. 예를들어ViewController에서 기능을 구분하기 위해 extension하고 그 위에는 MARK로 구분을 하는데 줄 나누기까지 되는 마크를 주려면 //MARK: - 까지 입력을 해야 하는데 이것도 많이 하다 보면 여간 귀찮은 일이 아니다. 그래서 코드 스닙펫을 활용해서 자동완성 되도록 해보자. 대표사진 삭제 사진 설명을 입력하세요. 에디터에서 Control + Click 또는 우측 클릭을 하면 드롭 메뉴가 나오는데 거기서 Create Code Snppet...으로 들어간다. 대표사진 삭제 사진 설명을 입력하세요. 그러면 위와 같은 창에서 M..

Index BreakPoint 변수 등 상태값 디버깅, 모니터링 Debug Bar Button BreakPoint BreakPoint는 Xcode 상에서 거터 레인을 클릭했을때 나타나는 파란색 화살표를 말한다. 이는 디버그 모드 상태에서 앱을 실행할 때 프로그램이 해당 라인을 실행할 때 거기서 잠깐 멈추라는 중단점을 설정해 준다. 디버깅 목적으로 아주 유용하게 사용할 수 있다. 어플이 실행중 브레이크포인트에 걸린 모습 초록색 라인으로 표시된다. 거터를 클릭해서 마우스를 통해 Break Point를 지정할 수도 있고, 해당 라인에서 Command+\를 단축키를 통해 브레이크 포인트를 등록할 수 있다. 가끔 앱의 구성이 복잡해지고 파일이 많아져서 어딘가에 브레이크 포인트를 지정하고 까먹고 앱을 실행했는데 의..

코테 단골 손님 이기도 한 최대공약수와 최소공배수 구하는 법 최대공약수는 유클리드 호제법을 통해서 구하는게 코딩이 훨씬 쉬운 것 같다. 최대공약수 유클리드 호제법을 통한 최대공약수 구하는 법은 간단한데 https://ko.wikipedia.org/wiki/%EC%B5%9C%EB%8C%80%EA%B3%B5%EC%95%BD%EC%88%98 최대공약수 - 위키백과, 우리 모두의 백과사전 위키미디어 재단에서는 보편적 행동 강령 의 시행 지침의 초안 에 대해서 한국어 위키백과 공동체의 의견을 받고 있습니다 ( 토론 참여하기 ) 9월 20일부터 9월 30일까지 위키문헌 에서 옛 한글문헌 전자화 프로젝트 봉사자를 모집합니다. (봉사시간 부여) 74개 언어 접힘 최대공약수 위키백과, 우리 모두의 백과사전. ..