PDA

Просмотр полной версии : Литература по программированию


ErikPshat
23.03.2010, 04:38
Надеюсь кому-нибудь пригодится.
На момент написания, все ссылки рабочие.


Петцольд, Код. Рассказывает о метаморфозах и взаимосвязях сигналов и информации, что оно внутри, почему оно должно быть так. как оно бывало до.
http://hack-evo.3dn.ru/load/7-1-0-2

Таннебаум, операционные системы. О том что такое ось, зачем она нужна и как взаимодествует со своими приложениями и тп.
http://win-web.ru/itbooks/open/tanenbaum_os.html

Таннебаум Архитектура компьютера. Рассказывает о том, как работает сама связка софт анд хард. Зачем в процессоре регистры, что такое тракт данных и как оно всё общается с внешним миром.
http://win-web.ru/itbooks/open/architect_computer.html

Собственно после понимания этих книг можно начинать с или с++.
Без них будет не программист а обезьяна с гранатой. © l3VGV (http://www.pspx.ru/forum/showpost.php?p=876147&postcount=10)

http://i044.radikal.ru/1004/9c/e71113c1e965.pngMicrosoft.com
Детский уголок: Учебники по программированию. (http://msdn.microsoft.com/ru-ru/beginner/ee344863.aspx)

Джесс Либерти
Освой самостоятельно C++ за 21 день
http://narod.ru/disk/13531889000/С%2B%2B%20за%2021%20день%20(Джесс%20Либерти).zip.html

Б. Керниган, Д. Ритчи
Язык программирования Си
http://itlibitum.ru/library/BOOK/RUSSIAN/THEMES/CPP/Kernigan-B-V-Richi-D-M-Yazyk-C-www.itlibitum.ru.pdf

Герберт Шилдт
"Полный справочник по С"
http://narod.ru/disk/19017602000/Polnuj_Spravochnik_po_C_.rar.html

Ален И. Голуб
Правила программирования на Си и Си++
(ВЕРЕВКА ДОСТАТОЧНОЙ ДЛИНЫ, ЧТОБЫ ВЫСТРЕЛИТЬ СEБЕ В НОГУ)
http://webcenter.ru/~zwb/download/cpprules.zip
или
http://itlibitum.ru/library/BOOK/RUSSIAN/THEMES/CPP/Pravila-Programmirovaniya-Na-C-I-C++-Alen-I-Golub-www.itlibitum.ru.pdf
или
http://pv.bstu.ru/oop/c++/cpprules.pdf

Богатырев Андрей
Хрестоматия по программированию на Си в Unix
http://unixman.narod.ru/download/cpp/c_unixhrest.rar

C++ для начинающих (архив сайта netcode.ru (http://netcode.ru/?lang=cpp))
http://cracklab.ru/_dl/_/World_CPP_Pro_6600_wWw.CRACKLAB.rU.rar

Джефф Элджер
C++. Библиотека программиста
http://it-books.narod.ru/C_CPP/CppForRealProgrammers_rus.rar
или
http://pv.bstu.ru/oop/c++/C++%20for%20Real%20Programmers.pdf
или
http://itlibitum.ru/library/BOOK/RUSSIAN/THEMES/CPP/C++-Eldjer-Djeff-for-Real-Programmers-RUS-www.itlibitum.ru.pdf

Шилдт Герберт
C для профессиональных программистов
http://www.uran.donetsk.ua/~masters/2002/kita/lunyov/books/c.zip

С. Липпман
С++ для начинающих
http://pv.bstu.ru/oop/c++/cplusplus%20for%20beginners.pdf
или
http://redlib.narod.ru/cidocs/lipman.zip

Дональд Эрвин Кнут
Искусство программирования. Том 1-3 (DjVu) | The Art of Computer Programming
Том 1: Основные алгоритмы
Том 2: Получисленные алгоритмы
Том 3: Сортировка и поиск
Том 4: Генерация всех деревьев (2,3,4 части)
http://narod.ru/disk/19036974000/Knut_Isskusstvo_Programmirovania_(Tom1-4).rar.html

Б.Страуструп
Введение в язык C++
http://dim-dimonov.narod.ru/books/c/straus1.rar

Бьерн Страуструп
Язык программирования C++
http://www.podgoretsky.com/ftp/Docs/Classics/Straustroop/2/aglav.htm

Б. Страустрап
Объектно-ориентированное программирование
http://dim-dimonov.narod.ru/books/c/straus2.rar

Б. Страуструп
Справочное руководство по C++
http://www.citforum.ru/programming/cpp_ref/index.shtml
или
http://lib.ru/CPPHB/cppref.txt
или
http://dim-dimonov.narod.ru/books/c/straus3.rar
или
http://prometey.fatal.ru/prog/inf/c/sprc.zip

Джосьютис Н.
C++. Стандартная библиотека
http://delinux.narod.ru/book.html

Полное справочное руководство по Си
http://prometey.fatal.ru/prog/inf/c/ci.zip

Кент Рейсдорф, Кен Хендерсон
Borland C++Builder. Освой самостоятельно
http://itlibitum.ru/library/BOOK/RUSSIAN/THEMES/CPP/Borland-C++Builder-Osvoy-Samostoyatelno-Kent-Resdorf-Ken-Hederson-www.itlibitum.ru.zip
или
http://podgoretsky.com/ftp/Docs/C/pdf/Builder.pdf

Builder Энциклопедия
http://itlibitum.ru/library/BOOK/RUSSIAN/THEMES/CPP/Builder-Enciclopedia-www.itlibitum.ru.zip

Русский хелп к C++Builder 5
http://prometey.fatal.ru/prog/inf/c/helprus.zip

Мешков А., Тихомиров Ю.
Visual C++ и MFC. Программирование под windows NT и windows 95. Книга в 2-х томах
http://www.sources.ru/books/books/cpp/meshkov.zip

Архипова Е.Н.
Программирование для Windows. Использование Visual C++ и MFC
http://athena.vvsu.ru/elena/visprog/prog_vis.zip

Д.Круглински, С.Уингоу, Д.Шеферд
Программирование на Microsoft Visual C++ 6.0 для профессионалов
http://files.zipsites.ru/books/programming/russkaya_redaktsiya_kruglinski_d._uingous_sheferddzh.__programmirovanie_na_micro soft_visual_c_6.0_dlay_prof.rar

Visual C++. Руководство разработчика
http://pv.bstu.ru/oop/c++/vc6.pdf

Фролов А.В., Фролов Г.В.
Библиотека системного программиста. Том 24 и том 28
http://progs-maker.narod.ru/info/c_cpp/win/bspmfc.rar

М. Пинкус
Visual C++ для начинающих
http://dim-dimonov.narod.ru/books/viscpp/beginners.rar

Профессиональное программирование на С++
http://adept7.narod.ru/library/programming/vc/vcpp/cprof/index.html

Visual C++. Краткий сборник советов с примерами
http://adept7.narod.ru/library/programming/vc/vcpp/lamer/index.html

MFC шаг за шагом
http://adept7.narod.ru/library/programming/vc/vcpp/mfc_sbs/mfc1.html
http://adept7.narod.ru/library/programming/vc/vcpp/mfc_sbs/mfc2.html

WinAPI шаг за шагом
http://adept7.narod.ru/library/programming/vc/vcpp/winapi/winapi1.html
http://adept7.narod.ru/library/programming/vc/vcpp/winapi/winapi2.html
http://adept7.narod.ru/library/programming/vc/vcpp/winapi/winapi3.html

Win32 API FAQ
http://www.codenet.ru/progr/visualc/winapifaq.php

Для работавших с Borland вот это имхо самое вразумительное
http://firststeps.ru/mfc/steps/
http://firststeps.ru/mfc/winapi/keyb/keyb1.html

codenet.ru
http://www.codenet.ru/cat/Languages/C-CPP/

rsdn.ru
http://rsdn.ru/summary/455.xml

wasm.ru
http://wasm.ru/

На английском

A. Parker
Algorithms and Data Structures in C++
http://pv.bstu.ru/algorithms/Algorithms_cpp.rar

Bruce Eckel
Thinking In C++, 2-nd edition
Volume I
http://www.oopweb.com/CPP/Documents/ThinkingInCpp1/VolumeFrames.html
Volume II
http://www.oopweb.com/CPP/Documents/ThinkingInCpp2/VolumeFrames.html

Frank B. Brokken
C++ Annotations
http://www.oopweb.com/CPP/Documents/CPPAnnotations/VolumeFrames.html
или
http://www.oopweb.com/CPP/Download/cplusplus.zip

Steven Holmes
http://www.oopweb.com/CPP/Documents/CProgramming/VolumeFrames.html

Peter Muller
Introduction To OOP Using C++
http://www.oopweb.com/CPP/Documents/Intro2OOP/VolumeFrames.html
или
http://www.oopweb.com/CPP/Download/Intro2OOP.zip

John Morris
Objects First
http://www.oopweb.com/CPP/Documents/ObjectsFirst/VolumeFrames.html

Allen B. Downey
How To Think Like A Computer Scientist with C++
http://www.oopweb.com/CPP/Documents/ThinkCScpp/VolumeFrames.html

Three High School Students
From The Ground Up: A Guide To C++
http://www.oopweb.com/CPP/Documents/FromTheGroundUp/VolumeFrames.html

SGI
STL Guide
http://www.oopweb.com/CPP/Documents/STLGuide/VolumeFrames.html
или
http://www.oopweb.com/CPP/Download/stl.zip

Johannes Weidl
The Standard Template Library Tutorial
http://www.oopweb.com/CPP/Documents/STL/VolumeFrames.html

Todd Hoff
C++ Coding Standard
http://www.oopweb.com/CPP/Documents/CodeStandard/VolumeFrames.html

FN/Mats Henricson and Erik Nyquist
Programming in C++, Rules and Recommendations
http://www.oopweb.com/CPP/Documents/CPPRules/VolumeFrames.html

J.H.M. Dassen (Ray) and I.G. Sprinkhuizen-Kuyper
Debugging C and C++ code in a Unix environment
http://www.oopweb.com/CPP/Documents/DebugCPP/VolumeFrames.html
или
http://www.oopweb.com/CPP/Download/debug.zip

Lars Haendel
The Function Pointer Tutorials
http://www.oopweb.com/CPP/Documents/FunctionPointers/VolumeFrames.html

Al Dev (Alavoor Vasudevan)
C++ How To
http://www.oopweb.com/CPP/Documents/CPPHOWTO/VolumeFrames.html

Steve Heller
Optimizing C++ the WWW version
http://www.oopweb.com/CPP/Documents/OptimizingCPP/VolumeFrames.html

Thomas Papanikolaou
C++ Course
http://www.oopweb.com/CPP/Download/CPPCourse.zip

Bjarne Stroustrup
An Overview Of The C++ Programming Langauge
http://www.oopweb.com/CPP/Download/crc.zip

l3VGV
23.03.2010, 07:57
K & R выдели жирным, оно для начинающих самое то. Ну и плюс это похоже одна из первых версий. все примеры заглавными буквами = ни один не заработает на современных компиляторах. :)

Неплохобы добавить Шилдта "Полный справочник по С".

ivy
23.03.2010, 10:05
Только лучше "Полный справочник по С++". Учитывая заголовок темы.

l3VGV
23.03.2010, 15:08
С++ это для отцов. С мне как любителю больше нравится. Ну а полный справочник у шилдта есть и по с++.

ErikPshat
23.03.2010, 16:42
С++ это для отцов. С мне как любителю больше нравится.Но всё-таки там книга по C# (C шарп) - а это ещё выше уровень, который Microsoft продвигает усиленно.

Я что-то искал по С++ 4-ое издание, но не нашёл. Были какие-то намёки на 3-е, но не стал на этом заморачиваться.

Если кто найдёт или ещё что интересное, выложите плз, я буду в шапку добавлять.

ivy
23.03.2010, 17:15
ErikPshat, Хм, ни когда не задумывался об издании, но справочник, в аналоговом виде, у меня оказался 4го издания. Раз уж выкладываешь книги, выложи «The Art of Computer Programming» Кнута. И жирным выдели.

З.ы. Это только я не переношу чтение с монитора?

l3VGV
23.03.2010, 17:32
Не согласен. Кнута только в конце и мелким шрифтом под спойлер.

ErikPshat
23.03.2010, 17:48
Хорошо, добавил в середину =)

Качество правда DjVu - не ахти. Но Том 4 качество супер, только жалко не существует оффперевода 1-ой части.
Дональд Эрвин Кнут
Искусство программирования. Том 1-3 (DjVu) | The Art of Computer Programming
Том 1: Основные алгоритмы
Том 2: Получисленные алгоритмы
Том 3: Сортировка и поиск
Том 4: Генерация всех деревьев (2,3,4 части)
http://narod.ru/disk/19036974000/Knut_Isskusstvo_Programmirovania_(Tom1-4).rar.html

doubledeath
23.03.2010, 18:05
о, ErikPshat, спасибо больше, давно хател с++ освоить, да вот все незнал с чего начать =)

l3VGV
26.03.2010, 01:44
Добавлю некоторое для понимания работы компьютера вообще.

Петцольд, Код. Рассказывает о метаморфозах и взаимосвязях сигналов и информации, что оно внутри, почему оно должно быть так. как оно бывало до.
http://hack-evo.3dn.ru/load/7-1-0-2


Таннебаум, операционные системы. О том что такое ось, зачем она нужна и как взаимодествует со своими приложениями и тп.
http://win-web.ru/itbooks/open/tanenbaum_os.html


Таннебаум Архитектура компьютера. рассказывает о том как работает сама связка софт анд хард. зачем в процессоре регистры, что такое тракт данных и как оно всё общается с внешним миром.
http://win-web.ru/itbooks/open/architect_computer.html


собственно после понимания этих книг можно начинать с или с++. без них будет не программист а обезьяна с гранатой.

ErikPshat
26.03.2010, 05:36
l3VGV, спасибо, хорошие ссылки, добавил в шапку.

ErikPshat
04.04.2010, 19:27
Не согласен. Кнута только в конце и мелким шрифтом под спойлер.
Кстати, наткнулся на высказывания профи по поводу этих авторов

http://www.pspx.ru/forum/showpost.php?p=423792&postcount=110
http://www.pspx.ru/forum/showpost.php?p=424165&postcount=111

emulchord
04.04.2010, 20:52
http://depositfiles.com/files/kgazvc50j
Здесь несколбко книг по програмираванию на C++ в html формате э меню, оглавлениями и гиперссылками. Oчень удобно просматривать через веб-браузер PSP.

l3VGV
04.04.2010, 21:33
Кстати, наткнулся на высказывания профи по поводу этих авторов

http://www.pspx.ru/forum/showpost.php?p=423792&postcount=110
http://www.pspx.ru/forum/showpost.php?p=424165&postcount=111


на уровне кнута изучать чтото в начале творческого пути попросту опасно. уровень очень, очень высокий. всёравно что 3х летних детей заставлять бегать 15км с 50кг мешком сахара.

оно будет нужно, но далеко потом. для начала нужнобы оценить как говорить и что говорить(парадокс но нужно одновременно и курицу и яйцо). а уже потом петь стихами. изучите сначала типы данных, методы работы с ними. генерировать те штуки что объясняет кнут оно зачастую просто ненужно, велосипед уже готов и он в разы круче чем то что удасться сходу наваять. открою секрет - Кнута читали многие, некоторые его даже поняли. и они написали библиотеки. вы можете найти их в своём любимом языке. наверняка там есть чтото для списка, деревьев, словарей и прочего. научитесь в первую очередь пользоваться готовым как следует, если вы сделаете очередной кривой велосипед - это конечно гдето фан, но он ниразу не поможет в постановке рекорда в тур де франс.

когданибудь, с седой мозолистой задницей и глазами цвета спелой вишни, имея под 5й точкой несколько лет топтания кнопок и гигабайты набитого текста, можно будет попытаться чтото крошить в сторону кнутов и им подобных. понимая когда что используется, что нужно вылизывать а где сэконосить. понимая что время стоит больших денег, понимая что сейчас родине в пенис не впёрлись очередные супервелосипеды. понимая что по сути вот такой уровень он уже за гранью. и чаще всего даже время этого поезда давно перевели. и даже если вы это напишите то пользоваться скорее всего получится только в своих других микровелосипедах с експоненциальной кривостью. потомучто теперь серьезный код пишется командой, а никому, как и вам, не прет понимать что там очередной гений навыдумывал. и код нужно в первую очередь читать. а читаемость у кнутолюбов как у древнеарамейского.

отложите кнута подальше. почитайте чтонить для людей земных. компьютеры стали очень быстрые. очень. и категорически дешевые. ваша жизнь дороже в разы. используйте это, пусть дешевый дурак работает, да оно будет гдето медленнее, зато наверняка оно
а) самое главное - оно будет.
б) работать
в) понимаемо не только вами, но и вы будете понимать чужое. кнут тут не помошник. и уж если то что вам нужно будет править что написал кнутовед - вам станут понятны мотивы сумасшедших ученых и газовых камер.

