일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- python
- 프론트엔드
- 개인정보수집유효기간
- error
- React
- 장고 다중이미지
- 22938번
- 프로그래머스입문
- css
- 20492번
- django multi image
- html
- useState
- 네이버커넥트재단
- 파이썬
- 참가후기
- SEF2022
- 반응형
- 프로그래머스
- 무료강의
- jquery
- 장고이미지처리
- 파이썬무료강의
- 코딩기초트레이닝
- ㅐㄱ이
- sql
- GIT
- 스파르타코딩클럽
- 스파르타
- MongoDB
- Today
- Total
코딩,해볼까
05.02. Object Oriented Programming / 객체 지향 특강 정리 본문
0. 오늘 배운 것
1) 객체, 상태, 행동
2) 클래스, 속성, 메소드
3) 객체 = 오브젝트, 인스턴스
4) 객체 지향 : 클래스, 메시지 전달, 상속, 추상화, 캡슐화, 다형성
1. 문제점
객체지향 프로그래밍이란?
이전의 차례대로 아래로 내려가는 절차지향 프로그래밍 대신, 사람이 느끼는 동작의 방식 그대로 작동시키기 위한 프로그래밍의 방법이다.
클래스란?
객체(Object)를 생성하기 위한 빵틀
객체와 객체의 속성(attribute), 동작(method)을 정의하는데 사용된다.
객체란?
클래스의 인스턴스(instance), 빵틀로 만들어진 '빵'
클래스에 정의된 속성, 동작을 가진다.
다른 객체들과 상호작용을 할 수 있다.
캡슐화(Encapsulation)
데이터와 그 데이터를 다루는 메서드들을 하나로 묶는 것이다.
메서드를 통해서만 데이터를 조작할 수 있다.(데이터의 보안성, 안정성을 높일 수 있다)
* getter와 setter
객체 내부의 중요 데이터를 이를 이용해 안전하게 접근할 수 있도록 한다.
다른 클레스나 모듈에서 사용해야할 때, 객체의 속성을 변경해야 할 때 등 변화가 필요할 때 선택적으로 사용하면 된다.
상속
정의된 클래스의 속성과 메서드를 가져와 새로운 클래스를 생성하는 것이다.
코드 재사용성과 계층적 구조를 위해 사용한다.
다형성
동일한 이름의 메서드를 타 클래스에서 다르게 구현하는 것이다. (=오버라이딩 한다.)
코드 가독성과 유지보수성을 높인다.
2. 시행착오
구조와 프린트를 하는 것에 어려움이 있었다.
3. 해결방법
튜터님의 방법대로 강의 듣기 > 실습 > 강의듣기 > 실습 을 반복하였다.
4. 알게된 점
왜 이렇게 사용해야 하는지를 차근차근 생각하면서 구현하면 머리에 좀 더 오래 남는다.
숙제 링크 : https://github.com/taeseokyoung/oop_prac
'Back > TIL' 카테고리의 다른 글
05.05. user model에서 custom user model로 admin 마이그레이션 시 오류 해결 방법 (0) | 2023.05.05 |
---|---|
05.03. 문자열과 리스트 자료형 / 프로그래머스 전국 대회 선발 고사 (7) | 2023.05.03 |
05.01. 과제해설 / 문자열과 리스트 딕셔너리 뽀개기 [::] / 다양한 함수들 총집합! (2) | 2023.05.01 |
04.28. 2차원배열 / 강의시청 / 과제 (0) | 2023.04.28 |
04.27. 다양한 출력 방법 / 2차원 배열 / 리스트 컴프리헨션 / 시간복잡도 테스트 코드 (0) | 2023.04.28 |