NOW-ON / iOS-Interview-Preparation

iOS 면접 준비
3 stars 0 forks source link

iOS Interview Preparation

iOS 면접 빈출 질문 답변을 정리합니다.

iOS

질문 답변모음
GCD #1
앱의 생명주기 #7
Copy On Write #17
App Thining #28

Swift Fundamentals

질문 답변모음
Closure와 escaping closure #11
Optional과 Optional의 내부 구조 #12
프로토콜 #9
Collection Type의 종류와 특징 #8
struct와 class의 차이 #3
이니셜라이져와 Convenience init #5
Generic #4
Extension에서 사용할 수 없는 프로퍼티 #19
Access Control의 필요성과 각 종류의 특징 #18
CaptureLists와 weak, unowned의 차이 #16
Enum의 Caselterable과 연관 값(Associated Values) #15

AutoLayouts

질문 답변모음

ARC

질문 답변모음
ARC의 동작원리 #6

Architecture

질문 답변모음
Singleton Pattern #2
SOLID #14
MVVM vs MVC #13
Delegate Pattern #10

Rx

질문 답변모음

Network

키워드 질문 답변모음
REST API 특징과 단점
가벼운 개념 정의
Over-Fetching/Under-Fetching
TCP vs UDP 프로토콜 특성에 따라 적합한 서비스
프로세스와 스레드 정의
메모리 관점에서의 정리
HTTP vs HTTPS 정의
SSL/TLS 관점에서 대칭키 암호화/비대칭키(공개키) 암호화
ATS

Database

키워드 질문 답변모음
데이터베이스 특징 정의
트랜잭션
ACID
정합성
무결성

운영체제

키워드 질문 답변모음
메모리 구조 코드
데이터
스택

발표 내용

