home | login | register | DMCA | contacts | help | donate |      

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Э Ю Я


my bookshelf | genres | recommend | rating of books | rating of authors | reviews | new | форум | collections | читалки | авторам | add

Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ

Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ
Title: Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ
Author:
Translation:Мухин Н.
Оценка: 4.6 of 5, readers votes - 79
Genre: computers
Annotation:Эта книга представляет собой перевод третьего издания американского бестселлера Effective C++ и является руководством по грамотному использованию языка C++. Она поможет сделать ваши программы более понятными, простыми в сопровождении и эффективными. Помимо материала, описывающего общую стратегию проектирования, книга включает в себя главы по программированию с применением шаблонов и по управлению ресурсами, а также множество советов, которые позволят усовершенствовать ваши программы и сделать работу более интересной и творческой. Книга также включает новый материал по принципам обработки исключений, паттернам проектирования и библиотечным средствам.
Издание ориентировано на программистов, знакомых с основами C++ и имеющих навыки его практического применения.
Year:
Сборники: Программирование
Table of Contents:

hide Table of Contents

  1. Скотт Мэйерс Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ
  2. Отзывы о третьей редакции
  3. Эффективного использования C++
  4. Благодарности
  5. Предисловие
  6. Введение
  7. Терминология
  8. Соглашения об именах
  9. Многопоточность
  10. Библиотеки TR1 и Boost
  11. Глава 1 Приучайтесь к C++
  12. Правило 1: Относитесь к C++ как к конгломерату языков
  13. Что следует помнить
  14. Правило 2: Предпочитайте const, enum и inline использованию #define
  15. Что следует помнить
  16. Правило 3: Везде, где только можно используйте const
  17. Константные функции-члены
  18. Как избежать дублирования в константных и неконстантных функциях-членах
  19. Что следует помнить
  20. Правило 4: Прежде чем использовать объекты, убедитесь, что они инициализированы
  21. Что следует помнить
  22. Глава 2 Конструкторы, деструкторы и операторы присваивания
  23. Правило 5: Какие функции C++ создает и вызывает молча
  24. Что следует помнить
  25. Правило 6: Явно запрещайте компилятору генерировать функции, которые вам не нужны
  26. Что следует помнить
  27. Правило 7: Объявляйте деструкторы виртуальными в полиморфном базовом классе
  28. Что следует помнить
  29. Правило 8: Не позволяйте исключениям покидать деструкторы
  30. Что следует помнить
  31. Правило 9: Никогда не вызывайте виртуальные функции в конструкторе или деструкторе
  32. Что следует помнить
  33. Правило 10: Операторы присваивания должны возвращать ссылку на *this
  34. Что следует помнить
  35. Правило 11: В operator= осуществляйте проверку на присваивание самому себе
  36. Что следует помнить
  37. Правило 12: Копируйте все части объекта
  38. Что следует помнить
  39. Глава 3 Управление ресурсами
  40. Правило 13: Используйте объекты для управления ресурсами
  41. Что следует помнить
  42. Правило 14: Тщательно продумывайте поведение при копировании классов, управляющих ресурсами
  43. Что следует помнить
  44. Правило 15: Предоставляйте доступ к самим ресурсам из управляющих ими классов
  45. Что следует помнить
  46. Правило 16: Используйте одинаковые формы new и delete
  47. Что следует помнить
  48. Правило 17: Помещение в «интеллектуальный» указатель объекта, вьщеленного с помощью new, лучше располагать в отдельном предложении
  49. Что следует помнить
  50. Глава 4 Проектирование программ и объявления
  51. Правило 18: Проектируйте интерфейсы так, что их легко было использовать правильно и трудно – неправильно
  52. Что следует помнить
  53. Правило 19: Рассматривайте проектирование класса как проектирование типа
  54. Что следует помнить
  55. Правило 20: Предпочитайте передачу по ссылке на const передаче по значению
  56. Что следует помнить
  57. Правило 21: Не пытайтесь вернуть ссылку, когда должны вернуть объект
  58. Что следует помнить
  59. Правило 22: Объявляйте данные-члены закрытыми
  60. Что следует помнить
  61. Правило 23: Предпочитайте функциям-членам функции, не являющиеся ни членами, ни друзьями класса
  62. Что следует помнить
  63. Правило 24: Объявляйте функции, не являющиеся членами, когда преобразование типов должно быть применимо ко всем параметрам
  64. Что следует помнить
  65. Правило 25: Подумайте о поддержке функции swap, не возбуждающей исключений
  66. Что следует помнить
  67. Глава 5 Реализация
  68. Правило 26: Откладывайте определение переменных насколько возможно
  69. Что следует помнить
  70. Правило 27: Не злоупотребляйте приведением типов
  71. Что следует помнить
  72. Правило 28: Избегайте возвращения «дескрипторов» внутренних данных
  73. Что следует помнить
  74. Правило 29: Стремитесь, чтобы программа была безопасна относительно исключений
  75. Что следует помнить
  76. Правило 30: Тщательно обдумывайте использование встроенных функций
  77. Что следует помнить
  78. Правило 31: Уменьшайте зависимости файлов при компиляции
  79. Что следует помнить
  80. Глава 6 Наследование и объектно-ориентированное проектирование
  81. Правило 32: Используйте открытое наследование для моделирования отношения «является»
  82. Что следует помнить
  83. Правило 33: Не скрывайте унаследованные имена
  84. Что следует помнить
  85. Правило 34: Различайте наследование интерфейса и наследование реализации
  86. Что следует помнить
  87. Правило 35: Рассмотрите альтернативы виртуальным функциям
  88. Реализация паттерна««Шаблонный метод» с помощью идиомы невиртуального интерфейса
  89. Реализация паттерна «Стратегия» посредством указателей на функции
  90. Реализация паттерна «Стратегия» посредством класса tr::function
  91. «Классический» паттерн «Стратегия»
  92. Резюме
  93. Что следует помнить
  94. Правило 36: Никогда не переопределяйте наследуемые невиртуальные функции
  95. Что следует помнить
  96. Правило 37: Никогда не переопределяйте наследуемое значение аргумента функции по умолчанию
  97. Что следует помнить
  98. Правило 38: Моделируйте отношение «содержит» или «реализуется посредством» с помощью композиции
  99. Что следует помнить
  100. Правило 39: Продумывайте подход к использованию закрытого наследования
  101. Что следует помнить
  102. Правило 40: Продумывайте подход к использованию множественного наследования
  103. Что следует помнить
  104. Глава 7 Шаблоны и обобщенное программирование
  105. Правило 41: Разберитесь в том, что такое неявные интерфейсы и полиморфизм на этапе компиляции
  106. Что следует помнить
  107. Правило 42: Усвойте оба значения ключевого слова typename
  108. Что следует помнить
  109. Правило 43: Необходимо знать, как обращаться к именам в шаблонных базовых классах
  110. Что следует помнить
  111. Правило 44: Размещайте независимый от параметров код вне шаблонов
  112. Что следует помнить
  113. Правило 45: Разрабатывайте шаблоны функций-членов так, чтобы они принимали «все совместимые типы»
  114. Что следует помнить
  115. Правило 46: Определяйте внутри шаблонов функции, не являющиеся членами, когда желательны преобразования типа
  116. Что следует помнить
  117. Правило 47: Используйте классы-характеристики для предоставления информации о типах
  118. Что следует помнить
  119. Правило 48: Изучите метапрограммирование шаблонов
  120. Что следует помнить
  121. Глава 8 Настройка new и delete
  122. Правило 49: Разберитесь в поведении обработчика new
  123. Что следует помнить
  124. Правило 50: Когда имеет смысл заменять new и delete
  125. Что следует помнить
  126. Правило 51: Придерживайтесь принятых соглашений при написании new и delete
  127. Что следует помнить
  128. Правило 52: Если вы написали оператор new с размещением, напишите и соответствующий оператор delete
  129. Что следует помнить
  130. Глава 9 Разное
  131. Правило 53: Обращайте внимание на предупреждения компилятора
  132. Что следует помнить
  133. Правило 54: Ознакомьтесь со стандартной библиотекой, включая TR1
  134. Что следует помнить
  135. Правило 55: Познакомьтесь с Boost
  136. Что следует помнить
  137. Приложение А За пределами «Эффективного использования C++»
  138. Наиболее эффективное использование C++
  139. Эффективное использование STL
  140. Приложение В Соответствие правил во втором и третьем изданиях
  141. Второе издание в третьем
  142. Третье издание во втором
  143. Примечания


