분류 전체보기 228

[정처기 실기] 6장 - 화면 설계

사용자 인터페이스 사용자 인터페이스(UI): 사용자와 시스템 간의 상호작용이 원활하게 이뤄지도록 도와주는 장치나 소프트웨어 정보 제공과 전달을 위한 물리적 제어에 관한 분야 콘텐츠의 상세적인 표현과 전체적인 구성에 관한 분야 모든 사용자가 편리하고 간편하게 사용하도록 하는 기능에 대한 분야 구분 CLI(Command Line Interface): 명령과 출력이 텍스트 형태로 이루어지는 인터페이스 GUI(Graphical User Interface): 아이콘이나 메뉴를 마우스로 선택하여 작업을 수행하는 그래픽 환경의 인터페이스 NUI(Natural User Interface): 사용자의 말이나 행동으로 기기를 조작하는 인터페이스 기본 원칙 직관성: 누구나 쉽게 이해하고 사용할 수 있어야 한다. 유효성: 사..

정보처리기사 2021.04.14

[정처기 실기] 5장 - 서버 프로그램 구현

개발 환경 구축 개발 환경 구축: 응용 소프트웨어 개발을 위해 개발 프로젝트를 이해하고 소프트웨어 및 하드웨어 장비를 구축하는 것. 하드웨어 환경: 클라이언트, 서버로 구성 클라이언트: PC, 스마트폰 서버 웹 서버(Web Server): 클라이언트로 부터 직접 요청을 받아 처리. 저용량의 정적 파일들을 제공 웹 어플리케이션 서버(WAS): 사용자에게 동적 서비스를 제공하기 위해 웹 서버로 부터 요청을 받아 작업을 수행. 웹 서버와 데이터베이스 서버 또는 파일 서버 사이에서 인터페이스 역할 수행 데이터베이스 서버(DB Server): 데이터베이스와 DBMS를 관리 파일 서버(File Server): 파일들을 저장 웹 서버의 기능 HTTP/HTTPS 지원: 브라우저로부터 요청을 받아 응답 통신 기록: 처리..

정보처리기사 2021.04.14

[정처기 실기] 4장 - 통합 구현

연계 요구사항 분석 통합 구현: 사용자의 요구사항에 맞춰 송, 수신 모듈과 중계 모듈 간의 연계를 구현하는 것을 의미. 송신 시스템, 수신 시스템, 중계 시스템, 연계 데이터, 네트워크로 구성. 송신 시스템 --> 중계 시스템 --> 수신 시스템 송신 시스템: 데이터를 생성 및 변환하여 전송하는 시스템. 수신 시스템 : 수신받은 데이터를 정제 및 변환하는 시스템 연계 매커니즘 정의 연계 매커니즘은 데이터의 생성 및 전송을 담당하는 송신 체계와 데이터 수신 및 운영 DB 반영을 담당하는 수신 체계로 구성. 직접 연계 방식: 중간 매개체 없이 송, 수신 시스템이 직접 연계하는 방식. 연계 및 통합 구현이 단순하고 용이. 데이터 연계 처리 성능이 뛰어남. 개발 비용이 저렴하고 개발 기간이 짧음. // [장점]..

정보처리기사 2021.04.14

[정처기 실기] 3장 - 데이터 입,출력 구현

데이터 모델의 개념 데이터 모델은 현실 세계의 정보들을 컴퓨터에 표현하기 위해서 단순화, 추상화하여 체계적으로 표현한 개념적 모형이다. 구성요소 개체: 데이터베이스에 표현하려는 것. 사람이 생각하는 개념이나 정보 단위 같은 현실 세계의 대상체. 속성: 데이터의 가장 작은 논리적 단위. 파일 구조상의 데이터 항목 또는 데이터 필드에 해당. 관계: 개체 간의 관계 또는 속성 간의 논리적인 연결을 의미. 개념적 데이터 모델: 현실 세계에 대한 인간의 이해를 돕기 위해 현실 세계에 대한 인식을 추상적 개념으로 표현하는 과정. (E-R 모델) 논리적 데이터 모델: 개념적 모델링 과정에서 얻은 개념적 구조를 컴퓨터가 이해하고 처리할 수 있는 컴퓨터 세계의 환경에 맞도록 변환하는 과정. 데이터 모델에 표시할 요소 구..

정보처리기사 2021.04.14

[정처기 실기] 2장 - 요구사항 확인

현행 시스템 파악 시스템 파악 절차 시스템 구성 / 기능 / 인터페이스 파악 --> 아키텍처. 소프트웨어 구성 파악 --> 하드웨어, 네트워크 구성 파악 개발 기술 환경 파악 운영체제: 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효율적으로 사용할 수 있도록 환경을 제공하는 소프트웨어. (Windows, UNIX, Linux, Mac OS...) DBMS: 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고, 데이터베이스를 관리해 주는 소프트웨어. (Oracle, MySQL, MongoDB, SQLite...) 웹 어플리케이션 서버 (WAS): 정적인 콘텐츠 처리를 하는 웹 서버와 달리 사용자의 요구에 따라 변하는 동적인 콘텐츠를 처리하기 위해 사용되는 미들..

