#oop
16
FundamentalOOP
오브젝트; 객체지향 프로그래밍
이번 장은 이 책을 읽으면서 이해하게 될 다양한 주제들을 얕은 수준으로 가볍게 살펴보는 것 책의 예제 소개를 위한 요구사항 할인 조건 순서 조건 : 상영 순번으로 할인 여부 결정 기간 조건 : 영화 사영시작 시간으로 할인 여부 결정 할인 정책 : 할인 할 요금 결정 금액 할인 정책 : 정액 할인 비율 할인 정책 : 비율 할인 객체지향 패러다임으로 전환은 클래스가 아닌 객체에 초점을 맞출 때에만 얻을 수 있다. 어떤 클래스가 필요한지 고민 하기 전에 어떤 객체들이 필요한지 고민하라 클래스는 공통적인 상태와 행동을 공유하는 객체들을 추
FundamentalOOP
오브젝트; 객체, 설계
이론보다 실무가 먼저다. 설계에 관한 이론은 1970년이 되서야 등장했다. 설계에 대한 이론은 있으나 유지보수에 대한 이론은 없다. 객체지향 프로그램을 설계하고 유지보수하는 데 필요하는 원칙과 기법을 설명하는것이 목적이다. 코드 보기 소프트웨어 모듈의 목적 실행 중에 제대로 동작하는 것이다. 변경을 위해 존재한다. 대부분의 모듈은 생명주기 동안 변경되기 때문에 간단한 작업 만으로도 변경이 가능해야 한다. 코드를 읽는 사람과 의사소통 하는것. 현실의 프로세스와 벗어난 비즈니스 로직은 코드를 읽는 사람과 제대로된 소통이 되지 않는다.
Java EcoTILJava programming
Java; Reflection 개요
자바에서 제공하는 리플렉션(Reflection)은 C, C++과 같은 언어를 비롯한 다른 언어에서는 볼 수 없는 기능입니다. 이미 로딩이 완료된 클래스에서 또 다른 클래스를 동적으로 로딩(Dynamic Loading)하여 생성자(Constructor), 멤버 필드(Member Variables) 그리고 멤버 메서드(Member Method) 등을 사용할 수 있도록 합니다. 그러니까, 컴파일 시간(Compile Time)이 아니라 실행 시간(Run Time)에 동적으로 특정 클래스의 정보를 객체화를 통해 분석 및 추출해낼 수 있는 프
FundamentalTILOOP
SOLID; 객체지향 설계의 5원칙
이 부분은 1회차 지만 신경써서 머릿속에 넣어본다. 실제로 설계하거나 구현 할 때 적절한 모델링(추상화)와 인터페이스의 분리에 신경쓸 필요가 있겠다. 그러나 SRP-ISP와 OCP-DIP 관계의 뉘앙스 차이는 아직 잘 모르겠다. SRP; 단일 책임 원칙 OCP; 개방 폐쇄 원칙 LSP; 리스코프 치환 원칙 ISP; 인터페이스 분리 원칙 DIP; 의존 역전 원칙 모델링, 즉 적절한 추상화와 상속을 통해 구현이 바뀌어도 인터페이스를 통해 사용에 영향을 주지 않는다. 상속의 원칙에 만족하는가? → LSP를 만족한다. is a kind o
Java EcoTILJava programming
자바 객체지향의 원리와 이해 #2
객체지향의 4대 특성에 대해서 알아본다. 이미 알고있는 내용이지만, 책에서는 T메모리 도식을 직접 보여줌으로써 추상화, 다형성, 상속, 캡술화가 각 메모리 영역에 어떤 작용을 하는지 알 수 있었다.
Java EcoTILJava programming
자바 객체지향의 원리와 이해 #1
서점에서 최신 트랜드?가 반영된 OOP를 찾다가 이 책에서 그것을 언급하고있고, 또한 자바 문법의 전반적인 경험을 맛본 나로써 알맞은 난이도의 책이라고 생각했다
FundamentalTILOOP
객체지향과 클래스
간단히 말해서 클래스는 객체에 대한 처사진이다 객체의 인스턴스를 만들 때 객체를 구성하는 기초로 클래스를 사용한다. 클래스와 객체를 설명하려고 하는 일은 닭이 먼저냐 계란이 먼저냐 같은 딜레마이다. 객체란 용어를 사용하지 않고 클래스를 설명하기 어렵고 그 반대도 마찬가지이다. 예를 들어, 어느 개인의 자전거는 객체이다. 그러나 누군가 자전거를 만들기 위한 청사진 (즉, 클래스)을 만들어야만 했다. 닭이 먼저냐 계한이 먼저냐는 딜레마와 달리 OO 소프트웨어에서 무엇이 먼저인지는 알고 있는데, 그것은 클래스이다. 클래스가 없이는 객체의
Java EcoTILJava programming
this가 필요한 상황
this는 클래스 안에서 인스턴스 자기 자신을 바라보는 지시자다. 대부분의 상황에서 생략할 수 있지만 몇가지 필요한 상황이 있는데 예시와 함께 정리해보았다.