Rate this book  


Read this book now: Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ

Download (378k) in formats: fb2, epub, mobi, txt, html
Купить книгу "Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ" на ЛитРес

close [X]

close [X]




Reviews

Майерс - этим все сказано

Оценка 5 из 5 звёзд от vasko 15.02.2017 21:39  

не отображается текст вида

Оценка 5 из 5 звёзд от LyohaBalanar 24.10.2016 11:17  

При чтении книги онлайн есть техническая проблема: проглатываются символы < и >, а также весь текст между ними.

Оценка 5 из 5 звёзд от Сергей 30.03.2015 14:26  

Отличная книга. Снимаю шляпу перед автором!!!

Оценка 4 из 5 звёзд от yura497 02.02.2015 19:03  

Внимание ! В тексте присутствуют досадные ошибки - не грамматические, а по существу. Например - Правило 3: Как избежать дублирования в константных и неконстантных функциях-членах. Оба оператора [] в классе TextBlock объявления константными - это просто не скомпилируется !

Оценка 4 из 5 звёзд от jawdmal 28.03.2014 08:54  

Прекрасная книга, отличные советы, пояснения и примеры кода.

Оценка 5 из 5 звёзд от atom 05.06.2013 16:18  

Хороша, приятно листать, простая, но точная. А прочитав, по содержанию удобно вспоминать советы,
   не обращаясь заново к объяснениям...

Оценка 4 из 5 звёзд от supetohmid 09.05.2013 17:25  

Всего обзоров: 7
Средний рейтинг 4.6 из 5

Enter your name:     Rate this book

Enter your comments or review:


получать комментарии о книге Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ на e-mail

Anti-spam code Anti spam Capcha