Agenda
- [x] 클래스에서 학습한 내용 정리
- [ ] 어제 한 미션 3 홀짝 메소드 정리 및 랭킹 어떻게 할 지 설계
- [x] 알고리즘 문제 풀어보기
- [x] 알고리즘 학습일지 만들 것(내 수준에서 어느정도 챌린지 되었던 문제 위주)
What I Learned
In class
- 꾸준히 그리고 내가 주체가 되어 학습하는 것이 중요하다
- 정보정리를 위한 자료구조는 list(90%), map, set 가 있다 (미션3 가계부 관련)
- Call by value V. Call by reference
- 차이(핵심): 함수 안에서 매개변수값을 바꿀 시 바깥에 영향 유/무
- Call by value: 전체를 복사하지만 메모리차지가 크다
- Call by reference: 값을 참조(가르킨다)하고 가비지로 가기 때문에 메모리 차지가 적다.
- Return
- Why use return? 1. to return values 2. to exit methods
- 객체와 객체를 연결시켜주는 역할
- 재귀(recursion): method that calls itself
- 종료조건을 명확하게 써주어야 하고 먼저 써주는 편이 낫다.
- 매개변수를 감소하는 쪽이 초보가 사용하기에는 편할 것.
- 객체지향
- Why use OOP? 유지보수에 용이, 복잡한 대형 프로그램 작성에 용이
- Features: encapsulation, polymorphism, abstraction, inheritanc
- 객체와 객체가 행동하고 서로 메세지를 주고 받음
- Class: 상태(멤버변수)와 행동(메소드)를 가진 어떤 것
- 사용자가 정의한, 메소드를 가진 데이터타입
- 클래스를 메모리에 올리면 인스턴스, 곧 객체가 된다. 클래스 자체로는 객체가 될 수 없다(청사진은 구조물이 될 수 없다).