iOS DevMode
close
프로필 배경
프로필 로고

iOS DevMode

  • 분류 전체보기
    • # TIL (Today I Learned)
    • 🍎Apple Developer Academy @p..
    • # 개발
      • 프로젝트
      • Swift
      • SwiftUI
      • 알고리즘
      • 자료구조
      • Java
      • Android
      • C언어
    • # 서비스기획
      • 웨어잇
      • 꿀스테이
      • SeSac 후기
    • # CS
      • 컴퓨터개론
      • 운영체제
    • # 국비교육
    • 후기
  • 홈
  • 방명록
  • GitHub

TIL - 2024.04.30 화요일

· 성취/개선/학습한 내용 🏆 오늘은 Unit Test에 대해 공부를 했다. Unit Test는 로직들을 테스트하는 것이기 때문에 UI Test보다 테스트 속도가 매우 빠르다. 그리고 해당 코드를 가져와서 테스트를 하는 데 사용해야 하기 때문에 @testable을 사용해야 한다. @testable을 사용하는 이유는 테스트를 할 비즈니스 로직과 Unit Test 파일은 서로 다른 모듈이기 때문이다. 그렇기에 비즈니스 로직 코드가 있는 모듈을 사용할 수 있게 import 해줘야 한다. 이때 비즈니스 로직 코드가 internal이라면 메서드나 class를 가져올 수 없다. 하지만 테스트를 위해서 접근제한자를 다 바꿔주는 것은 말이 안 된다. 이런 경우를 위해 @testable을 사용하면 internal이라도..

  • format_list_bulleted # TIL (Today I Learned)
  • · 2024. 4. 30.
  • textsms

TIL - 2024.04.29 월요일

· 성취/개선/학습한 내용 🏆 오늘은 크게 2가지를 배웠다. 첫째로는 SwiftUI에서 UIKit을 래핑 하여 사용할 때, UIKit에서 사용하던 Delegate를 사용하고 싶을 때 사용하는 makeCoordinator이다. 아무래도 SwiftUI에선 delegate 없이 이미 만들어진 기능을 사용하다 보니, UIKit의 뷰객체나 뷰컨트롤러를 래핑 하여 사용하려면 makeCoordinator으로 세부적인 설정, 데이터 설정 등을 해줘야 한다. 두 번째로는 XCTest 중 UITest에 대해서 공부를 하였는데, UITest를 자동화하여 성공했는지 실패했는지 알려주는 역할을 한다. UITest는 잘하지 않는다고는 하지만, 신기하기도 하고 잘 사용하면 유용한 기능이라고 생각이 들었다. SwiftUIUIVie..

  • format_list_bulleted # TIL (Today I Learned)
  • · 2024. 4. 29.
  • textsms

TIL - 2024.04.26 금요일

· 성취/개선/학습한 내용 🏆 SwiftUI의 Property Wrapper에 대하 많이 학습한 시간이었다. SwiftUI에서 뷰를 많이 나누면 MVVM이 필요 없을 수도 있지만 만일 MVVM 패턴을 사용한다면 뷰모델에 @State를 사용하여 변수를 선언하는 것은 어울리지 않는다. 그 이유는 @State라는 것이 오로지 뷰를 위해 존재하는 것이기 때문에 의미가 없다. 그래서 나온 프로퍼티 레퍼가 바로 @Published이다. 이를 위해선 뷰모델 class에 ObservableObject를 채택해줘야 한다. 그리고 @StateObject var viewModel = ViewModel()로 뷰를 구성하는 구조체 내에 선언을 해줘야 뷰모델에 선언한 변수를 가져다 사용할 수 있다. 여기서 @StateObjec..

  • format_list_bulleted # TIL (Today I Learned)
  • · 2024. 4. 26.
  • textsms

TIL - 2024.04.25 목요일

· 성취/개선/학습한 내용 🏆 Swift 내에서 Sort가 어떻게 작동하는지 파악해 보기 위해 정렬에 대해서 학습을 하였다. 간단하게 설명해 보자면 버블정렬은 두 개씩 비교해서 큰 수를 뒤로 보내는 방법으로 정렬을 한다. 삽입 정렬은 카드 게임에서 패를 정리하는 것처럼 앞에서부터 정렬된 부분과 비교해 정렬을 하는 방식이다. (예를 들어 4 9 7 1 8이라면, 7이라는 수를 4와 9 사이에 넣는 것, 그 후 4 7 9 1 8이라면, 1을 맨 앞으로) 병합정렬은 데이터를 분할하고 다시 합치는 정렬 방식으로 재귀 알고리즘을 사용해야 해서 약간 어렵다. 마지막으로 퀵정렬은 pivot을 기준으로 작거나 같은 값, 큰 값으로 데이터를 재귀적으로 분리하는 정렬방식인데 나도 그 방법이 좀 어려워서 이해하기가 힘들다..

  • format_list_bulleted # TIL (Today I Learned)
  • · 2024. 4. 25.
  • textsms

[알고리즘] Swift 정렬

Swift의 sort 메서드는 어떻게 동작하는지, 얼마나 효율적인지 궁금할 때가 있다. 이를 알아보기 위해 대표적인 정렬 알고리즘 몇 가지를 알아보고, swift에서는 어떻게 구현되어 있는지 알아보자!0. 알아둬야 할 것들0-1. Stable vs UnstableStable정렬의 결과가 항상 일정(= 기존의 정렬 순서가 유지됨)Unstable 정렬의 결과가 매번 다를 수 있음(=기존의 정렬순서가 유지되지 않음)  - id: 1 / name: Hue / power: 7777 / date: 2024.04.25 10:00 - id: 2 / name: Jack / power : 8888 / date: 2024.04.25 10:02 - id: 3 / name: Den / power: 9999 / date: 202..

  • format_list_bulleted # 개발/알고리즘
  • · 2024. 4. 25.
  • textsms

TIL - 2024.04.24 수요일

· 성취/개선/학습한 내용 🏆 네이버 맵을 활용 해서 앱을 만들고 있다. 이때 여러 뷰에서 네이버 맵을 사용하기에, 여러 맵에 똑같은 코드를 작성하기보단 좀 더 효율적으로 사용하는 방법이 없을까 고민이 됐다. 그 해결책으로 BaseMapView를 하나 만든 후 상속을 받아서 수정이 필요한 부분은 프로퍼티나 메서드를 호출해서 수정하면 된다. 다행히 이 방법으로 코드를 줄이면서 더 효율적으로 코드를 짤 수 있게 되었다. NaverMap APINaver GeocodingView 상속· 궁금한 내용과 부족한 내용 ⁉️🤔Naver Geocoding을 자꾸 시도해 보는데 401 statusCode가 계속 리턴되었다. 정말 2~3시간가량을 뭐가 문제인지 이것저것 다 바꿔보고 네이버에서 발급은 키..

  • format_list_bulleted # TIL (Today I Learned)
  • · 2024. 4. 24.
  • textsms
  • navigate_before
  • 1
  • ···
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • ···
  • 32
  • navigate_next
전체 방문자
오늘
어제
전체
전체 카테고리
  • 분류 전체보기
    • # TIL (Today I Learned)
    • 🍎Apple Developer Academy @p..
    • # 개발
      • 프로젝트
      • Swift
      • SwiftUI
      • 알고리즘
      • 자료구조
      • Java
      • Android
      • C언어
    • # 서비스기획
      • 웨어잇
      • 꿀스테이
      • SeSac 후기
    • # CS
      • 컴퓨터개론
      • 운영체제
    • # 국비교육
    • 후기
최근 글
인기 글
최근 댓글
태그
  • #회고
  • #IOS
  • #Today I Learned
  • #국비교육
  • #java
  • #성장
  • #TIL
  • #자바
  • #SWIFT
  • #오늘 배운것
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바