유데미 스타터스 취업 부트캠프 2기 - 백엔드 2주차 학습 일지

roopre·2022년 10월 23일
0

STARTERS

목록 보기
2/9
post-thumbnail

전공 공부 시작

유데미 스타터스 부트캠프에서는 누가 가르쳐주는 것보다는 제공해주는 강의를 들으면서 자기 주도적으로 공부를 해야한다.

이번주부터 전공 공부를 시작했다. 자바를 제대로 배워본 적도 없이 단순히 다른 언어들을 기본 지식들을 가지고 프로젝트를 진행을 해왔어서 반드시 기초부터 공부할 필요를 느꼈었다. 마침 이번에 전공공부에서 객체지향 강의부터 들을 기회가 있어서 기초를 다지고 스프링부트까지 완벽하게 공부하기로 다짐했다. 이번주는 객체지향프로그래밍의 특징에 대해서 강의를 들었고 간단하게 정리하면 아래와 같다.

객체지향 프로그래밍이란

  • OOP: Object-Oriented Programming
  • 프로그래밍 패러다임 중 하나
  • 프로그램을 구성하는 기본 요소를 객체로 보려는 노력
  • OOP에서 프로그램이란?
    - 상호작용하는 객체들의 집합

OOP의 3대 특성

  1. 캡슐화
  • 데이터와 그 데이터에 작용하는 메서드를 하나로 묶음
  • 정보 숨기기: 객체 안에 있는 데이터를 외부로부터 보호
    - 전부 혹은 일부
    • 외부: 다른 클래스에 속한 객체들
  1. 상속
  • 이미 존재하는 객체를 기반으로 확장된 객체를 만드는 방법
    - 엄밀히 말하면 객체가 아니라 클래스
  • 확장된 객체
    - 기존의 객체에 속한 데이터와 동작을 모두 물려 받음
  • 여기에 다른 데이터나 동작을 추가할 수 있음
  • 실용적인 용도: 코드 중복을 막음
    • 여러 객체에 공통되는 데이터와 동작을 부모 객체로 만듦
    • 여러 객체는 각각 그 부모 객체를 상속 받음
    • 그 후 자기에게만 필요한 데이터나 동작을 추가
  1. 다형성
  • 같은 지시를 내렸는데 다른 종류의 객체가 동작을 달리하는 것
    • 같은 지시: 동일한 함수 호출
    • 달리 동작: 객체의 종류에 따라 실제로 실행되는 함수 구현 코드가 다름
    • 절차적 언어의 경우 if문을 사용해야 함
  • 어떤 함수 구현이 실행될지는 실행 중에 결정됨!
    • 이를 늦은 바인딩(late binding)이라고 함 → 컴파일 도중이 아니라 실행중에!
  • 일반적인 함수 호출은 이른 바인딩(early binding)
    • 컴파일 중에 결정됨
  • 다형성의 혜택을 받으려면 상속 관계가 필요
    • 부모 객체에서 함수 선언
    • 자식 객체에서 그 함수를 다르게 구현(overriding)
  • 실용적인 용도: 다른 종류의 객체를 편하게 저장 및 처리 가능
    • 예: 부모의 형(type)을 저장하는 배열에 모든 자식 객체를 저장
      • for문 하나로 모든 객체를 순회하면 동일한 함수 호출
      • 그러면 각 객체가 자신의 종류에 따라 다른 동작을 함
  1. 추상화
  • 수학: 일반화란 의미
  • OOP: 객체 속에 있는 실제 데이터나 함수 구현 방법에 종속되지 않겠단 뜻
  • 데이터 추상화
    • 객체 사용 시 그 안에 정확히 어떤 데이터가 있는지 알 필요 없음
    • 객체 안에 있는 데이터에 직접 접근 불가
      • 그 대신 객체의 함수를 통해 접근
    • 즉, 캡슐화는 데이터 추상화를 이루는 방법 중 하나
  • 추상화
    • 다형성을 통한 추상화
    • 추상 클래스나 인터페이스를 사용하는 추상화

마무리

해당 내용들은 면접 필수 질문이기때문에 백엔드 개발자가 목표라면 반드시 외워야한다. 객체지향 강의로부터 부족했던 부분들을 밑에서부터 채울 수 있었다. 그리고 틈틈이 스프링 강의도 들으면서 프로젝트 준비도 해야겠다. 토요일에 학교 중간고사가 있어서 개발 공부를 많이 못했는데 다음주부터는 스프링공부도 빡세게해야겠다!


  • 유데미 바로가기 : https://bit.ly/3SFlXDy
  • 유데미 STARTERS 취업 부트캠프 공식 블로그 보러가기 : https://blog.naver.com/udemy-wjtb
    본 후기는 유데미-웅진씽크빅 취업 부트캠프 2기 - 프론트엔드&백엔드 과정 학습 일지 리뷰로 작성되었습니다.
profile
Roopretelcham

0개의 댓글