Навигация
Главная
Поиск
Форум
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
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Модуль Forms 65535
21 ошибка прогр... 63311
Реклама
Сейчас на сайте
Гостей: 7
На сайте нет зарегистрированных пользователей

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

Моделирование интернет магазина (Apache, Php, Html) на GPSS + Блок схема
Сравнение двух бинарных деревьев на Turbo Pascal + отчет
Компьютерный магазин на Turbo Pascal (База данных) + Пояснительная записка

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

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

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
Секреты программи...
Pass [Исходник на...
Просмотр коммент...
PHP в примерах
Язык программиров...
Современное проек...
IIIDTrans
Динамические за...
SynEdit
Tenis [Исходник н...
SysInfo [Исходник...
45 уроков по дельфи
Работа с матрицами
PBEditPack
ЯЗЫК ПРОГРАММИРОВ...
MpegPlay
Язык программиров...
В.Понамарев - COM...
Blib [Исходник на...
Изучаем Ассемблер

Топ загрузок
Приложение Клие... 100576
Delphi 7 Enterp... 93786
Converter AMR<-... 20126
GPSS World Stud... 16141
Borland C++Buil... 13486
Borland Delphi ... 9451
Turbo Pascal fo... 7151
Калькулятор [Ис... 5359
Visual Studio 2... 5056
FreeSMS v1.3.1 3579
Случайные статьи
Вам захотелось чег...
повлиять на развер...
Отключение шифрова...
Для игры " Коровы ...
Реализация контейн...
ThisForm.PageFrame1.
Содержание
НИСХОДЯЩАЯ РЕКУРСИЯ
Проверка достоверн...
Оптимизация расход...
Иногда хорошая спе...
Структура программы
Что такое PageRank ?
10.3. Размещение д...
Некоторые встроенн...
Управление метками...
Эмуляция классов
Чтобы защитить рек...
Покраска
Кардшаринг в домаш...
Политика реагирования
6.13. Наблюдение...
Борьба с вредоносн...
Функция binary_sea...
Как сохранить файл
Статистика



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


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