목록CS (2)
보라코딩
객체지향 프로그래밍 (OOP) 객체들의 집합으로 프로그램의 상호작용을 표현하며 데이터를 객체로 취급하여 객체 내부에 선언된 메서드를 활용하는 방식 (설계에 많은 시간이 소요됨 / 처리속도가 상대적으로 느림) 추상화 ㄴ 복잡한 시스템으로부터 핵심적인 개념 또는 기능을 간추려내는 것 캡슐화 ㄴ 객체의 속성과 메서드를 하나로 묶고 일부를 외부에 감추어 은닉하는 것 상속성 ㄴ 상위 클래스의 특성을 하위 클래스가 이어받아서 재사용하거나 추가, 확정 ( 코드 재사용, 계층 관계 생성, 유지 보수성에서 중요) 다형성 ㄴ 하나의 메서드나 클래스가 다양한 방법으로 동작하는 것 * 오버로딩 : 이름 같은 여러개 메서드 (타입과 유형은 다름) * 오버라이딩 : 상위클래스로부터 상속 받은 메서드를 하위 클래스가 재정의 설계 ..
디자인패턴이란? 프로그램을 설계할 때 발생했던 문제점들을 객체 간의 상호 관계 등을 이용하여 해결할 수 있도록 하나의 규약 형태로 만들어 놓은 것 싱글톤패턴 하나의 클래스에 하나의 인스턴스만! 보통 데이터베이스 연결 모듈에 많이 사용 하나의 인스턴스를 만들어놓고 공유하며 사용 ㄴ 장점 : 인스턴스 생성 비용이 줄어듬 ㄴ 단점 : 의존성이 높아짐. 싱글톤 패턴 단점 ㄴ TDD(Test Driven Development) 걸림돌_단위테스트는 서로 독립적이여야해서 모듈간의 결합을 강하게 만들 수 있음 -> 의존성 주입(DI) 통해 결합 느슨하게 팩토리패턴 객체 생성 부분을 떼어내 추상화한 패턴 상속관계 두 클래스에서 상위 클래스가 중요한 뼈대 결정 / 하위 클래스가 객체 생성에 관한 구체적인 내용 결정 ( 상..