2022/02 6

Fluent Python Chapter 14. 반복형, 반복자, 제너레이터

Introduction 14장에서는 데이터를 처리할 때 항상 다루는 반복에 대해서 다룬다. Iterable, Iterator, Generator에 대해서 다루면서 iter() 내장 함수가 동작하는 방법을 살펴 본 후에 Generator가 데이터를 어떻게 느긋하게 가져오는지 살펴본다. 그리고 표준 라이브러리에서 제공하는 제너레이터를 살펴보면서 파이썬에서 효율적으로 데이터를 반복해서 가져와서 처리하는 방법들을 살펴본다. 책 정리를 시작한 이유 책 정리를 시작한 이유 Chapter1의 Introduction 부분에서 이야기 한 것처럼 지난 5년간 다양한 언어나 프레임워크 및 프로그램을 공부하고 이용하여 소프트웨어를 개발했는데 이것저것 하다 보니 자주 사용하는 언어임에도 불구하고 파이썬을 잘 활용하고 있느냐에 ..

Fluent Python Chapter 13. 연산자 오버로딩(feat. 제대로 하기)

Introduction 12장에서는 파이썬의 연산자를 오버로딩을 적절하게 하는 법을 다룬다. 파이썬은 원래 오버로딩을 지원하지 않으나 argument의 type이 다른 인자를 사용할 수 있다는 측면에서는 부분적으로 오버로딩이 가능하다고 할 수?도 있다. 책에서는 내장 자료형의 연산자를 오버로딩 하지 말아야 하며, is, and, or, not을 제외한 기존 연산자만 오버로딩할 수 있다. 또, 피연자를 변형하지 않아야 하고(가변 객체일 수도 있기 때문에), 다른 자료형과의 연산을 지원할 때는 예외를 발생시키지 않고 실제로 동작 순서를 살펴보면서 NotImplmented를 반환함으로썬 파이썬 인터프리터가 그 연산자의 역순 메서드( ex. __radd__())를 호출해볼 수 있게 해줘야 한다. 이외에도 서로 ..

남해 일주일 살기 (feat. 개발자 원격근무)

Introduction 작년(2021년) 11월 6일부터 12일 일주일 동안 남해에서 진행한 넷제로톤에 참여해서 일주일 동안 남해에서 원격근무를 했다. 일주일이란 시간이 너무 짧아서 정말 알차게 보냈지만 더 지내고 싶다는 아쉬움을 남기고 와서 올 해에도 또 기회가 있다면 참석하고 싶다. 평일 낮에는 회사일을 했고, 저녁에는 넷제로톤(탄소 중립과 관련한 프로젝트) 및 다른 참가자 분들과 시간을 보냈다. 그리고 주말에는 관광을 했다! 짧은 기간이었지만 정말 좋았던 점이 많았다. 무엇보다 관심사가 비슷하고 좋은 사람들과 같이 시간을 보낼 수 있어서 행복했던 것 같다. 또한, 환경에 대한 다큐(붉은 지구, 꼭 보세요!)를 시청하면서 지구 온난화에 대한 심각성을 알 수 있었고, 이를 해결하기 위해서 작은 프로젝트..

Traveling/한국 2022.02.08

Fluent Python Chapter 12. 내장 자료형 상속과 다중 상속

Introduction 11장에서는 파이썬에서 인터페이스를 동적 프로토콜(덕타이핑)과 ABC를 활용해서(구스타이핑) 구현하면서 각각의 장단점과 어떤 상황에 적절한지를 살펴봤습니다. 12장에서는 내장 자료형을 상속하면 어떤 문제가 있는지와 다중 상속을 하려고 할 때 어떤 부분들을 주의해야 하는지를 살펴봅니다. 다중 상속과 관련하여 믹스인과 MRO와 같은 개념들도 살펴보기 때문에 나중에 프레임워크를 만들어보고 싶으신 분들은 주의 깊게 보시면 좋을 것 같습니다. 책 정리를 시작한 이유 책 정리를 시작한 이유 Chapter1의 Introduction 부분에서 이야기 한 것처럼 지난 5년간 다양한 언어나 프레임워크 및 프로그램을 공부하고 이용하여 소프트웨어를 개발했는데 이것저것 하다 보니 자주 사용하는 언어임에도..

Fluent Python Chapter 11. 인터페이스: 프로토콜에서 ABC까지

책 정리를 시작한 이유 Chapter1의 Introduction 부분에서 이야기 한 것처럼 지난 5년간 다양한 언어나 프레임워크 및 프로그램을 공부하고 이용하여 소프트웨어를 개발했는데 이것저것 하다 보니 자주 사용하는 언어임에도 불구하고 파이썬을 잘 활용하고 있느냐에 대한 답변을 자신 있게 하기 어렵다고 느껴서 Fluent Python이라는 책을 공부하며 정리하고 있습니다. 올해에는 새로운 기술들도 좋지만 기존에 활용하던 언어나 프레임워크 그리고 소프트웨어를 더 잘 사용할 수 있도록 깊게 공부할 수 있는 한 해를 만들고 싶은 소망을 가지고 있습니다. 21장까지 정리를 성공하고 맛있는 걸 먹으면서 스스로 축하할 날이 어서 왔으면 좋겠네요! 혹시, 제가 정리한 글이 괜찮으시면 구독 하시면 다음편이 나오면 바..

Django DB Transaction 3편 - DB Transaction Test 코드 작성하기.

Introduction 안녕하세요. 1편과 2편에 이어서 마지막 편으로 Django에서 DB Transaction과 관련된 코드들의 테스트 코드를 작성하는 방법에 대해서 포스팅 해보려고 합니다. 아직 1편과 2편을 읽지 않으신 분이 계신다면 먼저 읽고 오시는 것을 추천드립니다. Django에서 DB Transaction을 어떻게 사용하는지 그리고 실제 DB에서 어떤 동작이 일어나는지를 이해하시고 이번 글을 읽으시면 이해하기 쉽고 더 도움이 될 거라고 생각합니다. 지난 글 Django DB Transaction(트랜잭션) 1편 - Request와 DB Transaction 묶기(Feat. ATOMIC_REQUESTS) Django DB Transaction 2편 - 명시적으로 transaction 활용하기..

반응형