Новинки  ·  Как купить книги  ·  Доставка  ·  Контакты



Ваша корзина
книг: 0 Купить
книги
сумма: 0грн.

 

 


Каталог книг


Книги по бизнесу
  · Книги банки,деньги,кредит
  · Книги по бизнесу
  · Книги по бухучету
  · Книги инвестиционный бизнес
  · Книги коммерция и продажи
  · Книги по маркетингу и рекламе
  · Книги по менеджменту
  · Книги по праву
  · Книги по предпринимательству
  · Книги по финансам
  · Книги по экономике
  · Книги по экономической теории
Книги компьютерные
  · Книги CAD-ы
  · Книги 3d MAX
  · Книги ACCESS
  · Книги Adobe
  · Книги Assembler
  · Книги Basic
  · Книги C, C++,С#
  · Книги Delphi
  · Книги EXCEL
  · Книги HTML,XML, Dynamic, CSS
  · Книги Java
  · Книги JavaScript
  · Книги Linux
  · Книги MAC
  · Книги Maya
  · Книги OFFICE
  · Книги Oracle
  · Книги Pascal
  · Книги Perl
  · Книги PHP
  · Книги SQL
  · Книги UML
  · Книги Unix
  · Книги VBA
  · Книги Visual Studio
  · Книги WEB дизайн
  · Книги Windows 2000
  · Книги Windows Server
  · Книги Windows Vista
  · Книги Windows XP
  · Книги WORD
  · Книги Алгоритмы
  · Книги 1C Учет
  · Книги Издательские системы
  · Книги по информатике
  · Книги по компьютерной безопасности
  · Книги по компьютерному железу
  · Книги компьютерные сети
  · Книги мультимедиа
  · Книги Нейронные сети
  · Книги ООП
  · Книги Примочки программирования
  · Книги по программированию для WEB
  · Книги Прочая графика
  · Книги прочая разработка
  · Книги прочие CAD
  · Книги прочие базы данных
  · Книги прочие ОС
  · Книги прочие офисное ПО
  · Книги самоучители
  · Книги Цифровое фото
  · Книги электронная коммерция
  · Книги Corel
  · Книги Windows 7
  · Книги Прочее для интернет
  · Книги SEO оптимизация и продвижение
  · Книги SolidWorks
Книги по психологии
  · Книги по психоанализу
  · Книги по психологии
  · Книги по психологии бизнеса
  · Книги психология женский клуб
  · Книги психология НЛП
  · Книги психология общая
  · Книги психология популярная
  · Книги психология прикладная
  · Книги психология прочее
  · Книги психология психотерапия
  · Книги психология социальная
  · Книги психология тест
  · Книги психология тренинг
Знаменитые люди
Книги о детях
Естественные науки

On-line консультант
SiteHeart
ICQ:  603-221-314
E-mail:
kniga@bizkniga.com.ua




Принимаем к оплате:
Оплатить WebMoney
Оплатить WebMoney
Оплатить WebMoney
Оплатить WebMoney
Оплатить WebMoney

Реклама

 

 
SiteHeart
     Книга Совершенный код.Макконнелл почтой  
 
Share |
Книга Совершенный код.Макконнелл
316.13 грн.
доставка УкрПочта бесплатно
 Заказать книгу Книга Совершенный код.Макконнелл  Купить Книга Совершенный код.Макконнелл
SiteHeart
2011г.
Количество страниц: 896

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




Содержание




Предисловие .................................................................................................................... XIII

Благодарности ................................................................................................................ XIX

Контрольные списки...................................................................................................... XXI

Часть I Основы разработки ПО

1 Добро пожаловать в мир конструирования ПО! .................................................... 2

1.1. Что такое конструирование ПО? .................................................................................................2

1.2. Почему конструирование ПО так важно? ...........................................................................5

1.3. Как читать эту книгу ...............................................................................................................................6

2 Метафоры, позволяющие лучше понять разработку ПО .................................... 8

2.1. Важность метафор.....................................................................................................................................8

