관리 메뉴

나구리의 개발공부기록

1장 - 서버 프로그램 구현 핵심 요약 본문

2024정보처리기사 준비 정리(필기 - 시나공, 실기 - 수제비)/필기 4강 - 프로그래밍 언어 활용

1장 - 서버 프로그램 구현 핵심 요약

소소한나구리 2024. 5. 9. 10:11

2024년도 시나공 필기 책 내용 정리


* 4강 1장의 내용은 짧고 크게 중요하지 않은 것 같아 핵심요약으로 대체

 

섹션1. 서버 개발

 

1. 대표적인 서버 개발 프레임워크

 

  • Spring : JAVA를 기반으로 만들어진 프레임워크로 전자정부 표준 프레임워크의 기반 기술로 사용되고 있음
  • Node.js : JavaScript를 기반으로 만들어진 프레임워크로 비동기 입/출력 처리와 이벤트 위주의 높은 처리 성능을 갖고 있어 실시간으로 입/출력이 빈번한 애플리케이션에 적합함
  • Django : Python을 기반으로 만들어진 프레임워크로 컴포넌트의 재사용과 플러그인화를 강조하여 신속한 개발이 가능하도록 지원함
  • Codeigniter : PHP를 기반으로 만들어진 프레임워크로 인터페이스가 간편하며 서버 자원을 적게 사용함
  • Ruby on Rails : Ruby를 기반으로 만들어진 프레임워크로 테스트를 위한 웹 서버를 지원하며 데이터베이스 작업을 단순화, 자동화시켜 개발 코드의 길이가 짧아 신속한 개발이 가능함

섹션2. 보안 및 API

 

1. 소프트웨어 개발 보안의 개요

 

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

2. 소프트웨어 개발 보안 점검 항목

 

  • 세션통제
  • 입력 데이터 검증 및 표형
  • 보안 기능
  • 시간 및 상태
  • 에러 처리
  • 코드 오류
  • 캡슐화
  • API 오용

3. API

 

  • 응용 프로그램 개발 시 운영체제나 프로그래밍 언어 등에 있는 라이브러리를 이용할 수 있도록 규칙 등을 정의해 놓은 인터페이스를 의미

섹션3. 배치 프로그램

 

 

1. 배치 프로그램이 갖추어야 하는 필수 요소

 

  • 대용량 : 데이터 대량의 데이터를 가져오거나 전달하거나 계산하는 등의 처리가 가능해야 함
  • 자동화 : 심각한 오류가 발생하는 상황을 제외하고는 사용자의 개입 없이 수행되어야 함
  • 견고성 : 잘못된 데이터나 데이터 중복 등의 상황으로 중단되는 일 없이 수행되어야 함
  • 안정성/신뢰성 : 오류가 발생하면 오류의 발생 위치, 시간, 등을 추적할 수 있어야 함
  • 성능 : 다른 응용프로그램의 수행을 방해하지 않아야하고, 지정된 시간 내에 처리가 완료 되어야 함

2. 스프링 배치(Spring Batch)

 

  • Spring Source사와 Accenture 사가 2007년 공동 개발한 오픈 소스 프레임워크
  • 스프링 프레임워크의 특성을 그대로 가져와 스프링이 가지고 있는 다양한 기능들을 모두 사용할 수 있음

3. Quartz

 

  • 스프링 프레임워크로 개발되는 응용 프로그램들의 일괄 처리를 위한 다양한 기능을 제공하는 오픈 소스 라이브러리
  • 수행할 작업과 수행 시간을 관리하는 요소들을 분리하여 일괄 처리 작업에 유연성을 제공