ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 14 - 생활코딩 자바강의 정리(객체 지향 프로그래밍 오리엔테이션)
    TIL 2023. 1. 26. 22:44

    [목차]

    1. 객체지향프로그래밍
    2. 객체지향프로그래밍 추상화
    3. 객체지향프로그래밍 부품화

    객체지향프로그래밍

    • 객체들을 레고 블럭처럼 조립해서 하나의 프로그램을 만드는 것이 객체지향 프로그래밍이라고 할 수 있습니다.
    • 객체지향 프로그래밍은 객체를 만드는 것 입니다.
    • opentutorials.org(생활코딩) 사이트는 글목록, 본문, 댓글 기능들이 있습니다.
    • 하나의 프로그램안에는 글 목록을 출력해주는 로직 글 본문을 출력해주는 로직 댓글을 추가 수정 삭제하는 로직이 있을 것 입니다.
    • 하나의 프로그램은 하나의 취지를 가지고 있는 게 아니라 여러개의 목적을 가지고 있는 로직의 집합이라고 할 수 있습니다.

    객체지향프로그래밍 추상화

    • 해결해야할 문제, 반영해야할 현실을 소프트웨어적으로 만드는 행위를 뜻 합니다.
    • 현실을 간단하게 단순화 시킨 것
    • 공통된 행동, 필드를 묶어 하나의 클래스를 만드는 것을 의미합니다.(대충 이런 느낌이다 라고만 알면 됨)

    객체지향프로그래밍 부품화

    • 메소드를 사용하는 이유는 연관되어 있는 로직들을 결합해서 메소드라는 완제품을 만들기 위한 것 입니다.
    • 메소드를 사용하면 코드의 양을 극적으로 줄일 수 있고 메소드 별로 기능을 분류되어 있기 때문에
      필요한 코드를 찾기도 쉽고 문제의 진단도 빨리할 수 있다는 장점이 있습니다.

     

     

    • 본체와 모니터와 키보드가 하나로 단일화가 되어 있습니다.
      모니터나 키보드가 고장나면 컴퓨터 자체를 바꿔야 합니다.

    • 모니터와 본체와 컴퓨터를 분리했습니다. 부품화를 시킨 것 입니다.
    • 기능들을 부품화 시킨 덕분에 소비자들은 더 좋은 키보드, 저렴한 모니터를 선택할 수 있으며 어디에 문제가 생겼는 지 파악하고 해결하기도 훨씬 쉬워집니다.

    은닉화, 캡슐화

    제대로된 부품이라면 그것을 어떻게 만들어졌는지 모르는 사람도 그 부품을 사용하는 방법만 알면 쓸 수 있어야 합니다

    모니터가 어떻게 동작하는 지 몰라도 컴퓨터와 모니터를 연결하는 방법만 알면 화면을 표시할 수 있는 것과 같습니다.

    • 내부의 동작 방법을 단단한 케이스 안으로 숨기고 사용자에게는 그 부품의 사용방법만을 노출하고 있는 것을 정보의 은닉화, 또는 캡슐화라고 부릅니다.

    인터페이스

    잘 만들어진 부품이라면 부품과 부품을 서로 교환 할 수 있어야 합니다.

    컴퓨터와 모니터를 만드는 업체들은 케이블의 규격을 공유합니다. 모니터 입장에서는 컴퓨터가 컴퓨터 입장에서는 

    모니터가 어떤 식으로 만들어졌는 지 신경쓰지 않습니다.각각의 부품은 미리 정해진 약속에 따라서 신호를 입, 출력하고,

    연결점의 모양을 표준에 맞게 만들면 됩니다.

    • 연결점을 인터페이스라고 합니다.
    • 이질적인 것들이 결합하는 것을 막아주는 역할도 합니다. 
    • 부품들 간의 약속입니다.
Designed by Tistory.