본문 바로가기

전체 글34

[오브젝트] 3장 - 역할, 책임, 협력 내용 정리: 20240311 TIL 1. 개요 3장은 역할, 책임, 협력에 초점을 맞춰 설명한다. 이전 장에서는 객체지향 프로그래밍의 다양한 기법들을 살펴봤지만, 이번 장에서는 그 기법을 넘어선 설계의 본질적인 요소에 대해 살펴본다. 아무리 효과적인 기법을 사용했다 하더라도 역할과 책임, 협력이 적절하지 못하다면 설계는 망가지게 된다. 2. 협력 협력(collaboration)은 객체들이 애플리케이션의 기능을 구현하기 위해 수행하는 상호작용을 의미한다. 객체들은 협력을 통해 메시지를 주고받으며, 메시지를 수신한 객체는 적절한 메서드를 실행하여 요청에 응답한다. 설계 관점에서 협력은 문맥(context)을 결정하는 중요한 요소다. 객체의 상태는 그 객체가 행동하는 데 필요한 정보에 의해 결정된다. 이 행동.. 2024. 3. 11.
[오브젝트] 2장 - 객체지향 프로그래밍 내용 정리: 20240301 TIL, 20240302 TIL 1. 개요 2장은 객체지향 프로그래밍에 사용되는 다양한 요소에 대해 설명한다. 주요 키워드로는 "클래스, 캡슐화, 협력, 다형성, 상속" 정도가 있다. 2장은 1장보다 많은 내용이 등장해 정리하기 쉽지 않았다. 하지만 기존에 오해하고 있던 개념들을 바로 잡을 수 있었다. 2. 클래스 클래스에 대한 고정관념 객체지향 프로그래밍에 대해 생각할 때 대부분의 사람들은 '클래스'라는 단어를 먼저 떠올린다. 그만큼 우리는 알게 모르게 "객체지향 = 클래스"라는 고정된 사고방식을 가지고 있을지도 모른다. 실제로 많은 개발자들이 코드를 작성할 때, 먼저 클래스를 몇 개 생성하고 그 안에 어떤 속성과 메서드를 넣을지 고민한다. 나 역시 그동안 설계를 할 때 클.. 2024. 3. 4.
[오브젝트] 1장 - 객체, 설계 내용 정리: https://github.com/wonyangs/TIL/blob/main/202402/20240222.md 1. 개요 오브젝트의 첫 장에서는 객체지향 프로그래밍이란 무엇이고 왜 필요한지를, 티켓 판매 시스템을 예로 들어 설명한다. 주요 키워드로는 "패러다임, 의존성, 결합도, 응집도, 캡슐화"가 언급된다. 처음부터 다소 많은 키워드가 한꺼번에 등장하는 것 같다는 느낌이 들었다. 하지만 저자는 그런 우려를 미리 예측한 듯, 서문에서 아래와 같이 언급한다. 1장 '객체, 설계'에서는 티켓 판매 시스템이라는 간단한 도메인을 예로 들어 책의 전체적인 주제를 함축해서 전달한다. 1장에서 소개하는 용어와 개념들이 이해되지 않더라도 너무 걱정하지 않았으면 한다. 이어지는 장들을 읽다 보면 자연스럽게 1.. 2024. 2. 22.
2023년 회고 1. 42서울 2023년의 42서울 2022년 7월에 시작된 42서울의 여정이 막바지에 이르렀다. 지금까지 14개의 공통과정 프로젝트를 완료했고, 마지막 프로젝트인 ft_transcendence만을 남겨두고 있다. 2022년에는 42서울에 전념하며 과제를 열심히 진행했다. 하지만 2023년에는 학교와 병행을 하게 되어, 주로 방학 중에만 과제를 진행하게 되었다. 처음에는 2023년 안에 공통 과정을 마무리하는 것이 목표였다. 그러나 한 해 동안 생각보다 많은 활동을 하다 보니 미뤄지게 되었다. '42서울에 조금 더 집중할걸'하는 아쉬움이 있지만, 그동안의 했던 것에 대해 후회는 없다. 2024년은... 3월 안에 ft_transcendence를 마무리하는 것 목표다. 처음 진행하는 웹 개발 프로젝트인 만.. 2024. 2. 21.
22년 9~10월 독서 기록 1. 달러구트 꿈 백화점 독서 기간 : 7월 언젠가 ~ 9/13 친구가 꼭 읽어보라며 선물해 준 책이다. 우리가 꾸는 꿈을 파는 백화점이 나오고 그곳에서 주인공이 일을 하며 일어나는 이야기들이 나온다. 읽은 지는 좀 됐지만 기억에 남는 부분들이 있다. 우선 서로를 부러워하던 두 인물이 나오고 그중 한 명이 상대방의 힘들었던 삶을 살아보는 꿈을 꾸는 이야기다. 우린 항상 남의 겉모습만 보고 부러워하지만각자마다의 사연이 있다는 내용. 죽은 사람이 남겨진 사람들의 꿈에 나와 만나는 이야기도 뭉클했다. 꿈이라는 주제를 가지고 이렇게 생각할 수 있다는 것이 신기했다. 책을 읽는 동안 마음이 따뜻해지는 재밌는 책이었다. 2. 모두를 위한 리눅스 프로그래밍 독서 기간 : 9/9 ~ 9/25 42서울 과제로 파이프를.. 2022. 10. 31.