분류 전체보기 82

[Swift] Class와 Struct 무엇을 써야 할까요? (Class VS Struct)

서론: 데이터는 Class로 설계하는 것이 정석인가?- 저는 예전에는 JAVA를 즐겨 사용했기 때문에 OOP에 익숙해져있었습니다. - Swift로 개발을 할 때에도 대부분 Class를 사용해서 구현을 했습니다. 데이터를 설계할 때 정석처럼 느껴져왔기 때문이죠. (상속을 통한 모듈화)- 하지만 최근 Class보다 Struct를 더 사용해야한다는 것을 알게 되었고, 더 나아가 Functional Programing(FP), Reactive까지 알게되었습니다. 본론: 그럼 Class 와 Struct 는 뭐가 다를까?- Struct는 Class 보다 비교적 작고 비교가능합니다. ( = Value Type 입니다.)이러한 특징은 여러 참조가 같은 인스턴스를 가르키고 있는 Class보다 더 안전합니다.특히, Str..

Programer/iOS 2018.07.05

[Tip] iOS 세미나, 밋업 정보

Let us:Go!꽤 오래전부터 있었던 오픈채팅방 모임입니다. 초급/중급/고급 상관없이 자신이 알고 있는 것을 나누는 모임입니다.2017 봄 세션 : https://iosdevkor.github.io/let_us_go_2017_spring_review/2017 여름 세션 : https://iosdevkor.github.io/let_us_go_2017_summer_review/2017 가을 세션 : https://iosdevkor.github.io/let_us_go_2017_fall_review/2018 봄 세션 : https://iosdevkor.github.io/let_us_go_2018_spring_review/ letswiftSwift 컨퍼런스입니다. 주로 신림에서 개최되고 있습니다.2016 : h..

Programer/iOS 2018.06.04

[회고] 2010 - 2017 회고록

26살, 운이 좋아 A사, D사에서 각각 6개월간 인턴을 했었다. A사는 학점인증제로, D사는 졸업 후 인턴을 하였는데, 그곳에서 배울 수 있었던 것은 - 대기업에서의 개발 프로세스, 업무 문화, 조직 구조- 각 서비스의 버전과 빌드 번호관리, 소스관리 방법- QA 과정과 RTM 결과로 인한 회고, Mentis, Jira 업무 사용법 D사에서 정직원으로 QA업무를 더 일할 수 있었지만, 나는 좀 더 다른 분야에서 일을 하고 싶었기에 나와 새로 취업 준비를 하게 되었다. (예전엔 이 일을 참 많이 후회했다.) 그 후 B사, O사에서는 총 3년간 전산 업무를 시작했다. 나는 20대에는 무엇을 하고 싶은지 왜? 라는 이유 없이 직장을 구하려고 했던 것 같다. 그래서 돈 많이 주는 곳을 선택한 거 같다. - 서..

Life/Memoirs 2018.02.21

[Tip] Apple MDM / 엔터프라이즈 계정 관련

Apple MDM (Mobile Device Management) MDM은 기업, 교육 기관 등의 단체에서 앱을 배포하고 모바일 기기들을 관리하기 위한 솔루션입니다. 개발자 계정은 엔터프라이즈 계정(379,000원 / 1년)을 보유 하여야 하며 MDM Vendor 인증서 발급 작업이 필요합니다. iOS의 경우 MDM 서버 구축 -> MDM 서버 정보를 포함한 Profile을 생성 -> 사용자가 Profile 설치(Device Management 허용) -> MDM 서버에 기기 등록의 과정이 선행되어야 합니다. 그 후, MDM 서버에서 MDM 커맨드를 iOS에 푸쉬를 하고 iOS가 MDM 서버와 연결되어 정의된 기능들을 수행합니다. 제어가능한 부분 프로파일 및 프로비전 제어 기능 디바이스 종료, 재시작, ..

Programer/iOS 2018.02.05

부의 추월차선 - 엠제이 드마코

