iOS
[iOS][Swift] 코딩 컨벤션
Class 는 Pascal Casing을 사용한다.class ApplicationManagerclass SoftwareSetting로컬 변수, 함수, 함수 파라미터는 camel Casing을 사용한다.func openFunction(someParameter: Int) { let someNumber: Int = 0}상수의 경우 대문자와 밑줄을 사용한다.let CONST_NUMBER = 100변수이름 앞에 접두사를 붙인다.//멤버 변수 (m)let mAge: Int = 24//Bool 타입 (b)let bClicked: Bool = falselet mbClicked: Bool = false//enum 타입 (e)enum eDirection { case North. South }리턴 값이 있는 메소드는 ..
[iOS][Swift] Class 와 Struct
클래스와 구조체(Class and Structure)클래스와 구조체는 프로그램 코드 블럭을 만들도록 유연하게 구성하는 것이 일반적인 목적이다.다른 언어와 달리 Swift는 사용자 클래스와 구조체를 위한 인터페이스 파일과 구현 파일을 따로 나누어 만들 필요가 없다.단일 파일에 클래스나 구조체를 정의하고, 외부 인터페이스로 다른 코드에 사용하기 위한 클래스와 구조체는 자동으로 만들어진다. 클래스와 구조체의 공통점여러 변수를 담을 수 있는 컨테이너데이터를 용도에 맞게 묶어 표현하고자 할때 용이함프로퍼티와 메소드를 사용하여 구조화된 데이터와 기능을 가짐하나의 새로운 사용자 정의 데이터 타입을 만듬초기화, 확장(extension) 가능프로토콜 사용 가능서브스크립트(subscript) 사용 가능"."을 사용해 하위..
[iOS][Swift] 투두리스트 앱 만들기 - UI 구성 AutoLayout Constraint 걸기
1. 결과 화면2. 레이아웃 구성3. 구현 할 기본 기능투두리스트 조회투두리스트 등록 및 삭제투두리스트 완료 체크4. AutoLayout스택뷰는 Safe Area 에 딱 맞춰줍니다.위에있는 뷰의 Bottom 을 Superview 의 Top 부분으로부터 100 만큼 떨어지도록 제약을 걸어 어떤 사이즈가 와도 항상 같은 크기를 유지할 수 있도록 해줍니다.아래 뷰는 윗 뷰 설정과는 반대로 아랫뷰의 Top 을 Superview 의 Bottom 으로부터 -100만큼 떨어지도록 제약을 걸어서 맨 아랫부분으로부터 항상 100만큼 떨어지도록 해줍니다.이렇게 설정하면 자연스레 남은 부분은 Table View 의 차지가 됩니다.
[iOS][Swift] 오토레이아웃 개념잡기
프로젝트 만들기Create new XCode project 를 눌러 오토레이아웃을 공부할 새 프로젝트를 만들어 보겠습니다 !카테고리는 App 으로 하고이름은 PracticeAutoLayout 으로 하겠습니다.저희는 스토리보드에서 AutoLayout 을 연습해볼거니까 Main.storyboad 로 가줍니다.Label 만들기그다음 테스트 해 볼 Label 을 하나 만들고 잘 보이게 하기 위해예쁜 색백그라운드 색상을 넣어줍니다 !오토 레이아웃 개념Swift 의 AutoLayout 개념은 해당 뷰의 x, y 위치 와 해당 뷰의 가로 세로 크기 를 알려주면 Swift 내부에서 뷰의 위치를 계산해 동적으로 렌더링 하게 됩니다.오토 레이아웃이 필요한 이유Q. 그냥 마우스로 요소들만 필요한 위치에 갖다 놓으면 되는데 ..
[iOS][Swift] Closure를 활용해 간단한 계산하기
정수의 합을 구하는 Closurevar addClosure: (Int, Int) -> Int = { (a: Int, b: Int) -> Int in return a + b }위 코드는 간소화 하지않은 가장 기본적인 형태의 closure 로 두 개의 정수를 parameter 로 받아 합을 반환하는 closure 입니다.코드를 봤을때 조금 복잡해보이지만 closure 는 코드를 간략화 할 수 있는 강력한 기능을 가지고 있습니다.Closure 간소화하기타입 생략먼저 앞에서 parameter 가 Int 라고 선언 되었으니 closure 는 타입 추론을 통해 a 와 b 가 자연스럽게 Int 라는 것을 알 수 있습니다. 이를 줄여보면var addClosure: (Int, Int) -> Int = { (a, b) -..