winston 发表于 2012-3-15 21:50:41

国外程序员推荐的免费编程书籍资源

StackOverflow 上有位网友(xenoterracide)提问:我正试着搜集整理一个可在网上免费阅读的计算机编程书籍列表。这些书可以是某种特定编程语言,也可以计算机方面通用书籍。网上有哪些免费可用的书籍呢?下面是一些网友在回复中的推荐资源,其中有视频、大学课程、编程语言教程网站,由伯乐在线整理编译。一、George Stocker 提供了一大串,分类如下:Meta-ListsHow to Design Programs: An Introduction to Computing and Programming25 Free Computer Science EbooksFree Tech BooksMindView IncWikibooks: ProgrammingCheat Sheets (Free)CodePlex List of Free E-BooksBook Training – On Video!Sofware Program Managers Network – Free EBooksEBook Share @ linbai.infoFreeBooksClub.NetTheassayer.orgO’Reilly’s Open Books ProjectTechBooksForFree.comGalileo Computing (德语)Microsoft Press: Free E-BooksGraphics Programming 图形编程GPU GemsGPU Gems 2 – ch 8,14,18,29,30 as pdfGPU Gems 3Graphics Programming Black BookShaderX seriesDirectX manual (draft)Learning Modern 3D Graphics Programming (draft)Language AgnosticObject-Oriented Reengineering PatternsFoundations of ProgrammingComputer Musings (由唐纳德·克努斯授课)The Cathedral and the BazaarPatterns and Practices: Application Architecture Guide 2.0Security EngineeringDigital Signal Processing For Engineers and ScientistsGetting RealStructure and Interpretation of Computer ProgramsDomain Driven Design QuicklyOO DesignBest Kept Secrets of Peer Code ReviewNASA Software Measurement HandbookNASA Manager Handbook for Software Development (PDF)Introduction to Functional Programming (经典课程)How to Design ProgramsGuide to the Software Engineering Body of KnowledgeOnline Course MaterialsAlgorithms (draft)Data Structures and AlgorithmsEssential Skills for Agile DevelopmentProgramming Languages: Application and InterpretationLearn to ProgramPatterns of Software: Tales from the Software Community (PDF)How to write Unmaintainable CodeThe Art of Unix Programming 《UNIX编程艺术》The Definitive Guide to Building Code QualityHow to Think Like a Computer ScientistPlanning AlgorithmsMathematical Logic – an Introduction (PDF)An Introduction to the Theory of ComputationDevelopers Developers Developers DevelopersLinkers and loadersLet’s Build a CompilerProducing Open Source SoftwareHow to Write Parallel ProgramsDon’t Just Roll the Dice97 Things Every Programmer Should Know(这本书有中文版《程序员应该知道的97件事》)How Computers WorkIntroduction to Information RetrievalIs Parallel Programming Hard, And, If So, What Can You Do About It?Matters ComputationalType Theory and Functional ProgrammingGetting started with Open source development (PDF)Database Fundamentals (PDF)Clever AlgorithmsSummary of the GoF Design PatternsFlow based ProgrammingAlgorithms and Data-Structures (PDF)Compiler Construction (PDF)Project Oberon (PDF)The Little Book of SemaphoresEssential Skills for Agile DevelopmentI Am a BugMining of Massive DatasetsData-Intensive Text Processing with MapReduce (PDF)Understanding IP Addressing: Everything you ever wanted to know (PDF)Operating Systems and Middleware (PDF and LaTeX)ASP.NET MVCNerdDinner WalkthroughAssembly Language 汇编语言ProgrammingGroundUp (PDF)Paul Carter’s Tutorial on x86 AssemblySoftware optimization resources by Agner FogBashAdvanced Bash-Scripting GuideLhunath’s Bash GuideC / C++The new C standard – an annotated referenceMatters Computational: Ideas, Algorithms, Source Code, by Jorg ArndtThe C bookThinking in C++, Second Edition (《C++编程思想》)C++ AnnotationsSoftware optimization resources by Agner FogIntroduction to Design Patterns in C++ with Qt 4 (PDF)Object Oriented Programming in C (PDF)Beej’s Guide to Network ProgrammingLearn C the hard wayAlso see: The Definitive C++ Book Guide and ListC#请参见下面 .NET 方面的ClojureClojure ProgrammingColdFusionCFML In 100 MinutesDB2Getting started with IBM Data Studio for DB2 (PDF)Getting started with IBM DB2 development (PDF)Getting started with DB2 Express-C (PDF)Delphi / PascalEssential Pascal Version 1 and 2The Tomes of DelphiDjangoDjangobook.comErlangLearn You Some Erlang For Great GoodFlexGetting started with Adobe Flex (PDF)F#The F# Survival GuideF Sharp Programming in WikibooksForthStarting ForthThinking ForthGitPro GitThe Git Community BookGit From The Bottom Up (PDF)GrailsGetting Start with GrailsHaskellLearn You a HaskellReal World HaskellHTML / CSSDive Into HTML5HTML Dog TutorialsJavaSun’s Java TutorialsThinking in Java (《Java编程思想》)How to Think Like a Computer ScientistJava Thin-Client ProgrammingOSGi in Practice (PDF)Java 6 Tutorial (PDF)JavaScriptEloquent JavaScriptCrockford’s JavaScriptjQuery Fundamentals (starts with JavaScript basics)Mozilla Developer Network’s JavaScript GuideEssential Javascript & jQuery Design Patterns for BeginnersLatexThe Not So Short Introduction to LATEX (perfect for beginners 特别适合初学者)LinuxAdvanced Linux ProgrammingLispA Gentle Introduction to Symbolic Computation (PDF)
Practical Common LispOn LispANSI Common LispCommon Lisp the Language, 2nd Edition
Successful LispLet Over Lambda – 50 Years of LispNatural Language Processing in LispLuaProgramming In Lua (for v5 but still largely relevant)Lua Programming Gems (不完全免费,但有很多免费的章节及代码)MavenBetter Builds with MavenMaven by ExampleMaven: The Complete ReferenceRepository Management with NexusDeveloping with Eclipse and MavenMercurialMercurial: The Definitive GuideHGInit – Mercurial Tutorial by Joel SpolskyNemerleSee .NET below.NET (C# / VB / Nemerle / Visual Studio)C# School (covers C# 1.0 and 2.0)Visual Studio Tips and Tricks (VS 2003-2005 only)Entity FrameworkCharles Petzold’s .NET Book 0
Threading in C#C# Yellow Book (intro to programming)C# Programming – WikibookC# EssentialsData Structures and Algorithms with Object-Oriented Design Patterns in C#Illustrated C# 2008 (.zip, dead link)O’Reilly’s C# Pocket Reference Manual (dead link)NemerleNoSQLCouchDB: The Definitive GuideThe Little MongoDB BookOberonProgramming in Oberon (PDF)Objective-CThe Objective-C Programming LanguageOCamlUnix System Programming in OCamlIntroduction to OCaml (PDF)Oracle ServerOracle’s Guides and ManualsOracle PL/SQLPL/SQL Language ReferencePL/SQL Packages and Types ReferenceSteven Feuerstein’s PL/SQL Obsession – Videos and PresentationsParrot / Perl 6Using Perl 6 (work in progress)PerlHigher-Order PerlPerl The Hard WayExtreme PerlPerl Free Online EBooks (meta-list)The Mason BookPractical mod_perlBeginning PerlEmbedding Perl in HTML with MasonPerl & LWPPerl for the WebWeb Client Programming with PerlModern Perl 5PHPPractical PHP Programming (wiki containing O’Reilly’s PHP In a Nutshell)Zend Framework: Survive the Deep EndPowerShellMastering PowerShellPrologBuilding Expert Systems in PrologAdventure in PrologProlog Programming A First CourseLogic, Programming and Prolog (2ed)Introduction to Prolog for MathematiciansLearn Prolog Now!Natural Language Processing in PrologNatural Language Processing Techniques in PrologProlog techniquesApplications of PrologSimply logicalPostgreSQLPractical PostgreSQLPythonDive Into PythonDive Into Python 3Byte of PythonBuilding Skills in Python Version 2.5Python Free Online Ebooks (meta-list)Python BibliothecaThink Python (PDF)Data Structures and Algorithms in PythonHow to Think Like a Computer Scientist: Learning with PythonPython for FunInvent Your Own Computer Games With PythonLearn Python The Hard WayThinking in PythonThe Django BookSnake Wrangling For KidsNatural Language Processing with PythonRThe R ManualsThe R LanguageR by exampleComputational Statistics, Jeremy PenzerRubyProgramming RubyWhy’s (Poignant) Guide to Ruby (mirror)Mr. Neighborly’s Humble Little Ruby BookRuby Best PracticesMacRuby: The Definitive GuideLearn Ruby the hard wayRuby on RailsRuby on Rails Tutorial: Learn Rails By ExampleScalaProgramming in Scala, First EditionA Scala Tutorial for Java programmers (PDF)Scala By Example (PDF)Programming ScalaXtrace (Github)List (Github)Pro Scala: Monadic Design Patterns for the WebExploring Lift (published earlier as “The Definitive Guide to Lift”, PDF)SchemeThe Scheme Programming Language (Edition 4)SmalltalkFree Online Smalltalk Books (meta-list)Squeak By Example (Smalltalk IDE)SubversionSubversion Version Control (PDF)Version Control with SubversionSQL (implementation agnostic)Developing Time-Oriented Database Applications in SQLUse The Index, Luke! (a guide to SQL database performance for developers)TeradataTeradata BooksVimA Byte of VimVim Recipes交互式教程网站:http://t.cn/aep0mV很全的Vim速查卡:http://t.cn/aBPFPkWebsphereGetting started with WebSphere (PDF)
二、 TG 推荐了麻省理工学院的一门课程《Structure and Interpretation of computer programs / 计算机程序员结构和解析》,这门课程视频地址是:http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/
三、 Gatekiller 推荐的资源如下:How to Design ProgramsGraphics Programing Black BookReal World HaskellLet Over LambdaStarting ForthList of Free Online Python BooksList of Free Online Perl BooksSqueak by ExampleC# EssentialsList of Free Online Smalltalk BooksSuccessful LispIntroduction to Functional Programming四、ani625推荐了一些Linux相关书籍The Art of Unix ProgrammingAdvanced Linux Programming by CodeSourcery LLCJava Application Development on Linux by Carl Albing and Michael Schwarz(PDF)Advanced Linux ProgrammingSecure Programming for Linux and UnixThe Linux Development PlatformSecure Programming for Linux and Unix HOWTOC++ GUI Programming With Qt 3Linux Kernel Module Programming Guide by Ori PomerantzKDE 2.0 DevelopmentGTK+/Gnome Application DevelopmentGNU Autoconf, Automake and LibtoolThe Linux Kernel Module Programming GuidePHP EssentialsJavaScript EssentialsVisual Basic Essentials上面这4个推荐,是得票数最高的前4位。下面这些得票数不太高的,从中挑选了一些。The Django Book, GNU Free Document LicenseMercurial (Hg) book by Bryan O’Sullivan. (Mercurial 是一个分布式版本控制软件)37 Signals’ 公司的 “Getting Real” 也提供免费在线阅读。《Clever Algorithms: Nature-Inspired Programming Recipes 》描述了人工智能领域中的 45个算法。所以这些算法的描述都连贯并完整,确保广大受众可以理解。 这本书也有免费的PDF版,也可以在线免费阅读。麻省理工学院关于计算机科学的开源课程:http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/index.htm《Practical Common Lisp(实用Common Lisp 编程)》Sergio Acosta 强烈推荐的,特别适合对Lisp感兴趣的初学者,虽然这本书的纸质版并不免费,但作者Peter Seibel 允许免费在线阅读。

页: [1]
查看完整版本: 国外程序员推荐的免费编程书籍资源