본문 바로가기

분류 전체보기

(47)
[정보처리기사 실기] 6. 디자인 패턴 디자인 패턴- 모듈 간의 관계 및 인터페이스를 설계할 때 참조할 수 있는 전형적인 해결 방식 또는 예제- 생성, 구조, 행위패턴으로 구분 생성 패턴1. 추상 팩토리 : 구체적인 클래스에 의존하지 않고, 인터페이스를 통해 서로 연관, 의존하는 객체들의 그룹으로 생성하여 추상적으로 표현하는 패턴, 키트 패턴이라고 한다.2. 팩토리 메서드 : 객체 생성을 서브 클래스에서 처리하도록 분리하여 캡슐화한 패턴, 가상 생성자 패턴이라고도 한다.3. 빌더 : 작게 분리된 인스턴스를 건축하듯이 조립하여 객체를 생성하는 패턴4. 프로토타입 : 원본 객체를 복제하는 방법으로 객체를 생성하는 패턴5. 싱글톤 : 하나의 객체를 생헝하면 생성된 객체를 어디서든 참조할 수 있지만, 여러 프로세스가 동시에 참조할 수는 없는 패턴 구..
[정보처리기사 실기] 5. 결합도, 응집도 결합도- 모듈 간에 상호 의존하는 정도- 결합도가 약할수록 품질이 높고, 강할수록 품질이 낮다. 결합도 순서 ( 강함 -> 약함) - 내공외제스자 내용 결합도 -> 공통 결합도 -> 외부 결합도 -> 제어 결합도 -> 스탬프 결합도 -> 자료 결합도 1. 내용 결합도한 모듈이 다른 모듈의 내부 기능 및 그 내부 자료를 직접 참조하거나 수정할 때의 결합도 2. 공통 결합도공유되는 공통 데이터 영역을 여러 모듈이 사용할 때의 결합도, 전역변수 3. 외부 결합도외부의 다른 모듈에서 참조할때의 결합도 4. 제어 결합도어떤 모듈이 다른 모듈 내부의 논리적인 흐름을 제어하기 위해 제어 신호나 제어 요소를 전달하는 결합도 5. 스탬프 결합도모듈 간의 인터페이스로 배열이나 레코드 등의 자료구조가 전달될 때의 결합도 6..
[정보처리기사 실기] 4. 서버 프로그램 구현 소프트웨어 아키텍처소프트웨어를 구성하는 요소들 간의 관계를 표현하는 시스템의 구조 또는 구조체 모듈화시스템의 기능들을 모듈 단위로 나누는 것 추상화전체적이고 포괄적인 개념을 설계 후 세분화하여 구체화시키는 것 단계적 분해문제를 상위의 중요 개념으로부터 하위의 개념으로 구체화 시키는 분할 기법 정보 은닉한 모듈 내부에 포함된 절차와 자료들의 정보가 감추어져 다른 모듈이 접근하거나 변경하지 못하도록 하는 기법 협약에 의한 설계-선행 조건-결과 조건-불변 조건 아키텍처 패턴아키텍처를 설계할 때 참조할 수 있는 전형적인 해결 방식 또는 예제 레이어 패턴시스템을 계층으로 구분하여 구성하는 고전적인 방법의 패턴 클라이언트-서버 패턴하나의 서버 컴포넌트와 다수의 클라이언트 컴포넌트로 구성되는 패턴 파이프-필터 패턴데..
[정보처리기사 실기] 3. 데이터 입출력 구현 (2) 뷰하나 이상의 기본 테이블로부터 유도된, 이름을 가지는 가상 테이블 파티션범위 분할 : 지정한 열의 값을 기준으로 분할해시 분할 : 해시 함수를 적용한 결과 값에 따라 데이터 분할 조합 분할 : 범위 분할한 다음 해시 함수를 적용하여 다시 분할하는 방식 분산 데이터베이스의 목표- 위치 투명성- 중복 투명성- 병행 투명성- 장애 투명성 RTO (Recovery Time Objective)비상사태 또는 업무 중단 시점으로부터 복구되어 가동될 때 까지의 소요 시간 RPO (Recovery Point Objective)비상사태 또는 업무 중단 시점으로부터 데이터를 복구할 수 있는 기준점 임의 접근 통제 (DAC)데이터에 접근하는 사용자의 신원에 따라 접근 권한 부여하는 방식 강제 접근 통제 (MAC)객체와 주..
[정보처리기사 실기] 2. 데이터 입출력 구현 DBMS사용자의 요구에 따라 정보를 생성해주고, 데이터베이스를 관리해주는 소프트웨어 DBMS의 필수 기능- 정의 기능 : 데이터의 형, 구조에 대한 정의, 이용 방식, 제약조건을 명시하는 기능- 조작 기능 : 데이터 검색, 갱신, 삽입, 삭제 등을 위해 인터페이스 수단을 제공하는 기능- 제어 기능 : 데이터의 무결성, 보안, 권한 검사, 병행 제어를 제공하는 기능 스키마데이터베이스의 구조와 제약조건에 관한 전반적인 명세를 기술한 것- 외부 스키마 : 사용자나 응용 프로그래머가 각 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의한 것- 개념 스키마 : 데이터베이스의 전체적인 논리적 구조, 모든 응용 프로그램ㅁ이나 사용자들이 필요로 하는 데이터를 종합한 조직 데이터베이스로 하나만 존재함- 내부..
[정보처리기사 실기] 1. 요구사항 확인 소프트웨어 생명주기 소프트웨어를 개발하기 위한 설계, 운영, 유지보수 등의 과정을 각 단계별로 나눈 것나선형 모형개발 과정을 반복하여 점진적으로 개발을 완료하는 모형보햄이 제안하였다.계획 수립 -> 위험 분석 -> 개발 및 검증 -> 고객 평가의 단계를 반복.폭포수 모형각 단계를 확실히 마치고 다음 단계로 넘어가는 고전적 생명주기 모형 애자일 모형요구사항 변화에 맞게 유연하게 대응할 수 있도록 일정한 주기를 반복하며 개발하는 모형- XP, Lean, 기능중심 개발- 개인과 상호작용, 작동하는 SW, 고객과 협업, 변화에 반응하는 것을 핵심 가치로 한다. 소프트웨어 공학소프트웨어 위기를 극복하기 위한 방안으로 연구된 학문 XP요구사항에 유연하게 대응하기 위해 고객의 참여와 개발 과정의 반복을 극대화하여 개..
[ Flutter ] 화면 스크롤 시 AppBar 색상이 변경되는 문제 해결 플러터로 앱 스크린 구현 중 다음과 같은 현상이 발생하였다. SingleChildScrollView를 사용하여 화면을 스크롤하게 만든 다음, 화면을 스크롤하면 appbar의 색상이 변경되는 현상인데,이게 눈에 너무 거슬려서 꼭 해결해야 하는 문제라고 생각했다. 구글링 결과 찾은 방법은 다음과 같다. 1. scrolledUnderElevation : 0 무슨 이유인지 해결되지 않았다. 2. surfaceTintColor : Colors.transperent이것도 해결되지 않았다. 내가 해결한 방법은 바로 forceMeterialTransparency : true 였다.이걸 추가하니 바로 해결되었다.appBar: AppBar( forceMaterialTransparency: true, ..
[ 운영체제 ] 메모리 할당 방식 메모리 할당 방식은 연속 메모리 할당, 불연속 메모리 할당 방식으로 나눠진다. 연속 메모리 할당: 프로세스 하나의 메모리를 하나의 연속된 물리 주소 공간에 적재- 고정 분할 : 물리 메모리를 일정한 크기 파티션으로 나누고, 파티션 1개에 프로세스 1개 적재파티션 내부에 사용할 수 없는 남는 공간이 생기는 내부 단편화 문제가 발생한다. - 가변 분할 : 물리 메모리를 프로세스의 크기에 따라 다양한 크기의 파티션으로 분할프로세스들이 드나들변서 생긴 빈 공간이 연속적이지 않아 프로세스를 적재할 수 없는 외부 단편화 문제가 발생한다.-> 병합, 집약/압축의 방법으로 단편화 문제 해결 - 최초 적합, 최적 적합, 최악 적합 3가지 방법으로 배치할 수 있다.최초 적합 : 첫번째로 발견한 공간에 할당한다.최적 적합..