2.2. Как использовать метафоры? ...................................................................................................... 10

2.3. Популярные метафоры, характеризующие разработку ПО ........................ 12

3 Семь раз отмерь, один раз отрежь: предварительные условия ...................... 21

3.1. Важность выполнения предварительных условий ............................................... 22

3.2. Определите тип ПО, над которым вы работаете ..................................................... 28

3.3. Предварительные условия, связанные

с определением проблемы ...................................................................................................................... 34

3.4. Предварительные условия, связанные с выработкой требований ....... 36

3.5. Предварительные условия, связанные

с разработкой архитектуры.................................................................................................................... 41

3.6. Сколько времени следует посвятить выполнению

предварительных условий? ..................................................................................................................... 52

4 Основные решения, которые приходится принимать

при конструировании ................................................................................................ 58

4.1. Выбор языка программирования ........................................................................................... 59

4.2. Конвенции программирования ............................................................................................... 63

4.3. Волны развития технологий........................................................................................................ 64

4.4. Выбор основных методик конструирования ............................................................. 66

Часть II Высококачественный код

5 Проектирование при конструировании ................................................................. 70

5.1. Проблемы, связанные с проектированием ПО ......................................................... 71

5.2. Основные концепции проектирования........................................................................... 74

5.3. Компоненты проектирования: эвристические принципы........................... 84

5.4. Методики проектирования ........................................................................................................ 107

5.5. Комментарии по поводу популярных методологий ........................................ 115

6 Классы ........................................................................................................................ 121

6.1. Основы классов: абстрактные типы данных ............................................................ 122

6.2. Качественные интерфейсы классов .................................................................................. 129

6.3. Вопросы проектирования и реализации ..................................................................... 139

VIII Содержание

6.4. Разумные причины создания классов ............................................................................. 148

6.5. Аспекты, специфические для языков................................................................................ 152

6.6. Следующий уровень: пакеты классов ............................................................................... 153

7 Высококачественные методы ............................................................................... 157

7.1. Разумные причины создания методов ............................................................................ 160

7.2. Проектирование на уровне методов ................................................................................ 163

7.3. Удачные имена методов ................................................................................................................. 167

7.4. Насколько объемным может быть метод? ................................................................... 169

7.5. Советы по использованию параметров методов ................................................. 170

7.6. Отдельные соображения по использованию функций................................. 177

7.7. Методы-макросы и встраиваемые методы ................................................................. 178

8 Защитное программирование ................................................................................ 182

8.1. Защита программы от неправильных входных данных .............................. 183

8.2. Утверждения ............................................................................................................................................. 184

8.3. Способы обработки ошибок .................................................................................................... 189

8.4. Исключения .............................................................................................................................................. 193

8.5. Изоляция повреждений, вызванных ошибками ................................................... 198

8.6. Отладочные средства ....................................................................................................................... 200

8.7. Доля защитного программирования в промышленной версии........... 204

8.8. Защита от защитного программирования ................................................................. 206

9 Процесс программирования с псевдокодом ...................................................... 209

9.1. Этапы создания классов и методов .................................................................................... 210

9.2. Псевдокод для профи ....................................................................................................................... 211

9.3. Конструирование методов с использованием ППП ......................................... 214

9.4. Альтернативы ППП ............................................................................................................................. 225

Часть III Переменные

10 Общие принципы использования переменных................................................ 230

10.1. Что вы знаете о данных? ............................................................................................................. 231

10.2. Грамотное объявление переменных ............................................................................. 232

10.3. Принципы инициализации переменных ................................................................ 233

10.4. Область видимости ......................................................................................................................... 238

10.5. Персистентность ............................................................................................................................... 245

10.6. Время связывания ............................................................................................................................. 246

10.7. Связь между типами данных и управляющими структурами ............... 247

10.8. Единственность цели каждой переменной ............................................................ 249

11 Сила имен переменных ......................................................................................... 252

11.1. Общие принципы выбора имен переменных ..................................................... 253

