본문 바로가기
반응형

프로그래밍/Swift51

4. 스위프트 기본 명명 규칙 4. 스위프트 기본 명명 규칙 스위프트 관련 문서 및 예제는 스위프트의 및 애플의 을 참조. * 코딩은 습관이라 나중에 교정하기 어려우니 처음부터 제대로 된 코딩 규칙 및 명명 규칙을 익히도록 노력하는 것이 좋다. * 변수, 상수, 함수, 메서드, 타입 등의 이름은 유니코드에서 지원하는 어떤 문자(한글, 한자, 영문, 숫자, 이모티콘 등등)라도 사용할 수 있다. 다만 다음과 같은 예외 겨우는 사용할 수 없다. 스위프트에서 미리 정한 예약어 또는 키워드해당 코드 범위내에서 미리 사용되는 기존 이름과 동일한 이름연산자로 사용될 수 있는 기호(+, -, * , / ) 숫자로 시작하는 이름 공백이 포함된 이름 함수, 메서드 인스턴스 이름은 첫 글자를 소문자로 사용하는 소문자 카멜케이스를 사용클래스, 구조체, 익.. 2019. 2. 13.
3. 프로토콜 지향 프로그래밍 3. 프로토콜 지향 프로그래밍 이걸 정리해야할지 고민스러운데, 우선 책에서 간략하게 정리한 내용을 언급해보고자 한다. Objective-C에서도 Protocol 지향적인 프로그램이 가능했기때문에 스위프트에서 사용할 때도 개념적으로 이해가 되었다면 어느정도 수준까지는 쉽게 접할 수 있지 않을까 한다. 작년 스위프트 프로젝트를 진행하면서 많이 느꼈던 부분이 구조체와 열거형에도 접근제어, 캡슐화, 추상화가 가능했기에 코드를 읽는데 어려움이 많았다. 생소하기 때문에... 그래서 스위프트 문법을 공부해야하고 자주 사용해야하고 새로운 방법을 계속 연구해야한다. 이번 프로젝트(앱 고도호)에서는 언어를 스위프트로 변경해서 개발을 하기로 결정했기때문에 작년에 봤던 스위프트 책을 다시 공부하고 있다. 기억이 가물가물..... 2019. 2. 13.
2. 함수형 프로그래밍의 특징. 2. 함수형 프로그래밍의 특징. 함수형 프로그래밍 패러다임의 가장 큰 장점은 대규모 병렬처리가 굉장히 쉽다. 프로그램이 상태의 변화 없이 데이터 처리를 수학적 함수 계산으로 취급하고자 하는 패러다임이다. 함수 자체의 응용을 중요하게 생각한다. 순수하게 함수에 전달된 인자 값만 결과에 영향을 주며, 상태 값을 갖지 않고 순수하게 함수만으로 동작한다. 따라서 일정하게 같은 결과를 도출할 수 있다. 프로그램이 동작하는 흐름에서 상태(값)가 변하지 않으면 함수 호출이 각각 상호 간섭 없이 배타적으로 실행되므로 병렬처리할 때 부작용(side-effect)이 거의 없다. 프로세스 혹은 스레드 별로 특정 값을 참조하거나 변경하기 위해서 락을 걸거나 대기할 필요가 없기 때문에 대규모 병렬처리가 쉽다. 함수형 프로그래밍.. 2019. 2. 13.
Swift Singletone 패턴 학습 Swift Singletone 패턴 학습 오브젝티브C에 비해 한결 간편해진 스위프트의 싱글톤 패턴. 어느 패턴보다 더 익숙하게 잘 사용하는 나는 싱글톤을 좋아한다. 싱글톤 패턴을 싫어하는 사람도 많고 이유도 다양하지만 어플리케이션 전역에서 접근하기 수월하며 재 생성에 대한 부담을 줄여 주므로 앱 개발 시에는 꼭 필요한 패턴이라고 생각이 든다. 스위프트에서 싱글톤 패턴을 사용하는 것은 너무나 간단하기 때문에 코드로 간단히 살펴보자. /** 공통 데이터 관리 싱글톤 */ class SketchDataManager { static let shared: SketchDataManager = { return SketchDataManager() } () private var myJoinGroups = [Any]() .. 2018. 5. 9.
Swift extension CALayer, UIView border Swift extension CALayer, UIView border 어제 작업을 하다보니 UIView, UILabel, UIButton, 등 UIView를 상속 받은 컨트롤들의 UI작업을 하다 보면 다양하게 밑줄, 옆줄, 윗줄 등을 넣어야하는 경우가 있다. 매번 이미지파일로 대체하기 어려워 Objective-C로 카테고리로 빼서 사용하던 부분을 구글 검색을 해보니 다양한 리소스가 있어 public extension으로 뽑아서 프로젝트에서 사용할 수 있도록 구성했다. 아주 만족스럽다. import Foundation import UIKit public extension CALayer { func addBorder(_ arr_edge: [UIRectEdge], color: UIColor, width: CG.. 2018. 5. 4.
스위프트의 튜플(Tuple)이란? 스위프트 문법책과 실전편 책 두권을 보았다. 실제 iOS프로젝트를 하는거에 있어서 스위프트로 개발하는 부분은 어려운 점은 없을 것 같은데 다만, 문법적으로 옵셔널과 다양한 스위프트의 기능들을 어떤식으로 응용할지는 아직 잘 모르겠다. 기본적으로 옵셔널에 대한 이해, 타입캐스팅과 프로토콜, 익스텐션등에 대해 잘 이해하고 활용한다면 오브젝티브-C처럼 개발 프레임을 만들어 두고 사용하면 편할 것 같다. '야곰' 이란 분이 펴낸 스위프트 프로그래밍에 있는 내용 중, 튜플이라는 것을 요약 정리해서 다시 한번 이해를 하고자 한다. 데이터 타입의 고급편에 소개된 튜플. 타입의 이름이 따로 지정되어 있지 않은, 개발자가 임의로 만드는 타입이다. C언어의 원시 구조체의 형태와 비슷. 튜플에 포함될 데이터의 개수는 자유롭게.. 2018. 3. 14.
반응형