![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
Guest |
|
|||
Unregistered |
круче АРМа Страуструпа ничего не читал!
![]() |
|||
|
||||
Chaos A.D. |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 172 Регистрация: 16.1.2005 Где: 09 RUS Репутация: 6 Всего: 7 |
Дочитал недавно -
Эффективное использование STL (Effective STL) Скотт Мейерс. Всем, кто еще не читал, рекоммендую. Вообще, литературный стиль Мейерса мне нравится. Книга содержит пятьдесят советов, после прочтения которых (с желательным регулярным применением, или хотя-бы перечитыванием оглавления) вы скорее всего начнете наконец использовать алгоритмы и функторы вместо циклов, станете лучше разбираться в работе стандартных контейнеров. Предназначена для человека, который уже знает STL, но никак не может отделаться от чувства, что использует только небольшую его часть, или юзает её не эффективно (так и сказано в начале книги). Большее количество практических советов из книги обязательно осядет у вас в голове. Например про идиому erase-remove, фокус с перестановкой, COAP (Containers Of Auto Pointers), обязан знать каждый. Книга читается довольно легко и непринужденно. Это, по моему мнению, выгодно отличает её многих подобных книг, написанных сухим техническим языком. ____________________________ Поехали далее... Современное проектирование на С++. Андрей Александреску Ну эту книгу наверное знают многие из вас, отчасти благодаря тому, что она доступна в электронном формате (pdf, anatolix.naumen.ru, ~4 mb), отчасти потому, что она написана скорее для умудренных опытом разработчиков программного обеспечения. Я применил последний термин не случайно... Действительно, книга не только, и не столько о приёмах кодирования и алгоритмических трюках (хотя такое там тоже имеется), сколько о проектировании и об разработке гибкой и масштабируемой архитектуры ПО. При этом, вся гибкость и все остальные умные слова, которые я только-что употребил, достигаются исключительно средствами С++ ![]() В книге детально описана настолько искуссная техника применения шаблонов, что, я подозреваю, мало кто оценит её по достоинству. Не то что бы всё это было настолько сложно - нет там ничего сложного, спросите тех, кто читал. Дело в том, что те примеры и наработки, которые привел и описал Александреску, позволяют в самом реальном смысле этого слова генерировать код. Приведу цитату из книги :
Я прочел эту книгу примерно в июне-июле 2005 года. С тех пор я использовал в своих проектах из этой книги только функторы и реализацию паттерна Singleton. Это натакливает меня на мысль о том, что я был не готов к этой книге. Когда я в очередной раз страдаю от того, что в коде нужно сделать какое-то изменение, кардинально поменять принцип поведения моих классов, я думаю - надо бы перечитать эту книгу. Но все никак руки не дойдут. Книга однозначно не для beginners и не для intermediate. Я думаю, подавляющее большинство advanced-ов после её прочтения с месяц будут пользоваться библиотекой Loki, и потом забудут практически все из этой книги. А зря. ____________________________ Ну и под конец поста... Шаблоны С++. Справочник разработчика. Николай Джосаттис, Дэвид Вандервуд После предыдущей книги идет легко. В плане понимания описываемых концепций. Но, к сожалению, не в плане читабельности. Очень сильно напрягает ужаснейший технический язык. Если нужно применить какой-нибудь длиннючий и страшный термин, но можно его упростить в контексте, Джосаттис и Вандервуд непременно употребят этот термин целиком. Причем, два раза, для точности. ![]() В книге ну очень подробно расписано практически все о шаблонах. Если вам нужно сдавать какой-нибудь тест на досканальное знание шаблонов, это то, что вам нужно. Кроме того, авторы приводят реализацию обобщенного паттерна Command и Smart Pointer-ов. Все это реализуется иначе, чем у Александреску, и, имхо, хуже. По крайней мере, код читается намного сложнее. Ну а что касается практических ограничений - разницы практически нет. Кроме того, книгу стоит приобрести не только для того, чтобы сдать какой-нибудь тест по самым недокументированным местам шаблонов. Она нет-нет, да затрагивает какую-нибудь щипетильную тему, вроде поиска Кёнинга, или принципа SFINAE (subsitution-failure-not-an-error, если память мне не изменяет). Прочитать стоит, но после Александресковской книги вас вряд-ли уже что-нибудь удивит ![]() ____________________________ Так же стоит купить все книги Герба Саттера (Herb Sutter). Это все по чистому С++.
А есть где-нибудь в электронном варианте на русском? Это сообщение отредактировал(а) Chaos A.D. - 14.11.2005, 11:19 --------------------
Надо смеяться над тем, что тебя мучит, иначе не сохранишь равновесия, иначе мир сведет тебя с ума...Ken Kesey - One Flew Over The Cocoo's Nest |
||||
|
|||||
Mayk |
|
|||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 45 Всего: 134 |
Кстати о Саттере.
Из книг "Решение сложных задач на С++" и "Новые сложные задачи на С++" мне гораздо больше понравилась вторая. В обеих книгах рассматриваются интересные особенности языка, но во второй более лаконични и имхо интересно. В "новых..." кол-во так называемых мини серий (когда одна задача разбивается на n подзадач, каждая из которых всё равно считается как отдельной задачей, но не перечитав предыдущие много можно упустить) гораздо меньше - даже страницу "содержание" читать приятнее. Ну во всяком случае в "новых..." вы не найдете "6. Управление памятью Задача 6 1 Управление памятью Часть 1 Задача 6 2 Управление памятью Часть 2 Задача 6 3 Применение auto_ptr Часть 1 Задача 6 4 Применение auto_ptr Часть 2 Задача 6 5 Интеллектуальные указатели-члены Часть 1 Задача 6 6 Интеллектуальные указатели-члены Часть 2 " Лично мне такое содержание не нравится. К тому же в "Решении..." была задачка про макросы, но про чудесное слово #undef написано не было. Очень досадное упущение. Но всё равно must read. -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
Chaos A.D. |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 172 Регистрация: 16.1.2005 Где: 09 RUS Репутация: 6 Всего: 7 |
2 Mayk
Согласен, первая книга меня сильно утомила, особенно серия задач по безопасности исключений, которых в этой серии аж десять - двенадцать штук подряд. --------------------
Надо смеяться над тем, что тебя мучит, иначе не сохранишь равновесия, иначе мир сведет тебя с ума...Ken Kesey - One Flew Over The Cocoo's Nest |
|||
|
||||
SergeCpp |
|
|||
![]() ![]() ![]() Профиль Группа: Участник Сообщений: 955 Регистрация: 8.8.2005 Где: At Home Репутация: 15 Всего: 124 |
Есть комментарии к Саттеру
Написаны Сергеем Деревяго Весьма неплохо написаны Это сообщение отредактировал(а) SergeCpp - 5.1.2007, 20:33 |
|||
|
||||
DeadSoul |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
SergeCpp, цитирую оттуда
Дальше второго абзаца не читал. Какого уровня человек имеет право комментировать Саттера? Мое мнение: эту ссылку http://ders.angen.net/cpp3/xcppcomm/xcppcomm.html#intro в МУСОР -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
|||
|
||||
Dray |
|
|||
![]() Материалист ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: 2 Всего: 6 |
Роберт Седжвик "Фундаментальные алгоритмы на C++"
Книга о самых основных вещах в программировании не только на C++. Алгоритмы и структуры данных. Книга состоит из нескольких частей. 1 - Анализ, 2 - Структуры данных, 3 - Сортировка, 4 - Поиск. В первой части описывается анализ алгоритмов, при этом не так много математики, которая имеет свойство перегружать читателя. Основная прелесть во второй части. Там описываются такие вечные вещи как списки, деревья и другие фундаментальные структуры данных. Эти вещи должен знать каждый программист, тем более те алгоритмы, которые описаны 3, 4 частях. А именно сортировки: "пузырьком", "вставками"... ...сортировка связных списков, подробно анализируется каждый алгоритм, его скорость, плюсы и минусы. Описывается метод "разделяй и влавствуй", который является основой для многих частоиспользуемых алгоритмов. В книге всё основанно на C++ это её особенно выделяет среди остальных книг по алгоритмам. Это сообщение отредактировал(а) Dray - 26.11.2005, 01:18 |
|||
|
||||
Дмитрий Т |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 93 Регистрация: 16.3.2005 Где: Самара Репутация: 4 Всего: 4 |
Начинающим изучать C++ 1.1. "Как программировать на C++" (Х.М. Дейтел, П.Дж. Дейтел) - просто и доступно, удобно именно начать, но для знающего может оказаться черезчур подробной книжкой и отсутствуют сложные темы. Но если опыт программирования небольшой или отсутствует вовсе, то это именно то что надо. 1.2. Если есть базовые знания по программированию, то можно попробовать начать с "Эффективное программирование на C++" (Э. Кёниг, Б. Му) - размер книжки меньше раза в три, но очень хорошее начало пути, рекомендую. Это из серии "C++ In-Depth" Страуструпа которую желательно в будущем прочесть всю. 2. Когда уже есть базовые знания по C++, то надо браться за "Эффективное использование C++" (С. Мэйерс) - книга читается очень легко и перед серьёзным программированием её обязательно надо прочесть, чтоб потом получать от программирования на C++ удовольствие, а не головную боль. Собственно это набор первоочередных советов по программированию в C++ и даже если в некоторых вопросах автор черезчур перестраховвывается и вы с ним не согласны, то в целом не пожалеете потраченного времени. Как минус надо отметить не малое количество опечаток (издательство "ДМК Пресс" 2006). 3.1. А всё в одном (и учебник и справочник и лёгкое и тяжёлое и советы), так сказать следующий этап, это сам Б. Страуструп "Язык программирования C++", но если не пойдёт, то не отчаиваться - без этой книги вполне можно хорошо программировать. 3.2. Как справочник рекомендую "Полный справочник по С++" (Герберт Шилдт) имеет обидные опечатки, но это действительно самый полный справочник. Дальше надо углубленно изучать шаблоны. Это сообщение отредактировал(а) Дмитрий Т - 24.11.2006, 15:33 |
|||
|
||||
kleks |
|
|||
Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 6.10.2005 Репутация: нет Всего: нет |
Уильям Топп, Уильям Форд "Структуры данных в C++" может кто-нибудь знает где её можно скачать в электронном виде???
|
|||
|
||||
Василий |
|
|||
Unregistered |
Сейчас читаю книгу "Visual Studio .NET" из серии "Эффективная работа". Издательство Питер. Авторы: Крис Паппас, Уильям Мюррей. (У меня 2002 года выпуска).
Очень доволен этой книгой, считаю ее лучшей из того, что есть у меня по С/С++. Советую эту книгу для начинающих - все очень понятно и корректно излагается. Пару книг есть на http://vas-unn.narod.ru |
|||
|
||||
koljan |
|
|||
![]() VIP ![]() ![]() Профиль Группа: Участник Сообщений: 430 Регистрация: 18.12.2005 Где: г.Архангельск Репутация: нет Всего: 1 |
купил я страуструпа за 560 руб. но мне почти ничего не понятно можно сказать совсем ничего не понятно
|
|||
|
||||
DeadSoul |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1217 Регистрация: 25.9.2005 Где: Москва Репутация: 2 Всего: 11 |
Для новичка эта книга слишкам тяжела -------------------- Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". Бьем спамеров их же оружием. Пусть весь спам сыпется им [email protected] |
|||
|
||||
Дмитрий Т |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 93 Регистрация: 16.3.2005 Где: Самара Репутация: 4 Всего: 4 |
Посмотри мою заметку "Начинающим изучать C++". Она чуть раньше в этой теме. Выбери другую книгу и не отчаивайся. Страуструпа читают лучшие профессионалы, поэтому не зазорно подойти к ней позже - у тебя ещё будет время на эту книгу. Или можно начать последовательно выполнять упражнения которые там есть - поможет вникнуть. Или читать от начала до конца всю книгу, попрограммировать, а потом опять прочитать - наши мозги не быстро переваривают новое большого объёма и это надо учитывать. А книга куплена в любом случае не зря - там отличный индекс и советы, поэтому как справочник будет незаменима. |
|||
|
||||
blackofe |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 173 Регистрация: 29.11.2005 Репутация: 4 Всего: 4 |
а ты спрашивай, если чего непонятно. для того и форум. |
|||
|
||||
koljan |
|
|||
![]() VIP ![]() ![]() Профиль Группа: Участник Сообщений: 430 Регистрация: 18.12.2005 Где: г.Архангельск Репутация: нет Всего: 1 |
так мне понятны только первые примеры с "cout<<'hello world!\n" не буду же я всю книгу спрашивать |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |