
나쁜 코드에 주석을 달지 마라. 새로 짜라.- 브라이언 W. 커니핸, P.J. 플라우거 - 주석은 순서하게 악하다. 우리가 프로그래밍 언어를 치밀하게 사용하여 코드의 의도를 표현할 능력이 있다면, 주석은 거의 필요하지 않으리라. 아니, 전혀 필요하지 않으리라. 주석은 반겨 맞을 손님이 아니다. 주석이 없고 깔끔한 코드가 복잡하고 어수선하고 주석이 많이 달린 코드보다 훨씬 좋다. 주석은 오래될수록 코드에서 멀어진다. 프로그래머들이 주석을 유지하고 보수하기란 현실적으로 불가능 하니까. 필자는 그래서 코드를 설명하는 문서를 작성하는 것을 지양하는 편이다. 유지보수 관리해야하는 포인트가 2개로 늘어나기 때문이다. 이 책에서도 주석을 달아야 한다면, 코드를 더 깔끔하게 정리하거나 보수해야한다고 말한다. 우리는 우..

프로그래밍의 기술은 언제나 언어 설계의 기술이다.소프트웨어를 짜는 행위는 여느 글짓기와 비슷하다. 3장은 함수를 잘 만드는 기교를 설명한다. 이번에도 각각의 소제목을 통해서 내용을 정리하겠다. 중간중간에는 필자의 개인적인 코멘트와 편집이 들어가 있을 수 있다. 작게 만들어라함수를 만드는 첫 번째 규칙: 작게. 두 번째 규칙: 더 작게. 각 함수는 작을수록 더 명확해진다. if 문 while 문 등은 한 줄이어야 한다. 중첩 구조가 생길 만큼 함수가 커져서는 안 된다. 문장이 짧으면 글을 이해하기 편하듯, 함수도 짧아야 좋다.한 가지만 해라!해당 소제목은 특별히 제목 2 형식을 사용했다. 정말 중요한 부분이다. 글을 쓸 때도 하나의 문단에서 하나의 주제를 가지고서 작성되듯, 함수도 하나의 작업만을 해야 이..

2장은 의미 있는 이름을 짓는 방법에 대해서 설명한다. 이름은 어디에나 사용되고 많이 사용되기 때문에 이름을 잘 지어두면 여러모로 편하다. 간단하게 소제목 별로 인상 깊은 내용들, 정리해두고 싶은 내용들을 나열하듯 글을 써보고 싶다. 의도를 분명히 밝혀라의도를 분명히 하는 것은 정말로 중요하다. 의도를 분명하게 이름을 명명하거나 수정하기만해도 코드가 하는 일이 이해하기가 쉬워질 것이다.그릇된 정보를 피하라프로그래머는 코드에 그릇된 단서를 남겨서는 안 된다. 일관성이 떨어지는 이름을 사용하는 것, 널리 쓰이는 이름을 다른 의미로 사용하는 것은 그릇된 정보이다.의미 있게 구분하라컴파일러나 인터프리터만 이해하도록 명명하지 말자. 1장에서도 말했지만 우리는 코드라는 글을 쓰는 저자이다. 저자의 의도를 명확하게 ..

사소한 곳에서 발휘하는 정직은 사소하지 않다.사소한 것은 중요하다. 이 책은 사소한 듯 보이나 실제로는 사소하지 않은 내용을 다룬다. 사소한 것들을 신경 쓰지 않을 때 전체적인 매력이 떨어지게 된다. 우리가 설계가 아주 잘되어 있는 집에 입주한다고 하자. 실용성도 좋고 디자인도 멋지게 만들어졌다. 근데 막상 들어가 보니 손잡이가 틀어져있고, 화장실 타일을 삐뚤어져 있으며, 문이 꼭 맞게 닫히지 않는다면 어떨까? 그 집에 대한 매력도가 현저하게 떨어질 것이다. 우리의 코드에도 이런 방식을 취해야 한다. 사소한 것에 성실해지자. 우리는 소프트웨어를 만드는데 집중했었다. 하지만 우리는 대부분의 시간을 소프트웨어를 유지보수 하는데 보낸다. 자동차를 정비하고 수리하는 유지보수를 우리는 미루는가? 미룬다면 자동차는..

번역장학생? 약 두 달간 노마드코더에 업로드 될 강의에 한글 자막을 작성하는 활동을 한다. 거의 하루에 하나의 강의(10분 내외)를 번역해야하는 일정이라 생각보다 시간이 부족했다. 하루종일 이것만 하는 것이 아니라, 연구과제도 진행해야 하고, 다른 할 일도 하고 하면 너무 바쁘다. 그래도 정말 유익했고 내가 작성한 자막이 올라온 노마드코더 강의를 보면서 뿌듯함을 느낄 수 있었다. 뭘 번역했나? 기초 Python강의와 Django 강의를 번역했다. 기초 Python 강의야 내가 제일 잘 알고 있는 언어, 제일 잘 다룰 수 있는 언어이기에 매우 쉽게 쉽게 내용을 번역할 수 있었다. 강의의 내용도 거의 다 알고 있던 내용이라 딱 처음 번역의 틀과 느낌을 잡는데 매우 좋은 강의였던 것 같다. Django 강의는..
- Total
- Today
- Yesterday
- 개발자
- boj
- 프로그래머스
- 후기
- IT대외활동
- 노마드코더
- 개발자북클럽
- 합격
- 대전
- 회고
- 기계식 키보드
- 오픈소스기여
- SW마에스트로
- 오픈소스
- 백준
- 클린코드
- 타입스크립트
- 개발자밋업
- DevOps
- github
- devcon
- python3.8
- 노개북
- 알고리즘
- ssi-at
- 코딩테스트
- 네트워크
- 파이썬
- python
- 프론트엔드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |