랑아
article thumbnail
객체지향 기술 3

03. 자바(Java) 01. Java와 객체의 개념 1) Java의 특징 Java는 클래스 단위로 프로그래밍함 main() 함수를 포함한 클래스명과 파일명이 같아야 함 파일명과 클래스명이 같은 클래스가 가장 먼저 실행되는 클래스 2) 객체(Object) 이해하기 객체는 움직이거나 동작할 수 있는 모든 사물이나 실체를 말함 대부분 모든 명사 형태로 표현할 수 있는 것이면 모두 객체가 될 수 있음 컴퓨터의 기술이 계속 발전하면서 사람의 직접적인 일상에 접근되므로 객체는 실세계의 접근 기술이라고 함 사람, 자동차, 컴퓨터, 자전거 등 동작할 수 있는 것들이 모두 객체가 될 수 있음 객체 프로그래밍은 객체를 정의하고 생성하여 객체 간의 관계를 맺어 프로그래밍하는 것 3) 객체 고유의 속성과 동작, 행위 객체 ..

article thumbnail
객체지향 기술 2

02. 객체지향 개발 순서 01. 객체지향 개발 순서 1) 객체지향 개발 순서 개념 객체지향 개발 방법은 최근 소프트웨어 제품의 전형적인 타입인 사용자 중심, 대화식 프로그램의 개발에 적합한 방식 객체지향 설계와 분석은 전통적인 기법인 폭포수 모형처럼 단계가 명확히 구분되지 않음 뚜렷이 구분되지 않기 때문에 분석 설계 및 구현 단계들 사이의 의미적 갭(Gap)이 작음 2) 객체지향 개발 순서 개념도 02. 객체 지향 분석(OOA : Object Oriented Amalysis) 1) 객체지향 분석의 특징 객체지향 분석은 문제 영역의 분석 대상을 형식적인 전략으로 기술하는 단계 소프트웨어를 개발하기 위한 비즈니스를 객체와 속성, 클래스와 멤버, 전체와 부분 등으로 나누어서 분석해 내는 기법 분석가에게 주요..

article thumbnail
객체지향 기술 1

01. 객체지향 기술의 개념 01. 객체지향(Object Oriented) 기술의 개념 1) 객체지향 기술의 등장 배경 1960년도 초기부터 시작된 객체지향 기술은 소프트웨어 개발 규모가 점점 대형화 되면서 "소프트웨어 개발에 투입되는 시간과 비용 등 여러 가지의 문제점을 해결하고 어떻게 하면 소프트웨어 개발을 손쉽게 할 수 있을까?"하는 요구에서 시작됨 과거 기술 측면 절차적 설계 : 프로그램을 순차적으로 수행시키는 방법으로 자료 구조와 명령 중심으로 프로그램을 나열하듯이 개발하는 방법 모듈화된 설계 : 객체라는 개념이 등장하기 이전에 모듈, 함수를 계층적으로 조립하면서 개발하는 구조화된 방법 개발자 측면 소프트웨어 위기를 해결하기 위한 대안, 생산성 저하로 인한 재사용성의 증대, 확장성의 필요가 절실..

article thumbnail
프로그래밍 언어 활용 5

05. 파이썬(Python) 01. Python의 기초 1) Python의 특징 인간 중심의 언어이므로 쉽고 빠르게 배울 수 있음 간결하지만 강력하고, 개발 속도가 빠름 C나 C++로 만든 프로그램을 Python에서 사용할 수 있으며, 반대로도 가능함 웹 프로그램을 만들기에 매우 적합한 도구 데이터 분석을 쉽고 효과적으로 할 수 있으며, 데이터베이스에 접근하기 위한 도구를 제공함 인터프리터 방식의 객체지향 언어 플랫폼에 구애를 받지 않으며 확장성이 뛰어남 인터프리터가 없는 안드로이드나 iOS 환경에서는 동작하지 않음 안드로이드 앱이나 아이폰 앱을 개발하기에 적합하지 않음 대단히 빠른 속도를 요구하거나 하드웨어를 직접 접근해야 하는 프로그램에는 어울리지 않음 Python의 반복문 흐름 제어 pass : 실..

