국비지원 학원 - JAVA기반 스마트앱 개발2021
라이브러리
라이브러리
2021.08.01학습내용 라이브러리 개용 사용자 정의 라이브러리 학습목표 라이브러리의 정의를 이해하여 표준 라이브러리를 사용할 수 있다. 사용자 정의 라이브러리를 만들고 프로그램에 적용할 수 있다. 라이브러리 개요 1. 라이브러리 이해 1) 정의 (1) 서브루틴이나 함수들이 저장된 파일들의 모음 (2) 보통 컴파일된 형태인 목적코드 형태로 존재 (3) 프로그램에서 공통 사용 가능한 기능을 포함하고 있는 오브젝트 파일 (4) 사용자의 프로그램과 링크되어, 실행이 가능한 완전한 프로그램 - 사용이유 : 자주 사용되는 특정한 기능을 main 함수에서 분리해 놓음 2) 분류 정적 라이브러리 공유 라이브러리 동적 라이브러리 * 프로그램을 컴파일하여 생성되는 바이너리에 적재 * 프로그램이 시작될 때 적재 * 하나의 프로그램에서 적..
애플리케이션 최적화
애플리케이션 최적화
2021.08.01학습내용 Optimization 최적화 작업 학습목표 최적화의 의미와 목적에 대해 설명할 수 있다. 최적화가 필요한 코드를 찾을 수 있고 필요한 최적화 작업을 수행할 수 있다. Optimization 1. 최적화 개요 1) 최적화란? - 정보공학에서 시스템을 수정하여 어떠한 면의 작업을 더 효과적으로, 또는 자원을 덜 사용하도록 만드는 작업 - 컴퓨터 프로그램은 더 빠르게 실행되거나 기억장치 또는 자원을 덜 차지하게 하여 운영하도록 개선 - 유지보수의 편의성을 고려한 코드 개선 - 안정성 확보를 위한 최적화 2) 최적화 기법 성능체크 : 최적화 대상 선정 코드분석 : 최적화 향상 (1) 병목지점 찾기(소요시간) (2) 구조체 복사 시 대입연산자 대신 라이브러리 함수를 이용 (3) 구조체 전달은 포인터를 ..
디버깅
디버깅
2021.08.01학습내용 디버깅 개요 디버깅 수행 학습목표 디버깅의 기본 개념에 대해 설명할 수 있다. 각 개발환경별 디버깅 방법을 사용할 수 있다. 디버깅 개요 1. 정의 1) 디버깅(Debugging)이란? - 프로그래밍 과정 중에 발생하는 오류나 비정상적인 연산과 같은 버그를 찾고 수정하는 과정 - 버그(Bug)는 프로그램 과정 중에 발생하는 오류 (1) 오타로 인한 오류 (2) 문법적인 오류 (3) 논리적인 오류 (4) 잘못된 라이브러리 사용 (5) 시스템상의 한계로 인한 오류 2. 디버거(Debugger) 1) 디버깅을 수행하는 프로그램 : Visual Studio, Code Blocks 2) 대부분의 IDE는 디버거를 내장 3) 수행기능 - 변수값 추적 - 중단점 지정 - 모듈 단위 실행 (1) 디버깅 방법 ..
프로그래밍 언어별 특성
프로그래밍 언어별 특성
2021.07.31학습내용 컴퓨터 언어 개요 컴퓨터 언어 종류 학습목표 컴퓨터 언어를 각각의 기준에 따라 분류하고 특징을 설명할 수 있다. 다양한 언어의 특징과 주 사용 분야를 알고 작업에 맞게 선택할 수 있다. 컴퓨터 언어 개요 1. 프로그래밍 개요 컴퓨터 언어(Computer Language)란? 프로그래밍(Programming)이란? * 컴퓨터를 이용하여 특정 작업을 수행하고자 할 때 컴퓨터에 전달하는 작업 지시서 * 명령어들의 집합 * 작업 지시서를 미리 약속된 규칙과 문법을 이용하여 기술하는 행위 2. 프로그래밍 언어 분류 1) 사용자 측면에서의 종류 2) 실행 측면에서의 종류 컴퓨터가 직접 실행하거나 매개체를 이용하여 실행 (1) 컴파일러 언어(Compiled Language) - 기계어로 컴파일되는 언어 - ..
애플리케이션 구현
애플리케이션 구현
2021.07.31학습내용 프로그램 설계 코드 분석 학습목표 프로그래밍 개발 시 적절한 자료구조를 선택할 수 있다. 구조체를 사용하여 함수의 매개변수 전달을 구현할 수 있다. 프로그램 설계 1. 구조체란? 프로그램명 - 성적 처리 프로그램 조요기능 - 학생들의 성적을 입력받고 평균을 구하여 성적순으로 출력하는 프로그램 자료구조 - 이름, 국어, 영어, 수학, 평균 요구사항 - 학생 이름은 10글자 이내 - 최대 20명의 학생 성적 처리 - 평균값 자동계산 - 메뉴 방식 UI 2. 자료구조 정의 자료구조 - 이름, 국어, 영어, 수학, 평균 3. 메뉴구조 코드분석 1. 헤더파일 2. main함수 3. 입출력함수 학습정리 1. 프로그램 설계 프로그램 개발 시 요구사항 분석 후 적절한 자료구조를 선택하는 것이 중요함 다양한 데..
전처리기
전처리기
2021.07.31학습내용 매크로 조건부 컴파일 학습목표 매크로 상수와 매크로 함수의 쓰임새를 알고 프로그램에 구현할 수 있다. 조건부 컴파일 구분을 이해하고 사용할 수 있다. 매크로 1. 전처리기 컴파일러가 소스 파일을 컴파일하기 전에 먼저 수행되는 프로그램 1) 프로그래머가 작성한 소스 파일이 컴파일될 수 있도록 준비함 2) 전처리기 문장은 '#'으로 시작 전처리기 문장 기능 #define 매크로를 정의 #include 헤더 파일을 포함 #if, #else, #endif 조건에 따라 컴파일 #ifdef 매크로가 정의된 경우에 컴파일 #ifndef 매크로가 정의되지 않는 경우에 컴파일 2. 매크로 상수 3. 매크로 함수 1) 매크로 함수는 함수처럼 인자를 갖는 매크로 2) 매크로 상수처럼 함수가 사용되는 곳에 문자열 대..
배열 포인트 처리
배열 포인트 처리
2021.07.31학습내용 포인터 배열 기초 고급 포인터 배열 기술 학습목표 배열을 포인터 배열로 참조하는 방법을 구현할 수 있다. 구조체를 포인터 배열로 참조하는 방법을 구현할 수 있다. 포인터 배열 기초 1. 1차원 포인터 배열 주소를 저장하는 배열 1) 포인터 배열의 각 원소로 변수의 주소를 저장함 2) 배열의 각 원소가 포인터형이므로, 원소가 가리키는 변수에 접근 하려면 배열의 원소 앞에 간접 참조 연산자 *를 사용해야 함 2. 2차원 포인터 배열 포인터 배열의 각 원소에 배열의 시작 주소를 저장 arr[i]가 int 배열의 시작 주소로 초기화되었을 때, arr[i]가 가리키는 배열의 원소에 접근하려면 arr[i][j]라고 씀 고급 포인터 배열 기술 1. 구조체 포인터 배열 1) 구조체 배열은 메모리를 많이 사용하..
스토리지 클래스
스토리지 클래스
2021.07.31학습내용 기초 이해 정적 변수 학습목표 스토리지 클래스의 종류에 대해 설명할 수 있다. 정적 변수의 특징에 대해 설명할 수 있다. 기초 이해 1. 기억부류(스토리지 클래스) 변수나 함수를 선언할 때 사용되는 키워드 1) 변수나 함수의 저장 위치와 사용 범위를 결정 2) 변수나 함수 선언 시 맨 앞에 지정 3) 변수의 디폴트 기억 부류는 auto이고, 함수의 디폴트 기억 부류는 extern 2. auto변수 지역 변수는 디폴트로 auto 기억 부류를 사용 --> auto 지역 변수는 선언된 위치에서 자동으로 생성되고, 선언된 블록을 빠져나갈 때 자동을 해제됨 - 전역 변수에는 auto 지정불가 3. register변수 1) 변수를 메모리에 할당하는 대신 CPU의 레지스터에 할당 2) 변수를 레지스터에 할당..