[ 소프트웨어 개발 방법론 ]
절차 지향 | 객체 지향 |
정확하게 빠르게 많이 ! | 복잡한 업무를 효과적으로 ! |
소품종 대량 생산 | 다품종 생산 |
기능 중심 | 성능 중심 |
프로피디스크, 하드 등 | AWS, 클라우드 등 |
![]() |
![]() |
1. 폭포수 모델 (Waterfall Model)
요구사항 분석 → 설계 → 디자인 → 코딩 → 개발 순 !
2. 애자일 모델 (Agile Model)
- 최근에 더 많이 쓰인다
- 기민하다
- 반복 ?! => 테스트 - 소통 - 추가 - 테스트 - 소통 - 추가 반복반복반복
- 예시 - 스크럼 방식 : 실리콘밸리에서 제럴드(도날드)가 제안한 방법이다 ! (시즌 1 참고) <- 이거 맘에 든다. 포스트 잇 하나하나 옮기면서 기분이 좋을 것 같다.
+ 소프트웨어 개발 생명 주기 (Life Cycle)
: 요구사항 분석 → 설계 → 구현 → 테스트 → 운영(유지보수)
[ 객체 지향 개념 ( Object Oriented Concept ) ]
객체 지향 개념은 분석, 설계, 구현, 테스트, 운영 전반에 대하여, 어떤 방식으로 소프트웨어를 만들 것인지에 대한 철학이다. |
객체 지향이란 ?
: 객체를 기본 단위로 객체와 객체의 관계를 중심으로 분석, 설계, 구현하는 기법이다.
객체 Object
객체 Object | |
속성 attribute | 기능 operation |
변수 variable | 메서드 method |
: 시스템의 기본 단위
- 객체는 속성과 기능으로 구성된다.
- 시스템의 주요 사물, 개념같은 것들이 단위로서 객체가 될 수 있다.
ex1 축구 | 선수, 감독, 경기장 ..
ex2 쇼핑몰 | 상품, 상점, 고객, 판매원, 구매 ..
* Instance : 실재(실제 존재)화하는 것 (Object 용어와 같은 의미로 쓰임)
클래스 Class
: 객체 생성을 위한 틀 or설계도
Class (틀, 설계도) | Object | Instance (기본 단위) |
붕어빵 틀 | 붕어빵 |
건물 설계도 | 건물 |
*속성과 기능을 각각 변수, 메서드 공간에 수정, 활용하여 같은 Class로 서로 다른 Object를 생성할 수 있다.
변수 variable (instance variable)
: 속성 attribute로도 불린다.
: 객체의 속성을 저장하는 공간이다.
메서드 method
: 기능 opertaion으로도 불린다. (algorithm, function ..)
: 객체의 기능을 정의한다.
: 문법
[접근제어자]_void 또는 return type_메서드명(매개변수){
메서드 실행부
[return]
}
- 메서드 리턴값이 없으면 void
- 있다면 리턴값의 데이터타입을 명시한다.
예시 )
public void method1() {
--
}
public String method2() {
return --
}
** 자바 프로그램 개발 순서 **
1. Class 정의 → 2. 해당 Class를 이용하여 객체(Object) 생성 → 3. 메인 메서드가 있는 Class 실행
** 객체 생성 코드 **
Person p = new Persion() ;
Peson : 클래스명
p : 객체 주소값을 저장하는 변수
= : 할당 assign
Person() : 생성자 Constructor
? 응집도 ? : 본인의 역할에 충실하기 !! |
접근제어자 Access Modifier
자바에서는 클래스(객체) 단위의 정보은닉(Information Hiding)을 위해,
접근 제어자를 통해 접근에 대한 설정을 한다.
public > protected > default > private
public : 어느 곳에서도 접근이 가능하도록 설정
protected : 같은 패키지 내에서 접근 가능,
단 상속시에는 다른 패키지에서도 접근 가능
*상속 : 다음에 공부할 예정 !
default : 따로 명시하지 않을 경우 dafault로 설정,
같은 패키지 내에서만 접근 가능
private : 자신의 클래스에서만 접근 가능
[ 복습 ]
- java 개발 환경 설정 : jdk 다운 후 설치 , jdk/bin을 시스템 환경 변수에 등록
- IDE (통합개발환경) Eclipse 다운 후 실행
- JDK를 설치 해야만 컴파일이 진행 가능하다 . JDK를 설치하면 그 안에 jre가 있고, 그 안에 JVM이 있다.
- JDK > JRE > JVM
JVM
- 자바 가상 머신 : 클래스 파일(자바 실행프로그램)을 OS에 통역
=> java program을 실행한다. (main method부터 진행) - 메모리 관리 : C와 같이 개발자가 직접 메모리를 관리하지 않는다.
=> Garbage Collection을 JVM을 한다.
=> 실제 메모리 정보(Heap memory 영역)와 Stack영역으로 구분하여,
Stack영역에서 주소값만 가져와서 관리한다.
'JAVA SE > 이론 및 개념' 카테고리의 다른 글
[20.07.15/Day_06] Java SE / Array 배열 (0) | 2020.07.16 |
---|---|
[20.07.14/Day_05] Java SE / Variable Scope, 객체 초기화 단계, UML Relationship(association, aggregation, composition) (0) | 2020.07.14 |
[20.07.13/Day_04] Java SE / 연산자, 제어문(조건문,반복문) (0) | 2020.07.13 |
[20.07.10/Day_03] Java SE / Encapsulation, 생성자 Constructor , DataType (0) | 2020.07.09 |
[20.07.08/Day_01] Java SE 환경설정 및 개발툴 설치 및 설정 (0) | 2020.07.08 |