SWiFT9 [iOS] Any, AnyObject, nil 뿅! 안녕하세여 안녕주입니다... 요즘 야곰님의 [스위프트 프로그래밍] 책을 통해 기초를 다지고 있답니다. 중요한 키워드나 새로 알게된 개념들을 기록 하려고 해요! 오늘은 Any, AnyObject, nil에 대해 이야기 해보겠습니다... 1. Any Any는 스위프트의 모든 데이터 타입을 사용할 수 있다는 뜻입니다. 변수나 상수의 타입이 Any라면 어떤 종류의 데이터 타입이든지 상관 없이! 할당할 수 있습니다. 2. AnyObject AnyObject는 Any보다는 한정된, 클래스의 인스턴스만 할당할 수있습니다. var someVar: Any = "yagom"//문자열도 someVar = 50//정수도 somVar = 100.1//실수도 할당 가능 Any나 AnyObject는 될수 있으면 쓰지 않는 것.. 2022. 3. 7. [iOS] Swift의 5가지 접근 타입 야곰님의 swift 프로그래밍 책을 보며 정리했습니다. 접근제어란? 접근제어는 코드끼리 상호작용을 할 때 파일 간 또는 모듈 간에 접근을 제한할 수 있는 기능입니다. 접근제어를 통해 코드의 상세 구현은 숨기고 허용된 기능만 사용하는 인터페이스를 제공할 수 있습니다. 접근제어의 필요성? 객체지향 프로그래밍에서 중요한 캡슐화와 은닉화를 구현하는 이유는 외부에서 보거나 접근하면 안되는 코드가 있기 때문입니다. 그래서 접근제어를 이용해 필요한 부분만 코드를 노출시킵니다. 모듈과 소스파일? 스위프트의 접근제어는 모듈과 소스파일 기반으로 설계되었습니다. 모듈은 배포할 코드의 묶음 단위입니다. 하나의 프레임워크나 라이브러리 또는 애플리케이션이 모듈 단위가 될 수 있습니다. 스위프트에서는 import 키워드를 사용해 .. 2022. 2. 17. [iOS] iOS 앱의 뷰 설계하는법 이 글을 쓰는 이유는 실제 앱의 View를 설계하는데 어려움이 있으신 분들께 도움이 되고자 쓰게되었습니다.! 본 게시글에 나오는 캡쳐본의 디자인은 SOPT 클디 1조 '세탁특공대' 디자인팀께서 만들어주셨습니다.(멋쪄....)(함부로 베껴가지 마세욤..!) 1. UI View 설계하기 뷰는 총 2개로 제가 Main View를 구현하고, 다른 팀원 분께서 Guide View를 구현해주셨습니다. 구현하기에 앞서 뷰를 보고 어떤 구조로 짤 것인지 설계하는 것이 중요합니다. 위와 같은 디자인에서 한 화면에 위의 화면들을 다 담을 수 없기 때문에, 스크롤되어야 하는 것은 필수적일 겁니다..! 스크롤 뷰형태로 구성하려면 저희에게는 선택지가 3개가 있습니다. Scroll View Table View Colection .. 2021. 11. 23. [iOS] 다른 스토리보드로 화면전환하는 법(code, storyboard reference) 원래 한개의 스토리보드에 여러 뷰컨트롤러를 넣어 작업을 했었다. 한개의 스토리보드에는 한개의 뷰컨트롤러만 넣는것이, 나중을 위해(느려지는 문제나,,, 기능별로 나누기위해..?) 좋다고 한다. 그래서 나눠서 작업을 하고 싶었다. 요로코롬 있는 Main스토리보드에서 "확인" 버튼을 누르면 짜잔! Tabbar라는 이름의 스토리보드의 MainTBC(TabBarController)로 연결을 해주고싶었다. 1차 시도 (https://swieeft.github.io/2020/02/24/StoryboardReference.html) 구글링을 해보니 코드를 사용하지 않고 스토리보드에서 StoryBoard Reference 를 만들어서 연결해서 어쩌구 저쩌구 연결하는 방법을 해봤다..! (위의 사이트를 통해..!) 그 결.. 2021. 11. 15. [iOS] WirdCard Pattern, 와일드카드 패턴 와일드카드 패턴이란? 값을 해체하거나 무시하는 패턴중 하나입니다. 매개변수에서 많이 사용했던 와일드카드( _ )를 사용한다는것은 이 자리에 오는 것들을 Don't care 하라는 말이다. 와일드카드 식별자가 위치한 곳의 값은 무시해라! 이 패턴은 for구문이나, switch구문에 많이 사용된다. //for문을 사용한 예제 for _ in 1…2 { print("hello") } for 뒤에 오는 변수를 사용하지 않을 경우. 즉, 특정 작업만 두번 반복할 경우에 와일드카드를 사용함으로써 불필요한 변수선언을 막고 특정 작업에 집중할 수 있도록 합니다. 즉, for문에서 와일드 카드 식별자를 사용하면 해당 변수를 쓰지않고 범위 지정자를 통해 지정해준 범위만큼 for문이 돈다고 생각하면 된다. //함수를 사용할.. 2021. 11. 14. [iOS]클로저 Closure 클로저란? "코드블럭" 이라는 뜻을 가지고 있다. 클로저는 일급 객체로 변수, 상수 등으로 저장, 전달인자로 저장이 가능한 형태다. 모든 일급 객체는 함수의 실질적인 매개변수가 될 수 있다. 모든 일급 객체는 함수의 반환값이 될 수 있다. 모든 일급 객체는 할당의 대상이 될 수 있다. 모든 일급 객체는 비교연산(==, equal)을 적용할 수 있다. 우리가 여태 사용했던 함수들은 모드 "이름 있는 클로저" 형태 클로저 사용 형태 { (매개변수 목록) -> 반환타입 in 실행 코드 } 함수(이름있는 클로저) 사용 func addFunction(a : Int, b : Int) -> Int { return a + b } var sumReault : Int = addFunction(a: 1,b: 2) 일반 클로.. 2021. 11. 7. 이전 1 2 다음