정보처리기사/[inflearn] 필기 (완)

정보처리기사 - 제4과목 프로그래밍 언어활용 / 서버 프로그램 구현

web_seul 2022. 4. 10. 18:28
반응형

 제4과목 프로그래밍 언어활용 

▷ 서버 프로그램 구현

> 개발환경 구축

- 개발 환경 구축의 개요 : 개발 프로젝트를 이해하고 소프트웨어 및 하드웨어 장비를 구축하는 것

- 하드웨어 환경 : 클라이언트(요청/pc. mobile)와 서버(응답/웹서버, 웹 애플리케이션 서버, DB서버, 파일 서버)로 구성

- 소프트웨어 환경 : 시스템 소프트웨어(OS, 서버프로개름, DBMS)와 개발 소프트웨어(요구사항 관리- 수집, 분석추적, 설계모델링, 구현, 빌드, 테스트, 형상관리)로 구성

 

> 서버개발

- 서버개발의 개요 : 웹 어플리케이션의 로직을 구현할 서버 프로그램을 제작하여 웹 애플리케이션 서버에 탑재하는 것, Java, JS, Python, Php, Ruby

- 서버 개발 프레임워크 : 서버프로그램 개발시 클래스나 인터페이스를 제공하는 소프트웨어, 모델-뷰-컨트롤러(MVC)패턴 기반, Spring(Java), Node.js(JS), Django(Python), Codeigniter(Php), Ruby on Rails(Ruby),

- 서버 프로그램 구현 : 응용 소프트웨어와 동일하게 모듈 및 공통 모듈을 개발한 후, 모듈들을 통합하는 방식으로 구현, 프레임워크의 특성(모듈화, 재사용성, 확장성, 제어의 역흐름(생산성향상)), 응집도는 높고 결합도는 낮아야 모듈의 독립성이 향상됨

 

> 보안 및 API

- 소프트웨어 개발 보안의 개요 : 소프트웨어 개발과정에서 발생할 수 있는 보안 취약점(기밀성, 무결성, 가용성 유지)을 최소화하여 보안위협으로부터 안전한 소프트웨어를 개발하기 위한 일련의 보안 활동

- 소프트웨어 개발 보안 점검 항목 : 세션 통제, 입력 데이터 검증 및 표현, 보안기능, 시간 및 상태, 에러처리, 코드오류, 캡슐화, API오용

- API(Application Programming Interface) : 응용 프로그램 개발시 운영체제가 프로그래밍 언어 등에 있는 라이브러리를 이용할 수 있도록 규칙 등을 정의해 놓은 인터페이스

 

> 배치프로그램

- 배치프로그램(Batch Program)의 개요 : 여러 작업들을 미리 정해진 일련의 순서에 따라 일괄적으로 처리하는 것(자동으로 수행되는 주기에 따라(정기배치, 이벤트성배치, On-Demand배치), 배치프로그램이 갖추어야할 필수요소(대용량 데이터, 자동화, 견고성, 안정성(신뢰성), 성능)

- 배치 스케줄러(Batch Scheduler) : 일괄 처리 작업이 설정된 주기에 맞춰 자동으로 수행되도록 지원해주는 도구(스프링 배치, Quartz)

 

> 패키지 소프트웨어

- 패키지 소프트웨어(Package Software)의 개요 : 기업에서 일반적으로 사용하는 여러 기능들을 통합하여 제공하는 소프트웨어

- 패키지 소프트웨어의 특징 : 요구사항을 분석하여 업무 특성에 맞게 전용으로 개발되는 소프트웨어와 비교하여 안정성, 라이선스, 생산성 등에서 차이가 있음

  패키지 SW 전용개발 SW
기능요구사항 70%이상 충족 모든 기능 요구 반영
안정성 품질검증됨 개발자 역량
라이선스 판매자 회사
생산성 절약 개발 인력, 시간 필요
호환성 보장x 설계단계에서 고려
유지보수 즉시대응x 즉시대응o

 

 

반응형