AutoLayout
| 질문 | 답변모음 | |--|:--:| | 오토레이아웃을 코드로 작성하는 방법 | [2022.10.17 윤여진](https://alike-cucumber-a6f.notion.site/3-0b7818ae470846a79d371e0a0b9b89c0) | | `Storyboard`를 이용했을 때의 장단점 | [2022.10.17 이주영](https://alike-cucumber-a6f.notion.site/Storyboard-e160c249490a45019e804059f3dc9dec) | | `SafeArea` | [2022.10.17 홍석준](https://alike-cucumber-a6f.notion.site/Safe-Area-e5783c7ec4f645e8aa79426dc2b5663e) | | Left Constraint 와 Leading Constraint의 차이점 | [2022.10.17 홍석준](https://alike-cucumber-a6f.notion.site/Left-Leading-Constraint-e9f2db656be94de987f4c27f8e2082ee) | | hugging, resistance | [2022.10.19 이재용](https://alike-cucumber-a6f.notion.site/Hugging-Compression-Resistance-ca680c4230eb4390aab27a99bc533b63) | | Intrinsic Size | [2022.10.19 김도이](https://kimdee.notion.site/Intrinsic-Size-ce83224da43143ebad61be9a591221af) |
iOS
| 질문 | 답변모음 | |--|:--:| | `Bounds`와 `Frame`의 차이점 | [2022.10.19 윤여진](https://alike-cucumber-a6f.notion.site/Frame-Bound-4e5eac8d98504b6ca56e734c3012ec80) | | 앱이 시작할 때 main.c 에 있는 UIApplicationMain 함수에 의해서 생성되는 객체 | [2022.10.19 홍석준](https://alike-cucumber-a6f.notion.site/main-c-UIApplicationMain-4da9016fe3a64a25afbf354558a3072e) | | UIWindow 객체의 역할 | [2022.10.19 이재용](https://alike-cucumber-a6f.notion.site/UIWindow-0d730ce0e41846dd84a4f6c0615a118f) | | 실제 디바이스가 없을 경우 개발 환경에서 할 수 있는 것과 없는 것 | [2022.10.21 윤여진](https://alike-cucumber-a6f.notion.site/7ad3ceb3dea640af9f41c3a08a02d815) | | @Main | [2022.10.21 홍석준](https://alike-cucumber-a6f.notion.site/Main-2022-10-21-d7ba5d149f1743ca853711ef0a9d0683) | | App Bundle의 구조와 역할 | [2022.10.21 이주영](https://alike-cucumber-a6f.notion.site/App-Bundle-1d990e129a904f6482a030936eb9290f)| | UINavigationController 의 역할 | [2022.10.21 이재용](https://alike-cucumber-a6f.notion.site/UINavigationController-503999381f244e01b086865d09a6cce6) | | `NSOperationQueue`와 `GCD Queue`의 차이점 | [2022.10.21 김도이](https://kimdee.notion.site/NSOperationQueue-GCD-Queue-878028323d414304bc34c332a2d7872d) | | Global DispatchQueue의 `QoS`의 종류와 의미 | [2022.10.21 김도이](https://www.notion.so/kimdee/Global-DispatchQueue-QoS-3a480b3635774764be5147caa21550c8) | | GCD API 동작 방식과 필요성 | [2022.10.21 김도이](https://kimdee.notion.site/GCD-API-4676cc2622f844aa924bb747bceb1282) | | 앱의 콘텐츠,데이터를 저장하는 특별한 객체 | [2022.10.24 윤여진](https://alike-cucumber-a6f.notion.site/90be32e3d2534a6ca168a73d45fc8d9a) | | 앱이 foreground에 있을 때와 background에 있을 때 제약사항 | [2022.10.24 홍석준](https://alike-cucumber-a6f.notion.site/foreground-background-a7b2b0a37c614170bcd664ea29dfe052) | | 모든 View Controller 객체의 상위 클래스와 그 역할 | [2022.10.24 이주영](https://alike-cucumber-a6f.notion.site/View-Controller-b1158c9b8d89400eb1976ea3dd5465ac) | | Custom View | [2022.10.24 이주영](https://inframince.notion.site/Custom-View-fda91e544c7443eaacfe70f7f17e8e6a) | | TableView의 최소한 구현해야하는 Datasource Methods | [2022.10.24 이재용](https://alike-cucumber-a6f.notion.site/TableView-Cell-DataSource-d7debe86ba7742c8aabafefc80ee82c1) | | SceneDelegate에 대해 설명 | [2022.10.24 김도이](https://kimdee.notion.site/Scene-Delegate-1869c1a772e14cf7b4083e0091ef7aa6) | | UIApplication 객체의 컨트롤러 역할 | [2022.10.24 김도이](https://kimdee.notion.site/UIApplication-4d27bae5157448bbad057091ef9054f3) | | 앱 화면의 콘텐츠를 표시하는 로직과 관리를 담당하는 객체 | [2022.10.26 윤여진](https://alike-cucumber-a6f.notion.site/92c10f5aa23a42849a7baf5d759deb6e) | | AppDelegate Methods | [2022.10.26 홍석준](https://alike-cucumber-a6f.notion.site/AppDelegate-Methods-4dba2411a85b439cad08a0af9f8d100b) | | UIView 에서 Layer 객체 | [2022.10.26 이주영](https://inframince.notion.site/UIView-Layer-91285f11128c4fd995e1315015b9a2a1) | | 하나의 View Controller 코드에서 여러 TableView Controller 구현법 | [2022.10.26 이재용](https://alike-cucumber-a6f.notion.site/View-Controller-TableView-Controller-94f859e78daa400aa66ca588fb792eab) | | App thinning에 대해 설명하시오. | [2022.10.28 윤여진](https://alike-cucumber-a6f.notion.site/App-thinning-a39215b13233401f8d32cf4514f2569b) | | 앱이 In-Active 상태가 되는 시나리오 | [2022.10.28 홍석준](https://alike-cucumber-a6f.notion.site/In-Active-877c508fed4f47c3bcf59512fca20d03) | | View 객체에 대해 설명 | [2022.10.28 이주영](https://alike-cucumber-a6f.notion.site/View-Controller-b1158c9b8d89400eb1976ea3dd5465ac) | | TableView와 CollectionView의 차이점 | [2022.10.28 이재용](https://alike-cucumber-a6f.notion.site/TableView-CollectionView-8db6928488e94eec995c1fb0de9757ac) | | App의 Not running, Inactive, Active, Background, Suspended | [2022.10.28 김도이](https://kimdee.notion.site/App-Not-running-Inactive-Active-Background-Suspended-1cf2e42f8aff44e880a325dea9164974) | | ViewController 생명주기 | [2022.10.31 윤여진](https://alike-cucumber-a6f.notion.site/ViewController-435437361bcd47ff8be865e4c4e49090) | | StackView의 장점과 단점 | [2022.10.31 홍석준](https://alike-cucumber-a6f.notion.site/stackView-a343fe8fa1fe43e5ac067a67c7ae342d) | | prepareForReuse | [2022.10.31 이재용](https://alike-cucumber-a6f.notion.site/prepareForReuse-60ae3f5a78b74d3ba216670505752d18) | | UIKit Framework | [2022.11.02 윤여진](https://alike-cucumber-a6f.notion.site/UIKit-FrameWork-7ca172bbbfad4a068793569d4a7f19a5) | | UIKit 클래스들을 다룰 때 꼭 처리해야하는 애플리케이션 쓰레드 이름 | [2022.11.02 이주영](https://alike-cucumber-a6f.notion.site/UIKit-bd4f876322454036b8e5ab4bc1c97de2) | | Delegate 설명, retain 유무 | [2022.11.02 이재용](https://alike-cucumber-a6f.notion.site/Delegate-retain-8b04f850b5b2400baa7083a2072445e1) | | FoundationKit Framework | [2022.11.04 윤여진](https://alike-cucumber-a6f.notion.site/Foundation-Kit-9a91c65997514397bb9dd507855e8bf7) |