сейчас выгодно разрабатывать быстро. в подавляющем числе случаев сутки потраченные на оптимизацию никогда не окупятся ни финансово ни просто даже машинного времени ваша мега софтина столько не наработает.

итак.

идеальный код:
надежно работает
просто читается и понимается
быстро пишется

именно в таком порядке. почему? попробуйте найти у кнута. :)


ну и на ПС. шаблоны, патерны и прочие заклинания - тоже фигня на обман общественности. не замарачивайтесь.

l3VGV
04.04.2010, 21:33
я гарфоман.

NuEssence
04.04.2010, 22:16
зато какое удовольствие, когда велосипед изобретаешь :)

l3VGV
04.04.2010, 22:24
Этот пункт отмечен.

А ты знаешь какое удовольствие когда решаешь проблему скажем для подразделения человек в 15? А для руководства завода человек в 400?
А когда благодаря твоим наработкам человек вместо ежедневной 3х часовой неоплачиваемой переработки начинает уходить домой строго по расписанию?

Все эти кривосипеды они и рядом не валялись. и более того, были ниразу не нужны.

хотя нужно для справедливости отметить, что зная и умея то что описывает кнут, можно влиять на ситуацию глобально. те облегчать жизнь милионам и временами милиардам. Но уровень тут нужен, кнута, вирта, керингана и пайка. Гейтса и торвальдса. и пара книг тут только введение, и практика и опыт нужны колосальные.

