일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘
- WidgetTree
- 청년취업사관학교후기
- GIT
- ImageSlider
- UIKit
- Masil
- flutter #state # stateful #stateless
- 프로그래머스
- 스위프트
- UserDefault
- 조건문
- 백준
- Swift
- 스터디
- 오늘의 색상
- 코딩테스트
- xcode
- colorofdays
- IOS
- process
- CS193p
- SwiftUI
- collectionView
- xml
- flutter
- 프로젝트회고
- MVVM
- stanford
- 새싹후기
- Today
- Total
목록전체 글 (105)
개발을 시작하는 이야기
얼마 전부터 집에서 사용하는 아이맥의 상태가 영 좋지 않았다. 아무런 프로그램을 켜지 않은 상황에서도 RunCat의 고양이가 미친 듯이 질주하고 있었다. 아마도 M1이 처음 나왔을 때 아이맥을 사용하면서 설치했던 것들이 꼬인 상태로 오래 두어서 그리 된 것 같은 느낌이었는데, 그래서 큰맘 먹고 아이맥을 초기화해보기로 결심했다. 초기화 방법은 어렵지 않았는데, 사용하면서 중간에 애플 계정의 이메일을 변경했던적이 있어 자꾸만 나의 기기 찾기에서 이메일 오류가 발생했는데, 계정 정보에서 설정을 한번 더 변경을 해서 해결을 했다. 그렇게 백업을 해두고 초기화를 시켰는데 백업을 했다고 생각했던 메모리 카드가 덜 꼽혀서 엄한 곳에 파일이 저장되어 있었고, 초기화하면서 그렇게 날아가 버렸다. 파일에 크게 중요한건 없..

대한민국 여행의 모든것 대한민국 관광공사와, 문화재청의 데이터를 바탕으로 대한민국 여행에 필요한 정보들을 제공해 드립니다. 사용 기술 및 라이브러리 SwiftUI, MVVM, MapKit, Alamofire, Firebase Analytics, Crashlytics, Cloud Messaging 구현한 기능 SwiftUI를 활용하여 프로젝트 진행 MVVM 패턴 적용 MapKit API를 활용하여 지정된 아이템 검색 MapKit의 CoreLocation을 활용하여 주변의 관광지 포인트를 확인 SwiftXMLParser를 활용하여 XML 데이터를 파싱하여 활용 Firebase를 활용하여 Analytics와 Crashlytics를 활용 회고 및 이슈 Open Api의 고르지 않은 데이터 공공기관에서 관리하는..

