개발자 10

[노개북 - 8] 5장.구부러지거나 부러지거나

오늘 TIL 3줄 요약 가능한 한 느슨하고 유연한 코드를 작성해야 한다. global은 사용을 지양하자 프로그래밍은 무엇보다도 의도를 가장 잘 드러내야 한다. TIL (Today I Learned) 날짜 2022.03.29 오늘 읽은 범위 5장.구부러지거나 부러지거나 책에서 기억하고 싶은 내용을 써보세요. 현대의 미친 듯이 빠른 변화 속도를 따라가려면 모든 수단을 동원하여 가능한 한 느슨하고 유연한 코드를 작성해야 한다. - p181 전역 데이터 하나하나는 애플리케이션의 모든 메서드에 갑자기 매개 변수가 추가된 것과 같은 효과를 낸다. - p190 '감시자 패턴(observer pattern)'은 이벤트를 발생시키는 쪽인 '감시 대상(observable)'과 이런 이벤트에 관심이 있는 클라이언트인 '감시..

[노개북 - 6] 4장.실용주의 편집증

오늘 TIL 3줄 요약 완벽한 소프트웨어는 만들 수 없다. 단정문으로 불가능한 상황을 예방하라. 언제나 신중하게 작은 단계들을 밟아라. TIL (Today I Learned) 날짜 2022.03.24 오늘 읽은 범위 14장.실용주의 편집증 책에서 기억하고 싶은 내용을 써보세요. 가정을 적극적으로 검증하는 코드를 작성하라. - p146 만약 호출자가 루틴의 모든 선행 조건을 충족한다면 해당 루틴은 종료 시 모든 후행 조건과 불변식이 참이되는 것을 보장한다. - p149 단순히 입력만 확인하는 것보다 더 좋은 방식이다. 함수 인자가 범위를 벗어나면 아예 함수 호출이 안 된다. - p151 불변식의 자격이 있는 요구 사항을 찾았다면 여러분이 작성하는 모든 문서에 잘 드러나도록 만들어라. - p156 모든 오류..

[노개북 - 4] 복습

최애 북틸 3개 선정하기 1) https://ash-brother-fd3.notion.site/TIL-01-65bf0fa7c4bd48deac8c99cac5c06e80 위 북틸은 정리가 매우매우매우! 잘되어있다! 글을 잘 정리하지 못하는 나로서는 너무 부러운 능력이다. 책의 내용이 많지만 그만큼 중요한 내용도 많기에 정리를 잘 해두어 빠르게 복기를 하면 좋은데, 이 북틸은 그러기에 최적화 되어 있다. 2) https://nomadcoders.co/community/thread/3736 회사에서 프로토 타입을 작성하고 있다고 한다. 바로바로 코드 작업을 하는 나로서는 예광탄이라는 단어에 어떻게 프로그래밍 적으로 생각해야하는지를 잘 몰랐다. 3) https://spiffy-sodium-d54.notion.si..

[노개북 - 14] 10장. 클래스

TIL (Today I Learned) 2022.03.10 오늘 읽은 범위 10장. 클래스 책에서 기억하고 싶은 내용을 써보세요. 클래스를 만들 때 첫 번째 규칙은 크기다. 클래스는 작아야 한다. 두 번째 규칙도 크기다. (p.172) 클래스 이름은 해당 클래스 책임을 기술해야 한다. 클래스 이름에 Processor, Manager, Super 등과 같이 모호한 단어가 있다면 클래스에다 여러 책임을 떠안겼다는 증거다. (p.175) 단일 책임 원칙(Single Responsibility Principle, SRP)은 클래스나 모듈을 변경할 이유가 하나, 단 하나뿐이어야 한다는 원칙이다. (p.175) 응집도 : 클래스는 인스턴스 변수 수가 작아야 한다. 각 클래스 메서드는 클래스 인스턴스 변수를 하나 이..

[노개북 - 9] 6장. 객체와 자료구조

TIL (Today I Learned) 2022.03.01 오늘 읽은 범위 6장. 객체와 자료구조 책에서 기억하고 싶은 내용을 써보세요. 자료를 세세하게 공개하기보다는 추상적인 개념으로 표현하는 편이 좋다. (p.119) 객체는 추상화 뒤로 자료를 숨긴 채 자료를 다루는 함수만 공개한다. 자료 구조는 자료를 그대로 공개하며 별다른 함수는 제공하지 않는다. 문단을 처음부터 다시 읽어보기 바란다. 두 정의는 본질적으로 상반된다. 두 개념은 사실상 정반대다. 사소한 차이로 보일지 모르지만 그 차이가 미치는 영향은 굉장하다. (p.120) 복잡한 시스템을 짜다 보면 새로운 함수가 아니라 새로운 자료 타입이 필요한 경우가 생긴다. 이때는 클래스와 객체 지향 기법이 가장 적합하다. 반면, 새로운 자료 타입이 아니라..