11.2. Именование конкретных типов данных ................................................................... 257

11.3. Сила конвенций именования ............................................................................................... 263

11.4. Неформальные конвенции именования ................................................................... 264

11.5. Стандартизованные префиксы ........................................................................................... 272

11.6. Грамотное сокращение имен переменных ............................................................ 274

11.7. Имена, которых следует избегать ..................................................................................... 277

Содержание IX

12 Основные типы данных ......................................................................................... 282

12.1. Числа в общем ..................................................................................................................................... 283

12.2. Целые числа ........................................................................................................................................... 284

12.3. Числа с плавающей запятой ................................................................................................... 286

12.4. Символы и строки ............................................................................................................................ 289

12.5. Логические переменные ............................................................................................................ 292

12.6. Перечислимые типы ...................................................................................................................... 294

12.7. Именованные константы .......................................................................................................... 299

12.8. Массивы ..................................................................................................................................................... 301

12.9. Создание собственных типов данных (псевдонимы) ................................. 303

13 Нестандартные типы данных ............................................................................... 310

13.1. Структуры ................................................................................................................................................ 310

13.2. Указатели .................................................................................................................................................. 314

13.3. Глобальные данные ......................................................................................................................... 326

Часть IV Операторы

14 Организация последовательного кода .............................................................. 338

14.1. Операторы, следующие в определенном порядке........................................... 338

14.2. Операторы, следующие в произвольном порядке........................................... 342

15 Условные операторы............................................................................................. 346

15.1. Операторы if.......................................................................................................................................... 346

15.2. Операторы case .................................................................................................................................. 353

16 Циклы ........................................................................................................................ 359

16.1. Выбор типа цикла ............................................................................................................................. 359

16.2. Управление циклом ........................................................................................................................ 365

16.3. Простое создание цикла - изнутри наружу ......................................................... 378

16.4. Соответствие между циклами и массивами ........................................................... 379

17 Нестандартные управляющие структуры ......................................................... 382

17.1. Множественные возвраты из метода ............................................................................ 382

17.2. Рекурсия ..................................................................................................................................................... 385

17.3. Оператор goto...................................................................................................................................... 389

17.4. Перспективы нестандартных управляющих структур................................ 401

18 Табличные методы ................................................................................................. 404

18.1. Основные вопросы применения табличных методов ................................ 405

18.2. Таблицы с прямым доступом ................................................................................................. 406

18.3. Таблицы с индексированным доступом .................................................................... 418

18.4. Таблицы со ступенчатым доступом ................................................................................ 419

18.5. Другие примеры табличного поиска ............................................................................ 422

19 Общие вопросы управления ................................................................................ 424

19.1. Логические выражения ............................................................................................................... 424

19.2. Составные операторы (блоки) ............................................................................................ 436

19.3. Пустые выражения ........................................................................................................................... 437

19.4. Укрощение опасно глубокой вложенности ........................................................... 438

X Содержание

19.5. Основа программирования: структурное программирование .......... 448

19.6. Управляющие структуры и сложность ........................................................................ 450

Часть V Усовершенствование кода

20 Качество ПО ............................................................................................................. 456

20.1. Характеристики качества ПО ............................................................................................... 456

20.2. Методики повышения качества ПО................................................................................ 459

20.3. Относительная эффективность

методик контроля качества ПО ....................................................................................................... 462

20.4. Когда выполнять контроль качества ПО? ................................................................. 466

20.5. Главный Закон Контроля Качества ПО ....................................................................... 467

21 Совместное конструирование ............................................................................. 471

21.1. Обзор методик совместной разработки ПО ......................................................... 472

21.2. Парное программирование.................................................................................................... 475

21.3. Формальные инспекции ............................................................................................................ 477

21.4. Другие методики совместной разработки ПО .................................................... 484

21.5. Сравнение методик совместного конструирования..................................... 487

22 Тестирование, выполняемое разработчиками ................................................. 490

22.1. Тестирование, выполняемое разработчиками, и качество ПО ........... 492

