이번 글에서는 Swift 공식 문서의 22번째 단원인 Generics을 읽고 정리한 글을 쓰려고 한다. Apple Swift 공식 문서 22단원 - Generics Generics Generic(제네릭) 코드를 사용 하면 정의한 요구사항에 따라 모든 타입에서 작동할 수 있는 유연하고 재사용 가능한 함수와 타입을 작성할 수 있다. 이는 중복을 피하고 명확하고 추상적인 방식으로 코드를 작성할 수 있다. 제네릭은 Swift의가장 강력한 기능 중 하니이고 Swift 표준 라이브러리의 대부분은 제네릭 코드로 빌드된다. 사실 지금까지 작성한 모든 글에서 제네릭을 사용하고 있었다. 예를 들어 Swift의 Array,Dictionary 타입은 모두 제네릭 컬렉션이다. 즉 Array에 Int,String등 모든 타입을 ..
안녕하세요! 이번 글에서는 개인이 만든 iOS 앱에서 Firebase를 사용하기 위한 세팅을 해보려고 합니다. 여기서 Firebase란 백엔드를 쉽게 구현할 수 있도록 만들어주는 플랫폼이라고 보면 될 듯합니다. 앱 개발에는 크게 프런트엔드, 백엔드가 있는데요, 프론트엔드 같은 경우에는 간단히 말하면 앱에서 보여지는 화면이라고 이해하시면 됩니다. 백엔드는 사용자의 정보, 사용자에게 제공할 정보 등 DB관리 등 여러가지 정보를 처리하는 작업이라고 볼 수 있습니다. 이번에 사용할 Firebase는 프론트엔드, 백엔드 중 백엔드를 간단하게 구현할 수 있도록 해주는 플랫폼입니다! 그럼 이번 글에서는 iOS에서 Firebase를 어떻게 사용할 수 있게 세팅하는지 알아보도록 하겠습니다! 우선 Firebase 홈페이지..
안녕하세요! 이번 글에서는 저번글에 이어 사진 앱을 만들어볼 건데요, 이번에는 저번에 만든 사진 앱에서 조금 아쉬운 점을 수정해보려고 합니다. 저번에 구현한 화면을 보여드리며 이번에 수정할 아쉬운 점을 살펴보겠습니다! 이번에 수정할 아쉬운 점은 사진이 선택됐을 때 선택되었다는 것을 알 수 있게 이벤트를 주는 것과 휴지통 버튼이 아무것도 선택되지 않았을 때부터 활성화되어있는 것을 고쳐보도록 할게요. 우선 사진이 선택되었을 때 이벤트를 주는 작업부터 진행하겠습니다. 저희가 사용한 컬렉션 뷰의 델리게이트에는 셀이 선택되거나 선택 해제 되었을 때를 감지할 수 있는 메서드들이 있습니다. 이러한 메서드를 사용하여 다양한 작업을 할 수 있는데요, 이번에 할 작업들도 이를 활용하면 될 것 같습니다. 아 참고로 지금까지..
이번 글에서는 Swift 공식 문서의 19번째 단원인 Nested Types을 읽고 정리한 글을 쓰려고 한다. Apple Swift 공식 문서 19단원 - Nested Types Nested Types 열거형은 가끔 특정 클래스와 구조체의 기능을 지원하기 위해 생성된다. 이와 비슷하게 복잡한 타입의 클래스와 구조체를 사용할 때 그 안에서 모든 것을 구현하는 것이 편리할 수 있다. 즉 해당 블록 안에 또 다른 열거형, 클래스, 구조체를 중첩해서 정의할 수 있다는 말이다. 다른 타입 내에 타입을 중첩하려면 지원하는 타입의 외부 중괄호 안에 정의를 작성하면 된다. Nested Types in Action struct BlackjackCard { // nested Suit enumeration enum Suit..
이번 글에서는 Swift 공식 문서의 18번째 단원인 Type Casting을 읽고 정리한 글을 쓰려고 한다. Apple Swift 공식 문서 18단원 - Type Casting Type Casting 타입 캐스팅은 인스턴스의 타입을 확인하거나 어떠한 클래스의 인스턴스를 해당 클래스 계층 구조의 슈퍼 클래스나 서브 클래스로 취급하는 방법이다. Swift의 타입 캐스팅은 is, as 연산자로 구현된다. 이 두 연산자는 타입을 확인하거나 다른 타입으로 캐스트 하는 것을 간단한 표현으로 제공한다. 타입 캐스팅을 사용하여 프로토콜을 준수하는지 확인할 수도 있다. Defining a Class Hierarchy for Type Casting 클래스와 서브 클래스의 계층 구조와 함께 타입 캐스팅을 사용하여 특정 클..
문제 링크 Integer Break - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제 Given a positive integer n, break it into the sum of at least two positive integers and maximize the product of those integers. Return the maximum product you can get. Example 1: Input: 2 Output: 1 Explanation..
이번 글에서는 Swift 공식 문서의 17번째 단원인 Error Handling을 읽고 정리한 글을 쓰려고 한다. Apple Swift 공식 문서 17단원 - Error Handling Error Handling Error Handling(오류 처리)는 프로그램의 오류 조건에 응답하고 복구하는 프로세스이다. Swift는 런타임에 복구 가능한 오류를 throwing, catching, propagating, manipulating 하는 일급 클래스를 제공한다. 모든 작업이 항상 실행을 완료하거나 유용한 결과를 도출하는 것은 아니다. 작업이 실패했을 때 왜 실패했는지 원인을 이해하는 것이 중요한 경우가 많다. 예를 들어 디스크에 있는 파일에서 데이터를 읽고 처리하는 작업을 생각해보자. 이러한 작업에는 지정된..
이번 글에서는 Swift 공식 문서의 16번째 단원인 Optional Chaining을 읽고 정리한 글을 쓰려고 한다. Apple Swift 공식 문서 16단원 - Optional Chaining Optional Chaining Optional chaining(옵셔널 체이닝)은 현재 nil일 가능성이 있는 옵셔널 타입의 프로퍼티, 메서드, 서브 스크립트를 쿼리하고 호출하는 프로세스이다. 만약 옵셔널 타입에 값이 할당되어 있으면 프로퍼티, 메서드, 서브 스크립트의 호출이 성공하는 것이고 nil이라면 nil을 반환하게 된다. 여러 개의 쿼리를 함께 연결할 수 있으며 연결된 체인 중 하나라도 nil이라면 전체 체인이 정상적으로 실패하게 된다. Optional Chaining as an Alternative t..
- Total
- Today
- Yesterday
- pattern
- mac
- System
- BFS
- OSTEP
- 스위프트
- 문법
- Publisher
- operating
- 프로그래밍
- 코딩테스트
- operator
- 테이블뷰
- dfs
- Xcode
- 동시성
- Combine
- 알고리즘
- design
- DP
- OS
- 앱개발
- IOS
- Apple
- 백준
- document
- 코테
- 자료구조
- Swift
- 아이폰
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |