6강. 객체지향 프로그램의 시작 객체지향 이전의 프로그래밍 객체지향의 등장 배경과 이해 메소드의 이해

Slides:



Advertisements
Similar presentations
1. 2 차원 배열  배열은 동일한 데이터 유형으로 여러 개의 변수를 사용할 경우 같은 이 름으로 지정하여 간편하게 사용할 수 있도록 하는 것으로서 앞에서 1 차원 배열을 공부하였습니다.  2 차원 배열은 바둑판을 생각하면 되며, 1 차원 배열에서 사용하는 첨자를 2.
Advertisements

재료수치해석 HW # 박재혁.
2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
Power Java 제3장 이클립스 사용하기.
5강. Servlet 본격적으로 살펴보기-I 프로젝트 만들기 doGet() doPost()
최윤정 Java 프로그래밍 클래스 상속 최윤정
Report #2 - Solution 문제 #1: 다음과 같이 프로그램을 작성하라.
31강 JAVA 네트워크 JAVA 네트워크 InetAdress, URLConnection 클래스 Socket의 이해
9강. AOP(Aspect Oriented Programming)-I
1. C++ 시작하기.
8장 함수 함수의 필요성 라이브러리 함수와 사용자 정의 함수 함수의 정의, 원형, 호출 배열을 함수 인자로 전달 재귀호출.
6강. DI설정 방법 XML파일을 이용한 DI설정 방법 JAVA를 이용한 DI설정 방법 XML과 JAVA를 같이 사용
5강. DI활용 의존 관계 DI사용에 따른 장점 Lecturer Kim Myoung-Ho Nickname 블스
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
29강. MVC패턴을 이용한 게시판 만들기-III
18강. 데이터 베이스 - II JDBC 살펴보기 Statement객체 살펴보기 Lecturer Kim Myoung-Ho
22강. 파일 업로드 - 파일 업로드 라이브러리 설치 - 파일 업로드 프로그래밍 Lecturer Kim Myoung-Ho
12강. 액션태그 액션태그란? forward, include, param 태그 살펴보기
17강. 데이터 베이스 - I 데이터 베이스의 개요 Oracle 설치 기본적인 SQL문 익히기
6강. Servlet 본격적으로 살펴보기-II
25강 예외처리 - 예외란? - 예외처리의 필요성 - 예외처리 문법 (try ~ catch) - 예외처리 문법 (throws)
3강_HTML 기본-II 리스트 태그 - ul,li,ol 표를 나타내는 태그 - table 이미지를 출력하는 태그 – img
26강. 포워딩(Forwarding) RequestDispatcher 클래스 HttpServletResponse 클래스
19강. 데이터 베이스 - III 회원가입 및 회원정보 수정 프로그래밍 Lecturer Kim Myoung-Ho
28강_맵(Map) 맵을 이용하기 위한 설정 위치 추적 Lecturer Kim Myoung-Ho Nickname 블스
25강. FrontController 패턴과 Command 패턴
24강 API - III - Timer 클래스 - StringTokenizer 클래스 Lecturer Kim Myoung-Ho
15강. 예외 페이지 예외 페이지의 필요성 page 지시자를 이용한 예외 처리 web.xml파일을 이용한 예외 처리
10강. JSP 본격적으로 살펴보기-II 스크립트릿, 선언, 표현식 지시자 주석 Lecturer Kim Myoung-Ho
10강_CSS 속성-I CSS3 단위 url() display 속성 visibility 속성 opacity 속성
C 프로그래밍 C언어 (CSE2035) (Chap11. Derived types-enumerated, structure, and union) (1-1) Sungwook Kim Sogang University Seoul, Korea Tel:
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
15강. 추상클래스 - II - 어린이집 아이들의 식대 계산 프로그래밍 Lecturer Kim Myoung-Ho
어서와 C언어는 처음이지 제14장.
16강. 스프링MVC 게시판-I 프로젝트 설계 DataBase 구축 프로젝트 생성 Lecturer Kim Myoung-Ho
14강. 추상클래스 - I - 추상클래스의 이해 - 추상클래스가 필요한 이유 - 추상클래스의 문법
30강 JAVA 그래픽 JAVA GUI(Graphic User Interface)란? AWT 컴포넌트? Swing 컴포넌트?
29강 JAVA 스레드 - 스레드란? - 멀티스레드 문법 - synchronized Lecturer Kim Myoung-Ho
7강_CSS 기본-II id(#) 와 class(.) tag,id, class 혼합 속성 선택자 후손 및 자손 선택자
11강_CSS 속성-II margin 및 padding 속성 box-sizing 속성 border 속성
Lesson 2. 기본 데이터형.
Term Projects 다음에 주어진 2개중에서 한 개를 선택하여 문제를 해결하시오. 기한: 중간 보고서: 5/30 (5)
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
27강 JAVA Collections - II - Map계열 컬렉션 클래스 살펴보기 - Set계열 컬렉션 클래스 살펴보기
20장. 객체지향 프로그래밍 01_ 객체지향 프로그래밍의 시작.
8장. spss statistics 20의 데이터 변환
2강_첫번째 안드로이드 프로젝트 에뮬레이터(AVD) 만들기 처음 만들어 보는 프로젝트 전체적인 구성 살펴보기
5강. 배열 배열이란? 배열의 문법 변수와 같이 이해하는 배열의 메모리 구조의 이해 레퍼런스의 이해 다차원 배열
3강. 컴퓨터와의 기본적인 소통수단 - I 연산자란? 컴퓨터와 소통하기 위한 다양한 방법들
7강. 객체지향 프로그램의 본질 메소드 프로그래밍의 한계 객체의 개념 및 클래스의 이해
26강 JAVA Collections - I - 컬렉션이란? - JAVA도 결국 효과적인 데이터를 처리하기 위한 수단
20강 패턴을 통한 객체지향 언어의 이해 - II - 난이도 있는 패턴 예제 - I Lecturer Kim Myoung-Ho
9강. 클래스 실전 학사 관리 프로그램 만들기 프로그래밍이란 결국 데이터를 효율적으로 관리하기 위한 공구
15강. 폼 데이터 값 검증 Validator를 이용한 검증 ValidationUtils 클래스
13강. Form 데이터 HttpServletRequest 어노테이션 데이터(커맨드) 객체
14강. 세션 세션이란? 세션 문법 Lecturer Kim Myoung-Ho Nickname 블스
18강. 인터페이스 – II - 인터페이스와 다중상속 - 인터페이스를 통한 로봇 장남감 만들기 프로그래밍
2nd day Indexing and Slicing
디버깅 관련 옵션 실습해보기 발표 : 2008년 5월 19일 2분반 정 훈 승
22강. 트랜잭션(Transaction)-I
12강. 컨트롤러 컨트롤러 클래스 제작 요청 처리 메소드 제작 뷰에 데이터 전달
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
Homework #12 (1/2) 프로그램을 작성하고, 프로그램과 실행 결과를 프린트하여 제출한다.
Flow Diagram IV While.
실습과제 (변수와 자료형, ) 1. 다음 작업 (가), (나), (다)를 수행하는 프로그램 작성
프로그래밍 개론 Ⅰ-실습 2장 데이터와 식①.
maria db JDBC PROGRAMMING 5
15강_액티비티 액티비티란? 새로운 액티비티로 전환 생명주기 화면방향(Orientation)
7 생성자 함수.
11강. static - static의 이해 - static과 객체와의 관계 - static의 장점과 단점
Presentation transcript:

6강. 객체지향 프로그램의 시작 객체지향 이전의 프로그래밍 객체지향의 등장 배경과 이해 메소드의 이해 Lecturer Kim Myoung-Ho Nickname 블스 blogstudy@naver.com

6-1. 객체지향 이전의 프로그래밍 절차지향 지금까지 배운 내용으로 1부터 10까지의 정수의 합을 구하는 프로그램을 만들어 보자. 그리고, 그 결과값이 짝수 인지 홀수 인지 파악하고, 홀수라면 ‘홀수 입니다.’를 출력하고, 짝수라면 ‘짝수 입니다.’를 출력해 보자. (6_1_ex1_proceEx)

6-1. 객체지향 이전의 프로그래밍 절차지향 위에서 살펴본 프로그래밍 방식이 절차지향 언어 입니다. 위에서부터 쭈우~~~~~ㄱ 내려오면서 실행 됩니다. 절차지향 방식을 이용하면서 개발자들은 몇 가지 비효율적인 면을 느끼게 됩니다. 첫째, 기존의 1부터 10까지의 합을 구하는 것을 5부터 100까지로 변경하게 되면 동일한 작업이지만 다시 코드를 수정해야 됩니다. 둘째, 기존의 로직을 다시 사용하게 될 때, 다시 코딩을 하는 방법과, 기존 코드를 카피해서 재사용 하는 방식이 있으나, 두 방법 모두 비효율적 입니다. 셋째, 두번째 방식으로 코딩을 하면 동일한 로직의 코드가 문서 내에 넘쳐나, 코드의 양이 너무 길어 집니다. 추후에 유지보수가 어렵습니다. 하여, 등장한 방식이 함수 또는 메소드라고 불리는 녀석 입니다. 로직만 만들어 놓고, 그때 그때 소스(데이터)를 주면 메소드가 알아서 결과값을 반환하는 방식 입니다. 위의 코드를 수정해 보도록 하겠습니다. (6_1_ex2_proceEx)

6-2. 객체지향의 등장 배경과 이해 객체지향의 등장 배경과 이해 메소드를 이용한 방식으로 개발자들은 아주 많은 효율성을 느끼게 되어 있습니다. 하지만, 메소드를 이용한 방식에도 한계는 있었습니다. 데이터가 많아 지고, 메소드가 많아짐에 따라 코드의 양이 많이 지고, 유지보수가 어려워 지기 시작 했습니다. 하여, 등장한 방식이 객체지향 프로그래밍 입니다. 객체란 동일한 성질의 데이터와 메소드를 한곳에 모아두고 필요한 곳에서 언제든지 이용할 수 있게 만들어 놓은 덩어리 입니다. 쉽게 생각해서 세상에 존재하는 모든 것을 객체라고 생각할 수 있으며, 이러한 객체를 이용한 프로그래밍 방식이 객체지향 방식 입니다. 예) 자동차, 자전거, 주방장,프린터기, 자판기, 휴대폰 등등….. 아직은 어렵죠.... 괜찮습니다. 객체에 대한 이해는 아직 멀었습니다.

public int sum(int i, int j) { int r = 0; 6-3. 메소드의 이해 메소드의 이해 public int sum(int i, int j) { int r = 0; for (int h = i; h <= j; h++) { r = r + h; } return r;

6-3. 객체지향의 등장 배경과 이해 메소드의 이해 예 : 사용자로부터 1에서 9까지 숫자 중 한 개의 숫자를 입력받아 구구단을 출력해 보자.(6_3_ex1_methodEx)