정보처리기사 2021.04.14

[BOJ] 20057 - 마법사 상어와 토네이도

개인적인 풀이일 뿐, 최적의 정답이 아님을 알려드립니다. 문제 www.acmicpc.net/problem/20057 20057번: 마법사 상어와 토네이도 마법사 상어가 토네이도를 배웠고, 오늘은 토네이도를 크기가 N×N인 격자로 나누어진 모래밭에서 연습하려고 한다. 위치 (r, c)는 격자의 r행 c열을 의미하고, A[r][c]는 (r, c)에 있는 모래의 양을 www.acmicpc.net 난이도: 골드 4 사용언어: JAVA 풀이 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081i..

[BOJ] 14891 - 톱니바퀴

개인적인 풀이일 뿐, 최적의 정답이 아님을 알려드립니다. 문제 www.acmicpc.net/problem/14891 14891번: 톱니바퀴 첫째 줄에 1번 톱니바퀴의 상태, 둘째 줄에 2번 톱니바퀴의 상태, 셋째 줄에 3번 톱니바퀴의 상태, 넷째 줄에 4번 톱니바퀴의 상태가 주어진다. 상태는 8개의 정수로 이루어져 있고, 12시방향부터 www.acmicpc.net 난이도: 골드 5 사용언어: JAVA 풀이 비교적 간단한 구현 문제입니다. 저는 재귀를 이용해 각 톱니바퀴에서 오른쪽부터 모두 검사하고, 그 뒤에 왼쪽을 모두 검사하여 회전시켜야 할 톱니바퀴들만 마지막에 일괄적으로 회전시켜주는 형식으로 문제를 해결했습니다. 1234567891011121314151617181920212223242526272829..

[BOJ] 14499 - 주사위 굴리기

개인적인 풀이일 뿐, 최적의 정답이 아님을 알려드립니다. 문제 www.acmicpc.net/problem/14499 14499번: 주사위 굴리기 첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20), 주사위를 놓은 곳의 좌표 x y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1), 그리고 명령의 개수 K (1 ≤ K ≤ 1,000)가 주어진다. 둘째 줄부터 N개의 줄에 지도 www.acmicpc.net 난이도: 골드 5 사용언어: JAVA 풀이 특별한 자료구조를 사용하는 것이 아닌 구현 문제입니다. 주사위가 굴러갈 때마다 주사위의 각 면을 새롭게 배치해주는 방식으로 해결하였습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ..

[BOJ] 6593 - 상범 빌딩

개인적인 풀이일 뿐, 최적의 정답이 아님을 알려드립니다. 문제 www.acmicpc.net/problem/6593 6593번: 상범 빌딩 당신은 상범 빌딩에 갇히고 말았다. 여기서 탈출하는 가장 빠른 길은 무엇일까? 상범 빌딩은 각 변의 길이가 1인 정육면체(단위 정육면체)로 이루어져있다. 각 정육면체는 금으로 이루어져 있어 www.acmicpc.net 난이도: 골드 5 사용언어: JAVA 풀이 전형적으로 BFS를 사용하여 풀 수 있는 문제이며, 단 한 가지 다른 점은 일반적인 BFS 문제는 2차원 배열에서 풀이를 한다면, 위의 문제는 3차원 배열에서 풀이를 한다는 점입니다. 따라서 이동할 수 있는 장소를 표현할 때 한 차원을 더 표현해주어야 하기 때문에 조금 헷갈리는 부분이 있을 수 있을 뿐, 어렵게 ..

[BOJ] 9935 - 문자열 폭발

개인적인 풀이일 뿐, 최적의 정답이 아님을 알려드립니다. 문제 www.acmicpc.net/problem/9935 9935번: 문자열 폭발 첫째 줄에 문자열이 주어진다. 문자열의 길이는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 둘째 줄에 폭발 문자열이 주어진다. 길이는 1보다 크거나 같고, 36보다 작거나 같다. 두 문자열은 모 www.acmicpc.net 난이도: 골드 4 사용언어: JAVA 풀이 저는 이 문제를 Deque를 사용하여 해결했습니다. Deque는 스택과 큐를 합쳐놓은 형태로, 배열의 앞 뒤로 모두 입출력이 가능한 형태입니다. 폭발 문자열을 찾아낼 때는 스택이, 폭발 문자열이 아님을 확인하고 그대로 출력할 때는 큐가 필요하여 Deque를 사용했습니다. 또한 Deque를 사용..