분류 전체보기

    [SwiftUI] Grid속성

    [SwiftUI] Grid속성

    Grid의 속성에 대해서 자세히 알아보자. Grid의 종류 : LazyHGrid, LazyVGrid 속성 : fixed, flexible, adaptive LazyVGrid 데이터를 수직으로 나열하고자 할 때 사용합니다. 수직으로 나열하기 때문에 column을 사용합니다. column은 세로 한 줄을 의미합니다. var body: some View { LazyVGrid(columns: columns) { ForEach(0..

    URLSession을 통해JSON 가져오기 (2)

    URLSession을 통해JSON 가져오기 (2)

    SwiftUI 이 글은 alamofire와 같은 외부라이브러리를 사용하지 않는 아주 기초적인 방법입니다! mockapi.io에서 샘플을 만들면 아래와 같은 데이터를 생성해 줍니다. https://62bbeeb36b1401736cecefcf.mockapi.io/user 데이터는 다음과 같이 구성했습니다. struct User: Codable, Identifiable { var createdAt: String var name: String var avatar: String var id: String } json데이터를 가져오기 위해 메인으로 작성되는 class는 이 전 글과 동일합니다. 더보기 class network { func getJSON(completion : @escaping ([User]) ->..

    URLSession을 통해JSON 가져오기 (1)

    URLSession을 통해JSON 가져오기 (1)

    SwiftUI 이 글은 alamofire와 같은 외부라이브러리를 사용하지 않는 아주 기초적인 방법입니다! json data를 가져올 샘플링크: https://jsonplaceholder.typicode.com/todos 위 사이트에서 받을 json의 형태는 다음과 같다. Todo가 Codable, Identifiable 프로토콜을 채택해야 한다. 그 이유는 각각 Codable : JSONDecoder()에서 사용하기 위함 Identifiable : 데이터를 List에서 리스팅할 때 사용하기 위함 struct Todo: Codable, Identifiable { var userId: Int var id: Int var title: String var completed: Bool } network.swift..

    Passing Data (직접전달방식)

    Passing Data (직접전달방식)

    데이터를 전달하는 여섯가지 방법을 알아보자 ! 1. instance property 데이터를 전달받을 ViewController 프로퍼티에 값을 전달하는 방법이다. 데이터를 전달받을 property를 선언하고, 그 property의 값을 UI에 적용하는 원리이다. 데이터를 전달받을 ViewController propertyDataViewController.swift var passingData = "" //여기에 데이터 전달받을 예정 @IBOutlet weak var setPassingData: UILabel! //여기에 전달받은 데이터 적용 override func viewDidLoad() { super.viewDidLoad() setPassingData.text = passingData } 데이터를 ..

    Auto Layout 1 [Why?]

    Auto Layout 1 [Why?]

    📍 Auto Layout 이란 ? 제약조건(Constraints)에 따라 모든 뷰의 크기와 위치를 동적으로 지정하는 것 이게 왜 필요한지? 를 이해하기 위해서는 Frame-Base Layout에 대한 사전 지식이 필요하다. Frame-Base Layout Xcode 상에서 이미지 View의 크기와 위치를 위와 같이 지정하고 Simulator로 실행시켜보자. (review화면을 iPhone11로 하고, 파란 점선 표시가 뜨는 중간으로 위치를 지정했음) 실행하면 iPhone11은 예쁘게 정중앙에 적당한 크기로 이미지가 배치된다. 하지만 SE같은 경우에는 중앙에 배치 되지 않고 위치가 애매하다. 그러면 이번에는 landscape(가로모드) 로 돌려 보자 ❓ 이미지가 실종됐다. 이유는, 처음에 x와 y의 값을..

    [Swfit] 프로퍼티 감시자 / property observer (willSet & didSet)

    [Swfit] 프로퍼티 감시자 / property observer (willSet & didSet)

    Property Observer 프로퍼티 값의 변화를 관찰하고, 저장 프로퍼티에 추가할 수 있다. willSet, didSet으로 프로퍼티의 값 변화할 때 호출됨 -> 값의 변화를 모니터링 할 수 있다. 📌 왜, 언제 사용하는지 ? 주로 iOS개발에서 UI를 업데이트 할 때 사용합니다. willSet 값이 저장되기 직전에 호출됩니다. willSet의 파라미터는 바뀌게 될 변수의 값을 가지고 있습니다. var fruit : String = "apple" { willSet(newFruit){ print("과일이 \(fruit)에서 \(newFruit)으로 변경됩니다.") } } 파라미터를 설정하지 않을 경우 newValue로 자동 지정 됩니다. var fruit : String = "apple" { will..

    [Stanford iOS] enum의 위대함

    [Stanford iOS] enum의 위대함

    powerful 한 enum을 정리해보자. (본 정리 내용은 Stanford iOS를 바탕으로 합니다.) enum에 대한 기본적인 내용은 아래 링크를 참조해 주세요. [Swift] 열거형(Enumerations) 열거형이란 ? 공통된 주제를 가진 데이터들을 모아 나타내는 자료형이라고 생각하면 된다. 예를들어 내가 프로그래밍 할 내용이 과일에 관한 것이고 앞으로 과일 변수를 자주 사용한다고 생각 990427.tistory.com 우리는 계산기 operation 구현을 위해서 다음과 같이 열거형 변수를 만들었다. 여기서 associated value를 사용하여 다양한 type의 케이스를 사용할 수 있고, value를 지정할 수 있다. 아래 operation 딕셔너리를 보면, value가 associated ..

    sw마에스트로 13기 합격후기 (자소서,코테,면접)

    sw마에스트로 13기 합격후기 (자소서,코테,면접)

    합격후 한참 바쁠때 쓰는 합격후기&회고 사실 큰 기대 없이 시작했다. 작년에 굉장히 열심히 준비했음에도 불합의 아픔을 겪었기 때문에,, ㅎㅎ 올해는 고민하다가 나답지 않게 하루전에 자소서를 썼다 작년에 잘 써놔서 부분 수정만해서 그대로냈다 서류는 제출만하면 합격한다고 보시면됩니다 ! 모의 테스트 시험 몇일 전에 모의테스트 환경을 준다. 소마의 자랑스런 결과물인 [앨리스] 플랫폼으로 진행했다. 모의 테스트는 알고리즘 1 SQL 1 WEB 1 문항 씩 주어졌다. 모의 테스트의 난이도를 보고 코딩테스트의 난이도를 가늠하지는 말자..! 아 참고로 모든 코테는 검색금지, 원격 감독이 진행되었다!! 1차 코딩 테스트 총 8문제로 알고리즘 6 SQL 1 WEB 1 문항 씩 주어졌다. 정확히 기억은 안나는데, 알고리즘..

    [Stanford iOS] 버전문제에 의한 각종 error 해결

    [Stanford iOS] 버전문제에 의한 각종 error 해결

    고전강의라 버전이 swift2 / iOS9 이다 보니 많은 에러에 부딪힌다 2022년에 Stanford iOS를 따라할 때 발생하는 각종 에러를 해결하는 방법을 알아보자. 📍 [Section1] 계산기 sender.currentTitle의 nil error 아마 이 글을 읽는 분들은 UIButton을 클릭해서 sender.currentTitle을 가져올 때 nil error에 마주했을 것이다. 이유는 xcode13 이전까지는 UIButton의 style의 기본 값이 Default 였지만, xcode13부터는 UIButton의 style의 기본 값이 Plain 으로 바뀌었기 때문에, style을 Default 로 바꾸어 주면 해결된다. 📍 [Section2] 노치 탄생으로 인한 AutoLayout 옛 iP..

    [Stanford iOS] 아키텍처 & MVC

    [Stanford iOS] 아키텍처 & MVC

    [Stanford iOS]는 한글링이 번역한 Stanford iOS를 정리합니다. [무료] Stanford iOS 한글자막 강의 - 인프런 | 강의 한글링의 첫번째 프로젝트 아이오에스는 현재 iTunes에서 공개된 Stanford - Developing iOS 9 Apps with Swift 강의를 번역하였습니다., - 강의 소개 | 인프런... www.inflearn.com 아키텍쳐 MVC 디자인 패턴 iOS 기본 디자인 패턴 📌 Model What 프로그램이 하는일, 즉 모든 계산을 담당한다. UI와는 상관 없는 일을 처리함 📌 View UI == Client와 상호작용을 하는 부분 -> View 혼자 할 수 있는 부분 📌 Controller How Model과 View 연결 (View를 리스닝하고,..