IOS (17) 썸네일형 리스트형 UMC 3기 iOS 파트 활동 회고하기 (+데모데이 우수상까지 🏆) 2022.09~2023.02 UMC 3기 목차 1. UMC iOS 파트장이 되다 2. iOS 세미나와 스터디 진행하기 3. 마스터 코스: 프로젝트 개발하기 4. 기술적 이슈들 5. 데모데이에 참여하다! 6. 책갈피를 소개합니다 7. 후기 1. UMC iOS 파트장이 되다 원래 있던 IT 연합동아리인 MakeUs가 UMC와 CMC로 분리되었다. UMC는 대학 별로 스터디를 운영하고, 워크북이나 프로젝트는 대학교를 합쳐서 지부를 생성해서 관리하는 시스템이다. 내가 UMC를 하게 된 건 학교 별로 운영되기 때문에 개발자들과 좀 더 자주 만나서 스터디와 네트워킹을 진행할 수 있다는 장점 때문이었고 지원해서 경희대 UMC에서 iOS 파트장이 되었다. 사실 면접이 진짜 5분만에 끝났고 기술 질문이 하나도 없었기 때.. UIKit + SpriteKit으로 iOS 모바일 레이블링 게임 만들기 2022/04/20~2022/11/25 [주 ZOO 컴퍼니] 프로젝트 목차 1. (주) ZOO 컴퍼니 2. 컨셉 기획과 게임 디자인 3. 개발 과정 4. 각종 크고 작은 이슈들 5. 게임 소개 6. 후기 1. (주) ZOO 컴퍼니 4월 초에 휴학을 하게 되면서 생각만 했던 프로젝트를 직접 해볼 수 있는 시간적 여유가 생기게 되었다. 직접 팀원들을 모아서 기획팀 2명, 디자인팀 2명, 개발은 필자 한명으로 구성된 총 5명의 소규모 프로젝트 팀을 만들었다. 그런데 원래 기획은 모종의 이유로 엎어지게 되었고 이대로면 어렵게 모인 팀원들이 흩어지게 되는 일이 생기게 되었다. 그래서 예전부터 장난식으로 친구와 말을 나누었던 레이블링 게임을 만드는건 어떤지 회의를 했고, 팀원들 모두가 재밌을 것 같다고 하여 함께 .. [iOS] coreML 사용하여 multi class classification 모델 생성 및 프로젝트 반입하기 프로젝트를 진행하던 중 multi class classification을 해야할 일이 생겼다. 프로젝트가 아직 진행 중이라 다 말할 수는 없지만 사용자의 선택지에 따라 선택에 맞는 결과를 분류하여 class 중 하나를 보여줘야 하는 것이 목표다. 기계학습에서 배운 지식을 활용하면 multi class classification에는 여러 가지 모델을 사용할 수 있다. logistic regression, MLP, SVM 등등이 있다. 그런데 apple에서는 coreML이라는 것을 제공하는데 이 안에 tabular 데이터를 classification 해주는 라이브러리가 있다. 사실 공개된 swift ML 라이브러리도 많고, 직접 구현하는 것도 재미가 있지만 이미 있는 걸 최대한 활용하는 것이 개발자의 덕목(.. [iOS] Apple Developer Document: UICollectionView 인턴하면서 UIcollectionView 다루는 일이 있어서 그냥 공식 문서를 정독하기로 했다. 읽어서 직접 번역한 자료이기 때문에 이해하기 쉽게 의역한 부분이 있다. https://developer.apple.com/documentation/uikit/uicollectionview Apple Developer Documentation developer.apple.com UICollectionView 커스텀 가능한 레이아웃을 사용하여 정렬된 데이터 아이템들을 관리하고 나타내는 객체 Overview UI에 collection view를 추가할 때, 개발자의 앱에서 주요한 일은 collection view와 관련된 데이터를 관리하는 것이다. Collection view는 data source 객체에서 데이터.. [iOS] SnapKit을 사용하여 AutoLayout constraint 설정하기 AutoLayout을 사용하여 쉽게 view 객체들 간의 constraint를 설정하는 라이브러리를 알아보자 실제로 인턴 다니는 회사에서 사용하는 라이브러리인데, 처음 접해보고 진짜 너무 편하고 좋아서 사이드 프로젝트에도 적용하고 있음.. 1. SnapKit 공식 문서 snapkit은 cocoapod을 통해 설치 가능하다. GitHub - SnapKit/SnapKit: A Swift Autolayout DSL for iOS & OS X A Swift Autolayout DSL for iOS & OS X. Contribute to SnapKit/SnapKit development by creating an account on GitHub. github.com 깃허브를 방문하면 자세한 정보들을 얻을 수 있고.. [iOS] UIKit 알림창 UIAlertController customizing 하기 UIKit에서 알림창을 띄우는 객체는 UIAlertController이다. 경고창과 액션 시트 두 가지를 모두 구현 가능하며 다음과 같이 구현할 수 있다. 1. Alert 구현 let alert = UIAlertController(title: "Alert", message: "Alert창 입니다.", preferredStyle: .alert) alert.addAction(UIAlertAction(title: "OK", style: .default, handler: nil)) self.present(alert, animated: true); 위와 같이 알림창의 버튼은 UIAlertAction 객체이며 이 객체를 addAction 메소드를 사용하여 UIAlertController 객체에 추가해줘야 한다. 2.. [iOS] GCD의 기본: DispatchQueue의 종류와 특성 지난 번에는 GCD가 무엇인지 기본을 알아보았다. [iOS] GCD의 기본: sync, async, serial, concurrent ios multi-threading ios에서 멀티 스레딩을 지원하는 방식은 Thread, OperationQueue, GCD 이다. 이 중에서 Thread는 복잡하고 critical section을 막기 위한 lock, semaphore 등의 동기화 기법을 개발자가 직접.. josushell.tistory.com 이번에는 ios에서 제공하는 queue의 종류와 각각의 특성에 대해 알아보자. 위의 포스팅을 읽고 오는 것은 많은 도움이 된다. DispatchQueue 앱의 main thread 또는 background thread에서 serial, concurrent 하게 .. [iOS] GCD의 기본: sync, async, serial, concurrent ios multi-threading ios에서 멀티 스레딩을 지원하는 방식은 Thread, OperationQueue, GCD 이다. 이 중에서 Thread는 복잡하고 critical section을 막기 위한 lock, semaphore 등의 동기화 기법을 개발자가 직접 관리해야 한다는 어려움이 있다. 또한 OperationQueue는 무겁고 필요한 코드가 많다는 단점이 있다. 이렇게 멀티 스레딩의 어려움을 운영체제 레벨로 넘겨서 개발자는 그저 멀티 스레딩을 하고자 하는 "의지"만 보여주면 되는 방식이 있다. 그것이 바로 Grand Centeral Dispatch, GCD 이다. GCD(Grand Central Dispatch)라고도 하는 Dispatch에는 macOS, iOS, watchOS 및 tv.. 이전 1 2 3 다음