Beautiful Code / 38인의 코딩 명장들이 말하는 내 생아 가장 아름다운 코드
찰스 페졸드 외 / 류광 역 / 한빛미디어
CH03. 내가 결코 쓴 적이 없는 가장 아름다운 코드 / 존 벤틀리
"가능하다면 항상 코드를 훔쳐라"
- 기성의 코드를 잘 활용하고 그 코드들로부터 배우라는 의미인듯.
CH06. FIT : 취약함에서 비롯된 아름다움 / 마이클 페더스
"그러나 이들이 단지 어림법칙일 뿐임을 잊는 것은 우리 스스로를 억압하는 일이다.
그러한 점을 망각하게 되면 우리는 "모든 것을 제대로" 해냈지만 여전히 목표를 만족하지 못하는 설계를 만들어 낼지도 모른다."
- 원칙에 맹신하기보다 목표에 집중할것. 열린 프레임워크.
CH07. 아름다운 검사 / 알베르토 사보이아
"좀 더 우아하고, 유지보수하기 쉽고, 검사가 가능한 코드의 작성 방법을 제시하는 검사들"
- 그래서 TDD가 빛을 발하는 게 아닐까 싶다.
CH20. NASA의 화상탐사로버임무를 위한 고신뢰성 전사적 시스템/ 로널드 맥
아키텍쳐 상의 핵심적인 설계 원리들
표준기반
느슨한 결합
언어독립
모듈성
규모가변성
신뢰성
- 미션 크리티컬한 상황에서 필요한 S/W 개발상의 가치들. 특히 표준,느슨함 의 중요성이 눈에 띤다.
CH29. 에세이 같은 코드 / 유키히로 마쓰모토
"에세이와 코드 모두, 무엇보다도 인간이 읽고 이해하는 것을 의도로 해서 작성한 것"
- 간결함, 익숙함, 단순함, 유연함이 구현된 루비에 대한 홍보...
CH30. 버튼 하나로 세상과 소통하기
"스티븐 호킹 교수는 버튼 하나만 누를 수 있습니다." 이것이 우리에게 주어진 한 줄짜리 명세서였다.
- 사용자에 최적화되는 인터페이스, S/W 구현하기.
호킹 교수를 위해 단종된 Equalizer 를 대체할 새로운 S/W를 구현하는 과정을 보여준다.
명세가 완벽할 경우는 늘 드문 현상이기 때문에, 사용자로부터 관찰하고, 피드백을 받을수 있는 창구를 열어놓는 것이 도움이 됨을 알수 있다.
CH32. 살아 움직이는 코드 / 로라 윈저드, 크리스토퍼 세이월드
"Seven Pillars of Pretty Code"
"책처럼" 만들라
비슷한 것은 비슷하게 만들라
들여 쓰기를 극복하라
블록들을 이용해서 뒤엉킨 코드를 풀어라
코드 블록에 주석을 달아라
군더더기를 없애라
기존 스타일과 조화를 이루라
"살아 움직이는 코드의 성공은 코드를 읽는 사람이 그것을 얼마나 잘 이해할 수 있느냐에 달려 있다"
- 일곱개의 기둥이 잘못 쓰이면 오히려 이해를 어렵게 만든다는 걸 기억해둘것.
결론적으로. 좋은 코드는 어떻다는걸 외우기 전에,
우선 좋은 코드를 보고 배워야 하고, 그리고 코드를 작성하면서 경험을 통해 습관처럼 만들어나가야 하는게 중요하다.
이 글은 스프링노트에서 작성되었습니다.