컴포넌트와 모듈의 차이
컴포넌트 : 동작하고 있는 엔티티
모듈 : 구현의 단위
자바란 ?
자바의 구동원리
객체지지향과 절차지향의 차이
위에서 아래로 순서를 정하여 개발하는 방법
실행 속도가 빠른 장점
실행 순서가 정해져있기에 코드의 순서가 바뀌면 결과값이 달라진다(유지보수가 어렵다)는 단점
데이터 중심적으로 프로그램을 설계한다.
현실 세계를 모델링하여 부품을 조립하는 것 처럼 개발하는 방법
코드의 재활용성이 높다는 장점
실행속도가 느리고 설계에 많은 시간이 소요되는 단점
객체중심적으로 프로그램을 설계한다.
캡슐화, 상속, 다형성 등이 있다.
단!
절차지향의 반대는 객체지향이 아니고 객체지향의 반대는 절차지향이 아니다.
참고 링크
객체지향 언어의 특징 4가지
다른 객체로부터의 접근을 막고, 로직을 숨긴다. (정보은닉, getter, setter를 통해 간접적으로 접근)
내가 구현할 시스템에 맞게 관심있는 특성만 추출해서 표현하는 것(병원에서의 사람속성과, 은행에서의 사람속성은 다르다)
공통적인 내용의 기존 클래스를 이어받아 새로운 클래스를 생성하는 기법(동물(강아지)): 먹다, 자다, 소리내다)
오버라이팅, 오버로딩을 통해 하나의 메서드나 클래스가 다양한 방법으로 동작하는 기법
오버라이딩과 오버로딩의 차이
부모를 상속받은 자식클래스에서 부모와 똑같은 메서드를 자신의 상황에 맞게 메서드를 재정의하는 것입니다.
매개변수만 다른 메서드를 중복 정의하는 것이다. 오버로딩은 메서드 하나의 이름으로 같은 시능을 사용할 수 있습니다.