전체 글(160)
-
데이터 입출력 구현
(1) 자료구조 1. 자료구조 개념 - 자료구조는 컴퓨터 자료를 효율적으로 저장하기 위해 만들어진 논리적인 구조 - 효율적인 알고리즘을 사용할 수 있게 하기 위하여 성능을 향상시키는 목적 2. 자료구조의 분류 구조 설명 종류 선형 구조 데이터를 연속적으로 연결한 자료 구조 리스트, 스택, 큐, 데크 비선형 구조 데이터를 비연속적으로 연결한 자료구조 트리, 그래프 3. 선형 구조 [1] 리스트 리스트의 종류 선형 리스트 : 배열과 같이 연속되는 기억 장소에 저장되는 리스트, 대표적으로 배열이 있음, 가장 간편한 자료 구조, 자료의 삽입, 삭제 시 기존 자료의 이동 필요 연결 리스트 : 노드의 포인터 부분으로 서로 연결시킨 리스트, 노드의 삽입, 삭제가 선형 리스트와 달리 편리함, 포인터가 추가되어 저장 공..
2022.05.28 -
인터페이스 설계
(1) 요구공학 1. 요구공학의 개념 - 요구공학은 사용자의 요구가 반영된 시스템을 개발하기 위하여 사용자 요구사항에 대한 도출, 분석, 명세, 확인 및 검증하는 구조화된 활동이다. - 이해관계자 사이에 효과적인 의사소통 수단이 목적 2. 요구공학 프로세스 도출 -> 분석 -> 명세 -> 확인 및 검증 ★ 요구사항 개발 단계 순서 절차 내용 1 요구사항 도출 소프트웨어가 해결해야 할 문제를 이해하고 수집된 요구사항을 구체적으로 표현하는 단계 2 요구사항 분석 도출된 요구사항에 대해 완전성과 일관성을 확보하는 단계 3 요구사항 명세 체계적으로 검토, 평가, 승인될 수 있는 문서를 작성하는 단계 4 요구사항 확인 및 검증 요구사항이 고객이 정말 원하는 시스템을 제대로 정의하고 있는지 점검하는 과정 요구사항 ..
2022.05.27 -
객체 지향 설계
(1) 객체 지향 1. 객체 지향이란 - 객체 지향은 실세계의 개체를 속성과 메소드가 결합한 형태의 객체로 표현하는 기법이다. 2. 객체 지향 구성요소 구성요소 설명 클래스 특정 객체 내에 있는 변수와 메소드를 담는 틀 객체 식별 가능한 대상(클래스에 정의된 대로 메모리에 할당) 메소드 클래스로부터 생성된 객체를 사용하는 방법 메시지 객체 간 상호 작용을 하기 위한 수단 인스턴스 클래스를 통해 만든 실제의 실형 객체 속성 한 클래스 내에 속한 객체들이 가지고 있는 데이터 값들을 단위별로 정의 3. 객체 지향 기법 캡슐화 : 서로 연관된 데이터와 함수를 함께 묶어 경계를 만들고 필요한 인터페이스만을 밖으로 드러내는 기법 상속성 : 물려받아 사용 다형성 : 하나의 메시지에 대해 각 객체가 가지고 있는 고유한..
2022.05.26 -
애플리케이션 설계 - 모듈, 설계 모델링, 소프트웨어 아키텍처
(1) 공통 모듈 1. 모듈이란 - 모듈은 크게 독립된 하나의 소프트웨어 또는 하드웨어 단위 2. 모듈의 특징 독립성 : 각각의 모듈은 상대적인 독립성을 가짐(결합도와 응집도에 의해 측정) 다양한 조합 : 모듈 내부에는 모듈을 하나로 통합하는 수많은 조합이 존재 재사용 : 모듈은 단독으로 컴파일 할 수 없으며 재사용 가능 영향 최소화 : 독립성이 높은 모듈일수록 수정 시 다른 모듈에 영향을 거의 미치지 않음 3. 공통 모듈이란 - 전체 프로그램의 기능 중 특정 기능을 처리할 수 있는 실행 코드 - 자체적으로 컴파일 가능하고, 다른 프로그램에서 재사용 가능 - 여러 기능 및 프로그램에서 공통으로 사용할 수 있는 모듈을 의미 4. 공통 모듈 원칙 정확성 : 실제 시스템 구현 시 필요한지 아닌지를 정확하게 작..
2022.05.26 -
화면 설계 - UI
(1) UI 개념 1. UI란? - UI(User Interface)는 넓은 의미에서 사용자와 시스템 사이에서 의사소통 할 수 있도록 고안된 물리적 가상의 매개체 - 좁은 의미로는 정보 기기나 소프트웨어의 화면 등에서 사람이 접하게 되는 화면 2. UI 유형 유형 특징 설명 CLI 정적인 텍스트 기반 인터페이스 명령어를 텍스트로 입력하여 조작하는 사용자 인터페이스 GUI 그래픽 반응 기반 인터페이스 그래픽 환경을 기반으로 한 마우스나 전자펜을 이용하는 사용자 인터페이스 NUI 직관적 사용자 반응 기반 인터페이스 사용자가 가진 경험을 기반으로 키보드나 마우스 없이 신체 부위를 이용하는 사용자 인터페이스(터치, 음성 포함) OUI 유기적 상호 작용 기반 인터페이스 입력장치가 곧 출력자치가 되고, 현실에 존재..
2022.05.25 -
소프트웨어 설계-5(모델링 기법)
(1) 모델링 기법 1. 모델링이란? - 모델링은 실세계의 물리현상을 특정한 목적에 대응하여 이용하기 쉬운 형식으로 표현하는 기법이다. 2. 모델링의 특징 여러 분야의 엔지니어들이 공통된 개념(시스템에 관하여)을 공유하는 데 도움을 줌 개발팀이 응용문제를 이해하는 데 도움을 줄 수 있음 절차적인 프로그램을 위한 자료 흐름도는 프로세스 위주의 모델링 방법이다. (2) 분석 자동화 도구 1. 분석 자동화 도구란? - 분석 자동화 도구는 요구사항을 자동으로 분석하고, 요구사항 분석 명세서를 기술하도록 개발된 요구사항 분석을 위한 자동화 도구. 2. 분석 자동화 도구 기능 - 그래픽을 지원한다. - 소프트웨어 생명주기의 전 단계를 연결한다. - 다양한 소프트웨어 개발 모형을 지원한다. - 표준화된 개발 환경 구..
2022.05.24