[노개북 - 5] 3장.함수

TIL (Today I Learned) 2022.02.23 오늘 읽은 범위 3장. 함수 책에서 기억하고 싶은 내용을 써보세요. 함수를 만드는 첫째 규칙은 '작게!'다. 함수를 만드는 둘째 규칙은 '더 작게!'다. (p.42) 함수는 한 가지를 해야 한다. 그 한가지를 잘 해야 한다. 그 한가지만을 해야 한다. (p.44) 함수가 확실히 '한 가지' 작업만 하려면 함수 내 모든 문장의 추상화 수준이 동일 해야 한다. (p.46) 본질적으로 switch문은 N가지를 처리한다. 불행하게도 switch문을 완전히 피할 방법은 없다. 하지만 각 switch문을 저차원 클래스에 숨기고 절대로 반복하지 않는 방법은 있다. 물론 다형성을 이용한다. (p.47) 인수가 3개를 넘어가면 인수마다 유효한 값으로 모든 조합을..

[노개북 - 4] 복습:최애 TIL 을 찾아라!

TIL (Today I Learned) 2022.02.21 오늘 읽은 범위 복습 최애 북틸 / 선정이유 / 소감 https://nomadcoders.co/community/thread/2446 선정이유 : 2장을 읽고 느꼈던 이 북틸러의 소감이 너무 공감되어 최애 북틸로 선정하였다. 소감 : 코딩테스트를 준비하며 타인의 코드를 정말 많이 보았는데, 네이밍이 잘 되어있었다면 그 코드는 훨씬 이해하기 쉽고 공부하기에도 좋은 코드였을 것이란 생각을 했다. https://nomadcoders.co/community/thread/2429 선정이유 : 이 북틸러의 소감이 주니어 개발자로서 같은 고민을 하고 있기에 선정하였다. 소감 : 나 또한 누군가 내 코드를 일일이 봐주지 않는다. 보더라도 네이밍 등의 요소는 체..

[노개북 - 3] 2장.의미있는 이름

TIL (Today I Learned) 2022.02.20 오늘 읽은 범위 2장. 의미있는 이름 책에서 기억하고 싶은 내용을 써보세요. 프로그래머는 코드에 그릇된 단서를 남겨서는 안 된다. (p.24) 읽는 사람이 차이를 알도록 이름을 지어라. (p.27) 클래스 이름과 객체 이름은 명사나 명사구가 적합하다. (p.32) 메서드 이름은 동사나 동사구가 적합하다. (p.32) 메서드 이름은 독자적이고 일관적이어야 한다. 그래야 주석으 루디져보지 않고도 프로그래머가 올바른 메서드를 선택한다. (p.33) 오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요 항상 이름을 고민하는데 많은 시간을 쓰긴했지만, 모든 이름마다 일관성(예를들어 add나 append) 까지 고려한적은 없는 듯 하다. 시간을 조금 더 쓰..

[노개북 - 2] 추천사 ~ 1장.깨끗한 코드

TIL (Today I Learned) 2022.02.19 오늘 읽은 범위 추천사 1장. 깨끗한 코드 책에서 기억하고 싶은 내용을 써보세요. 책임 있는 전문가라면 프로젝트를 시작할 때 생각하고 계획할 시간을 확부해야 한다. (p.xxii) 큰 실무에서 실력을 쌓고 신뢰를 얻으려는 전문가는 먼저 작은 실무부터 실력을 쌓고 신뢰를 얻어야 한다. 아주 사소한 것들이 전체의 매력을 깎아먹는다. (p.xxii) 나쁜 코드의 위험을 이해하지 못하는 관리자 말을 그대로 따르는 행동은 전문가답지 못하다. (p.7) 중복을 피하라. 한 기능만 수행하라. 제대로 표현하라. 작게 추상화 하라. (p.14) 새 코드를 짜면서 우리는 끊임없이 기존 코드를 읽는다. 비율이 이렇게 높으므로 읽기 쉬운 코드가 매우 중요하다. (p...

728x90