【发布时间】:2010-09-06 13:51:00
【问题描述】:
不久前,我还是一名初级编码员,试图找到关于我想学习的语言的好书/教程。即便如此,有时我需要为我正在从事的新项目相对快速地学习一门语言。这篇文章的重点是记录这些语言的一些最佳教程和书籍。我将从我能找到的最好的开始列表,但希望你们可以提供更好的建议/新语言。这是我发现的:
由于现在这是 wiki 可编辑的,我将控制权交给社区。如果您有任何建议,请在此部分提出。我决定还添加一个部分,以便成为更好的程序员书籍和在线参考资料。再次欢迎所有建议。
一般编程
在线教程
Foundations of Programming 作者:Karl Seguin - 来自 Codebetter,它基于 C#,但想法在所有方面都是正确的,不敢相信实际上还没有人发布此内容。How to Write Unmaintainable Code - 一本反手册,教你如何以最不可维护的方式编写代码。如果这些建议中的很多都不是那么正确,那就太有趣了。
The Programming Section of Wiki Books - Jim Robert 建议在完成的不同阶段有大量关于多种语言的书籍/教程
@987654324 @ 感受一门语言。
书籍
Code Complete - 这本书不言而喻,它在很多方面都非常出色。
The Pragmatic Programmer - 与程序员大师,教你他们所知道的一切。
Mastering Regular Expressions - 正则表达式是每个程序员工具箱中必不可少的工具。这本书由 Patrick Lozzi 推荐,是了解他们能力的好方法。
C、C++ 和 Java 中的算法 - 如果您觉得 Knuth 的书有点太深入,这是学习所有经典算法的好方法。
C
在线教程
This 教程似乎非常简洁和透彻,查看了材料,似乎还不错。不过不确定它对新程序员有多友好。
书籍
K&R C - 肯定是经典之作。有人可能会说所有程序员都应该阅读它。
C Primer Plus - 由 Imran 推荐为初级程序员的终极 C 书籍。
C: A Reference Manual - Patrick Lozzi 推荐的一本很好的参考书。
C++
在线教程
cplusplus.com 上的教程似乎是最完整的。我找到了另一个教程here,但它不包括像多态这样的主题,我认为这是必不可少的。如果您来自 C,this 教程可能最适合您。
另一个有用的教程,C++ Annotation。在 Ubuntu 系列中,您可以通过安装来自 Synaptic 的c++-annotation 包(安装的包可以在/usr/share/doc/c++-annotation/ 中找到)来获得多种格式的电子书(pdf、txt、Postscript 和 LaTex)。
书籍
The C++ Programming Language - 对任何 C++ 程序员都至关重要。
C++ Primer Plus - 最初是作为错字添加的,但亚马逊的评论非常好,我会保留它在这里直到有人说它是一个哑弹。
Effective C++ - 改进 C++ 程序的方法。
More Effective C++ - 继续有效 C++。
Effective STL - 改进你使用的方法STL。
Thinking in C++ - 好书,两卷。由布鲁斯·埃克尔和查克·埃里森撰写。
Programming: Principles and Practice Using C++ - Stroustrup 对 C++ 的介绍。
Accelerated C++ - Andy Koenig 和 Barbara Moo - 对 C++ 的精彩介绍,它不会将 C++ 视为“附加了额外位的 C”,事实上,您可以直接潜入并尽早开始使用 STL。
第四
书籍
FORTH,文本和参考。 Mahlon G. Kelly 和 Nicholas
间谍。国际标准书号 0-13-326349-5 / 国际标准书号 0-13-326331-2。 1986年
普伦蒂斯霍尔。 Leo Brodie 的书很好,但这本书
甚至更好。例如,它涵盖了定义词和
深入的解释器。
Java
在线教程
Sun's Java Tutorials - 官方教程,看起来很透彻,但我不是 java 专家。你们知道有什么更好的吗?
书籍
Head First Java - Patrick Lozzi 推荐为优秀的介绍性文字。
Effective Java - pek 推荐为优秀的中间人文本。
Core Java Volume 1 和 Core Java Volume 2 - 被 FreeMemory 推荐为一些可用的最佳 Java 参考资料。
Java Concurrency in Practice - 被 MDC 推荐为 Java 并发编程的重要资源。
Python
在线教程
Python.org - 该语言的在线文档非常好。如果您知道更好的信息,请告诉我。
Dive Into Python - Nickola 建议。好像是网上的python书。
Perl
在线教程
perldoc perl - 这就是我个人开始学习该语言的方式,我认为您无法击败它。
书籍
Learning Perl - 一种向自己介绍该语言的好方法。
Programming Perl - 被称为 Perl 圣经。任何认真的 perl 程序员的重要参考。
Perl Cookbook - 一本很好的书,可以解决许多常见问题。
Modern Perl Programming - 新发行,包含现代技术和工具的最新智慧,包括 Moose 和 DBIx ::类。
红宝石
在线教程
Adam Mika 建议Why's (Poignant) Guide to Ruby,但看了之后,不知道是不是适合所有人。
找到了 this 站点,该站点似乎提供了几个关于 Ruby on Rails 的教程。
书籍
Programming Ruby - 建议作为所有 ruby 的一个很好的参考。
Visual Basic
在线教程
找到this 站点,该站点似乎致力于视觉基础教程。但不确定它们有多好。
PHP
在线教程
The main PHP site - 一个简单的教程,允许用户对每个页面进行cmets,我非常喜欢。
PHPFreaks Tutorials - 不同难度长度的各种教程。
Quakenet/PHP tutorials - PHP 教程,将引导您从头开始。
JavaScript
在线教程
找到了面向非程序员的不错的教程here。找到另一个更高级的here。 Nickolay 建议在这里阅读A reintroduction to javascript。
书籍
Head first JavaScript
JavaScript: The Good Parts(作者为Google Tech Talk video)
C#
在线教程
C# Station Tutorial - 似乎是我挖掘的一个不错的教程,但我不是 C# 人。
C# Language Specification - tamberg 建议。不是真正的教程,而是 C# 的所有元素的一个很好的参考
书籍
C# to the point - tamberg 建议作为一个简短的文本,以惊人的深度解释语言
ocaml
书籍
nlucaroni 提出以下建议:
OCaml for Scientists
Introduction to ocaml
Using Understand and unraveling ocaml: practice to theory and vice versa
Developing Applications using Ocaml - O'Reilly
The Objective Caml System - Official Manua
哈斯克尔
在线教程
nlucaroni 建议如下:
Explore functional programming with Haskell
书籍
Real World Haskell
Total Functional Programming
LISP/方案
书籍
wfarr 提出以下建议:
The Little Schemer - Scheme 和函数式编程简介
The Seasoned Schemer - Little Schemer 的后续。
Structure and Interpretation of Computer Programs - Lisp 的权威书籍(也是 available online) .
Practical Common Lisp - 一个很好的 Lisp 介绍和几个实际使用示例。
On Lisp - Lisp 高级主题
How to Design Programs - 计算和编程简介
Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp - 一种高质量的 Lisp 编程方法
你们呢?我完全不喜欢那里的一些吗?我遗漏了你最喜欢的语言吗?我会选择最好的 cmet 并根据建议修改问题。
【问题讨论】: