Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 10
На сайте нет зарегистрированных пользователей

Пользователей: 13,372
новичок: vausoz
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Медиа плейер на Delphi + Пояснительная записка
Метод половинного деления для нахождения корня уровнения на Turbo Pascal...
Информационная система - продуктовый магазин на Turbo Pascal (База данны...

Эпилог ко второму изданию
Некоторые традиции существуют, потому что они этого заслуживают. Другие просто существуют.
С возвращением! Давно не виделись.
Четырнадцать лет.
Начнем с того же места, что и в прошлый раз. Почему вы решили выпустить новое издание?
Просто мне очень нравится эта книга. Ее было очень приятно писать, и читателям она тоже понравилась. Принципы выдержали проверку временем, но многие примеры из первого издания безнадежно устарели. В наше время читатель не может считать «большим» компьютер с 512 Кбайт ОЗУ.
И что же вы изменили в этом издании?
Все то, о чем я говорил в предисловии. Вы что, вообще к интервью не готовитесь?
Извините. Я вижу, что в предисловии вы отметили, что тексты программ книги доступны на тюеЬ-сайте.
Писать программы было интереснее всего. Я реализовал большую часть программ для первого издания, но видел их тексты только я сам. Для этого издания я написал около 2500 строк на С и C++, которые теперь доступны всему миру.
Вы сказали, что код доступен всему миру? Я читал некоторые из ваших программ. Ужасный стиль! Короткие, даже микроскопические имена переменных, причудливые описания функций, глобальные переменные, которые должны были бы быть параметрами, и этот список можно продолжать бесконечно. Вам не стыдно думать о тому что другие программисты увидят ваши программы?
Мой стиль действительно может оказаться фатальным для больших программных проектов. Однако эта книга не является большим программным проектом. Ее даже нельзя назвать большой книгой. В решении задачи 1 из главы 5 говорится о сжатом стиле программирования и о том, почему я его выбрал. Если бы я хотел написать книгу на 1000 страниц, я бы выбрал более развернутый стиль программирования.
Если говорить о длинном коде, ваша программа sort.cpp измеряет быстродействие библиотечной функции языка С qsort, функции soft из C+ + STL и нескольких самодельных быстрых сортировок. Вы можете все-таки сделать выбор? Следует ли программисту пользоваться библиотечными функциями, или писать свои?
Том Дафф дал лучший ответ на этот вопрос: «Крадите код всегда, когда это возможно». Библиотеки — это здорово. Применяйте их всегда, когда они выполняют свою задачу. Начните с системной библиотеки, затем ищите подходящие функции во внешних библиотеках. Однако в инженерной деятельности не всегда можно обойтись стандартными деталями. Когда библиотечные функции не справляются с задачей, пишите свои собственные. Надеюсь, что фрагменты псевдокода из этой книги (и реальный код с web-страницы) помогут начать эту нелегкую работу программистам, которым придется с этой книгой столкнуться. Мне кажется, что подход к тестированию и экспериментам поможет таким программистам оценить возможности множества алгоритмов и выбрать для своего приложения наиболее подходящий.
Опубликовал vovan666 April 17 2013 00:05:04 · 0 Комментариев · 3743 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
PHP 5 в подлинник...
PHP 5
Краснов М. - Open...
Drag&Drop
Самоучитель C++
32 урока по Delphi
Библиотека програ...
Delphi 2005 для .NET
Игра PackMan
Мод "register.php...
Панель Наша Кнопка
Программирование ...
XPButtons
Microsoft Press -...
MPTools
CLR via C#
PHP глазами хакера
Geo-Whois
EMSQuickImport
3D Тетрис [Исходн...

Топ загрузок
Приложение Клие... 100800
Delphi 7 Enterp... 98062
Converter AMR<-... 20302
GPSS World Stud... 17067
Borland C++Buil... 14261
Borland Delphi ... 10388
Turbo Pascal fo... 7398
Калькулятор [Ис... 6093
Visual Studio 2... 5241
Microsoft SQL S... 3676
Случайные статьи
call(X)
5.1. ЦЕЛЬ: УПРОЩЕН...
Новый корпус для ж...
Гипотезы - подцели
Инструкции обработ...
Наследование и шаб...
Фреймы
На томе NTFS разре...
Базы данных и базы...
Свойству AutoPostBack
east.microsoft.
Общность в поведении
Перевозки из Китая
Первое знакомство
Принципы работы ск...
Вычисление значени...
Работа с Outlook к...
Левое вращение AVL...
Где купить надувну...
Directory
Заголовок сообщени...
ЛОВУШКИ ОТСЕЧЕНИЯ
Как зарегистрирова...
Все для разработки
Зачем нужны классы?
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?