Всевозможные учебники и книги - это хорошо, но обычно их предлагают купить и часто не совсем дёшево, даже если они описывают базовый уровень. Бесплатным решением, очевидно, является официальная документация. Когда я открыл документацию к python, я был приятно удивлён, что она написана практически как учебник. Для Java вроде бы тоже всё относительно неплохо в этом плане, хотя хотелось бы отдельный оффлайновый pdf.
Мне захотелось скачать себе документацию в подобном виде для C и C++. Зашёл на их официальные сайты, там описание стандарта предлагают получить на сайте ISO за немалые суммы денег. Да и само описание стандарта далеко не для обучения. Хорошо, подумал я, попробую тогда посмотреть документацию к одной из реализаций языка - GCC-CPP, и вижу, что описанное там тоже вовсе не подходит для обучения. Даже описания типов и примеров объявления нет (может плохо искал, но в заголовках не заметил).
Нет, это не тред «подскажите книгу по Сям», таких для начинающих я и сам могу гору насоветовать.
Вопрос следующий: существует ли нормальная доступная бесплатная документация по которой можно изучать C, C++? Официальная документация по другим языкам была бы тоже интересна.
Update
C, C++
Online-ресурсы и учебные пособия для начинающих:
- cppreference.com - справочник по C++ (русскоязычная версия сайта)
- cplusplus.com (+ offline pdf - pdf не обновлялся с 2007 года) - учебник и статьи по C++
- learncpp.com - учебник по C++
- cppstudio.com - «Основы программирования на языках Си и C++ для начинающих» - русскоязычный ресурс с руководствами по C и C++
- cprogramming.com - учебники по C и C++
- free-programming-books - ресурс содержащий множество книг и статей по программированию, в том числе по C и C++ (там же можно найти ссылку на распространяемую бесплатно автором html-версию книги Eckel B. «Thinking in C++»)
- wiki:C++ Programming
- tutorialspoint.com - ещё один ресурс с множеством руководств по изучению различных языков и технологий, в том числе содержит учебники по C и C++
- Столяров А.В. «Введение в язык Си++» - учебное пособие (с сайта автора). Предполагается, что читатель знаком с языком Си
- Юричев Д. «Заметки о языке программирования Си/Си++» - «для тех, кто хочет освежить свои знания по Си/Си++» (сайт автора)
- comp.lang.c Frequently Asked Questions - опубликованная в свободном доступе автором книга Steve Summit «C Programming FAQs: Frequently Asked Questions» (страничка автора со ссылкой на html-версию книги)
- C++11 - the new ISO C++ standard - C++11 FAQ by Bjarne Stroustrup (C++ 11 FAQ от Бьярна Страуструпа - перевод, здесь же доступен в виде pdf-файла).
- tutorialcup.com - небольшое руководство по C++ (включает в себя раздел о multithreading). Там же есть похожее руководство по Java.
Как дополнение: Рабочая версия стандарта C++14 от 19 ноября 2014 г. (с официального сайта стандарта)
Fortran
- Учебник Чернова Ильи "Fortran-2008" (и его pdf-версия) с сайта автора
- Fortran Wiki
- Руководства для языка Fortran 77 и Fortran 90 c одной из старых страничек Стэндфордского университета
- Цикл лекций "Modern Fortran Programming for Chemists and Physicists" (2014 г., отдельные презентации в виде pdf-файлов) от Pekka Manninen (Ph.D., Docent, личная страничка на сайте химического факультета Хельсинкского университета)
- Fortran Tutorial (+ pdf-версия) от tutorialspoint.com
- Sandu A. Introduction to Fortran 95 and Numerical Computing. 2001 - курс лекций (личная страница автора на сайте политехнического университета Виргинии)
- Introduction to Modern Fortran - курс лекций Computing Services Department, the University of Liverpool. Насколько я понял, разрешено копировать для самостоятельного обучения ("... its presence here does NOT constitute permission to copy it for any reason or use other than attending the course or using it for personal study").
Python
В дополнение к официальной документации (и переводу руководства Python 3.1):
- Swaroop C.H. «A Byte of Python» (pdf-версия, русскоязычная онлайн-версия (перевод Владимира Смоляра), pdf-файл того же перевода на русский язык)
- Mark Pilgrim: «Dive Into Python» (русская онлайн-версия) и «Dive Into Python 3» (pdf-версии руководств на английском языке доступны на сайтах)
- Шапошникова С. «Python. Обучение программированию» - онлайн курс для начинающих по Python (старая версия курса для начинающих доступна в виде pdf-файла «Основы программирования на Python»)
- Python Tutorial (+ pdf-версия) от tutorialspoint.com
- The Hitchhiker’s Guide to Python!
- Learn Python the Hard Way
- David Mertz. Functional Programming in Python - May 2015: First Edition (pdf, и ряд других в разделе бесплатных книг от издательства Oreilly).
Object Pascal. Lazarus
- Lazarus and Free Pascal wiki - база знаний о FreePascal и Lazarus (частично переведена на русский язык).
- Деревенец О.В. Песни о Паскале. 2016 (сайт автора) - помимо книги в pdf на сайте доступны сборник задач «А слабо?», ответы к задачам сборника «А слабо?», исходные файлы примеров, задачник «Загогулины для начинающего программиста».
- Мансуров К.Т. Основы программирования в среде Lazarus. 2010 - страница загрузки на сайте автора
- Мансуров К.Т. Информатика для программиста. Введение в специальность. 2011 - страница загрузки на сайте автора, содержит также исходники файлов примеров
- Алексеев Е.Р., Чеснокова О.В., Кучер Т.В. Самоучитель по программированию на Free Pascal и Lazarus. 2009 - книга на сайте автора
- Алексеев Е.Р., Чеснокова О.В., Кучер Т.В. Free Pascal и Lazarus. Учебник по программированию. 2010 - библиотека издательства Alt Linux (альтернативная ссылка).
- Motaz A.A. Start Programming Using Object Pascal. 2013
Перемещено Klymedy из talks