# 10월 5일 퀴즈
- 인당 7문제
- OX 2문제
- 객관식 4문제
- 주관식 1문제
## MINT
1. Swift는 Open Source이다.
- 답: O
- 해설: WWDC 2015 Swift가 Open Source로 공개되었다.
2. 하나의 앱은 하나의 Scene만 가진다.
- 답: X
- 해설: 여러개의 Scene을 가질 수 있다.
[공식문서](https://developer.apple.com/documentation/uikit/app_and_environment/scenes)
3. LLDB에 대하여 틀린 설명은?
1) LLVM의 Debugger Component를 개발하는 서브 프로젝트
2) 기계어에 가까운 영역까지 디버깅 가능하다
3) 현재 Xcode의 기본 디버거로 내장되어 있다
4) Objective-C, Swift만 지원한다.
- 정답: 4번
- 해설: C, C++도 지원한다.
4. 코코아터치 프레임워크에서 Swift 앱의 Life Cycle을 시작하는 함수는?
1) main
2) UIApplicationMain
3) UIApplication
4) AppDelegate
- 정답: 2번
- 해설: UIApplicationMain함수는 코코아 터치 프레임워크에서 앱의 라이프 사이클을 시작하는 함수로 UIApplication 객체의 인스턴스를 만들고, 해당 객체의 앱으로서 기능하기 위한 기반을 마련합니다. 이 과정을 앱 로딩 프로세스라고 한다.
5. 앱 상태를 표현할 때 "실행되지 않거나 시스템에 의해 종료된 상태"는?
1) Inactive
2) UnHappy
3) Not Running
4) Suspended
- 정답: 3번
- 해설:
Inactive : 실행 중이지만 이벤트를 받고있지 않은 상태.
Active : 어플리케이션이 실질적으로 활동하고 있는 상태.
Background : 백그라운드 상태에서 실질적인 동작을 하고 있는 상태.
suspended : 백그라운드 상태에서 활동을 멈춘 상태.
6. UICollectionViewCompositionalLayout 구성 요소가 아닌 것은?
1) Section
2) Group
3) Item
4) Cell
- 정답: 4번
- 해설: 
7. Apple 에서 진행한 Compiler에 필요한 Toolchain 개발 프로젝트란?(대문자만)
- 정답: LLVM
## Karen
1. Keychain은 iOS 및 macOS 애플리케이션에서 무엇을 저장하기 위한 목적으로 사용되나요?
❌ 1️⃣ 사용자의 앱 정보
❌ 2️⃣ 암호화되지 않은 텍스트 파일
✅ 3️⃣ 세션 토큰 및 사용자의 개인 정보
❌ 4️⃣ 앱의 코드와 리소스
- 정답 3번
- 해설 : 사용자의 민감한 정보인 세션 토큰, 사용자의 개인정보 및 비밀번호와 같은 항목을 안전하게 저장하기 위한 목적으로 사용
2. 다음 중 동기와 비동기의 차이점을 올바르게 설명한 것을 고르세요.
❌ 1️⃣ 동기는 작업이 순서대로 실행되어 빠른 응답을 제공, 비동기는 작업이 병렬로 실행되므로 느린 응답을 제공
❌ 2️⃣ 동기는 작업이 병렬로 실행되므로 빠른 응답을 제공, 비동기는 작업이 순서대로 실행되므로 느린 응답을 제공
✅ 3️⃣ 동기는 작업이 순서대로 실행되므로 느린 응답을 제공, 비동기는 작업이 병렬로 실행되므로 빠른 응답을 제공
❌ 4️⃣ 동기와 비동기는 실행속도와 관련이 없다.
❌ 1️⃣ 동기 : 순서대로 실행, 빠른 응답,
비동기 : 병렬로 실행, 느린 응답
❌ 2️⃣ 동기 : 병렬로 실행, 빠른 응답
비동기 : 순서대로 실행, 느린 응답
✅ 3️⃣ 동기: 순서대로 실행, 느린 응답
비동기 : 병렬로 실행, 빠른 응답
❌ 4️⃣ 동기와 비동기는 실행속도와 관련이 없다.
- 정답 : 3번
- 해설 : 동기는 작업이 순서대로 실행되므로 느린 응답을 제공하고 비동기는 작업이 병렬로 실행되므로 빠른 응답을 제공함
3. 하나의 작업(연산)을 여러 개의 코어가 나눠서 하는 것을 동시성프로그래밍이라고 한다.
- 정답 : X (병렬프로그래밍)
- 해설 : 동시성 프로그래밍과 헷갈릴 수 있는데 여러개의 코어가 하나의 작업을 하는것이므로 병렬 프로그래밍임
4. URLSession의 주요 역할은 무엇입니까?
❌ 1️⃣ 이미지 다운로드
❌ 2️⃣ 데이터 캐싱
✅ 3️⃣ 네트워크 요청 및 응답처리
❌ 4️⃣ 로컬 데이터 베이스 관리
- 정답 : 3번
- 네트워크 요청을 생성하고 보내며 서버로부터 응답 데이터를 받아오고 처리
5. URLSession을 사용하여클라이언트에서 서버로 데이터를 전송할때 사용하는 HTTP 명령어는 GET이다.
- 정답 : X
- 해설 : HTTP 메서드 중 POST는 클라이언트에서 서버로 데이터를 보내는데 사용함, 주로 새로운 데이터를 생성하거나 기존 데이터를 변경하는데 사용, GET는 데이터를 서버로 요청하는데 사용함
6. URLSession의 메서드 중 HTTP GET 요청을 보내는 메서드는 무엇인가요?
✅ 1️⃣ dataTask(with:completionHandler:)
❌ 2️⃣ downloadTask(with:completionHandler:)
❌ 3️⃣ uploadTask(with:from:completionHandler:)
❌ 4️⃣ getTask(with:completionHandler:)
- 정답 : 1번
- 해설 : 1번 : 데이터를 가져오는 GET요청을 처리하며, 완료 핸들러를 통해 요청의 응답과 데이터를 처리 가능, 2번은 파일을 다운로드하는 요청, 3번은 파일을 업로드하는 요청, 4번은 URLSession에 없는 메서드임
7. CoreData는 어떤 용도로 사용되는 기술인가요?
❌ 1️⃣ 데이터 암호화
✅ 2️⃣ 데이터 저장 및 관리
❌ 3️⃣ 사용자 인증
❌ 4️⃣ 그래픽 디자인
- 정답 : 2번
- 해설 : 데이터를 저장하고 관리하기 위한 프레임 워크임, 데이터베이스와 유사한 방식으로 데이터를 저장하고 검색할 수 있으며 주로 앱 내에서 구조화된 데이터를 영구적으로 저장하고 관리하는데 사용됨
8. CoreData는 ____를 통해 데이터가 저장될 구조를 정의한다.
- 정답 : Entity
- 해설 : 다른 DB방식은 일반적으로 테이블을 통해 데이터 저장 구조를 정의하지만 coreData는 entity를 통해 구조를 정의한다.
- https://ios-development.tistory.com/89
9. 보너스 문제로 '야곰은 천재다 이런거 내볼까요?ㅋㅋ'
## Mary
1. 다음 밑줄에 들어가는 용어는?
- Swift는 앱의 메모리 사용량을 추적하고 관리하기 위해 _ 를 사용합니다.
- _ 는 인스턴스가 더이상 필요치 않을 때 자동으로 클래스 인스턴스에 의해 사용된 메모리를 할당 해제 합니다.
- 정답: 자동 참조 카운팅, 자동참조카운팅, ARC, arc
- 참고: https://docs.swift.org/swift-book/documentation/the-swift-programming-language/automaticreferencecounting
2. 다음 코드의 출력으로 알맞은 것은?

