본문 바로가기

전체 글

(15)
23년 회고 (iOS 개발자 첫 취업부터 이직까지..) 23년이 끝나고 24년 2월이 된 어느 날 입니다... 정말 오랜만에 글을 쓰는데, 일단 블로그에 소홀했던 점 반성은 하지만 그렇다고 인생을 게을리 살았던 것은 아니기에 작년에 저에게 고생했단 말 한 마디로 먼저 시작하겠습니다. 저의 작년을 돌이켜 보았을 때 5가지의 키워드로 요약을 하자면 1. 첫 취업 2. 첫 iOS 협업 3. 첫 임금체불 4. 첫 퇴사 5. 첫 이직 이렇게 입니다.. 첫 이라는 접두사는 언제나 두근거리는 거 같네요 ㅎㅎ 키워드를 중심으로 회고를 시작하겠습니다! 1. 취업 개발자 Boom의 막차를 탄 것만 같은 취업이었습니다. 23년 3월 중순에 출근을 하게 됐으며, 아르바이트를 제외하고 직장 생활이 처음이다보니 서툴렀던 점도 확실히 있었고 어리버리 했던 점도 있었다고 생각합니다. 일..
iOS 출시 프로젝트 회고 주인장은 살아 있었습니다 그렇습니다 열심히 하겠읍니다,,,🥹 먼저 저는 작심이라는 앱을 앱 스토어에 등록을 하게 되었고 이 과정을 회고해보도록 하려 합니다 소감을 짧게 이야기해보자면 정말 2~3주 정도 되는 시간동안 새벽 4시까지 열심히 했고 후회는 없지만 아쉬움은 많은 프로젝트 입니다 작심 프로젝트 기간 : 2022-09-13 ~ 2022-09-29 업데이트 기간 : 2022-10-04 ~ 앱 설명서: https://meadow-caravan-6e7.notion.site/2785239c2c024d09aca36f8513648485 앱 스토어 주소: https://apps.apple.com/kr/developer/jaehoon-seo/id1645004524 ‎App Store에서 제공하는 JaeHoon S..
작심 개인정보 처리방침 ('https://github.com/jaehoonE7877'이하 '작심(sjh)')은(는) 「개인정보 보호법」 제30조에 따라 정보주체의 개인정보를 보호하고 이와 관련한 고충을 신속하고 원활하게 처리할 수 있도록 하기 위하여 다음과 같이 개인정보 처리방침을 수립·공개합니다. 제1조(개인정보의 처리목적) (이)가 개인정보 보호법 제32조에 따라 등록․공개하는 개인정보파일의 처리목적은 다음과 같습니다. 제2조(처리하는 개인정보의 항목) ① 은(는) 다음의 개인정보 항목을 처리하고 있습니다. 제3조(개인정보의 파기절차 및 파기방법) ① 은(는) 개인정보 보유기간의 경과, 처리목적 달성 등 개인정보가 불필요하..
고차함수(Higher Order Function) 고차함수 : 함수를 파라미터로 사용하거나 함수의 실행결과를 함수로 반환하는 함수 즉, input, output이 함수 형태인 함수를 의미한다. Sequence, Collection 프로토콜을 따르는 컬렉션(Array, Dictionary, Set 등)에 기본적으로 구현되어있는 함수, 옵셔널 타입에도 구현되어 있지만 배열에서 주로 사용한다. 고차함수의 기능은 Swift에만 있는 것이 아니고 대부분의 함수형 프로그래밍을 채택한 언어에서 사용가능. 그렇다면 함수형 프로그래밍은 무엇인가? 함수형 프로그래밍(Functional Programming) , 선언형 프로그래밍 함수형 프로그래밍의 반대로는 명령형(Imperative) 프로그래밍이 있다. 명령형 프로그래밍은 변수를 만들고, 변수와 반복문 등을 사용해서 값..
Property - (1) 저장 프로퍼티란? 프로퍼티(속성)란 구조체(Struct), 클래스(Class)에서 사용하는 변수이다! 프로퍼티의 종류는 크게 2가지(인스턴스 속성, 타입 속성)로 먼저 분류가 가능하다. 인스턴스를 생성하고나서 접근하는 속성과 타입 자체(구조체, 클래스)에 속하는 유일한 변수,상수로서 인스턴스와는 무관한 타입 속성으로 나뉜다. 저장(Stored) 속성 저장속성은 커스텀 타입 안에서 let(상수) 또는 var(변수)로 선언가능한 프로퍼티이며 고유한 데이터 주소를 갖는다. 초기화 이전에 데이터 값을 갖고 있거나, 변수를 옵셔널 처리해서 나중에 값을 대입해주거나, 인스턴스 생성시에 값을 넣어 반드시 초기화를 해줘야한다. 저장 속성은 특이하게 lazy라는 키워드를 let이나 var앞에 붙여주어 선언(코드영역)을 먼저 ..
UIAlertController UIAlertController 아직 내가 많이 사용해보진 않았지만 우리가 무의식적으로 많이 사용한 기능이라고 생각해서 포스팅해보겠다. AlertController 영상에서 볼 수 있듯이 Alert는 중간에, Action Sheet은 아래에서 위로 올라오는 애니메이션을 갖는다. 그렇다면 UIAlertController를 사용하는 4단계를 알아보자! UIAlertContorller 인스턴스 생성 Button 생성 UIAlertController와 버튼 합치기 화면에 보여주기(Animation) 이렇게 총 4단계로 나뉜다. 먼저 1번 단계에서 class로 만들어진 UIAlertController를 생성한다. 생성자에 title, message, preferredStyle 이렇게 3개의 아규먼트를 넣어 줌으로..
7월 18일 월요일 Table View 테이블 뷰의 필요성 먼저 우리는 무의식 적으로 테이블 뷰를 사용하고 있었다. 뷰 컨트롤러의 scene에 label을 나열했다고 가정해보면, 10개?! 까지는 어떻게 나열했을지 몰라도 data가 100개 이상이라고 가정하면 뷰 객체를 너무 많이 추가해야하기 때문에 scene이 감당하기 어려워진다. 따라서 뷰 객체가 많고, 반복적인 형태와 코드, 어려운 스크롤 등 이런 불편함을 타파하고자 Table View가 탄생했다. 먼저 테이블 뷰를 생성해보자. 이렇게 테이블 뷰 컨트롤러를 라이브러리에서 추가하면 RootView로 Tabel View가 생성되고 그 밑에 Tabel View Cell를 지니고있다. Cell은 비슷하고 반복적인 디자인과 데이터를 담는 그릇이라고 보면 된다. 예를 들어 카카..
AutoLayout 오토레이아웃 뷰 계층 구조에 있는 모든 뷰 객체의 크기와 위치를 해당 뷰에 적용된 제약 조건으로 위치를 지정해주는 것 나만의 규칙이 제일 중요하다고 생각해 먼저 내가 깨닳은 점을 작성해보겠다. 오토레이아웃의 제약조건 먼저 결과적으로는 수차례 혼자 반복된 연습으로 나온 결과이며 Document Outlet이 정......말 많다. 내가 가져온 도큐먼트 아웃렛에서 먼저 SafeArea 밑으로 Label이 있으며 레이블의 위치와 크기를 먼저 잡아준 다음에 아래 StackView의 위치와 크기를 잡아주었다. 이렇게 말로 풀어내는 것이 의미가 없을지 몰라도 먼저 나만의 규칙 5가지를 설명하겠다. 한 방향으로 잡기 : 디바이스의 상단과 하단은 누구나 다 알 것이고 나는 위에서 말한 것 처럼 label -> stac..