부의 추월차선은 아래 유튜브 영상을 보고 읽고 싶어져 읽게 되었습니다. 8분짜리 짧은 영상이니 한번 보시는 것을 추천합니다. 저에 여기서 읽은 것 중 가장 공감이 되고 영감을 얻는 7가지를 소개 하려고 합니다. (책 제목이나, 부제와 다를 수 있습니다.) 1. 자신에게 할 수 있다는 자각을 가져야 한다. 페라리나 람보로기니 같은 차를 보면서 "나는 평생 일해도 저 차는 살 수 없을거야." 라는 생각을 한다면, 진실로 탈 수 없는 사람이 됩니다. "~일 것 같아요." 같은 약한 말보다는 "할 수 있어요", 확신적인 사람이 되라고 합니다. 저는 가끔 장애물이 올 때마다 두렵기도 하고, "만약 내가 해내지 못하면 어떡하지?" 라는 불안감이 있는데, 해낼 수 있다는 자신감과 마음 가짐이 중요하다는 것을 알게 되..

Life/Reading 2017.12.03

[Tip] iOS 기기 고유 식별 값을 사용하고 싶을 때 (UUID, App Groups)

iOS 기기 고유 식별 값을 알고 싶을 때, 대부분 UUID를 이용하여 사용합니다. 하지만 UUID의 경우, 앱을 재설치하면 변경되므로 문제가 발생합니다. 그때 쓸만한 라이브러리가 TAKUUID입니다. https://github.com/taka0125/TAKUUID 키 체인을 이용해서 앱 삭제후 재설치 해도 초기 설정 되었던 UUID 값을 사용 할 수 있습니다. (자세한 것은 Read Me 참고) 하지만 만약 같은 API를 사용하는 경우, 예를 들면 앱A와 앱B가 있는데 A, B가 같은 로그인 API를 사용한다면 A, B 의 UUID 가 서로 다르므로 문제가 생길 수 있습니다. 이 문제를 해결할 여러가지 방법이 있겠지만 저는 App Groups 로 해결 했습니다. 만약 그룹안에 앱이 있다면 거기서 사용한..

Programer/iOS 2017.11.06

#개발하면서반성해야할점 #느낀점

1. 배열을 사용할 때 append로 한 뒤에 초기화을 안하면 데이터가 꼬이게 된다.-> 배열, 맵, 딕셔너리를 사용할 때는 반드시 초기화를 염두하면서 개발하기 2. 소스 몇줄 줄이겠다고, 변수의 역할을 2~3개 씩으로 사용하는 것을 피하자 (예를 들면 페이지 카운트라는 변수를 쓰면 되는데 다른 의미를 가지고 있는 배열의 카운드를 사용하다가 나중에 수정할 때 이해를 못하는 경우가 생긴다.)-> 변수는 의미 하나당 하나씩, 너무 많으면, 배열이나 튜플 등 지혜롭게 줄이는 방법을 찾아보자 3. 변수명을 비슷하게 쓰는 경우 upDownResult, upDownList, upDownResultData, upDownResultArray.. 변수를 남발하면 나중에 진짜 머리 터진다..-> 최대한 변수명을 간략히, ..

Life/Memoirs 2017.07.27

#Realm #WorldTourSeoul #Seminar

#RealmWorldTour 얼마 전 Realm World Tour 에 다녀왔다.강남역에 있는 매리츠타워 Naver D2 (건물 깨끗하고 좋았음~)에서 개최가 되었고, realm에 대해 많은 것을 배울 수 있었다. #모바일DB에서DB플렛폼으로 무엇보다 많이 놀란 것은 그동안 모바일 DB만으로 생각했던 realm이 이제는 플렛폼으로 넘어와 네트워크를 통해 서로 동기화가 가능하다는 점이다. [모바일 디비(realm) - 리스너(알림) - 동기화 - 리스너(알림) - 서버 디비(realm)] 좀 더 reactive한 서비스를 제공하며 restful 필요 없이 실시간 동기화가 가능하다는 점이 장점이다. #과연개발자의칼퇴를도와줄것인가? 이렇게 멋있는 기술임에도 불구하고 아쉬운 점이 지적되었는데 (야곰님 섹션)물론..

Life/Writing 2017.03.09