1. 클래스 란?
- 사물의 특성을 소프트웨어적으로 추상화하여 모델링 한 것으로서 멤버변수와 메서드의 집합
2. 객체(Object / Instance) 란?
- 객체란 오브젝트 또는 인스턴스라고도 한다
- 객체는 클래스를 힙(heap) 메모리 영역에 할당한 것
- 자바에서는 new 키워드를 사용한다
3. 자바의 클래스가 메모리에 올라가는 실제 코드 예시
4. 위의 코드를 실행했으 시, 메모리의 상태
5. OOP 란?
- Object-Oriented Programming 의 약자
- 자바에서는 클래스가 OOP의 단위
- 사물의 특성을 소프트웨어적으로 추상화하여 모델링 한 것
- 장점은 클래스는 재사용이 가능하여 협업하기 쉽고, 클래스의 내부 구조를 알 필요없이 사용만 하면 쉽게 소프트웨어를 개발 할 수 있다. 이것이 캡슐화, 추상화 이다.
6. MVC 패턴은 무엇?
- 모델(Model), 뷰(View), 컨트롤러(Controller) 영역으로 구분하여 개발하는 방식을 MVC 패턴이라고 한다
- 디자이너와 개발자 영역이 분리됨으로서 분업화가 쉬워지고, 유지보수가 용이하다
7. 프레임워크 란?
- 소프트웨어 개발할때 뼈대가 되는 부분을 미리 구현한(만들어 놓은) 클래스와 인터페이스와 메서드의 집합
- 미리 만들어 놓은 코드를 사용하기 때문에 빠르게 개발할 수 있고, 품질이 보장되어 있다
- 단점은 프레임워크를 학습하는데 시간이 걸릴 수 있고, 프레임워크의 내부를 내 마음대로 바꿀수가 없다.(=커스터마이징이 어렵다)
'IT' 카테고리의 다른 글
RDBMS 와 NoSQL (0) | 2020.10.05 |
---|---|
On-Premise / Cloud Services (0) | 2020.09.29 |
Data Structure(JAVA Collections) Stack, Queue ... (0) | 2020.09.25 |
REST API (0) | 2020.09.25 |
프로세스, 쓰레드, 쓰레드풀, 캐시 Proccess, Thread, Thread Pool, Cache (0) | 2020.09.24 |