下面是一些推荐资源,其中有视频、大学课程、编程语言教程网站,
一、
·
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】
下面这部分依然来自 StackOverflow,不过是另外
一个贴子
。
·
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)