시간을 거슬러 올라가서 개발자로 커리어를 시작할 때 특정 책을 읽도록 지시한다면 어떤 책이 될까요?
나는이 목록이 다양하고 다양한 것들을 다룰 것으로 기대한다.
검색하려면 : 오른쪽 상단에있는 검색 상자를 사용하십시오. 현재 질문의 답변을 검색하려면을 사용하십시오 inquestion:this
. 예를 들면 다음과 같습니다.
inquestion:this "Code Complete"
답변
- Steve McConnell의 코드 완성 (제 2 판)
- 실용 프로그래머
- 컴퓨터 프로그램의 구조와 해석
- Kernighan과 Ritchie 의 C 프로그래밍 언어
- Cormen, Leiserson, Rivest & Stein의 알고리즘 소개
- 4 명의 갱에 의한 디자인 패턴
- 리팩토링 : 기존 코드의 디자인 개선
- 신화적인 남자의 달
- 도널드 크 누스 의 컴퓨터 프로그래밍 기술
- 컴파일러 : Alfred V. Aho, Ravi Sethi 및 Jeffrey D. Ullman의 원리, 기법 및 도구
- Gödel, Escher, Bach by Douglas Hofstadter
- Clean Code : Robert C. Martin 의 Agile Software Craftsmanship 핸드북
- 효과적인 C ++
- 보다 효과적인 C ++
- Charles Petzold의 코드
- Jon Bentley의 프로그래밍 진주
- Michael C. Feathers의 레거시 코드 로 효과적으로 작업
- Demarco와 Lister의 Peopleware
- Peter Seibel의 코더 작업
- 확실히 당신은 농담입니다, Mr. Feynman!
- 효과적인 Java 2 판
- Martin Fowler 의 엔터프라이즈 애플리케이션 아키텍처 패턴
- 리틀 쉬머
- 노련한 Schemer
- 왜 루비에 대한 (불쾌한) 가이드
- 수감자들이 망명을 실행 : 첨단 기술 제품이 우리를 미치게하는 이유와 정신력을 회복하는 방법
- 유닉스 프로그래밍의 예술
- 테스트 주도 개발 : Kent Beck의 예제
- 민첩한 개발자의 관행
- 생각하지 마
- Robert C. Martin의 민첩한 소프트웨어 개발, 원칙, 패턴 및 사례
- Eric Evans의 도메인 기반 디자인
- Donald Norman 의 일상적인 것들의 디자인
- Andrei Alexandrescu의 최신 C ++ 디자인
- Joel Spolsky의 최고의 소프트웨어 작성 I
- Kernighan과 Pike 의 프로그래밍 실습
- 실용적인 사고와 학습 : Andy Hunt 의 Wetware 리팩토링
- 소프트웨어 추정 : Steve McConnel 의 검은 예술의 미스터리
- Chad Fowler 의 열정적 인 프로그래머 (나의 직업은 인도에 갔다)
- 해커 : 컴퓨터 혁명의 영웅
- 알고리즘 + 데이터 구조 = 프로그램
- 솔리드 코드 작성
- 자바 스크립트-좋은 부분
- 37 개 신호로 실제 구현
- Karl Seguin 의 프로그래밍 기초
- 컴퓨터 그래픽 : C (2 판)의 원리와 실습
- Bruce Eckel의 Java 사고
- 컴퓨팅 시스템의 요소
- Joshua Kerievsky의 패턴 으로 리팩토링
- Andrew S. Tanenbaum의 최신 운영 체제
- 주석이 달린 튜링
- 우리를 똑똑하게 만드는 것들 Donald Norman
- 크리스토퍼 알렉산더 의 시대를 초월한 건축 방식
- 마감일 : Tom DeMarco의 프로젝트 관리 에 관한 소설
- Stroustrup 의 C ++ 프로그래밍 언어 (제 3 판)
- 엔터프라이즈 애플리케이션 아키텍처의 패턴
- 컴퓨터 시스템-프로그래머의 관점
- Robert C. Martin의 C #에서의 민첩한 원칙, 패턴 및 사례
- 테스트에 따라 성장하는 객체 지향 소프트웨어
- Brad Abrams의 프레임 워크 설계 지침
- 데이비드 웨스트 박사의 대상 사고
- W. Richard Stevens 의 유닉스 환경에서의 고급 프로그래밍
- 해커와 화가 : 컴퓨터 시대의 큰 아이디어
- Tracy Kidder 의 새로운 기계의 영혼
- Jeffrey Richter의 C # 을 통한 CLR
- 크리스토퍼 알렉산더 의 시대를 초월한 건축 방식
- Steve Metsker의 C #의 디자인 패턴
- 루이스 캐롤의 이상한 나라의 앨리스
- Zen과 Robert M. Pirsig 의 오토바이 정비 기술
- 얼굴 정보-인터랙션 디자인의 필수 요소
- 여기에 온다 : Clay Shirky 의 조직없이 조직 하는 힘
- 프로그래밍의 타오
- 자연의 계산 미
- Steve Maguire의 견고한 코드 작성
- 웹 출판에 대한 Philip and Alex의 안내서
- Grady Booch의 응용 프로그램 을 사용한 객체 지향 분석 및 설계
- Joshua Bloch의 효과적인 Java
- NJ Cutland의 계산 기능
- 프로그래밍의 대가
- 타오 테 칭
- 생산적인 프로그래머
- 케빈 미트닉 의 속임수
- 경력 프로그래머 : 크리스토퍼 던컨 의 불완전한 세상 을 위한 게릴라 전술
- 인공 지능 프로그래밍의 패러다임 : 공통 Lisp의 사례 연구
- 운명의 대가
- 앤디 헌트 (Andy Hunt)와 데이브 토마스 (Dat Thomas, Matt Hargett)와의 C #에서의 실용적 유닛 테스트
- George Polya의 해결 방법
- 파울로 코엘호 의 연금술사
- Smalltalk-80 : 언어와 그 구현
- Michael Howard의 보안 코드 작성 (2 판)
- Philip Wadler와 Richard Bird의 함수형 프로그래밍 소개
- 버그 없음! 작성자 : David Thielen
- Jason Freid와 DHH의 재 작업
- JUnit 작동
답변
@Juan : Juan은 알고 있습니다.하지만 실제로 작업을 수행해야만 배울 수있는 것이 있습니다. 하루 종일 추상적 인 이상으로 말하면 단순히 학문에 빠지게됩니다. 초록의 적용에서 우리는 진정으로 그들의 존재 이유를 알아 냈습니다. :피
@Keith : Alan Cooper의 “수감자들이 정신 병원을 운영하고있다”에 대한 훌륭한 언급 –이 책을 읽은 후 나와 함께 일한 개발자라면 누구나 배우고 자하는 아이디어를 들었습니다. +1
답변
JK Truss의 컴퓨터 과학자를위한 이산 수학 .
이것은 당신에게 프로그래밍을 가르치지는 않지만 모든 프로그래머가 알아야 할 기본 수학을 가르쳐줍니다. 대학에서 얻은 것들을 기억할 수도 있지만 실제로 술어 논리를 사용하면 프로그래밍 기술이 향상되므로 컬렉션을 사용하여 프로그래밍하려면 세트 이론을 배워야합니다.
여기에는 다양한 방법으로 문제에 대해 생각할 수있는 흥미로운 정보가 많이 있습니다. 새로운 것을 배우기 위해 한 번에 한 번 집어 들고 있으면 편리합니다.
답변
Systemantics : 시스템 작동 방식 및 특히 시스템 장애 방법 . 싸게 사용하십시오. 그러나 몇 가지 실패한 프로젝트를 수행하기 전까지는 유머를 얻지 못할 수 있습니다.
이 책의 아름다움은 저작권의 해입니다.
아마도이 책에 제시된 가장 심오한 테이크 아웃 “법”:
기본 고장 모드 정리 (FFT) : 복잡한 시스템은 일반적으로 고장 모드에서 작동합니다.
아이디어는 다른 부품의 고장이나 다른 부품의 검증에 의해 가려지는 특정 소프트웨어에 결함이있는 부품이 있다는 것입니다. 하드웨어 결함 안전 장치로 소프트웨어 결함이 가려진 Therac-25 방사선 기계 의 실제 예를 참조하십시오 . 하드웨어 안전 장치를 제거했을 때 그 기간 동안 감지되지 않은 소프트웨어 경쟁 조건으로 인해 기계가 3 명을 죽였습니다.
답변
제가 개인적으로 가장 좋아하는 것 중 하나는 Hacker ‘s Delight 입니다.
두 번째 버전이 곧 출시되기를 바랍니다.
답변
답변
익스트림 프로그래밍에 대한 설명 : Kent Beck의 변화 를 받아들 입니다. 저는 소프트웨어 개발에 대한 하드 코어 XP 또는 그 이상을 옹호하지는 않지만이 책의 원리를 소개하기를 원했습니다. 단위 테스트, 리팩토링, 단순성, 지속적인 통합, 비용 / 시간 / 품질 / 범위-개발 관점을 바 꾸었습니다. 애자일 이전에는 디버거와 변경 요청에 대한 두려움이 전부였습니다. 애자일 이후, 그 악마들은 크게 쳐지지 않았습니다.