Классический форум-трекер
canvas not supported
Нас вместе: 4 270 770


Скидка 20% на Amnezia VPN для друзей NoNameClub

Б.Страуструп | Программирование. Принципы и практика использования C++, исправленное издание [2011] [DJVU+Source]


 
 
RSS
Начать новую тему   Ответить на тему    Торрент-трекер NNM-Club -> Архив торрентов -> Архив Книг и обучающих материалов
Автор Сообщение
ukatana ®
Стаж: 16 лет 8 мес.
Сообщений: 794
Ratio: 4.827
Поблагодарили: 71075
100%
russia.gif
Б.Страуструп | Программирование. Принципы и практика использования C++, исправленное издание [2011] [DJVU+Source]
Автор: Б.Страуструп
Название: Программирование. Принципы и практика использования C++, исправленное издание
Год: 2011
Издательство: Вильямс, Pearson
ISBN: 978-5-8459-1621-1 (рус.), 978-0-321-54372-1 (англ.)
Жанр: Компьютерная (программирование)
Формат: DJVU+Source
Качество: Хороший черно-белый скан, OCR, дерево закладок
Страниц: 1206

Описание:
Вводный курс программирования, написанный автором языка С++.
В первую очередь автор разъясняет читателю, что такое в принципе написание программных текстов. Он предлагает книгу тем, «кто еще никогда не программировал, но готов тяжело работать, чтобы научиться этому», имея в виду прежде всего студентов, но полагает, что она может оказаться полезной и для преподавателей, поскольку отличается от традиционного курса по компьютерным наукам, обычно читаемого в США. Также издание показывает, как создавать работающее программное обеспечение, поэтому на его базе Б. Страуструп предлагает сформировать самодостаточное введение в курс компьютерных наук.

Оригинальное название:
Programming: Principles and Practice Using C++
Bjarne Stroustrup
Мир ПК, Г.И. Рузайкин:

В первую очередь автор разъясняет читателю, что такое в принципе написание программных текстов. Он предлагает книгу тем, «кто еще никогда не программировал, но готов тяжело работать, чтобы научиться этому», имея в виду прежде всего студентов, но полагает, что она может оказаться полезной и для преподавателей, поскольку отличается от традиционного курса по компьютерным наукам, обычно читаемого в США. Также издание показывает, как создавать работающее программное обеспечение, поэтому на его базе Б. Страуструп предлагает сформировать самодостаточное введение в курс компьютерных наук.

Содержательное отступление Почти сто страниц своей работы Б. Страуструп посвящает обращению к читателям и объяснению того, как соотносятся компьютеры, люди и программирование. Такова структура книги. Он раскрывает примененные в ней педагогические принципы, отношение программирования и компьютерных наук, а также формулирует ее основную цель: помочь читателям воплотить свои идеи в программах, -- однако не обещает научить их придумывать. Помимо того, автор объясняет необходимость комплексного взгляда на программирование, охватывающего взаимодействие компьютеров, людей и ПО, и даже посвящает читателей в идеалы разработчиков, которые соединяют цели программирования и качество их работы.

Основная часть. Книга Б. Страуструпа состоит из пяти частей, охватывающих главные вопросы, связанные с текстами на C++ и представлениями его понятий, в том числе операций ввода-вывода, а также графических классов и работы с ними, включая GUI. Разумеется, имеется раздел, где представлены листинги программ и алгоритмы.

Дополнительная часть охватывает материалы по истории создания основных языков программирования с кратким обсуждением целей, выдвигавшихся их разработчиками. Читателям будут интересны страницы, посвященные историческим шагам создания и развития C++ и, конечно, вкладу Александра Степанова, выпускника МГУ, разработавшего библиотеку STL (cтандартную библиотеку шаблонов).

Там же приведены материалы по работае в программах с текстом и числами, в частности в случае многомерных массивов и библиотек N-мерных матриц. Кроме того, рассмотрены представления о программировании встроенных систем и вопросы организации тестирования разработанных программ.

Собственно о С++ Важными в основной части книги являются материалы о языке C. Они предвосхищают последнюю часть «Приложения», которая содержит краткий обзор (более чем на 50 стр.!) по языку C++: обзор стандартной библиотеки, материалы, погружающие в азы действий в среде разработки Visual Studio, а также данные по инсталляции библиотеки FLTK (Fast light tool kit), включающей средства работы с графикой. В отдельном приложении завершающей части рассматривается реализация графического пользовательского интерфейса.

Дополнительные материалы. Помимо перечисленных выше частей, в состав книги включены глоссарий, содержащий объяснение использованных понятий, библиография, подготовленная автором, а также предметный указатель. Кроме того, издатели дополнили книгу аннотациями и рекламными представлениями выпущенных ими в последнее время работ по C++.

Стоит ли покупать? Теперь коротко остановимся на вопросе, почему перевод труда Б. Страуструпа, изданного Addison-Wesley, достоин внимания читателей журнала «Мир ПК».

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

Далее следует отметить замечательный стиль издания, сохраненный в переводе, который может служить образцом для других авторов. И, разумеется, данная книга уникальна среди большого числа работ по языку C++, прежде всего, способом изложения материала. Все это свидетельствует о том, что она будет пользоваться успехом у читателей, хотя покупателям и придется преодолевать ценовой барьер.


ИД Вильямс:

Вводный курс программирования, написанный автором языка С++.

Подготовка к созданию реальных программ
Автор книги полагает, что читатели в конце концов начнут писать нетривиальные программы либо в качестве профессиональных разработчиков программного обеспечения, либо в качестве программистов, работающих в других областях науки и техники.

Упор на основные концепции и методы
Основные концепции и методы программирования в книге излагаются глубже, чем это принято в традиционных вводных курсах. Это позволит читателям разрабатывать полезные, правильные, понятные и эффективные программы.

Программирование на современном языке С++
Книга представляет собой введение в программирование вообще, включая объектно-ориентированное и обобщенное программирование. Она также представляет собой прекрасное введение в язык С++, один из наиболее популярных языков программирования в современном мире. В книге описаны современные методы программирования на С++, включая стандартную библиотеку, позволяющую упростить программирование.

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

Широкий охват тем
Первая половина книги охватывает широкий спектр основных понятий, методов проектирования и программирования, свойств языка С++ и его библиотек. Это позволит читателям писать программы, выполняющие ввод и вывод данных, вычисления и построение простых графических изображений. Во второй половине рассматриваются более специализированные темы, такие как обработка текста и тестирование. В ней содержится много справочного материала. Исходные коды и другие приложения читатели могут найти на веб-сайте автора.


Об авторе
Доктор Бьярн Страуструп (Bjarne Straustrup) — изобрел и первым реализовал язык программирования С++ и написал книгу Язык программирования С++. Сейчас он работает профессором компьютерных наук в Техническом колледже Техасского университета агрокультуры и машиностроения (College of Engineering Chair in Computer Science Professor at Texas A&M University), является членом Национальной академии технических наук США (U.S. National Academy of Engineering) и сотрудником корпорации AT&T. До перехода на академическую работу он много лет работал в исследовательском центре AT&T Bell Labs. Он также является одним из членов-учредителей международного комитета по стандартизации языка С++ (ISO С++).
Скриншоты:

Время раздачи: с 20.10 до 5.00 по МСК
[nnm-club.ru] programmirovanie.c.pl.pl.straustrup [djvu.source].torrent
 Торрент: Платиновая раздача  Зарегистрирован
 
Скачать


Примагнититься
 Зарегистрирован:   29 Окт 2011 23:48:58
 Размер:   28.9 MB  () 
 Рейтинг:   4.9 (Голосов: 119)
 Поблагодарили:   411
 Проверка:   Оформление проверено модератором 30 Окт 2011 14:16:25
Как cкачать  ·  Как раздать  ·  Правильно оформить  ·  Поднять ратио!  

_________________
Мои релизы...
jamesjames
Стаж: 18 лет 6 мес.
Сообщений: 193
Ratio: 6.552
Поблагодарили: 54
100%
ukraine.gif
Б.Страуструп | Программирование. Принципы и практика использования C++, исправленное издание [2011] , но в формате pdf имеется?

_________________
заслуживший добрую славу..
Agent Johnson
Стаж: 15 лет 11 мес.
Сообщений: 4
Ratio: 149.684
66.67%
В скане отсутствует страница 437. Это не есть гут. :(
47th
Стаж: 16 лет 1 мес.
Сообщений: 1
0%
Это точно исправленное издание? И что там насчёт отсутствующей страницы, проблему решили?
ZeUsM
Стаж: 19 лет 5 мес.
Сообщений: 19
Ratio: 2.804
58.33%
russia.gif
Автор, издание точно исправленное? По данным озона там должно быть Страниц - 1248 стр.?

Добавлено спустя 27 минут 25 секунд:

Agent Johnson писал(а): Перейти к сообщению
В скане отсутствует страница 437. Это не есть гут. :(

Все присутствует.
Alllekkks
Стаж: 15 лет 8 мес.
Сообщений: 4
Ratio: 1.611
81.08%
Неа нету 437 страницы (
otchenprosto
 
Стаж: 16 лет 11 мес.
Сообщений: 275
Ratio: 17.272
100%
russia.gif
Alllekkks писал(а): Перейти к сообщению
Неа нету 437 страницы (

Подтверждаю, страницы нет :плач:
murlakatamenka
Стаж: 15 лет 10 мес.
Сообщений: 16
Ratio: 1377.675
100%
gogajuk
Стаж: 16 лет
Сообщений: 27
Ratio: 2.871
2.19%
russia.gif
murlakatamenka
Спасибо вам!
ukatana
Вам тоже спасибо, если есть возможность, замените DJVU-файл на отредактированный.

кстати, почему все молчат?? в первом же примере
Код:

#include "std_lib_facilities.h"
int main () // Программы на C++ начинаются с выполнения функции main
{
cout<<"Hello, World!\n"; // вывод "Hello,World!"
return 0;
}

в Visual Studio выскакивает ошибка:"Ошибка 1 error C1083: Не удается открыть файл включение: std_lib_facilities.h: No such file or directory c:\visual studio 2010\projects\helloworld\helloworld\helloworld.cpp 2 1 HelloWorld"
идём на страницу сайта Страуструпа, копируем содержимое и сохраняем как std_lib_facilities.h в папке "C:\Program Files\Microsoft Visual Studio 10.0\VC\atlmfc\include".
Asgard01_UA
Стаж: 13 лет 9 мес.
Сообщений: 2
Ratio: 9.147
0%
ukraine.gif
gogajuk писал(а): Перейти к сообщению
murlakatamenka
Спасибо вам!
ukatana
Вам тоже спасибо, если есть возможность, замените DJVU-файл на отредактированный.

кстати, почему все молчат?? в первом же примере
Код:

#include "std_lib_facilities.h"
int main () // Программы на C++ начинаются с выполнения функции main
{
cout<<"Hello, World!\n"; // вывод "Hello,World!"
return 0;
}

в Visual Studio выскакивает ошибка:"Ошибка 1 error C1083: Не удается открыть файл включение: std_lib_facilities.h: No such file or directory c:\visual studio 2010\projects\helloworld\helloworld\helloworld.cpp 2 1 HelloWorld"
идём на страницу сайта Страуструпа, копируем содержимое и сохраняем как std_lib_facilities.h в папке "C:\Program Files\Microsoft Visual Studio 10.0\VC\atlmfc\include".

/*
simple "Programming: Principles and Practice using C++" course header to
be used for the first few weeks.
It provides the most common standard headers (in the global namespace)
and minimal exception/error support.

Students: please don't try to understand the details of headers just yet.
All will be explained. This header is primarily used so that you don't have
to understand every concept all at once.

Revised April 25, 2010: simple_error() added
*/

#ifndef H112
#define H112 201004L

#include<iostream>
#include<fstream>
#include<sstream>
#include<cmath>
#include<cstdlib>
#include<string>
#include<list>
#include<vector>
#include<algorithm>
#include<stdexcept>

//------------------------------------------------------------------------------

#ifdef _MSC_VER
#include <hash_map>
using stdext::hash_map;
#else
#include <ext/hash_map>
using __gnu_cxx::hash_map;

namespace __gnu_cxx {

template<> struct hash<std::string>
{
size_t operator()(const std::string& s) const
{
return hash<char*>()(s.c_str());
}
};

} // of namespace __gnu_cxx
#endif

//------------------------------------------------------------------------------

#define unordered_map hash_map

//------------------------------------------------------------------------------

typedef long Unicode;

//------------------------------------------------------------------------------

using namespace std;

template<class T> string to_string(const T& t)
{
ostringstream os;
os << t;
return os.str();
}

struct Range_error : out_of_range { // enhanced vector range error reporting
int index;
Range_error(int i) :out_of_range("Range error: "+to_string(i)), index(i) { }
};

// trivially range-checked vector (no iterator checking):
template< class T> struct Vector : public std::vector<T> {
typedef typename std::vector<T>::size_type size_type;

Vector() { }
explicit Vector(size_type n) :std::vector<T>(n) {}
Vector(size_type n, const T& v) :std::vector<T>(n,v) {}
template <class I>
Vector(I first, I last) :std::vector<T>(first,last) {}

T& operator[](unsigned int i) // rather than return at(i);
{
if (i<0||this->size()<=i) throw Range_error(i);
return std::vector<T>::operator[](i);
}
const T& operator[](unsigned int i) const
{
if (i<0||this->size()<=i) throw Range_error(i);
return std::vector<T>::operator[](i);
}
};

// disgusting macro hack to get a range checked vector:
#define vector Vector

// trivially range-checked string (no iterator checking):
struct String : std::string {

String() { }
String(const char* p) :std::string(p) {}
String(const string& s) :std::string(s) {}
template<class S> String(S s) :std::string(s) {}
String(int sz, char val) :std::string(sz,val) {}
template<class Iter> String(Iter p1, Iter p2) : std::string(p1,p2) { }

char& operator[](unsigned int i) // rather than return at(i);
{
if (i<0||size()<=i) throw Range_error(i);
return std::string::operator[](i);
}

const char& operator[](unsigned int i) const
{
if (i<0||size()<=i) throw Range_error(i);
return std::string::operator[](i);
}
};

#ifndef _MSC_VER
namespace __gnu_cxx {

template<> struct hash<String>
{
size_t operator()(const String& s) const
{
return hash<std::string>()(s);
}
};

} // of namespace __gnu_cxx
#endif

struct Exit : runtime_error {
Exit(): runtime_error("Exit") {}
};

// error() simply disguises throws:
inline void error(const string& s)
{
throw runtime_error(s);
}

inline void error(const string& s, const string& s2)
{
error(s+s2);
}

inline void error(const string& s, int i)
{
ostringstream os;
os << s <<": " << i;
error(os.str());
}

#if _MSC_VER<1500
// disgusting macro hack to get a range checked string:
#define string String
// MS C++ 9.0 have a built-in assert for string range check
// and uses "std::string" in several places so that macro substitution fails
#endif

template<class T> char* as_bytes(T& i) // needed for binary I/O
{
void* addr = &i; // get the address of the first byte
// of memory used to store the object
return static_cast<char*>(addr); // treat that memory as bytes
}

inline void keep_window_open()
{
cin.clear();
cout << "Please enter a character to exit\n";
char ch;
cin >> ch;
return;
}

inline void keep_window_open(string s)
{
if (s=="") return;
cin.clear();
cin.ignore(120,'\n');
for (;;) {
cout << "Please enter " << s << " to exit\n";
string ss;
while (cin >> ss && ss!=s)
cout << "Please enter " << s << " to exit\n";
return;
}
}

// error function to be used (only) until error() is introduced in Chapter 5:
inline void simple_error(string s) // write ``error: s’’ and exit program
{
cerr << "error: " << s << '\n';
keep_window_open(); // for some Windows environments
exit(1);
}

// make std::min() and std::max() accessible:
#undef min
#undef max

#include<iomanip>
inline ios_base& general(ios_base& b) // to augment fixed and scientific
{
b.setf(ios_base::fmtflags(0),ios_base::floatfield);
return b;
}

// run-time checked narrowing cast (type conversion):
template<class R, class A> R narrow_cast(const A& a)
{
R r = R(a);
if (A(r)!=a) error(string("info loss"));
return r;
}

inline int randint(int max) { return rand()%max; }

inline int randint(int min, int max) { return randint(max-min)+min; }

inline double sqrt(int x) { return sqrt(double(x)); } // to match C++0x

#endif
gogajuk
Стаж: 16 лет
Сообщений: 27
Ratio: 2.871
2.19%
russia.gif
Asgard01_UA
это зря вы так: во-первых можно было бы под спойлер спрятать, во-вторых, вместо точки с запятой и закрывающей скобки, в браузере смайлик подмигивает и при копировании это теряется. если уж на то пошло: кидаем этот файл в папку include, не только в VS но и в любом другом компиляторе. Страуструп это сделал, вроде, для того, чтобы обучающиеся первое время не обращали внимания на заголовки в пространстве имён
Цитата:
simple "Programming: Principles and Practice using C++" course header to
be used for the first few weeks.
It provides the most common standard headers (in the global namespace)
and minimal exception/error support.

Students: please don't try to understand the details of headers just yet.
All will be explained. This header is primarily used so that you don't have
to understand every concept all at once.

Revised April 25, 2010: simple_error() added
Dremor
Стаж: 16 лет 5 мес.
Сообщений: 28
Ratio: 0.927
31.82%
Это точно переиздание?
Автор подозрительно умалчивает.
Топик был перенесен из форума Программирование в форум Архив Книг и обучающих материалов

Причина переноса: http://nnmclub.to/forum/viewtopic.php?t=889218
mishazajceff
Показать сообщения:   
Начать новую тему   Ответить на тему    Торрент-трекер NNM-Club -> Архив торрентов -> Архив Книг и обучающих материалов Часовой пояс: GMT + 3
Страница 1 из 1