일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 백준
- jpa
- java
- 그리디
- db
- 김영한
- pointcut
- SpringBoot
- QueryDSL
- springdatajpa
- http
- 알고리즘
- JDBC
- Servlet
- kotlin
- Android
- transaction
- AOP
- Proxy
- 스프링 핵심 기능
- Thymeleaf
- 자바
- Exception
- 스프링
- Spring Boot
- spring
- 인프런
- 스프링 핵심 원리
- JPQL
- Greedy
- Today
- Total
목록객체지향 (5)
개발자되기 프로젝트
스프링은 다형성 + OCP, DIP를 가능하게 지원한다. - DI(Dependency Injection): 의존관계, 의존성 주입 - DI 컨테이너 제공 : 자바 객체를 컨테이너에 넣어놓고 의존관계를 연결, 주입하는 기능 제공. 이렇게 해야 클라이언트 코드의 변경 없이 기능을 확장시킬 수 있음 쉽게 부품을 교체하듯이 개발이 가능함! 순수하게 자바로 OCP, DIP원칙을 지키면서 개발하면 결국에는 스프링 프레임워크를 만들게됨 ㅋㅋㅋㅋ 모든 설계에 역할과 구현을 분리!!! 애플리케이션 설계도 공연을 설계 하듯이 배역만 만들어 두고, 배우는 언제든지 유연하게 변경할 수 있도록 만드는 것이 좋은 객체 지향 설계이다!! 이상적으로는 모든 설계에 인터페이스를 부여해야함. 하지만 인터페이스를 너무 도입하면 추상화라는..
SRP : 단일 책임 원칙(single reponsibility principle) OCP : 개방-폐쇄 원칙(Open/closed principle) LSP : 리스코프 치환 원칙(Liskov subsitution principle) ISP : 인터페이스 분리 원칙(Interface segregation principle) DIP : 의존관계 역전 원칙(Dependency inversion principle) 1. SRP : 단일 책임 원칙(single reponsibility principle) 한 클래스는 하나의 책임만 가져야 한다. 그러나 하나의 책임이라는 것은 모호함 - 클 수 있고, 작을 수 있다. - 문맥과 상황에 따라 다름. 중요한 기준은 변경! 변경이 있을 때 효과가 적으면 단일 책임 원..
객체 지향 프로그래밍은 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단뒤, 즉 "객체"들의 모임으로 파악하고자 하는 것이다. 각각의 객체는 메시지를 주고 받고, 데이터를 처리할 수 있다.(협력) 객체 지향 프로그래밍은 프로그램을 유연하고 변경이 용이하게 만들기 때문에 대규모 소프트웨어 개발에 많이 사용된다. 부품을 조립하듯이 component를 쉽고 유연하게 변경!!! 다형성(Polymorphism) 역할과 구현으로 세상을 구분해보자. 운전자(client)는 k3를 타던, 아반떼를 타던, 모델3를 타던 운전이 가능하다. 왜냐? 운전자(client)는 자동차 역학(interface)에 대해서만 의존하기 때문. 자동차의 역할을 만들고 구현을 분리한 것은 !! 운전자를 위해서다...
1. Stack memory - 함수가 호출될 때 지역 변수들이 사용하는 메모리 - 함수의 수행이 끝나면 자동으로 반환됨. * 지역변수 : method에서 사용하는 변수, 그 지역에서만 사용하고 함수의 수행이 끝나면 사라지는 변수 2. 인스턴스 - 클래스는 객체의 속성을 정의하고 기능을 구현하여 만들어 놓은 코드 - 클래스를 기반으로 생성된 객체(인스턴스)는 각각 다른 멤버 변수 값을 가짐 - new 를 통해 새 인스턴스 생성 3. Heap memory - 동적 메모리 - 생성된 인스턴스는 heap memory에 할당된다. - 하나의 class에서 여러 instance가 생성되고 각각 다른 주소를 갖는다. 4. 참조변수 , 참조 값 - 참조변수 : 메모리에 생성된 인스턴스를 가리키는 변수 ex) Sude..
1. 객체(Object) 기능의 단위? 명사로 구분할 수 있는 단위? 2. 객체 지향 프로그래밍 각 단위로 객체를 구분하고 객체의 상호작용을 프로그래밍. 3. Class는 객체의 bluePrint이다. 객체의 속성을 클래스의 member 변수로 선언한다. 4. 객체 지향 프로그램을 할 때는 1) 객체의 정의 2) 객체의 속성을 멤버 변수, 역할을 method로 구현 3) 각 객체간 상호작용 구현 5. Class 코딩 class는 대문자로 시작 camel notation으로 명명 --> Student, SchoolAndStudent