App Store 앱 (B2C - Business to Consumer)유료무료부분유료 - 앱 내 결제(In-App Purchase)VPP Store 앱 (B2B - Business to Business)기업 내부용 앱보통 게임은 앱과 별도의 시장으로 구분앱 스토어에
오픈 소스란 무엇인가? 오픈소스(Open Source) 원래 오픈 소스 소프트웨어(Open Source Software, OSS)를 뜻하는 용어 오픈 소스 소프트웨어는 공개적으로 액세스할 수 있게 설계되어 누구나 자유롭게 확인, 수정, 배포할 수 있는 코드 오픈
알고리즘이란 어떤 작업을 수행하기 위해 입력을 받아 원하는 출력을 만들어내는 과정을 기술한 것이다.어떤 일을 수행할 수 있는 일련의 명령어 또는 규칙의 집합이며, 알고리즘 설계하기 위해서는 해야 할 작업을 명확하게 명시해야 하고 문제 해결이나 처리 과정에서의 순서를 단
정수 Int 부동소수점 Float, Double 문자 Charecter 문자열 String 불리언 Bool true, false 변수 (Variable) 애플리케이션이 사용하는 데이터를 저장하기 위해 예약된 컴퓨터 메모리 내의 위치다. 각각의 변수는 프로그래머에 의
Swift의 가장 단순하면서도 가장 강력한 기능을 가진 것들 중 하나튜플은 여러 값을 하나의 항목으로 임시적으로 그루핑(Grouping)하는 데 매우 간단한 방법이다.서로 다른 타입의 값들이 튜플에 저장될 수 있으며, 모두 동일한 타입의 값이어야 한다는 제약도 없다.하
Swift는 데이터 타입이 안전한(type safe) 프로그래밍 언어에 속한다.변수의 데이터 타입이 한번 정해지면 그 변수는 다른 타입의 데이터를 저장하는 데 사용 될 수 없다.(컴파일 에러 발생)반대로 데이터 타입이 느슨한(loosely typed) 프로그래밍 언어는
스위프트의 모든 데이터 타입을 사용할 수 있다는 뜻변수 또는 상수의 데이터 타입이 Any로 지정되어 있다면 그 변수 또는 상수에는 어떤 종류의 데이터 타입이든지 상관없이 할당할 수 있다.Any보다는 조금 한정된 의미클래스의 인스턴스만 할당할 수 있다.Any와 AnyOb
타입 캐스팅 (Type casting) Swift 코드를 작성할 때 컴파일러가 어떤 값의 특정 타입을 식별하지 못하는 경우가 발생할 것이다. 이런 경우는 메서드나 함수가 반환하는 것이 불분명하거나 예상되지 않은 타입의 값일 때 종종 발생한다. 이럴 때는 as 키워
옵셔널 타입 (Optional type) Swift 옵셔널 데이터 타입은 대부분의 다른 프로그래밍 언어에 없는 새로운 개념이다. 옵셔널 타입의 목적은 변수 또는 상수에 값이 할당되지 않은 상황을 처리하기 위해 안전하고 일관된 접근 방식을 제공하는 것이다. 변수를
기본 할당 연산자 앞서 본 할당 연산자 ( " = " 연산자)는 표현식의 결과를 변수에 저장하는 역할을 한다. 기본적으로 = 할당 연산자는 두 개의 피 연산자를 받는다. 왼쪽의 피연산자 : 값을 할당받는 변수 또는 상수 오른쪽의 피연산자 : 할당할 값, 대체로
스위프트의 제어 흐름 대부분의 프로그래밍 기술은 하나 이상의 조건을 기반으로 결정해가는 코드를 작성하는 것이다. 어떤 코드를 실행할지, 몇 번을 수행할지 이는 프로그램의 흐름을 통제하는 것이므로 제어흐름(control flow)이라고 한다. 일반적으로 제어흐름은
Swift의 함수, 메서드, 클로저는 체계적인 구조와 효율적인 코드를 작성하는 핵심 부분이며, 코드의 반복을 피하면서 프로그램을 구조화하는 방법을 제공한다. 함수란 무엇인가? 함수는 특정 작업을 수행하기 위해 호출할 수 있게 이름 붙여진 코드 블록이다. 작업을 수
매개변수에 기본적으로 전달될 값을 미리 지정할 수 있습니다.기본값을 갖는 매개변수는 매개변수 목록 중에 뒤쪽에 위치하는 것이 좋습니다.함수를 호출할 때 함수 사용자의 입장에서 매개변수의 역할을 좀 더 명확하게 표현하고자 할 때 사용합니다.전달 받을 값의 개수를 알기 어
Swift의 모든 타입은 셋 중에 하나원래 있거나 아니면 내가 만들었거나구조체(struct), 열거형(enum), 클래스(class)객체(또는 인스턴스)는 소프트웨어 앱을 구축하는 블록으로 쉽게 사용하고 재사용할 수 있는 독립적인 기능 모듈이다.작업을 수행하기 위한 객
상속의 개념은 현실 세계의 관점을 프로그래밍으로 가져왔다.이것은 클래스에 어떤 특성(예를 들어, 메서드와 프로퍼티)을 정의할 수 있게 해주었고, 그 클래스를 상속받은 다른 클래스를 생성할 수 있게 해준다.상속된 클래스는 부모 클래스의 모든 기능을 상속받으며 자신만의 기
클래스처럼 구조체도 객체지향 프로그래밍의 기초를 형성하며 데이터와 기능을 재사용할 수 있는 객체로 캡슐화하는 방법을 제공한다.구조체 선언은 클래스와 비슷하지만, class 키워드를사용하는 대신에 struct 키워드를 사용한다는 점이 다르다.예를 들어 다음은 String
가변형 컬렉션과 불변형 컬렉션 Swift에서 컬렉션은 가변형(mutable)과 불변형(immutable)이 있다. 불변형 컬렉션 인스턴스에 속한 것은 객체가 초기화된 이후에 변경될 수 없다. 불변형 컬렉션을 만들고 싶다면 컬렉션을 생성할 때 상수(constant)
Agile(애자일) 소프트웨어 개발은 반복적이고 점진적인 접근 방식을 기반으로 합니다. 신속한 변화를 위한 옵션은 필요할 때 언제든지 변경 및 반복을 수행할 수 있는 자유롭고 유연한 접근 방식입니다.사용자 요구사항은 프로젝트의 거의 모든 단계에서 변경될 수 있으므로 프
Swift 코드를 아무리 신중하게 설계하고 구현했다 해도 앱을 통제할 수 없는 상황은 언제든지 발생할 것이다.활성화된 인터넷 연결을 기반으로 동작하는 앱은 아이폰이 네트워크 신호를 잃는 것을 제어할 수 없다.사용자가 비행기 모드(airplane mode)를 비활성화하는
타입 Swift의 타입은 세 가지 기본 그룹으로 구분되는데, 구조체, 열거형, 클래스이다. Swift 구조체나 열거형은 대다수 언어보다 더 현저하게 강력하다. 프로퍼티, 이니셜라이저, 메서드 지원뿐만 아니라 확장하거나 프로토콜을 따를 수 있다. Struct 대문
컴퓨터 공학 용어에서의 클로저(closure)는 함수나 클로저 표현식과 같은 독립적인 코드 블록과 코드 블록 주변에 있는 하나 이상의 변수가 결합된 것을 말한다.아래 코드에서 functionA는 functionB라는 이름의 함수를 반환한다.사실 functionB는 fu
1970년대 초, AT&T Bell 연구소의 데니스 리치(Dennis Ritchie)가 C언어 창시그러나 이 언어는 연구소 밖에서 사용 가능하게 된 1970년대 후반에서야 인기를 얻고 널리 사용되었다.UNIX의 인기에 힘업어 빠르게 대중에 전파되었다.1980년대 초에
Objective-C Tutorial 개요 오브젝티브-C(Objective-C)는 C 프로그래밍 언어 위에 스몰토크(Small Talk) 프로그래밍 언어의 기능을 추가해 객체지향 언어로 만든 범용 언어입니다. 처음에 Objective-C는 NeXT가 NeXTSTE
함수(Functions) 함수는 작업을 함께 수행하는 명령문의 그룹입니다. 모든 Objective-C 프로그램에는 main() 이라는 하나의 C 함수 가 있으며 가장 사소한 프로그램은 모두 추가 함수를 정의할 수 있습니다. 코드를 별도의 기능으로 나눌 수 있습니다
Objective-C 배열을 사용하면 같은 종류의 여러 데이터 항목을 보유할 수 있는 변수 유형을 정의할 수 있지만 구조체는 다른 종류의 데이터 항목을 결합할 수 있는 Objective-C 프로그래밍에서 사용할 수 있는 또 다른 사용자 정의 데이터 유형입니다.구조체는
동적 바인딩은 컴파일 시간이 아닌 런타임에 호출할 메서드를 결정합니다. 동적 바인딩은 후기 바인딩이라고도 합니다.Objective-C에서 모든 메소드는 런타임에 동적으로 해결됩니다. 실행되는 정확한 코드는 메소드 이름(선택자)과 수신 객체에 의해 결정됩니다.동적 바인딩
글씨를 다루는 법글쓰기에 인상을 준다.느낌과 인상이 비슷한 글자들의 모임주로 글꼴, 글자체, 서체 등으로 불린다.Ascender에서 Descender까지각도가 기우는데 서체가 변하면 ITALIC, 각도만 기울이면 OBLIQUE모든 글씨의 간격이 같다.압축, 공간을 아낄
2019년 WWDC에서 발표현재 버전 SwiftUI 4앱 개발을 더 빠르고 쉽게소프트웨어를 개발할 때 발생하는 버그를 줄이기Interface Builder에서 단순 XIB에서 Storyboard로 확장되면서 재사용 문제 발생 IB와 코드를 수작업으로 연결해야 함IB에서