목록Swift (45)
브래의 슬기로운 코딩 생활
오늘은 가장 중요하다고 할 수 있는 1급 객체,1급 시민 / 클로저 / 생성자 등등을 복습했다. 1급 객체(first class object) / 1급 시민(first class citizen) 1급 객체(first class object) 또는 1급 시민(first class citizen) https://en.wikipedia.org/wiki/First-class_citizen First-class citizen - Wikipedia From Wikipedia, the free encyclopedia Concept in programming language design In programming language design, a first-class citizen (also type, object, ..
이번 주차는 엠티 때문에 동영상 강의로 대체되었다. 주된 내용은 지난학기에 배운 내용 복습이었다. 데이터 타입(자료형, data type) Bool, Character, Int, Float, Double, String, Void 자료형의 종류와 크기가 궁금해요 var x = 10 print(type(of:x)) let s = MemoryLayout.size(ofValue: x)//8 일반적으로 초깃값을 주지 않을 경우에만 자료형을 씀 정수 데이터 타입 : Int \(출력하고 싶은 변수나 상수) 부동 소수점 데이터 타입: Double 부울 데이터 타입 : Bool 문자 데이터 타입 : Character 주의 : 초깃값은 작은 따옴표가 아니고 큰 따옴표 var myChar3 : Character = "X" ..
과제: 자신의 이름 10번 반복 출력 소스 for i in 1...10{ print("김동현") } chatGPT에게 옵셔널 바인딩 예제를 들고 설명해 달라고 하기 let myOptional: Int? = 42 if let value = myOptional { print("The value of myOptional is \(value)") } else { print("myOptional is nil") } 이 코드에서는 myOptional변수가 옵셔널 Int 형식입니다. 만약 myOptional변수가 nil이 아니라면, 새로운 상수 value가 만들어집니다. value상수는 이후 코드에서 옵셔널 형식을 가지지 않습니다. 따라서 value를 사용할 때, 옵셔널 추출 없이도 안전하게 접근할 수 있습니다. 예..
Autolayout (오토 레이아웃 이란?) 오토 레이아웃(Auto Layout)은 제약 조건(Constraints)을 이용해서 뷰의 위치를 지정하는 것. 다시 말하면, 두 뷰 사이의 관계를 제약 조건이라는 것을 이용해서 뷰의 크기와 위치를 지정하는 것. 오토 레이아웃은 여러 해상도를 지원하기 위해 만들어 졌다. 아이폰의 크기가 다양해지면서 해상도도 달라졌는데, 다른 크기에서도 같은 화면을 보여주기 위해 오토 레이아웃을 사용한다. 세로 보기 화면뿐만 아니라 가로 보기 화면까지도 지원한다. 위의 이미지를 보면 아이폰SE와 아이폰8, 아이폰8 Plus 기종이 달라도 보여지는 화면이 똑같다는 것을 볼 수 있다. 위의 이미지와 같이 오토 레이아웃은 제약 조건(Constraints)을 이용하여 자동으로 해상도에 ..
BMI 계산 https://www.onlinegdb.com/online_swift_compiler https://replit.com/languages/swift let weight = 60.0 let height = 170.0 let bmi = weight / (height*height*0.0001) // kg/m*m print(bmi) BMI 계산 결과 판정 let weight = 60.0 let height = 170.0 let bmi = weight / (height*height*0.0001) // kg/m*m var body = "" if bmi >= 40 { body = "3단계 비만" } else if bmi >= 30 && bmi < 40 { body = "2단계 비만" } else if b..
앱 개발 기술 분류 native - 안드로이드: JAVA, Kotlin - iOS: Swift, Objective-C cross platform - React native - Flutter hybrid - Web View를 감싸고 있는 웹사이트 - HTML+CSS+JS - Apache Cordova Xcode로 Swift문법 공부하기 Playground로 Swift문법 공부하기 Playground로 Swift문법과 UI테스트 폰트 조절: [Xcode]-[Preferences]-[Themes] 새로운 앱 만들기: [File]-[New]-[Project]-[iOS]-[App] 프로젝트 기본 설정 같은 이름의 프로젝트가 이미 있다면 폴더 변경하거나 이름 변경 프로젝트 생성 후 Xcode 초기 화면 Deploy..
Human Interface Guidelines https://developer.apple.com/design/human-interface-guidelines/components/all-components https://developer.apple.com/design/human-interface-guidelines/ Human Interface Guidelines - Human Interface Guidelines - Design - Apple Developer developer.apple.com extension(익스텐션) extension https://docs.swift.org/swift-book/LanguageGuide/Extensions.html Extensions — The Swift Prog..
stored property와 computed property computed property(계산 프로퍼티)는 property가 설정되거나 검색되는 시점에서 계산 또는 파생된 값 계산 프로퍼티 내에는 - 값을 리턴하는 게터(getter) 메서드 - 값을 대입하는 세터(setter) 메서드 class Man{ var age : Int = 1 // stored property var weight : Double = 3.5 // stored property var manAge : Int{ //메서드 같지만 computed property임 get{ return age-1 } } func display(){ print("나이=\(age), 몸무게=\(weight)") } init(age: Int, weight..
클래스 vs. 객체 vs. 인스턴스 객체지향 용어 비교 객체 인스턴스 인스턴스(instance) 실제로 메모리에 할당된 객체(object) 소프트웨어 애플리케이션을 개발하는 데 사용되는, 쉽게 사용할 수 있으며 재사용할 수 있는 기능을 가진 모듈 객체의 구성 - 데이터 변수(data variable) or 속성(property) - 함수 or 메서드(method) 클래스란? 청사진이나 설계도가 건물이 완성된 후의 모습을 나타내고 있는 것처럼 클래스(class)는 객체가 생성되었을 때 어떠한 모습을 보일 것인지를 정의 - int x; - Student han; //C++ - 클래스 인스턴스; Swift 클래스 선언하기 클래스의 기본 구조는 다음과 같다. class 새로운 클래스 이름 : 부모 클래스 { /..
first class object : (1)함수를 변수에 저장 가능 Swift는 함수를 데이터 타입처럼 처리할 수 있음 다음과 같이 함수를 상수 또는 변수에 할당하는 것이 가능 func inchesToFeet (inches: Float) -> Float { return inches * 0.0833333 } let toFeet = inchesToFeet //함수를 자료형처럼 사용 함수를 호출하려면 원래의 함수 이름 대신에 상수 이름을 이용하여 호출 가능 print(inchesToFeet(inches:10)) print(toFeet(10)) //주의 : 매개변수명(inches:) 안씀 first class object : (2) 함수를 매개변수로 사용 func inchesToFeet (inches: Floa..