22.2. Рекомендуемый подход к тестированию, выполняемому

разработчиками.............................................................................................................................................. 494

22.3. Приемы тестирования ................................................................................................................. 496

22.4. Типичные ошибки........................................................................................................................... 507

22.5. Инструменты тестирования................................................................................................... 513

22.6. Оптимизация процесса тестирования ........................................................................ 518

22.7. Протоколы тестирования ......................................................................................................... 520

23 Отладка ..................................................................................................................... 524

23.1. Общие вопросы отладки............................................................................................................ 524

23.2. Поиск дефекта ..................................................................................................................................... 529

23.3. Устранение дефекта ........................................................................................................................ 539

23.4. Психологические аспекты отладки ................................................................................ 543

23.5. Инструменты отладки - очевидные и не очень ............................................... 545

24 Рефакторинг ............................................................................................................ 551

24.1. Виды эволюции ПО......................................................................................................................... 552

24.2. Введение в рефакторинг ............................................................................................................ 553

24.3. Отдельные виды рефакторинга .......................................................................................... 559

24.4. Безопасный рефакторинг ........................................................................................................ 566

24.5. Стратегии рефакторинга .......................................................................................................... 568

25 Стратегии оптимизации кода ............................................................................... 572

25.1. Общее обсуждение производительности ПО ...................................................... 573

25.2. Введение в оптимизацию кода ............................................................................................ 576

25.3. Где искать жир и патоку? ............................................................................................................ 583

25.4. Оценка производительности ................................................................................................ 588

Содержание XI

25.5. Итерация ................................................................................................................................................... 590

25.6. Подход к оптимизации кода: резюме ........................................................................... 591

26 Методики оптимизации кода................................................................................ 595

26.1. Логика .......................................................................................................................................................... 596

26.2. Циклы ........................................................................................................................................................... 602

26.3. Изменения типов данных ......................................................................................................... 611

26.4. Выражения .............................................................................................................................................. 616

26.5. Методы ........................................................................................................................................................ 625

26.6. Переписывание кода на низкоуровневом языке ............................................... 626

26.7. Если что-то одно изменяется, что-то

другое всегда остается постоянным ............................................................................................ 629

Часть VI Системные вопросы

27 Как размер программы влияет на конструирование ...................................... 634

27.1. Взаимодействие и размер ......................................................................................................... 635

27.2. Диапазон размеров проектов................................................................................................ 636

27.3. Влияние размера проекта на возникновение ошибок ................................ 636

27.4. Влияние размера проекта на производительность ........................................ 638

27.5. Влияние размера проекта на процесс разработки ......................................... 639

28 Управление конструированием ........................................................................... 645

28.1. Поощрение хорошего кодирования ............................................................................. 646

28.2. Управление конфигурацией .................................................................................................. 649

28.3. Оценка графика конструирования ................................................................................. 655

28.4. Измерения ............................................................................................................................................... 661

28.5. Гуманное отношение к программистам..................................................................... 664

28.6. Управление менеджером ........................................................................................................... 670

29 Интеграция ............................................................................................................... 673

29.1. Важность выбора подхода к интеграции .................................................................. 673

29.2. Частота интеграции - поэтапная или инкрементная? .............................. 675

29.3. Стратегии инкрементной интеграции ....................................................................... 678

29.4. Ежедневная сборка и дымовые тесты ........................................................................... 686

30 Инструменты программирования ....................................................................... 694

30.1. Инструменты для проектирования ................................................................................. 695

30.2. Инструменты для работы с исходным кодом....................................................... 695

30.3. Инструменты для работы с исполняемым кодом ............................................. 700

30.4. Инструменты и среды ................................................................................................................... 704

30.5. Создание собственного программного инструментария ....................... 705

30.6. Волшебная страна инструментальных средств.................................................. 707

Часть VII Мастерство программирования

31 Форматирование и стиль ...................................................................................... 712

31.1. Основные принципы форматирования .................................................................... 713

