Мовні книги / навчальні посібники для популярних мов


249

Не так давно я був початковим кодером, намагаючись знайти хороші книги / підручники з мов, які я хотів вивчити. Навіть все ж, є час, коли мені потрібно досить швидко підібрати мову для нового проекту, над яким я працюю. Сенс цієї публікації полягає в документі деяких найкращих навчальних посібників та книг для цих мов. Я розпочну список із найкращого, що можу знайти, але сподіваюся, ви, хлопці, там, можуть допомогти в кращих пропозиціях / нових мовах. Ось що я знайшов:

Оскільки це вікі зараз можна редагувати, я контролюю громаду. Якщо у вас є пропозиція, будь ласка, викладіть її в цьому розділі. Я вирішив також додати розділ, щоб загалом бути кращими книгами програміста та онлайн-довідками. Ще раз всі рекомендації вітаються.

Загальне програмування

Інтернет-підручники
Основи програмування Карл Сегуїн - З Codebetter, заснований на C #, але ідеї звучать у всьому світі, не можу повірити, що це ще ніхто не опублікував.
Як написати нездійсненний код - Посібник з антимонопольних інструкцій, який навчає, як писати код найбільш немислимим способом. Було б смішно, якби багато цих пропозицій не звучали так правдиво.
Розділ програмування Вікі-книг - запропонував Джим Роберт як великий обсяг книг / навчальних посібників на декількох мовах на різних етапах завершення
Просто основи Щоб відчути мову.


Кодекс книг завершений - Ця книга сама собою зрозуміла, вона справді геніальна у занадто багатьох способах згадати.
Прагматичний програміст - наступне найкраще, що потрібно працювати з головним кодером, навчаючи вас усьому, що вони знають.
Освоєння регулярних виразів - Регулярні вирази є важливим інструментом у панелі інструментів кожного програміста. Ця книга, рекомендована Патріком Лоззі - це чудовий спосіб дізнатися, на що вони здатні.
Алгоритми на C , C ++ та Java - Чудовий спосіб вивчити всі класичні алгоритми, якщо ви знайдете книги Кнута трохи надто глибокі.

С

Підручники в Інтернеті
Цей підручник, здається, досить короткий, і ви переглянули матеріал і, здається, досить добре. Не впевнений, наскільки це буде привітно до нових програмістів.
Книги
K&R C - класика точно. Можна стверджувати, що всі програмісти повинні його читати.
C Primer Plus - запропоновано Імраном як найкраща книга C для початківців програмістів.
C: Довідковий посібник - чудова довідка, яку рекомендує Патрік Лоцці.

C ++

Підручники в Інтернеті Навчальний
посібник на сайті cplusplus.com здається найповнішим. Я знайшов інший підручник тут , але вона не включає в себе такі теми , як поліморфізм, які я вважаю , має важливе значення. Якщо ви родом із С, цей підручник може бути найкращим для вас.

Ще один корисний підручник, C ++ Annotation . У сім'ї Ubuntu ви можете отримати електронну книгу в декількох форматах (pdf, txt, Postscript і LaTex), встановивши c++-annotationпакет із Synaptic (встановлений пакет можна знайти в /usr/share/doc/c++-annotation/.

Книги
Мова програмування на C ++ - важлива для будь-якого програміста на C ++.
C ++ Primer Plus - Оригінально додається як друкарська помилка, але відгуки про амазонку такі хороші, я збираюся тримати його, поки хтось не скаже, що це дур.
Ефективний C ++ - шляхи вдосконалення своїх програм C ++.
Більш ефективний C ++ - продовження ефективного C ++.
Ефективний STL - шляхи покращення використання STL.
Мислення в С ++ - Чудова книга, обидва томи. Автор Брюс Еккель і Чак Еллісон.
Програмування: принципи та практика використання C ++ - введення Stroustrup в C ++.
Прискорений C ++ - Енді Кьониг та Барбара Му - чудовий вступ до C ++, який не сприймає C ++ як "C із зайвими бітами", адже ви занурюєтесь прямо та починаєте використовувати STL на початку.

Четвертий

Книги
ФОРТ, текст та довідка. Махлон Г. Келлі та Ніколас Шпіони. ISBN 0-13-326349-5 / ISBN 0-13-326331-2. 1986 Prentice-Hall. Книги Лео Броді хороші, але ця книга ще краща. Наприклад, він охоплює визначення слів та перекладача поглиблено.

Java

Інтернет-підручники Підручники
з Java на Sun - Офіційний підручник, який здається вам, але я не є експертом з Java Ви знаєте, які кращі?
Books
Head First Java - рекомендований як чудовий вступний текст Патріка Лоцці.
Ефективна Java - рекомендується pek як чудовий проміжний текст.
Core Java Volume 1 та Core Java Volume 2 - запропоновано FreeMemory як одна з найкращих доступних посилань на Java.
Конкурс Java на практиці - рекомендується MDC як чудовий ресурс для одночасного програмування на Java.

Мова програмування Java

Пітон

Підручники в Інтернеті
Python.org - Інтернет-документація на цю мову є досить хорошою. Якщо ви знаєте щось краще, дайте мені знати.
Пориньте в пітон - запропонував Нікола. Здається, книга онлайн-пітона.

Perl

Підручники в Інтернеті
perldoc perl - Ось так я особисто почав працювати з мовою, і не думаю, що ви не зможете її обіграти. Навчання
книг
Perl - прекрасний спосіб познайомитись з мовою.
Програмування Perl - в значній мірі називається Біблією Perl. Основна довідка для будь-якого серйозного програміста Perl.
Perl Cookbook - відмінна книга, яка має рішення багатьох поширених проблем.
Сучасне програмування Perl - нещодавно випущене, містить останню мудрість щодо сучасних методик та інструментів, включаючи Moose та DBIx :: Class.

Рубін

Підручники в Інтернеті
Адам Міка запропонував керівництво Рубі, чому (Пишний), але, подивившись на це, я не знаю, чи це для всіх. Знайдено цей сайт, який, здається, пропонує кілька навчальних посібників для Ruby on Rails. Програмування
книг
Ruby - пропонується як чудова орієнтир для всіх речей.

Visual Basic

Інтернет-підручники
Знайшли цей сайт, який, схоже, присвячує себе основними візуальними навчальними посібниками. Не впевнений, наскільки вони хороші.

PHP

Підручники в
Інтернеті Головний PHP-сайт - простий підручник, який дозволяє коментарям користувачів до кожної сторінки, що мені дуже подобається. Підручники PHPFreaks - різні навчальні посібники різної довжини складності.
Підручники з Quakenet / PHP - навчальний посібник PHP, який допоможе вам з нуля.

JavaScript

Онлайн уроки
Знайдено порядна підручник тут орієнтована на непрограмістів. Знайдено ще більш просунутий тут . Ніколай запропонував повторне введення в javascript, як добре читати тут.

Книги
очолюють перший JavaScript
JavaScript: хороші частини (із автором Google Tech Talk від автора)

C #

Підручники в Інтернеті
C # Station Tutorial - Здається, це гідний підручник, який я викопав, але я не хлопець C #.
Специфікація мови C # - Запропоновано tamberg. Насправді не підручник, але чудова довідка про всі елементи C #
Books
C # до речі - запропонована Тамбергом як короткий текст, що пояснює мову в дивовижній глибині

окамл

Книги
nlucaroni запропонували наступне:
OCaml для вчених Вступ до ocaml
Використання Розуміння та розгадування ocaml: практика до теорії та навпаки
Розробка додатків за допомогою Ocaml - O'Reilly
The Objective Caml System - Official Manua

Хаскелл

Інтернет-уроки
nlucaroni пропонують наступне:
Дослідіть функціональне програмування за допомогою Haskell
Books
Real World Haskell
Total Function Programming

LISP / Схема

Книги
wfarr пропонували наступне:
Маленький Шемер - Вступ до схеми та функціонального програмування загалом
Сезонний Schemer - Продовження до Little Schemer.
Структура та інтерпретація комп'ютерних програм - остаточна книга про Lisp (також доступна в Інтернеті ).
Практичний звичайний Lisp - хороший вступ до Lisp з кількома прикладами практичного використання.
На Lisp - Розширені теми в Lisp
Як розробляти програми - Вступ до обчислювальних та програмуючих
парадигм програмування штучного інтелекту: Тематичні дослідження у Common Lisp - підхід до високоякісного програмування Lisp