Flutter 프롭젝트를 진행하다 보면 곳곳에서 BuildContext를 사용한다. 평상시에 사용할 때는 그저 위젯에 상태를 전달하는 방식으로 사용하고 있었다. Provider를 사용하거나, Widget을 구분해서 사용할 때는 별다른 무리가 없었다. 하지만 Localization을 사용할 때 약간의 문제가 발생 헸다. flutter_localizations 라이브러리를 사용해서 다국어를 처리하고 있었는데, 문제는 다국어 요청을 할 때, BuildContext를 보내주어야 한다는 것이다. 다만 이 context가 @override된 Widget 내부에서는 BuildContext를 받아서 사용할 수 있지만, 만일 값이 Widget 외부에 위치하고 있다면 BuildContext가 전달하는 방식을 알 수 없었다..
Futter를 하면서 가장 먼저 맞이한 신세계중 하나가 StatelessWidget 그리고 StatefulWidget 이였다. 이름 그대로 상태(State)가 있고 없는 것을 클래스를 생성하는 단계에서 구분해서 생성해주어야 한다. 만일 Stateless로 만들었는데, 상태 변화가 필요하다고 하면 몹시 귀찮게도 Stateful로 변경을 해주어야만 한다. StatelessWidget의 경에는 상태가 변함 없는 화면을 구현하는 경우에 사용하게 된다. import 'package:flutter/material.dart'; class FlutterTest extends StatelessWidget { final Color color; final String text; const FlutterTest(this.co..
SeSac x Memolease iOS Conference에 참석하고 왔더니 블로그 작성에 의욕이 다시 좀 생겨나서 남겨보는 글 아직 iOS 개발을 시작한지 1년이 조금 넘었는데, 어쩌다 보니 Flutter를 하게 되었다. 언젠가는 Flutter를 해봐야 겠다 마음은 먹고 있었지만, 이렇게 빨리 하게 될거라곤 생각은 못했다. 생각보다 자료가 많지도 않고, 급변하고 있는 Flutter라서 당장의 것들을 해치우기에 정신이 없지만, 그래도 틈틈히 글을 좀 남겨봐야겠다. +퇴근하고 개인 프로젝트를 스유로 하고 있는데 두개를 동시에 하니까 머리가 뽀사질것 같아서 쉼이 필요할때 글을 써봐야지 내가 생각하는 Flutter의 장단점 - 뭐 가장 큰 장점은 한번에 최대 세개의 플랫품을 개발할 수 있다는게 무엇보다 가장..

오랜만에 티스토리 블로그에 글을 남기는 게 한참 지난 수강후기라서 민망할 뿐이다. 요즘엔 SwiftUI, 그리고 TCA 디자인 패턴을 공부하고 있는데, Notion을 활용해서 정리하고 있다 보니 아무래도 블로그가 손이 잘 안 갔다. 나중에 Notion에 정리가 끝나면 페이지 전체를 올려둘 예정인데 아직은 한참 멀었다. 아무튼 오늘은 늦은 나이게 개발자로 성공적인 전환을 도와준 SeSAC 수강 후기를 남겨본다. 일단 나는 서른다섯 이라는 늦은 나이에 수강을 시작했다. 우리 기수에선 내가 제일 나이가 많았고, 아마도 멘토님 두 분 보다도 많았을 것이다. 나는 원래 개발이랑은 전혀 관련이 없는 직종이었는데 우연한 기회에 웹 프런트 앤드를 하나씩 공부해가면서 흥미를 갖던 도중에 SeSAC 과정을 알게 되었다. ..

개인프로젝트를 진행하는데 아무리 커밋을 해도 잔디가 안심어지길래 뭐가 꼬인걸까 싶어서 Xcode부터 의심했었는데 문제는 깃이였다. 역시나 깃은 까탈스러워 PC의 깃에 저장된 이메일과 깃헙의 이메일이 달라서 생긴 오류였다. Terminal을 열어서 git config --list 입력하면 git에 저장된 설정이 모두 나온다. 이중에서 user.name, user.email이 github와 동일한지 여부를 확인해주면 된다. 변경은 git config --global user.email email@sample.com git config --global user.name userName 이렇게 변경해주면 끝. 예전 코로나로 격리하면서 재택근무할때 업무용 git으로 돌려놓고 복구하는것을 잊어서 생긴 불상사였다. ..

8가지 색상으로 하루를 기록합니다. 하루하루가 모여 일년의 색상이 모이게 됩니다. 최근 3일까지만 기록되니 잊지 마세요! 기억은 추억이 되어 변질되기 쉽거든요! 사용 기술 및 라이브러리 Swift, Codebase, AutoLayout, MVVM Observable, UserNotifications Snapkit, Then, RealmSwift Github, Figma, Notion 구현한 기능 MVVM패턴을 활용한 Codebase 작업 Realm을 활용한 데이터 관리 BottomSheet을 활용한 하단 뷰 관리 회고 및 이슈 프로젝트의 시작 프로젝트를 계획했던건 인스타그램에서 한 개시물을 봤을때였다. 세로로 구성된 화면은 휴대폰에 딱이였고, '하루하루 기록을 모은다'는 아이디어도 괜찮아보였다. 몇년전 ..

들어가기 지금 다니고있는 회사의 앱은 Legacy build system을 사용하고 있다. 나도 인계 받은대로 설정해서 사용하고 있지만 계속해서 Deprecated 경고가 뜨기도 하고, SPM을 사용할수도 없어서, 이번 기회에 앱을 손보면서 New Builde System으로 변경하려고 하는데 두개의 차이가 무엇이고 왜 Deprecated 되는건지 설명하고 설득하기 위해 작성하는 글. New Build System History Xcode 9, WWDC 2017에서 발표했다. New in Xcode 9 – Preview of a new build system written in Swift. Currently, This system is optional but it will become the defaul..
알고리즘 스터디를 진행하면서 문제는 어떻게 풀어도 설명할수가 없어서 이론도 함께 하나씩 정리해 가려고 작성하는글 퀵정렬 알고리즘의 개념 퀵 정렬은 불안정 정렬에 속하며, 다른 원소와의 비교만으로 정렬을 수행하는 비교 정렬에 속한다. 분할 정복 알고리즘의 하나로, 평균적으로 매우 빠른 수행 속도를 자랑하는 정렬 방법이다. 합병 정렬과 달리 퀵 정렬은 리스트를 비균등하게 분할한다. 진행 과정 리스트 안에 있는 한 요소(피벗 pivot)를 선택한다. 피벗을 중심으로 피벗보다 작은 요소는 모두 피벗의 왼쪽으로, 큰 요소는 오른쪽으로 옮겨진다. 피벗을 제외한 왼쪽 리스트와 오른쪽 리스트를 다시 정리한다. 부분 리스트들이 더 이상 분할이 불가능 할 때까지 반복한다. 퀵 정렬 Swift 예제 코드 func divid..