1. 0 0
2. 10 0
3. 0 10
4. 10 10
- 정답: 4번 10 10
- 해설: Closure는 참조타입인 Class를 캡쳐했기 때문에 Closure가 생성된 시점의 x의 값인 0이 아닌, 변경된 값 10을 출력합니다. 그리고 y는 외부에서 캡쳐되지 않았으므로 클로저가 호출된 시점의 y의 값인 10을 출력합니다.
- 참고: https://docs.swift.org/swift-book/documentation/the-swift-programming-language/expressions#Capture-Lists
3. 약한 참조(Weak reference)를 사용하는 객체는 항상 optional 타입이어야 합니다.
- 정답: O
- 참고: https://bbiguduk.gitbook.io/swift/language-guide-1/automatic-reference-counting#resolving-strong-reference-cycles-between-class-instances
4. dataTask(with:completionHandler:) 메서드의 completionHandler는 task를 만든 queue에서 호출됩니다.
- 정답: X
- 해설: completionHandler는 task를 만든 queue가 아닌 새로운 GCD queue에서 호출됩니다. 예를들어 task는 main에서 만들었다고 하더라도, completionHandler안에서 UI를 업데이트하고싶다면 `DispatchQueue.main.async`와 같이 명시적으로 main queue에서 호출되도록 만들어야합니다.
- 참고: https://developer.apple.com/documentation/foundation/url_loading_system/fetching_website_data_into_memory#2919375
5. dataTask(with:completionHandler:) 메서드의 completionHandler가 받는 매개변수 중 하나로, 프로토콜 및 URL 체계와 무관하게 URL 로드 요청에 대한 응답과 관련된 메타데이터의 타입은 `HTTPURLResponse` 이다.
- 정답: X
- 해설: 해당 설명은 `URLResponse`에 대한 설명입니다. `HTTPURLResponse`는 `URLResponse`의 subclass로, HTTP 또는 HTTPS 요청을 하는 경우 반환되는 타입입니다. HTTP 헤더 및 상태 코드와 메타데이터를 확인하려면 코드 내에서 명시적으로 타입캐스팅을 해야합니다.
6. SOLID원칙은 모든 _ 에 사용되는 원칙이다.
1. 명령형 프로그래밍
2. 프로토콜 지향 프로그래밍
3. 객체 지향 프로그래밍
4. 함수형 프로그래밍
- 정답: 3
7. 다음 SOLID 설명 중 옳지 않은 것을 고르세요.
1. SRP: 클래스나 함수를 설계할 때, 각 단위들은 단 하나의 책임을 가져야한다.
2. OCP: 확장에는 열려있어야 하지만, 변경에는 닫혀있어야 한다.
3. LSP: 자식 클래스 타입에 부모 클래스의 인스턴스를 넣어도 똑같이 동작해야한다.
(4. ISP: 사용하지 않는 인터페이스에 의존해서는 안된다.)
5. DIP: 상위 모듈이 하위 모듈에 의존하면 안되고 두 모듈 모두 추상화에 의존해야한다.
- 정답: 3
- 해설: LSP는 **부모** 클래스 타입에 **자식** 클래스의 인스턴스를 넣어도 똑같이 동작해야합니다.
7. SOLID의 LSP는 자식 클래스 타입에 부모 클래스의 인스턴스를 넣어도 똑같이 동작해야한다
- 정답: X
- 해설: LSP는 **부모** 클래스 타입에 **자식** 클래스의 인스턴스를 넣어도 똑같이 동작해야합니다.
3. 힣힣힣힣 저 소문자 e라서 사실 지금 약간 두근거려요 울렁울렁 맞아요ㅋㅋㅋㅋㅋㅋㅋ저 추가신청받을 때 신청했어요ㅋㅋㅋㅋ사람 줄은거 보고... 어..? 괜찮을수도...? 맞아요맞아요 아 시온 오 민섭 8명 좋다좋다 민트는 그 9기 엠티도 혹시 가시나요??? 오오오오 고럼요고럼요 ㅋㅋㅋㅋㅋㅋ맞아요ㅋㅋㅋㅋㅋㅋ 술먹고...그......깨질까봐...ㅎㅎ.....ㅎㅎㅎㅎ.. 컵은 소듕하니까... 그...일단 다 모르겠고...11월에 라면만 먹기는 해야할 것 같아요...! ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 슬픈 백수... 진짜ㅋㅋㅋㅋㅋㅋㅋㅋㅋ그니까요ㅋㅋㅋㅋ ㅋㅋㅋㅋㅋㅋ저도 엄마가 취업에 너무 부담갖지말고 이상한곳 가지말고 천천히 준비해서 좋은곳 들어가라고 했는데 결국은 그냥 제가 돈이 없어서 일찍 해야할듯싶어요 하하하하하하하하 용돈을 주시지도 않을거면서...또록... ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 저 진짜 이렇게 살다가는 12월쯤 용돈달라고 해야할 판이에여ㅇㅅㅇ 31살에 용돈이라니 용돈이라니!!!!!!!!!!!!!!!!!!!!! 아 30인가...29인가...?... 잘몰라요... ㅋㅋㅋㅋㅋㅋ그랬던것같아요 아!움!아!ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 그...제가 빠른이라 친구들은 31 만으로 30 저는 만 29
4. ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ히히히히 이렇게 만나다니!!! 운명...?! 저도 퀴즈 너무 어려워서 하기 싫어욬ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ되게 습관적으로 엔터칩니닼ㅋㅋㅋㅋㅋㅋㅋ 긁적 저 오늘오늘 포트폴리오 만들어봤는데 엄청....한게 없어요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 할 줄 아는게 없는 그게 나야~~ 뼈부터가 없어서 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 리펙토링 지옥... 저 지금 보는데 그 은행창구 매니저도 다시 만들어야 하고 그 뭐죠 아 박스오피스!! 그거 하나도 안했구 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ중간이 텅 빈 아앜ㅋㅋㅋㅋㅋㅋㅋㅋㅋ저도 오늘 처음 해봤는데 그 뭐더라 계산기, 주스메이커, 만국박람회, 일기장 이렇게 4개만 넣을 수 있었어욬ㅋㅋㅋㅋㅋㅋㅋㅋ ㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜ 저두욬ㅋㅋㅋㅋㅋㅋㅋ어제까지 열심히 밖에 나돌았어욬ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 멀미 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 차만 한....10시간 탄 것 같아요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 저희집이 큰집이라 다들 저희집에 모이시는데 다같이 다른 지역 드라이브 가자 -> 명절 드라이브는 지옥 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 집안에만 있어야 했다....맞아욬ㅋㅋㅋㅋㅋㅋㅋㅋ근데 웃긴게 경치는 또 너무 좋아서 다들 만족 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 고흥 갔다왔어요! 고흥 어떤 해변 가고 막 그랬어요 모래사장에서 강ㄹ아지들하고 뛰어서 강아지가 신나서 바다로 뛰어들려해서 다같이 잡고 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ그래서 강아지가 오늘 완전 기절했어요 아직도 자고있는ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ메리는 다른 지역 다녀오셨나요?!ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ아앜ㅋㅋㅋㅋㅋㅋㅋㅋ본가가 옆인게 진짜 편해요 아앜ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ친구들이랑 놀으셨나요?! ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 아앜ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 저도 메리랑 술 먹고 싶어요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ아싸 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ저 사실 내일 친구들이랑 만나서 술 먹기로 했어요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋ엠티!!! 메리 전체엠티 오세요?!?! 꺄아아아아아!!!!! 너무 좋아요!!! 완전완전 기대중입니다 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 저도 완전 소문자...그래도 사람들 한 50명 정도 되는 것 같아서 80명 보단 낫다...하는 중입니다....ㅋㅋㅋㅋㅋㅋ그러면 웨일 민트 메리 훈 망고 저스버그 시온 이렇게 아 민섭까지 8명?!ㅋㅋㅋㅋㅋㅋ 네ㅔㅔ 거기도 갑니다ㅏㅏ 메리 수료식은 오시죠??? 히히 근데 컵을 아 짐 때문에 본가로 받으시는 건가요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋ 좋은 생각입니다... 저도 본가로 보내야하나 고민중.. ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 저희 10월에 살아있을 수 있겠죠? 수료식에 엠티에 ㅋㅋㅋㅋㅋㅋ아앜ㅋㅋㅋㅋㅋㅋㅋㅋㅋ저도 돈을 너무 많이 썼어요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 이제 텅장입니다.. 알바해야할까봐요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 엄마가 알바하지 말고 취업하라는데 엄마 나빠요 ㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜ 우와 부러워요!! ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 6야곰 660만원 저는 용돈을 받아서 할 말이 없습니다 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 이미 받는 자... 메리 94쟈나여 ㅋㅋㅋㅋㅋㅋㅋㅋㅋ 만으로는 29인가요? 아닠ㅋㅋㅋㅋㅋ메리 왴ㅋㅋㅋㅋㅋㅋㅋ본인나잌ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ뭔가 웃겨욬ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ아 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ빠른이면 인정이죠ㅋㅋㅋㅋㅋㅋㅋㅋ 저희 사촌오빠가 빠른
95인데 본인 내킬때는 29살이고 안 내킬때는 30살이고ㅋㅋㅋㅋ왜 내려오셨죠?ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ이거 남겨놓으면 카렌이 보고 놀라실것같아욬ㅋㅋㅋㅋㅋㅋㅋㅋㅋ지우지 말까요?ㅋㅋㅋㅋㅋㅋㅋㅋ 어머 이여자들~ 하실 것 같아요 ㅋㅋㅋㅋㅋㅋㅋㅋ후 퀴즈 내일까지 다 내는 게 목표입니다.(언제나 목표는 거창하다) ㅋㅋㅋㅋㅋㅋ제 목표는 이 핵엠디 만든날까지 엿....ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ1시간 반 이면 충분하죠 달려보겠습니다ㅏㅏㅏㅏㅏㅏㅏ!!그리고 야식을 먹는 거에요 야식 ... 컵라면 아앜ㅋㅋㅋㅋㅋㅋ그럼 저는 포카칩 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ먹으면서 파이팅해보자요!!! 파이티이잉 즐거워요 메리랑 대화 ㅋㅋㅋㅋㅋㅋ 5문제.....가...가...가....가능할까요?ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ가능가능!!!!!!!!
가능!!!!!!!!!!!!!!!!!!!!!!!
헿 그것은 국룰입니다ㅇㅅㅇ ㅋㅋㅋㅋㅋㅋㅋ위에 너무 길어져서ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ ㅋㅋㅋㅋㅋ카렌 화들짝ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ저는 사실...오늘까지가 목표였습..니다........1시간 반...남았으니... ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 오우 최고다
저 그럼 일단 뻥이요 부터 뜯을게요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ좋아요좋아요 민트도 오늘내에 5문제는 냅시댜 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ가...가... 가능가능 !!!! 지켜보겠습니다 민트ㅎㅎㅎㅎㅎㅎㅎㅎ ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ집중해서 고고해봅시댱 12시까지!!!!!!빠이탱!!!!
!! 호달달달 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
응?????😳😲😯😮😵😵💫