본문 바로가기

728x90

ComputerScience/ios App(Storyboard)

(18)
ios - 10 swift 기본문법(Structure) 1 Structure - 여러 타입의 변수를 묶어서 하나의 타입으로 동작하는 자료구조를 만들 수 있다. - 데이터 + 메서드로 구성되어있고 이를 하나의 object라고 한다. - value타입으로 전달 시 복사되어 값이 전달 된다. (pass by value) - structure생성시 stack에 할당된다. 2 Class와의 차이 - class도 structure처럼 여러 변수와 함수를 묶어서 표현하는 도구이다. - 단 structure와 달리 reference type으로 생성시 heap에 할당된다. - 두 타입의 차이를 아래 코드에서 살펴보자. class PersonClass { var name: String var age: Int init(name: String, age: Int) { self.n..
ios - 9 swift 기본문법 (Closure) 1 Closure - closure는 크게 global함수, nested 함수, closure expression 세가지가 있다. - 쉽게는 이름없는 함수라고 이해하면 된다. - 함수처럼 변수에 할당할 수 있다. - 변수에 할당할 수 있고 인자를 받아 결과를 리턴할 수 있는 타입을 First Class Type이라고 하는데 closure는 이에 해당한다. - closure로 두 숫자를 받아서 곱해주는 함수를 정의해보자 - 다양한 축약형이 가능하다. var multiplyClosure: (Int, Int) -> Int = { (a: Int, b: Int) -> Int in return a * b } var multiplyClosure2: (Int, Int) -> Int = { a, b in return a..
ios - 8 swift 기본문법(Array, Dictionary, Set) 1 Collection? - 여러 변수를 담을 수 있는 컨테이너 - Array, Dictionary, Set등이 있다. 2 Array - 동일한 타입의 여러 변수를 저장할 수 있는 컨테이너 - 정의 var evenNumbers: [Int] = [2, 4, 6, 8] var oddNumbers: Array = [1, 3, 5, 7] - append evenNumbers.append(10) evenNumbers.append(contentsOf: [12, 14]) oddNumbers += [9, 11, 13] - empty check let isEmpty = evenNumbers.isEmpty - count let numOfElems = evenNumbers.count - 원소 접근 first, last, m..
ios - 7 swift 기본문법(Function, Optional) 1 Function - 매개변수가 있을 때와 없을 때 함수 정의 및 실행 방법 func printName() { print("jsdysw"); } printName(); func printTotalPrice(price: Int, count: Int) { print("Total Price : \(price * count)") } printTotalPrice(price:1000, count: 5) - 함수를 호출할때 매개변수의 이름을 안쓰고 값만 넘겨주고 싶다면 매개변수 앞에 _를 써준다. - 매개변수 이름을 통해서 함수에게 값을 전달하는데 _를 쓰면 이름 없이 전달이 가능하다는 것을 의미한다. - 이렇게 외부에서 보여지는 이름을 external name이라고 한다. func printTotalPrice(_..
ios - 6 swift 기본문법(Tuple, Flow Control) 1 swift - ios app 개발을 할때 사용하는 언어 2 playground - 간단하게 swift코드를 돌려볼 수 있는 곳 - file -> new -> playground - blank -> next 3 간단한 코드 실행해 보기 import UIKit let value = arc4random_uniform(100) print("value : \(value)") - 아래 검은 창에 콘솔 출력 내용을 볼 수 있다 - 우측 검은 창에 현재 value의 값과 함수의 결과를 미리 볼 수 있다. - 코드 실행 버튼 4 Tuple - 서로 다른 데이터를 묶어서 저장하는 공간 let person = (10, "Tom") let age = person.0 let name = person.1 - person은 1..
ios - 5 Auto Layout, 앱 아이콘, 이름 설정 1 Preview - preview 창 실행 - 돌려보고 싶은 여러 device를 선택할 수 있다. 2 Auto Layout - 기기별로 일관된 레이아웃을 보여준다. - view component중 아무거나 선택 -> resolve auto layout issues 아이콘 클릭 -> add missing constraints -> 자동으로 알아서 일관된 디자인 규칙을 잡는다, 너무 신뢰하지는 말자 - 수동으로 일관된 layout 규칙을 적용하고 싶은 컴포넌트 클릭 -> control키를 누른채로 view로 드래그 (label컴포넌트와 view와의 관계를 정의하는 것) -> view에서 위,아래,양옆, 얼마나 떨어진 상태를 유지할 건지 선택 - constraints가 생겼다. 위, 양 옆 간격을 설정했고,..
ios - 4 Outlet, Image View 1 Counter App 구성 - +,- 버튼을 만들어서 각각의 버튼이 눌렸을 때 plus one?, minus one? 알림을 띄우고 - currentValue라는 UILabel에 값이 반영 되도록 해보자 - 일단 코드에 currentValue 변수 생성 후 0으로 값 초기화 // ViewController.swift // counter app import UIKit class ViewController: UIViewController { var currentValue = 0 override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. } @IBAction func plusAlert(..
ios - 3 다음 프로젝트를 위한 기초 지식 1 UIKit - View를 구성할 때 필요한 UI Component들을 담고 있는 프레임워크(공구함)이다. - 이제까지 연습에서 view, 버튼, 텍스트와 같은 component를 사용할 수 있게 import UIKit을 해왔다. 2 Object - Object(객체)는 말 그대로 동작하는 대상을 말한다. - 대상의 속성을 변수로 나타내고 행동을 함수로 수행한다. - 이전 예시에서 버튼이라는 객체는 자기가 눌렸을 때 알려줄 정보(alert와 action)를 변수로 가지고 있고 showAlert메서드를 통해 alert를 화면에 내보내는 행동을 취할 수 있다. 3 Strings - "Hello" : 문자열 - "Hello \(변수)" : string interpolations, 변수의 값을 문자열에 삽입할..

728x90