Що з вами, хлопці? Я повністю перебуваю на деяких там? Чи залишив я свою улюблену мову? Я візьму найкращі коментарі та модифікую запитання з пропозиціями.

Відповіді:


33

Я знаю, що це буде здаватися старомодним, але я не думаю багато використовувати онлайн-підручники для вивчення мов програмування чи платформ. Вони, як правило, дають вам не більше ніж трохи смаку мови. Щоб дійсно вивчити мову, вам потрібен еквівалент «книги», а в багатьох випадках це означає справжню мертву книгу.

Якщо ви хочете вивчити C, прочитайте K&R. Якщо ви хочете вивчити C ++, прочитайте Stroustrup. Якщо ви хочете вивчити Lisp / Scheme, прочитайте SICP. І т.д.

Якщо ви не готові витратити більше 30 доларів і кілька годин на вивчення мови, ви, мабуть, не збираєтесь її вивчати.


Я погоджуюся, що якщо ви дійсно хочете глибоко вивчити прогулянку, книга, як правило, це шлях. Однак я вважаю, що книга Струструпа з педагогічної точки зору досить бідна. Я б вирівняв ту саму критику (ще більш наголосно) у книзі GoF.
Dónal

Мені не дуже подобається книга Струструпа, моє уподобання стосується думки Брюса Екеля. І я віддаю перевагу електронним книгам, тому що я можу Ctrl + F. Це врятувало мені життя, коли я займався алгоритмами I класу (з книгою «Вступ до алгоритмів»)
Тянь Бо

9
Я не маю нічого проти електронних книг. Справа в тому, що це повинна бути справжня "книга", написана експертом і переглянута експертами, а не якийсь безкоштовний підручник з 5000 слів, який ви знайшли десь в Інтернеті, написаний хтось, хто не знає набагато більше, ніж ви робити.
Крістофер Джонсон

20

Це все дійсно добре, написані академіями, і (деякі) - це книги (неопублікована ручна книга - переклад з французької мови, але жодних питань, які я не знайшов), наприклад). У мене були * мої улюблені, які мені найбільше допомогли.

окамл:

  1. * Вступ до окамлу
  2. Використання розуміння та розгадування окамла: практика до теорії та навпаки
  3. * Розробка програм за допомогою Ocaml - O'Reilly
  4. Цільова система Caml - Офіційний посібник
  5. Короткий вступ до мети Caml
  6. Практичний Окамл

Haskell:

  1. Вивчіть функціональне програмування за допомогою Haskell
  2. * Реальний світ Хаскелл
  3. * Загальне функціональне програмування


8

Що стосується C ++, я пропоную прискорений C ++ від Koenig та Moo як початковий текст, хоча я не знаю, як це було б для абсолютного новачка. Він фокусується на використанні STL відразу, що робить роботу набагато простішою.


Але я думаю, що Accelerated C ++ не для початківців, я вважаю, що C ++ Primer Plus (5-е видання) - для початківців.
Ібн Саїд

7

Haskell :

Книга О'Рейлі:

  1. Реальний світ Haskell , чудова книга про Haskell, орієнтовану на навчальний посібник, доступна в Інтернеті та в друкованому вигляді.

Мої улюблені загальні, менш академічні онлайн-уроки:

  1. Вікі-книга Haskell, яка містить всі чудові ще один підручник з Haskell. (Цей підручник допомагає визначити особливості налаштування дистрибутива Haskell та запуску прикладних програм, наприклад.)
  2. Навчіться вам Хаскелл для Великого Доброго , в дусі Чутливого керівництва Рубі, але більше до речі.
  3. Напишіть собі схему за 48 годин . Забруднити руки Haskell справжнім проектом.

Книги про функціональне програмування з Haskell:

  1. Обчислення лямбда, комбінатори, більш теоретичні, але дуже приземлені: Введення Даві у системи функціонального програмування за допомогою Haskell
  2. Лінь і коректність програми, мислення функціонально: Введення Птаха у функціональне програмування за допомогою Haskell

5

Ефективна Java є обов'язковою, але рекомендую спочатку зручніше з Java, щоб повністю зрозуміти приклади.



4

Я додам книги програмування Брюса Еккеля:

