SOLID? 객체 지향 프로그래밍 및 설계의 다섯가지 기본 원칙 왜? 유지 보수와 확장이 쉬운 시스템을 만들고자 SRP, Single Responsibility Principle 단일 책임 원칙 객체는 단 하나의 책임만 가져야 한다. 클래스는 그 책임을 완전히 캡슐화해야 한다. 책임 - 변경하려는 이유 예) 보고서를 편집하고 출력하는 모듈 이 모듈은 두 가지 이유로 변경될 수 있다. 1. 보고서의 내용 (실질적) 2. 보고서의 형식 (꾸미기) 따라서 분리된 클래스나 모듈로 나누어야 한다. 다른 시기에 다른 이유로 변경되어야 하는 두 가지를 묶는 것은 나쁜 설계일 수 있다. OCP, Open-Closed Principle 개방-폐쇄 원칙 확장에 대해 열려 있어야 하고, 수정에 대해서 닫혀 있어야 한다. 개..
1. 안전성 프로그래머가 저지를 수 있는 실수를 엄격한 문법을 적용해 미연에 방지 예) 옵셔널, guard, 오류처리, 강력한 타입 통제 2. 신속성 스위프트는 C 언어를 기반으로 한 C, C++, Objective-C와 같은 프로그래밍 언어를 대체하려는 목적으로 만듦 3. 표현성 사용하기 편하고 보기 좋은 문법 구현하려 노력 객체지향 프로그래밍 객체지향 프로그래밍(OOP)이란 여러 개의 독립된 단위인 객체의 모임으로 파악하는 방법 개발과 유지보수 간편 직관적으로 코드 분석 클래스에 하나의 문제를 위한 데이터, 메서드를 모아놓음 -> 응집력 강화 클래스는 독립적 -> 결합력 약화 특징 : 추상화, 상속, 다형성, 동적바인딩 함수형 프로그래밍 대규모 병렬처리가 쉬움 상태 변화 없이 수학적 함수 계산으로 취..