Эндрю Хант - Программист-прагматик. Путь от подмастерья к мастеру
www.c2.com
Интернет-ресурсы
Приведенные ниже ссылки на ресурсы, доступные в Интернете, были действительны во время работы над книгой, но (Сеть есть Сеть!) к моменту выхода ее в свет могут сильно устареть. В этом случае можно попробовать общий поиск по именам файлов или же зайти на сайт Pragmatic Programmer (www.pragmaticprogrammer.com) и проверить имеющиеся на нем ссылки.
Текстовые редокторыEmacs и vi – не единственные межплатформенные редакторы, но они распространяются бесплатно и находят широкое применение. Пролистав любой специализированный журнал (например Dr. Dobbs), можно найти ряд коммерческих альтернатив вышеуказанным редакторам.
Редактор EmacsРедакторы Emacs и XEmacs имеют версии как для платформы Unix, так и для Windows.
[URL 1] Редактор Emacs
www.gnu.org
Новейший «крупнокалиберный» редактор, обладающий всеми возможностями своих предшественников. Кривая обучения Emacs почти вертикальна, но вас ждет щедрое вознаграждение по мере овладения тонкостями работы. Редактор также содержит отличную программу чтения почты и новостей, адресную книгу, календарь и дневник, приключенческую игру…
[URL 2] Редактор XEmacs
www.xemacs.org
Отпочковавшись от классического редактора Emacs несколько лет назад, XEmacs отличается более корректными внутренними командами и более изящным интерфейсом.
Редактор viСуществует как минимум 15 различных клонов редактора vi. Редактор vim переносится на большинство платформ и является хорошим выбором при работе в различных программных средах.
[URL 3]The Vim Editor
ftp://ftp.fu-berlin.de/misc/editors/vim
Цитата из документации: "Редактор vi содержит большое количество усовершенствований: многоуровневая отмена команд, многооконный интерфейс с буферами, выделение синтаксиса, редактирование в командной строке, дополнение имен файлов, экранная справка, визуальный выбор объектов, и т. д."
[URL 4] Редактор elvis
www.fh-wedel.de/elvis
Усовершенствованный клон редактора vi с поддержкой X.
[URL 5] Emacs Viper Mode
http://www.cs.sunysb.edu./"kifer/emacs.html
Viper представляет собой набор макрокоманд, которые придают редактору Emacs внешнее сходство с редактором vi. Некоторые могут поставить под сомнение разумность шага, заключающегося в расширении самого большого редактора в мире с целью эмулирования другого редактора, характерной чертой которого является компактность. Другие, напротив, считают, что он объединяет в себе лучшее из двух цивилизаций – Emacs и vi.
Компиляторы, языки программирования и средства разработки[URL 6] The GNU C/C++ Compiler =» www.fsf.org/software/gcc/gcc.html
Один из наиболее популярных в мире компиляторов С и С++. Он также работает с Objective-C. (Во время работы над книгой проект egcs, который вначале отпочковался от gcc. находился в процессе воссоединения с последним.)
[URL 7] The Java Language from Sun
java.sun.com
Домашняя страница Java, включающая загружаемые SDK, документацию, средства обучения, новости и т. д.
[URL 8] Perl Language Home Page
www.perl.com
Эти ресурсы, относящиеся к языку Perl, предоставляются фирмой O'Reilly.
[URL 9] The Python Language
www.python.com
Объектно-ориентированный язык программирования Python является интерпретируемым и интерактивным, обладает хитроумным синтаксисом и большим количеством верных поклонников.
[URL 10) SmallEiffel
SmallEiffel.loria.fr
Компилятор GNU Eiffel работает на любом компьютере, снабженном компилятором ANSI С и средой выполнения Posix.
[URL 11] ISE Eiffel
www.eiffel.com
Фирме Interactive Software Engineering принадлежит авторство программы Design by Contract; она реализует на коммерческой основе компилятор Eiffel и сопутствующие инструментальные средства.
[URL 12] Sather
www.icsi.berkeley.edu/'sather
Sather является экспериментальным языком программирования, ведущим свое происхождение от Eiffel. Его задача – поддерживать функции высшего порядка и итерационной абстракции, а также Common Lisp, CLU или Scheme и быть таким же эффективным, как С, С++ или Fortran.
[URL 13] Visual Works
www.objectshare.com
Основной ресурс для среды VisualWorks Smalltalk. Некоммерческие версии для Windows и Linux распространяются бесплатно.
[URL 14] The Squeak Language Environment
www.squeak.cs.uiuc.edu
Squeak представляет собой бесплатно распространяемую и переносимую реализацию – Sma!ltalk-80, написанную на Squeak; может генерировать код на С для повышения производительности.
[URL 15] The ТОМ Programming Language
www.gerbil.org/tom
Весьма динамичный язык, ведущий свое начало от Objective-С.
[URL 16] The Beowulf Project
www.beowulf.org
Проект посвящен построению высокопроизводительных компьютеров из сетевых кластеров, состоящих из недорогих Linux-блоков.
[URL 17] iContract – Design by Contract Tool For Java
www.reliable-systems.com
Данное инструментальное средство использует формализм предварительных условий, выходных условий и инвариантов, реализовано в виде препроцессора для Java. Использует наследование, реализует кванторы существования и многое другое.
[URL 18] Nana – Logging and Assertions for С and С++
www.cs.ntu.edu.au/homepages/pjm/nana-home/index.html
Улучшенная поддержка проверки утверждений и регистрации в С и С++. Nana также обеспечивает некоторую поддержку для программы Design by Contract.
[URL 19] DDD – Data Display Debugger
www cs.tu-bs.de/softech/ddd
Бесплатный графический интерфейс конечного пользователя для отладчиков Unix.
[URL 20] John Brant's Refactoring Browser
www.cs.uiuc.edu/users/brant/Refactory
Популярный браузер, применяемый при реорганизации (язык Smalltalk).
[URL 21] DOC++ Documentation Generator
www.zib.de/Visual/software/doc++/index.html
DOC++ представляет собой систему документирования для C/C+ + и Java, которая генерирует выходные файлы в форматах LATEX и HTML для просмотра документации непосредственно из заголовка С++ или файлов класса Java.
[URL 22] xUnit – Unit Testing Framework
www.Xprogramming.com
Представляет простую, но мощную концепцию; модуль тестирования структур xUnit является полной платформой для тестирования программного обеспечения, написанного на нескольких языках.
[URL 23] The Tel Language
www.scriptics.com
Язык Tel (Tool Command Language) является языком сценариев, разработанным для упрощения процедуры встраивания в приложение.
[URL 24] Expect – Automate Interaction with Programs
www.expect.nist.gov
Расширение expect, построенное на языке Tel [URL 23], позволяет создавать сценарии взаимодействия с программами. Помимо помощи при составлении командных файлов, которые, например, осуществляют вызов файлов с удаленных серверов или расширяют возможности оболочки, expect приносит пользу и при регрессионном тестировании. Графическая версия expectk позволяет оборачивать приложения пользователя с графическим интерфейсом в оконный интерфейс.
[URL 25] Т Spaces
www.almaden.ibm.com.cs/TSpaces
Цитата с web-страницы: "Т Spaces представляет собой сетевой коммуникационный буфер с функциональными возможностями баз данных. Он осуществляет связь между приложениями и устройствами в сети с гетерогенными компьютерами и операционными системами. Т Spaces обеспечивает следующие средства: коллективной связи, работы с базами данных, переноса файлов (основанные на URL) и оповещения о событиях".
[URL 26] javaCC – Java Compiler-Compiler
www.suntest.com
Генератор грамматического разбора, связанный с языком Java.
[URL 27] The bison Parser Generator
www.gnu.org/software/bison/bison.html
Генератор bison получает на входе описание грамматики и генерирует из него исходный текст соответствующей программы грамматического разбора на языке С.
[URL 28] SWIG – Simplified Wrapper and Interface Generator
www.swig.org
SWIG представляет собой инструментальное средство разработки, стыкующее между собой программы, написанные на языках С, С++ и Objective-C, с языками высокого уровня, такими как Perl, Python, Tcl/Tk, а также Java, Eiffel и Guile.
[URL 29] The Object Management Group, Inc.
www.omg.org
Фирма Object Management Group, Inc. является «распорядителем» различных спецификаций для разработки распределенных объектно-базирующихся систем. К числу работ этой фирмы относятся CORBA (обобщенная архитектура брокера объектных запросов) и ПОР (протокол передачи сообщений между сетевыми объектами через Интернет). Сочетание этих спецификаций дает возможность объектам связываться друг с другом, даже если они написаны на разных языках и выполняются на компьютерах различных типов.
Инструментальные средство UNIX, работающие в среде DOS[URL 30] The UWIN Development Tools
www.gtlinc.com/Products/Uwin/uwin.html
Фирма Global Technologies, Inc., Old Bridge, NJ
Пакет UWIN предоставляет библиотеки динамической компоновки (DLL) Windows, которые эмулируют большую часть библиотечного интерфейса уровня Unix С. Используя данный интерфейс, фирма Global Technologies, Inc. перенесла большое число инструментальных средств из командной строки Unix в систему Windows. См. также [URL 31].
[URL 31] The Cygnus Cygwin Tools
www.sourceware.cygnus.com/cygwin/
Фирма Cygnus Solutions, Sunnyvale, CA
Пакет Cygnus также эмулирует интерфейс библиотеки Unix С и предоставляет большой набор инструментальных средств, работающих в режиме командной строки Unix, при работе в операционной системе Windows.
[URL 32] Perl Power Tools