31.2. Способы форматирования ...................................................................................................... 720

31.3. Стили форматирования ............................................................................................................. 721

XII Содержание

31.4. Форматирование управляющих структур ............................................................... 728

31.5. Форматирование отдельных операторов ................................................................ 736

31.6. Размещение комментариев ..................................................................................................... 747

31.7. Размещение методов ...................................................................................................................... 750

31.8. Форматирование классов ......................................................................................................... 752

32 Самодокументирующийся код ............................................................................ 760

32.1. Внешняя документация ............................................................................................................... 760

32.2. Стиль программирования как вид документации ........................................... 761

32.3. Комментировать или не комментировать?............................................................. 764

32.4. Советы по эффективному комментированию .................................................... 768

32.5. Методики комментирования ................................................................................................ 774

32.6. Стандарты IEEE ................................................................................................................................... 795

33 Личность ................................................................................................................... 800

33.1. Причем тут характер? ................................................................................................................... 801

33.2. Интеллект и скромность ............................................................................................................ 802

33.3. Любопытство ........................................................................................................................................ 803

33.4. Профессиональная честность ............................................................................................. 806

33.5. Общение и сотрудничество ................................................................................................... 809

33.6. Творчество и дисциплина ........................................................................................................ 809

33.7. Лень ................................................................................................................................................................ 810

33.8. Свойства, которые менее важны, чем кажется ..................................................... 811

33.9. Привычки ................................................................................................................................................. 813

34 Основы мастерства ................................................................................................ 817

34.1. Боритесь со сложностью ........................................................................................................... 817

34.2. Анализируйте процесс разработки ................................................................................ 819

34.3. Пишите программы в первую очередь для людей и лишь во вторую -

для компьютеров............................................................................................................................................ 821

34.4. Программируйте с использованием языка, а не на языке ....................... 823

34.5. Концентрируйте внимание с помощью соглашений .................................. 824

34.6. Программируйте в терминах проблемной области ..................................... 825

34.7. Опасайтесь падающих камней ............................................................................................ 827

34.8. Итерируйте, итерируйте и итерируйте ...................................................................... 830

34.9. И да отделена будет религия от разработки ПО ................................................ 831

35 Где искать дополнительную информацию ....................................................... 834

35.1. Информация о конструировании ПО ......................................................................... 835

35.2. Не связанные с конструированием темы ................................................................. 836

35.3. Периодические издания ............................................................................................................ 838

35.4. Список литературы для разработчика ПО .............................................................. 839

35.5. Профессиональные ассоциации ...................................................................................... 841

Библиография ................................................................................................................. 842

Предметный указатель ................................................................................................. 863

Об авторе......................................................................................................................... 868
Быстрый поиск по ключевым словам: | Книга | Совершенный | код | Макконнелл |

Доставка Книга Совершенный код.Макконнелл почтой наложным платежом.

 
     



    Купить книгу в разделе Книги компьютерные - Книги прочая разработка  
 
Книга Мифический человеко-месяц или как создаются программные системы. 2-изд. Брукс
Купить Книга Мифический человеко-месяц или как создаются программные системы. 2-изд. Брукс Эта книга - юбилейное (дополненное и исправленное) издание своего рода библии для разработчиков программного обеспечения во всем мире, написанное Бруксом еще в 1975 году. Тогда же книга была издана на русском языке и давно уже стала библиографической редкостью.
Python Изучаем Изд.4. Лутц
Купить Python Изучаем Изд.4. Лутц Марк Лутц - автор книг «Programming Python» и «Python Pocket Reference». Он использует Python и занимается его популяризацией начиная с 1992 года. Книги об этом языке программирования он начал писать в 1995 году, а его преподаванием стал заниматься с 1997 года
 
     
 
 
 
Бизнес книга © 2010-2011
Создание сайтов & Раскрутка сайтов SKYLOGIC
 
Купить книги УкрПочтой по всей Украине.
Интернет магазин книг | Новинки | Оплата | Доставка | Контакты | Помощь