Загалом його сторінка "Книги" ( http://mindview.net/Books/ ) - хороший ресурс. Книги з вільним доступом можна також знайти на веб- сайті http://www.ibiblio.org/pub/docs/books/eckel/


4

Не можу повірити, що ніхто не згадав найкращі практики Perl . Також є канал у Twitter, який надає один PBP в день.

Я навчився Perl з Підручника Perl Роберта , який я рекомендую, але він не оновлювався з 1999 року. Новий підручник, що рекомендується, - Підручник Perl Steve .

Для веб-розробки з Perl явний переможець - Catalyst , а вікі Catalyst - відправна точка для навчання.


3

Для Lisp і Scheme (пекло, функціональне програмування в цілому), мало речей, які забезпечують більш міцну основу, ніж The Little Schemer і The Seasoned Schemer . Обидва пропонують дуже просте та інтуїтивне введення як у схему, так і в функціональне програмування, що для нових студентів чи любителів виявляється набагато простішим, ніж будь-який з типових томів, які видаються, як видання нефіксованої книги « Війна та мир» .

Після того, як вони вийшли за рамки серії Schemer, SICP та On Lisp - це фантастичний вибір.


3

перегляньте розділ програмування вікікниг

Багато з них повністю сформовані, і досить багато мають більш вдосконалені розділи (які знаходяться в різних рівнях завершення) щодо конкретних функціональних можливостей.

Крім того, у школах w3 є чудовий підручник з PHP та довідник

їх розділи html та css також хороші для довідок.



3
  • C - Мова програмування на C - Очевидно, що мені довелося посилатися на K&R, одну з найкращих книг програмування, там повністю зупинена.
  • C ++ - Прискорений C ++ - Це чітке, добре написане вступ до C ++ іде безпосередньо до використання STL та дає приємні, зрозумілі, практичні приклади. Живе до своєї назви.
  • C # - Pro C # 2008 та платформа .NET 3.5 - Біт приємного, але чудово написаного та величезної глибини.
  • F # - Експерт F # - Призначений для того, щоб взяти досвідчених програмістів з нуля до експерта з F #. Дуже добре написано, один з придуманих автором F #, тому ви не можете піти не так!
  • Схема - Маленький Схемер - Справді унікальний підхід до викладання мови програмування зроблений дуже добре.
  • Ruby - програмування Ruby - ласкаво відомий як книга "забрати сокиру", це вступне рубічне рубі. Дуже добре написано, чітко і детально.

3

Для Javascript:

Для PHP:

Для проектування та програмування OO, шаблони:

Для рефакторингу:

Для SQL / MySQL:


2

C Primer Plus, 5-е видання - Книга C, яку можна отримати, якщо ви навчаєтесь C без будь-якого попереднього досвіду програмування. Це мій особистий фаворит, коли я навчився програмувати з цієї книги. У ньому є всі якості, якими повинна володіти книга, привітна для початківців:

  • Не передбачає попереднього впливу програм
  • Приємно читати (не дратуючи, як для манекенів /
  • Не спрощує

2

Не будемо забувати Head First Java , який можна вважати найважливішим першим кроком на цій мові або, можливо, кроком після онлайн-підручників Sun. Це чудово для того, щоб зрозуміти мову лаконічно, при цьому додаючи трохи задоволення, слугуючи кроком для більш глибоких книг, про які вже говорилося.

Sedgewick пропонує чудові серії про алгоритми, які є обов'язковими, якщо ви вважаєте, що книги Кнут занадто поглиблені. Кнут осторонь, Sedgewick приносить ґрунтовний підхід у цій галузі, і він пропонує свої книги на C , C ++ та Java . Книги C ++ можна використовувати назад на C, оскільки він не дуже відрізняє дві мови у своїй презентації.

Кожен раз, коли я працюю над C, C: Довідник посібника, від Гарбісона та Стіла , йде зі мною скрізь. Це лаконічно і ефективно, але при цьому надзвичайно ретельно робить його безцінним (для мене в будь-якому випадку).

Мови осторонь, і якщо ця нитка має стати довідковою базою для посилань, в яких я думаю, що вона спрямована саме так через кількість солідних внесків, будь-ласка, включіть засвоєння регулярних виразів з причин, на які я думаю, що більшість із нас знають про це. дехто також сказав, що регулярне вираження можна вважати мовою само по собі. Крім того, його корисність для широкого кола мов робить його безцінним.



2

Для цілі C:

Програмування какао для Mac OSX - Третє видання Aaron Hillegass Опублікував Аддісон Веслі

Програмування в цілі C, Стівен Кохан,


2

Head First Javascript є хорошим вступом у JS для початківців програмістів - він творчо пояснює основні концепції програмування за допомогою синтаксису JS. Серія Head First заснована на досліджених методах, які допомагають вам вивчити та запам'ятати нову інформацію. Вони дозволяють вам робити багато вправ і головоломок, які можуть здатися неповнолітніми, але насправді допомагають закріпити знання у вашому мозку.

Одне вправу, яке мені дуже сподобалось, було після того, як вони пояснили типи даних, вони показують зображення міської вулиці і кажуть «позначте всі типи даних, які ви можете знайти на цьому малюнку». Тож мигалка на машині булева, знак у магазині - рядок, а адреса - номер. Це допомогло мені зрозуміти, як перекласти реальну інформацію в програму.

Базуючись лише на цій книзі, я б сказав, що серія Head First - це чудовий спосіб дізнатися щось уперше , але подібний до них формат ускладнить їх використання в якості посилань.




2

Зважаючи на останні події, я думаю, що важливо включити нещодавній вибух безкоштовних онлайн-курсів від університетів та приватних компаній. Новий бостон - це сайт підручника, який я завжди використовував протягом багатьох років протягом багатьох років, чудовий момент для початківців.

http://www.udacity.com/

https://www.coursera.org/

http://www.coursehero.org/

http://www.codecademy.com/

http://mitx.mit.edu/

http://www.khanacademy.org/

http://thenewboston.org/


1

Я друге рекомендація Крістофера K&R для C.

Я знайшов книгу "Essential Actionscript 2.0" досить корисною для кодування AS (зараз я вважаю, що існує версія AS3).

Я виявив, що наявність справжніх книг у певних випадках корисніше, ніж Інтернет-посилання в деяких випадках. Не дуже впевнений, чому все-таки.


1

хм, я не знаю, чи хотів би сказати, що матеріали в Інтернеті марні, але я згоден, що книги є щось. Можливо, вони краще написані, а може, саме випадок, який роздрібнюється понад 50 доларів, робить вас більш схильним до вивчення матеріалу.

Так чи інакше, я погоджуюся, що книги мають бути частиною цього питання. Якщо у когось є якісь пропозиції щодо книг для мов, я відредагую публікацію з найкращими пропозиціями.


1

Посилання, яке ви вказали для Ruby, - це Ruby on Rails. Хоча досі рубіно в глибині душі, це точно не місце для початку для людей, які хочуть навчитися Рубі.

Для навчальних порад Рубі я б запропонував Посібник (Руйний) по Рубі як чудовий вихідний пункт для всіх, хто цікавиться мовою.

Якщо ви хочете детальніше розібратися, я б рекомендував книгу « Програмування Рубі» , яка стала стандартом для всіх речей Рубі. Наразі пишеться третє видання, в якому висвітлюються функції Ruby 1.9, тож я б затримався на деякий час, якщо хтось розглядає можливість придбання цієї книги.


Чому книга хороша, але маленькі штори - це занадто глупота. Вони дратували мене, не допомогли мені.
Рейне


1

Для Java я дуже рекомендую Core Java . Це великий том (або два великих томи), але я виявив, що це одна з найкращих посилань на Java, яку я читав.



1

Стандарт дефакто для вивчення Грааля - це відмінне Початок роботи з Граалом Джейсона Рудольфа. Ви можете обговорити, чи це онлайн-підручник чи книга, оскільки його можна придбати, але можна завантажити безкоштовно. Існує більше "справжніх" книг, і я рекомендую Починати Гроовий і Грааль.


1

C #

C # до пункту від Ганспетера Мессенбёка. На лише 200 сторінках він пояснює C # з дивовижною глибиною, акцентуючи увагу на базових концепціях та стислих прикладах, а не на маханні рукою та скріншотах Visual Studio.

Для отримання додаткової інформації про конкретні мовні функції, перевірте специфікацію мови C # ECMA-334 .

Рамкові керівні принципи дизайну , книги Кшиштофа Кваліни та Бреда Абрамса від Microsoft, надають детальну інформацію про основні дизайнерські рішення, що стоять за бібліотекою .NET.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.