앱등개발자IOS

고정 헤더 영역

글 제목

메뉴 레이어

앱등개발자IOS

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기 (280)
    • 포트폴리오 (0)
    • C알고리즘 (43)
    • Python알고리즘 (57)
    • Swift알고리즘 (132)
    • IOS (3)
    • Swift언어 (9)
    • Lua 언어 (2)
    • Objective-C 언어 (1)
    • Kotlin언어 (0)
    • rxSwift (1)
    • Swift 지식(CS) (1)
    • Swift for Coding Interview (4)
    • Clean Software Architecture (0)
    • Design Pattern with Java & .. (3)
    • ML&DL (7)
    • 데이터베이스(DB) System Concepts (3)

검색 레이어

앱등개발자IOS

검색 영역

컨텐츠 검색

전체 글

  • 백준 1463: 1로 만들기(Swift)

    2022.05.21 by 앱등개발자IOS

  • 백준 2839: 설탕배달 (Swift)

    2022.05.21 by 앱등개발자IOS

  • Swift언어 복습노트1 - data type

    2022.05.21 by 앱등개발자IOS

  • Swift언어와 함수형 프로그래밍

    2022.05.21 by 앱등개발자IOS

  • RxSwift 기초 정리

    2022.05.19 by 앱등개발자IOS

  • (IOS) 초기화/갱신 류의 작업은 viewWillAppear와 viewDidLoad 중 어디에서 할까??

    2022.05.16 by 앱등개발자IOS

  • GCD(Grand Central Dispatch)를 이용한 MultiThread 프로그래밍

    2022.05.16 by 앱등개발자IOS

  • 왜 IOS UI작업은 Main Thread가 해야하는가?

    2022.05.16 by 앱등개발자IOS

백준 1463: 1로 만들기(Swift)

전형적인 다이나믹 프로그래밍 문제이다. 이 문제를 처음 접했던 시절에는 그리디 알고리즘으로 접근했다가 풀지 못했던 기억이 있다. 28 -> 27 -> 9 -> 3 -> 1과 같이 언제 어디서 최단 경로가 생길지 모른다. 우리는 물론 컴퓨터도.. 따라서 dp로 bottom-up 방식으로 1번 index부터 n번 index까지 최소 횟수를 구해나가면 된다. 먼저 dp = Array(repeating: 0, count: n+1)로 0번 ~ n번 인덱스까지 모두 0으로 초기화해주었다. 1번 index, 즉 숫자 1은 1까지 도달하려면 -3으로 나누기 -2로 나누기 -1을 빼기 이 세가지 연산을 총 0번 수행하면 되므로 dp[1] = 0, 같은 이유로 dp[2] = 1, dp[3] = 1 그 위로의 숫자들은 컴퓨..

Swift알고리즘 2022. 5. 21. 15:22

백준 2839: 설탕배달 (Swift)

파이썬으로 알고리즘 풀이를 해왔지만, IOS개발자를 준비하는 만큼, 이제는 Swift로 문제풀이를 하려한다. 모든 문제가 파이썬으로 풀 때보다 아직은 두세배의 시간이 걸리지만 꾸준히 해봐야겠다. 전형적인 Greedy 알고리즘을 사용하는 문제이다. 가져가는 설탕봉지의 갯수를 최소한으로 해야하기 때문에, 5kg, 3kg 중 5kg 가방을 최대한 많이 가져가야한다. 따라서, n으로 주어지는, 이동시켜야할 설탕의 무게를 최대한 5kg으로 채우고, 남은 무게가 3으로 나누어떨어질 때까지 5kg 봉지를 하나씩 줄여나간다.

Swift알고리즘 2022. 5. 21. 14:34

Swift언어 복습노트1 - data type

이 글은 주기적으로 Swift언어 기초를 복습하며 제가 보기위해 핵심만 간단히 정리해놓은 노트입니다. 야곰님의 스위프트 프로그래밍 (3판)을 참고하였습니다. # Swift의 모든 데이터 타입 이름은 대문자 CamelCase를 사용한다. -> Int, UInt, Bool, Double... # Swift의 모든 데이터 타입은 "구조체"를 기반으로 구현되어있다. -> 구조체를 기반으로하여, Swift의 다양한 기능 ( 익스텐션, 제네릭) 을 두루 이용하여 구현되어있다! # Swift의 Int, UInt 선택 시스템의 아키텍처에 따라, 64비트 환경에서는 INT64가 INT로, 32비트 환경에서는 INT32가 INT로 지정되어 사용된다 # Swift의 Float, Double 64비트 환경 기준, - Doub..

Swift언어 2022. 5. 21. 14:29

Swift언어와 함수형 프로그래밍

Swift의 언어적 특징에 대해 간단하게 알아보겠습니다. Swift는 Java,C++과 같이 객체지향 패러다임을 차용하여, 클래스와 상속, 접근자, 생성자, 소멸자 등 객체지향 프로그래밍의 특징들을 많이 찾아볼 수 있는데요, Swift는 이 시점 최고 대세인 "함수형 프로그래밍" 또한 차용했습니다. 왜 함수형 Paradigm을 차용했는지, 함수형 프로그래밍은 어떤 특징을 갖고있는지 알아보겠습니다. 그 전에!! 먼저 명령형 프로그래밍, 객체지향 프로그래밍(OOP) 먼저 훑고 지나가겠습니다. 코딩의 기본은 "명령형 프로그래밍"입니다. 저도 컴퓨터공학과에 들어와 가장 먼저 배운 것이 C언어를 이용한 명령형 프로그래밍이었습니다. 왜 명령형 프로그래밍일까요?? - 한 줄 한 줄 컴퓨터에게 차례로 실행할 명령을 전..

Swift 지식(CS) 2022. 5. 21. 13:38

RxSwift 기초 정리

Observable은 Sequence다! ( Observable들은 일정한 시간동안 지속적으로 이벤트를 방출(emit)한다! ) # Observable의 생명주기 총 3가지 중 하나! - next 이벤트 방출 + 지속 - error 이벤트 방출 + 완전 종료! - complete 이벤트 방출 + 완전 종료! # Observable의 형태 Observable : Observable이 T형태의 이벤트를 방출한다 # Observable은 subscribe해야 의미가 생긴다! Observable은 sequence의 정의일 뿐, subscribe되기 전에는 아무 event도 emit하지 않는다 ## just just는 오직 하나의 element를 emit한다. ## of of은 오직 array든 여러 원소의 나열..

rxSwift 2022. 5. 19. 23:22

(IOS) 초기화/갱신 류의 작업은 viewWillAppear와 viewDidLoad 중 어디에서 할까??

출처: 수강중인 패스트캠퍼스 30가지 프로젝트 강의 - viewController의 생명주기 해당 강의의 뒷쪽 강의 수강 중, 동일한 초기화 작업인데 일부는 viewDidLoad()함수를 override하며 작성해주었고, 다른 일부는 viewWillAppear()함수를 override하며 작성해주는 것을 보고 두가지를 다른 함수에 override해주는 이유를 바로 받아들이지 못하였다. 시뮬레이터로 작성한 코드를 테스트하던 중, A라는 viewController에서 다른 viewController가 push되었다가 pop되어 다시 A로 돌아왔을 때, 나는 A가 데이터의 변화를 반영하여 화면에 뿌려주기를 바랬고, A는 이미 그렇게 작동하고있었다. 나는 그렇게 의도한 적이 없는데 그렇게 작동하고있는 이유는 A..

IOS 2022. 5. 16. 23:24

GCD(Grand Central Dispatch)를 이용한 MultiThread 프로그래밍

IOS에서 Multi-Thread 프로그래밍을 위해 지원하는 기술인 GCD에 대해서 알아보겠습니다. GCD(Grand Central Dispatch)는 자료구조 시간에 배운 First-In-FIrst-Out구조인 Queue에 작업을 추가하면, 작업에 맞는 스레드를 생성해 실행, 제거까지 해주는 아주 멋진 녀석입니다.ㅎㅎ 이제 Dispatch라는 이름이 붙어있는 이유를 아시겠죠? API통신 시에, URLSession또는 Alamofire를 사용하면서, dispatchQueue.main.asnyc{ task...}라는 블록 안에 UI업데이트 코드를 작성해보신 적이 있으실텐데요, 위와 같이 task를 다른 Thread로 분배할 수 있도록 GCD의 dispatchQueue를 활용하는 것입니다. async와 sy..

IOS 2022. 5. 16. 19:22

왜 IOS UI작업은 Main Thread가 해야하는가?

URLSession, Alamofire 등 http 통신을 구현하다보면, 통신 후 UI업데이트를 위한 코드는 dispatchQueue.main.async{}와 같은 블럭 안에 작성했던 경험이 있었습니다. 깜빡하고 UI업데이트 코드를 fetchData()함수에 main스레드에서 실행하라는 코드 없이 작성하였을 때, 앱이 그냥 죽어버리는 경험도 다들 겪어보셨을텐데요, 그냥 그런가보다~ 하다가, 조금이나마 검색을 해서 main스레드만이 UI작업을 담당해야하는 이유를 알아보게 되었습니다.~ 짧게나마 안드로이드를 다뤘을 때도 UI는 메인 스레드가 담당했던 기억이있었는데요 IOS에서 왜 UI작업은 Main스레드가 담당하는 것일까요?? 먼저 공식문서에는 UIKIt에 대하여 다음과 같은 설명이 나와있습니다. UIKit..

IOS 2022. 5. 16. 19:21

추가 정보

인기글

최신글

페이징

이전
1 ··· 32 33 34 35
다음
TISTORY
앱등개발자IOS © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바