ivy
05.04.2010, 14:30
l3VGV, Ну тогда всех пересадить на Vb и C#. И вообще никогда не придется изобретать велосипеды. =) Сам кстати пользуюсь вб.нет в тех случаях когда нужно «быстро и лишь бы работало правильно». Vb настолько суров что можно и переменные не объявлять, он сам разберется. Хотя конечно такое не любят и не зря называют индусским кодом. Хотя на самом деле даже в вб.нет можно писать эффективные с ресурсной точки зрения программы, было бы желание.

l3VGV
05.04.2010, 14:41
И такая тенденция есть. джава и шарп выбили с++ с лидирующих позиций. а вот чистый С что любопытно остался в топе. и это правильно. PL/1 показал судьбу универсального инструмента, с++ подтверждает что это была не случайность.

и слава тапкам. задолбали кривые программы. не может такой острый инструмент как С или С++ быть инструментом милионов.

NuEssence
05.04.2010, 23:14
я на vb пишу и c# пытаюсь изучить, за с++ браться не хочу, с ним у меня не получается быстро код писать, хотя с++ билдер очень даже приглянулся, какое-то время с научным проэктом возился в нем, но работа встала, проэкт отложил, наверное больше не вернусь к нему

l3VGV, понимаю, самому придется с таким работать, но ради самосовершенствования почему бы и не попробовать :)

конечно, оно понятно, что лучше отыскать готовый код, разобраться и доработать под свои нужды

l3VGV
06.04.2010, 22:05
http://msdn.microsoft.com/ru-ru/beginner/ee344863.aspx

отличная книга.

NuEssence
26.04.2010, 17:53
l3VGV, есть еще круче
http://download.microsoft.com/documents/rus/msdn/c_sharp2.pdf

ivy
26.04.2010, 21:43
NuEssence, шарп же…

NuEssence
30.04.2010, 14:50
ivy, I3VGV нам тоже не с++ кинул. простите за оффтоп раз уж так)

ivy
30.04.2010, 15:28
NuEssence, Нет я к тому что название темы тогда поменять на «Литература по программированию». Ты же модератор. )

NuEssence
30.04.2010, 15:29
ivy, не этого раздела :)

кстати, книгу купил хорошую по шарпу. правда, для тех, кто уже шарит немного в программировании

Эндрю Троелсен "Язык программирования С# 2008 и платформа .NET 3.5 (4-е издание)"

я бы ее отсканил и выложил сюда, но 1350 страниц сканировать не осилю