잡다한지식

잡다한지식/코딩을 하면 얻은 고찰

단일 책임 원칙 의존성 역전 원칙 지키면서 리팩토링

해당과정은 계산기 코드를 짜면서 단일 책임 원칙과 의존성 역전 원칙을 적용시켜 가면서 얻은 고찰입니다. 기존 코드를 짰을 때는 돌아기만 하면 된다는 생각으로 코드를 작성하였습니다. 기본적인 기능 구현 Calculator.kt class Calculator { private val keys = setOf( Key.CALCULATE_STOP, Key.CALCULATE_ADD, Key.CALCULATE_MINUS, Key.CALCULATE_MULTIPLY, Key.CALCULATE_DEVIDE, ) fun calculate() { println("계산을 진행하겠습니다.") println( "계산의 종류\n" + "------------------------------------------------------..

잡다한지식/iOS프로그래밍기초

Mac 환경 개발 (4)

break poin 행번호 왼쪽을 클릭하면 브레이크 포인트(파란 오각형) 생기고 해당 줄에서 실행이 멈춤 실수로 브레이크 포인트를 만들었다면 파란 오각형을 오른쪽으로 드래그하여 삭제 스위치 소스 Action switchOnOff(_ sender :UISwitch){ if sender.isOn { //켜 있을 때 } else { //꺼 있을 때 } } 세그먼트 컨트롤의 인덱스 If sender.selectedSegmentIndex == 0 { } else { } 디폴트 인자(매개변수) present(_:animated:completion:) | Apple Developer Documentation

잡다한지식/iOS프로그래밍기초

Mac 환경 개발 (3)

Attributes 선언(declaration)에 적용되는 것과 type에 적용되는 두 가지 attribute가 있음 선언과 타입에 부가적인 정보를 제공 @기호 다음에 attribute 이름과 argument 지정 인터페이스 빌더(Interface Builder)에서 사용하는 attribute Xcode 내의 Interface Builder 편집기는 코드를 작성하지 않고 전체 사용자 인터페이스를 간단하게 디자인할 수 있도록 해주는 프로그램 Interface Builder attribute은 Xcode와 동기화하기 위해 Interface Builder에서 사용하는 declaration attribute IBAction, IBSegueAction, IBOutlet, IBDesignable, IBInspect..

잡다한지식/iOS프로그래밍기초

Mac 환경 개발 (2)

Xcode 화면구성 Navigator/Document/Outline/inspector/Canva Attributes Swift에는 선언에 적용되는 속성과 유형에 적용되는 속성의 두 가지 종류가 있습니다. 속성은 선언 또는 유형에 대한 추가 정보를 제공합니다. 예를 들어, discardableResult함수 선언 의 속성은 함수가 값을 반환하더라도 반환 값이 사용되지 않는 경우 컴파일러에서 경고를 생성하지 않아야 함을 나타냅니다. @속성 이름과 속성이 허용하는 모든 인수 다음에 기호 를 작성하여 속성을 지정합니다 . 1. @attribute name 2. @attribute name(attribute arguments) 일부 선언 속성은 속성 및 특정 선언에 적용되는 방법에 대한 추가 정보를 지정하는 인수..

잡다한지식/iOS프로그래밍기초

Mac 환경 개발

Xcode  [File]-[New]-[Project]-[iOS]-[App] 간단 도움말 보기 -> 원하는 단어에서 alt키 누르고 물음표 나오면 클릭

잡다한지식/iOS프로그래밍기초

Mac 환경 적응

Dock 윈도우의 하단에 위치한 상태바와 같은 역할 시스템환경설정과 Dock 환경설정 시스템환경설정 : MS Windows의 제어판에 해당, 대부분 [확인]버튼 없고 변경한 사항이 바로 적용됨 Macbook keyboard 참고 : https://support.apple.com/ko-kr/HT201236 Mac 키보드 단축키 특정 키 조합을 눌러 보통은 마우스, 트랙패드 또는 기타 입력 기기가 있어야 가능한 작업을 수행할 수 있습니다. support.apple.com Command ⌘키는 윈도우의 Ctrl키와 거의 동일한 기능을 가짐 Ctrl로 가능했던 단축키가 맥에서는 ⌘로 가능 ex) 복사(⌘+c), 붙여넣기(⌘+v)나 되돌리기(⌘+z)등 한글,영어를 교체할 땐 윈도우의 CapsLock키로 전환이 가..

잡다한지식/iOS프로그래밍기초

iOS 학습과정(7주차) - 과제,소스

소스변형1 p10, extension +p21~22 protocol protocol Print { } extension Print { func HelloWorld() { print("Hello World!") } } class Test : Print { } var x = Test() x.HelloWorld() // 출력 : Hello World! 소스변형2 p10, extension +p32~33 열거형 enum Compass { case North case South case East case West } extension Compass { var result : String { switch self { case .North: return "북" case .South: return "남" case .E..

잡다한지식/iOS프로그래밍기초

iOS 학습과정(7주차) - Swift 문법

extension Extensions — The Swift Programming Language (Swift 5.5) - class, struct, enum, protocol에 새로운 기능을 추가 - extension은 하위 클래스를 생성하거나 참조하지 않고 기존 클래스에 메서드, 생성자(initializer), 계산 프로퍼티 등의 기능을 추가하기 위하여 사용 extension 기존타입이름 { // 새로운 기능 } extension Double { var squared : Double { //계산 프로퍼티 return self * self } } let myValue: Double = 3.0 print(myValue.squared) //출력 : 9.0 print(2.0.squared) //출력 : 4.0..

잡다한지식/iOS프로그래밍기초

iOS 학습과정(6주차) - 과제,소스

소스변형1 인스턴스 만들고 메서드와 프로퍼티 접근 ,p13 + 클래스(class or type) 메서드 ,p14 + 인스턴스 초기화하기 : init() ,p16 + 인스턴스 만들 때 클래스명 다음 괄호의 의미: init() 호출 ,p17 + self ,p18 + computed property의 setter ,p19~22 + method overloading : 생성자 중첩 ,p23 + 상속 : 부모가 가진 것을 물려받아요, p39 + super : 부모 메서드 호출 시 사용 ,p40 + override : 부모와 자식에 같은 메서드가 있으면 자식 우선 ,p42 class dog{ var age : Int var name : String var sex : Bool var dogAtribute1 : (In..

잡다한지식/iOS프로그래밍기초

iOS 학습과정(6주차) - Swift 문법

Method Methods — The Swift Programming Language (Swift 5.5) 인스턴스(instance) 메서드 - 인스턴스 메서드는 인스턴스에서 동작 var 인스턴스명 : 클래스명 = 클래스명() // ": 클래스명" 은 생략 가능 클래스(class or type) 메서드 - 타입 메서드 또는 클래스 메서드는 클래스 레벨에서 동작 - 타입 메서드는 인스턴스 메서드와 동일한 방법으로 선언하지만 class 나 static 키워드를 앞에 붙여서 선언 - class키워드로 만든 클래스 메서드는 자식 클래스에서 override가능 클래스명.클래스메서드() Initialization Initialization — The Swift Programming Language (Swift 5...

감자씨앗
'잡다한지식' 카테고리의 글 목록