article thumbnail
프로그래밍 언어 활용 4

04. C언어의 고급 기법 01. 기억 클래스(Storage Class) 1) 기억 클래스의 개념 C언어에서 변수로 사용할 기억 장소 위치를 프로그래머가 직접 지정할 수 있음 기억 장소의 특성에 맞게 변수를 선언함으로써 기억 장소를 절약할 수 있음 개발할 프로그램의 특성에 맞게 기억 장소를 사용함으로써 실행 속도를 높일 수 있으며, 에러를 감소시킬 수 있음 2) 변수 선언에 따른 할당되는 기억 장소 auto : 동적인 스택(Stack) 영역에 기억 장소가 할당 static : 정적인 힙(Heap) 영역에 기억 장소가 할당 extern : 정적인 힙(Heap) 영역에 기억 장소가 할당 register : CPU 내의 고속 메모리인 레지스터에 기억 장소가 할당 3) 변수 선언에 따른 기억 장소의 생성 시기와..

article thumbnail
프로그래밍 언어 활용 3

03. C언어의 제어문 01. 선택문 1) 단일 if문 단일 if문 조건식이 참이면 하나 이상의 명령문을 수행하고 그렇지 않으면 수행하지 않는 제어문 명령문이 한 개일 경우는 제어 구간을 세미콜론으로 구분함 명령문이 두 개 이상일 경우 명령문이 두 개 이상일 경우에는 제어 구간을 {}로 묶음 2) 이중 if문 이중 if문 조건식이 참인 경우와 거짓인 경우에 수행되는 명령문이 각각 존재하는 제어문 참인 경우와 거짓인 경우에 수행할 명령문의 구분은 else문으로 함 else문 이전에 수행할 명령문이 한 개일 경우는 세미콜론으로 구분함 명령문이 두 개 이상일 경우 명령문이 두 개 이상일 경우에는 제어 구간을 {}로 묶음 3) 다중 if~else문 조건식에 따라 여러 개의 명령문 중 하나를 선택하여 수행하는 경..

article thumbnail
프로그래밍 언어 활용 2

02. C언어의 연산자 01. C언어의 연산자 개념 1) 항과 연산자 단항 연산자 : 하나의 항으로만 연산이 됨 이항 연산자 : 두 개의 항으로 연산이 됨 삼항 연산자 : 세 개의 항으로 연산이 됨 2) 묵시적 순서 제어와 명시적 순서 제어 1. 묵시적 순서 제어 프로그래머가 아무런 조치를 취하지 않아도 이미 정해진 규칙의 의해서 제어됨 프로그램 언어에서 미리 정해진 순서에 따라서 제어가 일어나는 것을 의미함 괄호 없이 연산자의 우선순위에 따라 계산함 2. 명시적 순서 제어 프로그래머가 원하는 제어를 위해 직접 조치를 취하는 제어 각 문장이나 연산의 순서를 프로그래머가 직접 변경함 괄호를 이용하여 연산 순서를 변경하는 계산 GOTO문이나 반복문을 사용해서 문장의 실행 순서를 변경함 3) C언어의 연산자 ..

article thumbnail
프로그래밍 언어 활용 1

01. 알고리즘과 코딩 01. 알고리즘(Algorithm) 1) 알고리즘의 정의 주어진 문제를 해결하기 위하여 잘 정의된 동작의 유한 집합 프로그램은 알고리즘과 데이터 구조가 결합된 것 알고리즘은 수학, 컴퓨터 과학, 언어학 등의 관련 분야에서 어떠한 문제를 해결하기 위해 정해진 일련의 절차나 방법을 공식화한 형태로 표현한 것 알고리즘은 넓은 의미에서 자료 구조와 함께 프로그램을 구성하는 요소를 의미함 좁은 의미에서 어떤 문제에 대한 답을 찾는 해법을 의미함 프로그래밍 언어가 아니더라도 알고리즘의 표현은 가능함 2) 알고리즘이 갖추어야 할 조건(알고리즘의 5가지 특성) 입력(Input) : 외부에서 입력되는 자료가 0개 이상 존재함 출력(Output) : 출력이 적어도 1개 이상의 결과가 있어야 함 명확..