반응형
서버 개발
1. 서버 개발
- 웹 애플리케이션의 로직을 구현할 서버 프로그램을 제작하여 웹 애플리케이션 서버(WAS)에 탑재하는 것
- 서버 개발에 사용되는 프로그래밍 언어: JAVA, JavaScript, Python, PHP, Ruby
2. 서버 개발 프레임워크
프레임워크(Framework)
‘뼈대’, ‘골조’를 의미, 소프트웨어에서는 특정 기능을 수행하기 위해 필요한 클래스나 인터페이스 등을 모아둔 집합체를 뜻함
- 대부분 MVC(Model, View, Controller) 패턴을 기반으로 개발됨
MVC 패턴22년 1회 필기 기출
사용자 인터페이스를 담당하는 계층의 응집도를 높일 수 있고 여러 개의 다른 UI를 만들어 그 사이에 결합도를 낮출 수 있다.
M < - C -> V
> 뷰(Veiw): 모델(Model)에 있는 데이터를 사용자 인터페이스에 보이는 역할을 담당한다.
> 제어(Controller): 모델(Model)에 명령을 보냄으로써 모델의 상태를 변경할 수 있다.(모델과 뷰사이의 전달자)
서버 프레임워크명 | 프로그래밍 언어 | 특징 |
Spring | JAVA | 전자정부 표준 프레임워크의 기반 기술로 사용 |
Node.js | JavaScript | 비동기 입, 출력 처리와 이벤트 위주의 높은 처리 성능을 갖고 있어 실시간으로 입, 출력이 빈번한 애플리케이션에 적합함 |
Django | Python | 컴포넌트의 재사용과 플러그인화를 강조하여 신속한 개발이 가능하도록 지원 |
Codeigniter | PHP | 인터페이스가 간편, 서버 자원을 적게 사용함 |
Ruby on Rails | Ruby | 테스트를 위한 웹 서버를 지원하며 데이터 베이스 작업을 단순화, 자동화시켜 개발 코드의 길이가 짧아 신속한 개발 가능 |
2.1) 서버 프로그램 구현(효과적인 모듈 설계) 20년 3회 기출
- 응용 SW와 동일하게 모듈 및 공통 모듈을 개발한 후, 모듈들을 통합하는 방식으로 구현, 유지보수가 용이
공통 모듈
여러 프로그램에서 재사용(Reuse) 할 수 있는 모듈
→ 함수와 객체 재사용, 컴포넌트 재사용, 애플리케이션 재사용
- 모듈의 독립성을 높이려면 모듈의 결합도(Coupling)를 약하게 하고, 응집도(Cohesion)를 강하게 하며 모듈의 크기를 작게 만들어야 함
- 복잡도와 중복성을 줄이고 일관성 유지
2.2) 프레임워크의 특성 #모재확역
- 모듈화(Modularity) 프레임워크는 캡슐화를 통해 모듈화를 강화하고 설계 및 구현의 변경에 따른 영향을 최소화함으로써 소프트웨어의 품질을 향상함
- 확장성(Extensibility) 프레임워크는 다형성(Polymorphism)을 통한 인터페이스 확장이 가능하여 다양한 형태와 기능을 가진 애플리케이션 개발이 가능함
- 제어의 역흐름(Inversion of Control) 개발자가 관리하고 통제해야 하는 객체들의 제어를 프레임워크가 관리함으로써 생산성 향상함
- 재사용성(Reusability) 프레임워크는 재사용 가능한 모듈들을 제공함으로써 개발자의 생산성을 향상함
2.3 ) 프레임워크의 구성요소
- 개발, 실행 , 운영, 관리 환경
반응형
'Challenges > 정보처리기사' 카테고리의 다른 글
[정보처리기사]4.프로그래밍 언어 활용/서버 프로그램 개발 환경 구축/배치 프로그램 (0) | 2022.07.02 |
---|---|
[정보처리기사]4.프로그래밍 언어 활용/서버 프로그램 개발 환경 구축/보안 (0) | 2022.07.02 |
[정보처리기사]4.프로그래밍 언어 활용/서버 프로그램 개발 환경 구축/개발환경 구축 (0) | 2022.07.02 |
[정보처리기사]3.데이터베이스 구축/물리 데이터베이스 설계/데이터베이스 회복(Database Recovery) (0) | 2022.07.02 |
[정보처리기사]3.데이터베이스 구축/물리 데이터베이스 설계/데이터 전환 (0) | 2022.07.01 |