목록프로그래밍/Swift (31)
처음부터 차근차근

Playground playground는 Xcode의 기능으로, Swift의 문법을 공부하거나 test할 때 유용하게 사용할 수 있는 것이다. 자동 완성 기능이 있어 작업을 더 쉽고 빠르게 할 수 있고, 결과도 바로 바로 볼 수 있다. 1. Xcode를 키고 File > New > Playground 클릭 2. 원하는 모드를 클릭한 후 Next 클릭 3. 파일 이름을 입력하고 Next 클릭하면 끝 상단 메뉴바에서 Xode > Preferences 클릭하면 테마 같은 설정을 변경할 수 있다. 하단의 사각형을 마우스 왼쪽으로 길게 클릭하면 컴파일 방식을 지정할 수 있다. Automatically Run : 자동으로 컴파일. 코드를 한 줄 쓸 때마다 자동으로 컴파일해서 결과를 보여준다. 변화가 감지될 때마다 ..

시스템 환경설정 상단 메뉴바의 애플 로고 버튼을 누른 후 시스템 환경 설정을 클릭하면 위의 이미지 처럼 시스템 환경 설정 탭이 열린다. Dock 환경 설정 Dock에 있는 검정색 선에 마우스 오른쪽 클릭한 후 Dock 환경설정 클릭하면 Dock환경 설정 탭이 열린다. Dock에다 앱 추가하는 방법 finder클릭 후 응용 프로그램 클릭한 다음 원하는 앱을 Dock에 드래그하면 된다. 단축키 한영 전환 : caps lock키, command+space, window key+space 원격 데스크톱에서는 ctrl + space 전체 화면 캡처 : cmd+shift+3 특정 부분 화면 캡처 : cmd+shift+4 원격 데스크톱에서 command키는 window 키와 같다. finder 열기 : cmd + n..

Mac과 Window의 차이점 Mac과 windows는 운영체제(OS)가 다르다. 근본적인 운영체제가 다르기 때문에 GUI와 기능에서 window와 mac은 큰 차이를 보인다. 첫 번째로, Mac에는 window랑 다르게 하단에 작업표시줄과 시작버튼 대신에 Dock이라는 길쭉한 프로그램 인터페이스가 있다. Dock은 자주 사용하는 앱이나 현재 사용 중인 앱을 표시해준다. 윈도우의 작업 표시줄처럼 앱을 고정해 둘 수 있고, 애니메이션 효과도 줄 수 있다. 두 번째로, Window는 상단 메뉴가 따로 없지만, mac에는 상단 메뉴가 있다. Mac의 상단 메뉴에 현재 실행 중인 프로그램(앱)을 보여준다. 상단 메뉴바에서는 현재 실행중인 프로그램을 제어하는 기능이 있어 프로그램의 환경설정이나 종료를 할 수 있다..
extension extension 기존타입명 { // 새로운 기능 } extension : 확장하다. 기존의 기능을 확장한다 즉, extension이란, class,enum, struct, protocol의 기능을 추가하기 위해 사용하는 것이다. ex) // Int형에다 새로운 기능을 추가한다 extension Int { var plus : Int { return self + 10 } } var test : Int = 10 print(test.plus); //이것도 가능 print(1.plus); //결과 : 20 //11 Int형변수 or Int형데이터.추가한기능 해서 사용할 수 있다. 접근 제어(access control) access control(접근 제어) == access modifier(접..
class Animal { var isLive : Bool var age : Int func printInformation() { print("살아있는가 : \(isLive)") print("나이 : \(age)") } init(isLive : Bool, age: Int){ self.isLive = isLive self.age = age } } class Human : Animal { var name : String var isUseTool : Bool // override : 부모 클래스의 함수를 자식 클래스에서 재정의 하는 것 // 함수가 호출될 때 자식을 우선으로 한다. override func printInformation() { print("살아있는가 : \(isLive)") print("나이 ..
클래스 메서드(class method) 클래스 메서드(class method) == 타입메서드(type method) Swift의 메서드에는 두가지가 있다. 인스턴스 메서드 : 인스턴스가 호출 클래스 메서드(= 타입 메서드) 이 중 클래스 메서드에 대한 이야기이다. 클래스 메서드란, 클래스가 호출하는 메서드이다. func 앞에 class나 static 키워드를 붙여 생성한다. class와 static 차이점 : class 키워드로 만든 클래스 메서드는 자식 클래스에서 override가 가능하다. class Plant { var name = "rose" var isblossom = true var color = "red" // 인스턴스 메서드 func printPlantInformation() { prin..
class Animal{ // stored property // 반드시 직접 초기화를 하거나 옵셔널 변수로 만들거나 생성자를 이용해서 초기화를 해야한다. var name : String = "sunny" var age : Int = 3 var weight : Float = 2.12 var favorite : String? // 인스턴스 메서드 : 인스턴스가 호출하는 메서드 func cry(sound: String) -> String{ return sound + "~~~!!" } func printAnimalInformation() { print("이름 : \(name)") print("나이 : \(age)") print("몸무게 : \(weight)") if let catFavorite = favorit..
1급 객체(first class object) 1급 객체(first class object) == 1급 시민(first class citizen) 1급 객체란, 아래의 조건을 만족하는 객체를 말한다. 1. 변수에 저장할 수 있다. 2. 매개변수로 전달할 수 있다. 3. 리턴 값으로 사용할 수 있다. 그래서 Swift의 함수는 1급 객체이다. 함수 예시 1. 변수에 저장할 수 있다. func convertMlToL(ml: Double) -> Double { return ml / 1000.0 } let toL = convertMlToL // 변수에 함수를 대입 : 1급 객체 조건 충족 print("\(convertMlToL(ml: 12))L") print("\(toL(12))L") // 매개변수명(ml:)을..