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

时间:2023-02-11 16:08:27
下面是一些推荐资源,其中有视频、大学课程、编程语言教程网站, 一、 · How to Design Programs: An Introduction to Computing and Programming · 25 Free Computer Science Ebooks · Free Tech Books · MindView Inc · Wikibooks: Programming · Cheat Sheets (Free) · CodePlex List of Free E-Books · Book Training – On Video! · Sofware Program Managers Network – Free EBooks · EBook Share @ linbai.info · FreeBooksClub.Net · Theassayer.org · O’Reilly’s Open Books Project · TechBooksForFree.com · Galileo Computing (德语) · Microsoft Press: Free E-Books Graphics Programming 图形编程 · GPU Gems · GPU Gems 2 – ch 8,14,18,29,30 as pdf · GPU Gems 3 · Graphics Programming Black Book · ShaderX series · DirectX manual (draft) · Learning Modern 3D Graphics Programming (draft) Language Agnostic · Object-Oriented Reengineering Patterns · Foundations of Programming · Computer Musings (由高德纳授课) · The Cathedral and the Bazaar · Patterns and Practices: Application Architecture Guide 2.0 · Security Engineering · Digital Signal Processing For Engineers and Scientists · Getting Real · Structure and Interpretation of Computer Programs · Domain Driven Design Quickly · OO Design · Best Kept Secrets of Peer Code Review · NASA Software Measurement Handbook · NASA Manager Handbook for Software Development (PDF) · Introduction to Functional Programming (经典课程) · How to Design Programs · Guide to the Software Engineering Body of Knowledge · Online Course Materials · Algorithms (draft) · Data Structures and Algorithms · Essential Skills for Agile Development · Programming Languages: Application and Interpretation · Learn to Program · Patterns of Software: Tales from the Software Community (PDF) · How to write Unmaintainable Code · The Art of Unix Programming 《UNIX编程艺术 · The Definitive Guide to Building Code Quality · How to Think Like a Computer Scientist · Planning Algorithms · Mathematical Logic – an Introduction (PDF) · An Introduction to the Theory of Computation · Developers Developers Developers Developers · Linkers and loaders · Let’s Build a Compiler · Producing Open Source Software · How to Write Parallel Programs · Don’t Just Roll the Dice · 97 Things Every Programmer Should Know(这本书有中文版《程序员应该知道的97件事》) · How Computers Work · Introduction to Information Retrieval · Is Parallel Programming Hard, And, If So, What Can You Do About It? · Matters Computational · Type Theory and Functional Programming · Getting started with Open source development (PDF) · Database Fundamentals (PDF) · Clever Algorithms · Summary of the GoF Design Patterns · Flow based Programming · Algorithms and Data-Structures (PDF) · Compiler Construction (PDF) · Project Oberon (PDF) · The Little Book of Semaphores · Essential Skills for Agile Development · I Am a Bug · Mining of Massive Datasets · Data-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 MVC NerdDinner Walkthrough Assembly Language 汇编语言 · ProgrammingGroundUp (PDF) · Paul Carter’s Tutorial on x86 Assembly · Software optimization resources by Agner Fog Bash · Advanced Bash-Scripting Guide · Lhunath’s Bash Guide C / C++ · The new C standard – an annotated reference · Matters Computational: Ideas, Algorithms, Source Code, by Jorg Arndt · The C book · Thinking in C++, Second Edition (《C++编程思想》) · C++ Annotations · Software optimization resources by Agner Fog · Introduction to Design Patterns in C++ with Qt 4 (PDF) · Object Oriented Programming in C (PDF) · Beej’s Guide to Network Programming · Learn C the hard way · Also see: The Definitive C++ Book Guide and List C# 请参见下面 .NET 方面的 Clojure Clojure Programming ColdFusion CFML In 100 Minutes DB2 · Getting started with IBM Data Studio for DB2 (PDF) · Getting started with IBM DB2 development (PDF) · Getting started with DB2 Express-C (PDF) Delphi / Pascal · Essential Pascal Version 1 and 2 · The Tomes of Delphi Django Djangobook.com Erlang Learn You Some Erlang For Great Good Flex Getting started with Adobe Flex (PDF) F# The F# Survival Guide F Sharp Programming in Wikibooks Forth Starting Forth Thinking Forth Git · Pro Git (官网有中文版) · The Git Community Book · Git From The Bottom Up (PDF) Grails Getting Start with Grails Haskell · Learn You a Haskell · Real World Haskell HTML / CSS · Dive Into HTML5 · HTML Dog Tutorials Java · Sun’s Java Tutorials · Thinking in Java (《Java编程思想》) · How to Think Like a Computer Scientist · Java Thin-Client Programming · OSGi in Practice (PDF) · Java 6 Tutorial (PDF) JavaScript · Eloquent JavaScript · Crockford’s JavaScript · jQuery Fundamentals (starts with JavaScript basics) Mozilla Developer Network’s JavaScript Guide Essential Javascript & jQuery Design Patterns for Beginners Latex The Not So Short Introduction to LATEX (perfect for beginners 特别适合初学者) Linux Advanced Linux Programming Lisp · A Gentle Introduction to Symbolic Computation (PDF) · Practical Common Lisp · On Lisp · ANSI Common Lisp · Common Lisp the Language, 2nd Edition · Successful Lisp · Let Over Lambda – 50 Years of Lisp · Natural Language Processing in Lisp Lua · Programming In Lua (for v5 but still largely relevant) · Lua Programming Gems (不完全免费,但有很多免费的章节及代码) Maven · Better Builds with Maven · Maven by Example · Maven: The Complete Reference · Repository Management with Nexus · Developing with Eclipse and Maven Mercurial · Mercurial: The Definitive Guide · HGInit – Mercurial Tutorial by Joel Spolsky Nemerle See .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 Framework · Charles Petzold’s .NET Book 0 · Threading in C# · C# Yellow Book (intro to programming) · C# Programming – Wikibook · C# Essentials · Data 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) · Nemerle NoSQL · CouchDB: The Definitive Guide · The Little MongoDB Book Oberon Programming in Oberon (PDF) Objective-C The Objective-C Programming Language OCaml · Unix System Programming in OCaml · Introduction to OCaml (PDF) Oracle Server Oracle’s Guides and Manuals Oracle PL/SQL · PL/SQL Language Reference · PL/SQL Packages and Types Reference · Steven Feuerstein’s PL/SQL Obsession – Videos and Presentations Parrot / Perl 6 Using Perl 6 (work in progress) Perl · Higher-Order Perl · Perl The Hard Way · Extreme Perl · Perl Free Online EBooks (meta-list) · The Mason Book · Practical mod_perl · Beginning Perl · Embedding Perl in HTML with Mason · Perl & LWP · Perl for the Web · Web Client Programming with Perl · Modern Perl 5 PHP · Practical PHP Programming (wiki containing O’Reilly’s PHP In a Nutshell) · Zend Framework: Survive the Deep End PowerShell Mastering PowerShell Prolog · Building Expert Systems in Prolog · Adventure in Prolog · Prolog Programming A First Course · Logic, Programming and Prolog (2ed) · Introduction to Prolog for Mathematicians · Learn Prolog Now! · Natural Language Processing in Prolog · Natural Language Processing Techniques in Prolog · Prolog techniques · Applications of Prolog · Simply logical PostgreSQL Practical PostgreSQL Python · Dive Into Python · Dive Into Python 3 · Byte of Python · Building Skills in Python Version 2.5 · Python Free Online Ebooks (meta-list) · Python Bibliotheca · Think Python (PDF) · Data Structures and Algorithms in Python · How to Think Like a Computer Scientist: Learning with Python · Python for Fun · Invent Your Own Computer Games With Python · Learn Python The Hard Way · Thinking in Python · The Django Book · Snake Wrangling For Kids · Natural Language Processing with Python R · The R Manuals · The R Language · R by example · Computational Statistics, Jeremy Penzer Ruby · Programming Ruby · Why’s (Poignant) Guide to Ruby (mirror) · Mr. Neighborly’s Humble Little Ruby Book · Ruby Best Practices · MacRuby: The Definitive Guide · Learn Ruby the hard way Ruby on Rails Ruby on Rails Tutorial: Learn Rails By Example Scala · Programming in Scala, First Edition · A Scala Tutorial for Java programmers (PDF) · Scala By Example (PDF) · Programming Scala · Xtrace (Github) · List (Github) · Pro Scala: Monadic Design Patterns for the Web · Exploring Lift (published earlier as “The Definitive Guide to Lift”, PDF) Scheme The Scheme Programming Language (Edition 4) Smalltalk · Free Online Smalltalk Books (meta-list) · Squeak By Example (Smalltalk IDE) Subversion · Subversion Version Control (PDF) · Version Control with Subversion SQL (implementation agnostic) · Developing Time-Oriented Database Applications in SQL · Use The Index, Luke! (a guide to SQL database performance for developers) Teradata Teradata Books Vim · A Byte of Vim · Vim Recipes · 交互式教程网站:http://t.cn/aep0mV · 很全的Vim速查卡:http://t.cn/aBPFPk Websphere Getting 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 Programs · Graphics Programing Black Book · Real World Haskell · Let Over Lambda · Starting Forth · List of Free Online Python Books · List of Free Online Perl Books · Squeak by Example · C# Essentials · List of Free Online Smalltalk Books · Successful Lisp · Introduction to Functional Programming 四、ani625推荐了一些Linux相关书籍 · The Art of Unix Programming · Advanced Linux Programming by CodeSourcery LLC · Java Application Development on Linux by Carl Albing and Michael Schwarz(PDF) · Advanced Linux Programming · Secure Programming for Linux and Unix · The Linux Development Platform · Secure Programming for Linux and Unix HOWTO · C++ GUI Programming With Qt 3 · Linux Kernel Module Programming Guide by Ori Pomerantz · KDE 2.0 Development · GTK+/Gnome Application Development · GNU Autoconf, Automake and Libtool · The Linux Kernel Module Programming Guide · PHP Essentials · JavaScript Essentials · Visual Basic Essentials 上面这4个推荐,是得票数最高的前4位。下面这些得票数不太高的,从中挑选了一些。 · The Django Book, GNU Free Document License · Mercurial (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 允许免费在线阅读 【更新:2012-5-17 20:24:19】 下面这部分依然来自 *,不过是另外一个贴子 · 97 Things Every Programmer Should Know (这本书有中文版《程序员应该知道的97件事》) · Algorithms and Data-Structures (PDF) · Algorithms (draft) · The Architecture of Open Source Applications · The Art of Unix Programming · Best Kept Secrets of Peer Code Review · Binary Trees (PDF)< · The Cathedral and the Bazaar · Clever Algorithms · Communicating Sequential Processes (PDF) – Tony Hoare · Compiler Construction (PDF) · Computer Musings (lectures by Donald Knuth) · Data Structures and Algorithms: Annotated Reference with Examples · Database Fundamentals (PDF) · Data-Intensive Text Processing with MapReduce (PDF) · The Definitive Guide to Building Code Quality · Designing Interfaces by Jennifer Tidwell · Digital Signal Processing For Engineers and Scientists · Domain Driven Design Quickly · Don’t Just Roll the Dice · Essentials of Metaheuristics by Sean Luke · Essential Skills for Agile Development · A Field Guide To Genetic Programming · Flow based Programming · Foundations of Computer Science – Al Aho and Jeff Ullman · Foundations of Programming · Getting Real · Getting started with Open source development (PDF) · The Great Tree List Recursion Problem · Guide to the Software Engineering Body of Knowledge · How Computers Work · How to Design Programs · How to Think Like a Computer Scientist · How to Write Parallel Programs · How to write Unmaintainable Code · I Am a Bug · An Introduction to the Theory of Computation · Introduction to Functional Programming (class lectures and slides) · Introduction to Information Retrieval · Is Parallel Programming Hard, And, If So, What Can You Do About It? · Learn to Program · Let’s Build a Compiler · Linkers and loaders · Linked List Basics · Linked List Problems · Mathematical Logic – an Introduction(PDF) · Matters Computational · Mining of Massive Datasets · NASA Manager Handbook for Software Development (PDF) · NASA Software Measurement Handbook · Object-Oriented Reengineering Patterns · Online Course Materials · OO Design · Operating Systems and Middleware (PDF and LaTeX) · Patterns and Practices: Application Architecture Guide 2.0 · Patterns of Software: Tales from the Software Community (PDF) · Planning Algorithms · PNG: The Definitive Guide · Pointers And Memory · Producing Open Source Software · Programming Languages: Application and Interpretation · Programming Methodology · Programming Pearls · Project Oberon (PDF) · Seamless Object-Oriented Software Architecture(PDF) · Security Engineering · Structure and Interpretation of Computer Programs · Summary of the GoF Design Patterns · The Little Book of Semaphores · The TCP/IP Guide · Think Stats: Probability and Statistics for Programmers (PDF, code written in Python) · Type Theory and Functional Programming · Understanding IP Addressing: Everything you ever wanted to know (PDF)