• Профессиональные общества
  • Собираем библиотеку
  • Интернет-ресурсы
  • Приложение А

    Информационные ресурсы

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

    Книга начинается с утверждения, что программисты-прагматики должны постоянно учиться. В данном приложении приводится перечень источников информации, которые могут им в этом поспособствовать.

    В разделе "Профессиональные общества" приведены координаты IEEE (Institute of Electrical and Electronical Engineers – Институт инженеров по электротехнике и радиоэлектронике) и ACM (Association of Computing Machinery – Ассоциация по вычислительной технике). Мы рекомендуем программисту-прагматику вступить в ряды одного (или обоих) из этих обществ. Ниже в разделе "Собираем библиотеку" указаны периодические издания, книги и интернет-сайты, которые содержат высококачественную и ценную информацию (или просто-напросто забавны по своему содержанию).

    В книге содержится много ссылок на программные ресурсы, доступные через Интернет. В разделе «Интернет-ресурсы» приводятся их адреса (URL) с кратким описанием. Но в силу природы Интернета многие из этих адресов могут устареть к моменту выхода книги в свет. Для того чтобы найти более свежие ссылки, можно воспользоваться одной из поисковых систем или же посетить наш интернет-сайт: www.pragmaticprogrammer.com и просмотреть соответствующий раздел.

    И наконец, в приложении содержится библиографический список.

    Профессиональные общества

    У программистов существует два профессиональных объединения мирового уровня. Association of Computing Machinery – ACM [55] (Ассоциация по вычислительной технике) и Institute of Electrical and Electronical Engineers – IEEE [56] (Компьютерное общество института инженеров по электротехнике и радиоэлектронике). Всем программистам рекомендуется вступить в одно (или оба) из этих обществ. Кроме того, разработчики, проживающие вне США, могут вступить в соответствующие национальные объединения (примером может служить British Computer Society – BCS – Британское компьютерное общество).

    Члены профессиональных обществ пользуются рядом преимуществ. Конференции и собрания дают возможность общения людям с общими интересами, а специальные секции и технические комитеты позволяют участвовать в выработке стандартов и рекомендаций, используемых во всем мире. Многое можно почерпнуть из их публикаций, в которых ведутся «высоколобые» дискуссии по практическим вопросам и «приземленные» разговоры по компьютерной теории.

    Собираем библиотеку

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

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

    Люди, подобные авторам книги, хранят старые журналы и периодику до тех пор, пока вес стопки не будет достаточен для превращения нижних экземпляров в алмаз. Вот некоторые периодические издания, рекомендуемые авторами.

    • IEEE Computer. Рассылается по подписке членам Компьютерного общества Института инженеров по электротехнике и радиоэлектронике. Этот журнал сосредоточен на практических аспектах, но не чужд и теории. Некоторые номера посвящены конкретной тематике, другие же представляют собой просто сборники интересных статей. Говоря языком связистов, журнал обладает хорошим соотношением "сигнал-шум".

    • IEEE Software. Не менее ценная публикация Компьютерного общества Института инженеров по электротехнике и радиоэлектронике, издаваемая раз в два месяца и нацеленная на программистов-практиков.

    • Communications of the ACM. Основной журнал, получаемый всеми членами Ассоциации по вычислительной технике; на протяжении десятилетий является отраслевым стандартом и опубликовал больше основополагающих статей, чем любой другой источник.

    • SIGPLAIM. Журнал выпускается секцией языков программирования, входящей в ассоциацию АСМ, распространяется среди членов АСМ. В нем часто публикуются спецификации языков программирования, наряду с тематическими статьями для всех, кто любит "копать вглубь".

    • Dr. Dobbs Journal. Ежемесячный журнал, распространяемый по подписке и продающийся в киосках. Этот журнал непрост для восприятия, но его статьи охватывают как практические аспекты, так и чистую теорию.

    • The Perl Journal. Поклонникам Perl стоит подписаться на этот журнал (www.tpj.com).

    • Software Development Magazine. Ежемесячный журнал, посвященный общим вопросам управления проектами и разработки программного обеспечения.

    Еженедельные профессиональные издания

    Существует несколько еженедельных газет для разработчиков и менеджеров. Эти газеты в основном представляют собой сборники фирменных пресс-релизов, перекроенных в статьи. Тем не менее, их содержание представляет ценность – оно позволяет быть в курсе событий, не отставать от объявлений о выходе новых продуктов и следить за возникновением и распадом отраслевых альянсов. Но от них не стоит ожидать наличия глубоко проработанных технических материалов.

    Книги

    Книги по компьютерной тематике весьма дороги, но при тщательном выборе они становятся хорошим вложением денег. Вот некоторые из них, понравившиеся авторам:

    Анализ и проектирование

    • Object-Oriented Software Construction, второе издание. Эпическое произведение Бертрана Мейера, посвященное основам объектно-ориентированного программирования, общим объемом 1300 страниц [Меу97Ь].

    • Design Patterns. Конструктивный шаблон описывает метод решения конкретного класса задач на более высоком уровне по сравнению с фразеологизмом на языке программирования. Эта неоклассическая книга [GHJV95], написанная "бандой четырех" (группа авторов Erich Gamma, Richard Helm, Ralph Johnson и John Vlissides. – Прим. пер.), содержит описание 23 базовых конструктивных шаблонов, включая Proxy, Visitor и Singleton.

    • Analysis Patterns. Сокровищница высококлассных архитектурных шаблонов, выбранных из множества реальных проектов и переработанных в виде книги. Относительно быстрый способ перенимания опыта моделирования, полученного в течение многих лет [Fow96].

    Команды и проекты

    • The Mythical Man Month. Классическое произведение (не так давно переработанное) Фреда Брукса, о "подводных камнях", появляющихся в ходе организации команд разработчиков [Вго95].

    • Dynamics of Software Development. Серия коротких очерков о разработке программного обеспечения в больших командах, сосредоточенных на динамике взаимодействия членов команды между собой, а также между самой командой и внешним миром [МсС95].

    • Surviving Object-Oriented Projects: A Manager's Guide. "Вести с переднего края", сообщенные Алистером Кокбэрном, иллюстрируют многие опасности и ловушки, подстерегающие вас при управлении объектно-ориентированным проектом, особенно если это ваш первый проект. Г-н Кокбэрн дает подсказки и методики, позволяющие читателю решать наиболее общие проблемы [Сос97Ь].

    Среды программирования

    • Unix. У.Р. Стивенс написал несколько прекрасных книг, включая "Advanced Programming in the Unix Environment" и "Unix Network Programming" [Ste92, Ste98, Ste99].

    • Windows. Книга Маршалла Брэйна "Win32 System Services" [Bra95] является кратким справочником по низкоуровневым интерфейсам прикладных программ. Труд Чарльза Петцольда "Programming Windows" [Pet98] стал своего рода Библией для разработчиков графических сред пользователя Windows.

    • С++. Получив проект на языке С++, нужно бежать (а не идти) в книжный магазин и хватать книгу Скотта Мейера под названием "Effective С++" и к ней, возможно, книгу "More Effective С++" [Меу97а, Меу96]. При построении систем существенных размеров может понадобиться книга Джона Лакоса "Large-Scale С++ Software Design" [Lak96]. В поисках более сложных методик стоит обратиться к труду Джима Коплина под названием "Advanced С++ Programming Styles and Idioms" [Сор92].

    Кроме того, книги из серии Nutshell издательства O'Reilly (www.ora.com) дают оперативное и всестороннее освещение разнообразных тем и языков, таких как perl, уасс, sendmail, внутренней организации Windows и регулярных выражений.

    Интернет

    Найти в Интернете нужную информацию трудно. Вот несколько ссылок, которые проверяются авторами как минимум раз в неделю.

    • Slashdot. Под заголовком "News for nerds. Stuff that matters" (Новости для дебилов. Материал со значением) скрывается один из крупнейших сайтов сообщества Linux. Помимо регулярно обновляемых новостей из мира Linux сайт предлагает информацию по модным технологиям и проблемам, которые волнуют разработчиков.

    www.slashdot.org

    • Cetus Links. Тысячи ссылок на тему объектно-ориентированного программирования.

    www.cetus-links.org

    • WikiWikiWeb. Центральная база данных шаблонов и обсуждение шаблонов (в Портленде, США). Не являясь особо выдающимся ресурсом, данный сайт представляет собой интересный эксперимент по коллективному редактированию идей.

    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

    www.perl.com/language/ppt/

    Данный проект посвящен повторной реализации классического набора команд Unix на языке Perl, что дает возможность их использования при работе со всеми платформами, поддерживающими Perl (их довольно много).

    Средствауправленияисходнымтекстомпрограмм

    [URL 33] RCS – Revision Control System

    www.cyclic.com

    Система управления исходным текстом программ GNU для Unix и Windows NT.

    [URL 34] CVS – Concurrent Version System

    www.cyclic.com

    Система управления исходным текстом программ для Unix и Windows NT, распространяемая бесплатно. Расширяет возможности Revision Control System, поддерживая модель «клиент-сервер» и параллельный доступ к файлам.

    [URL 35] Aegis Transaction-Based Configuration Management

    www.canb.auug.org.au/"mil!erp/aegis.html

    Инструментальное средство управления версиями (ориентированное на процесс), которое применяет к ним существующие стандарты проекта (например, проверку прохождения тестов для возвращаемых программных кодов).

    [URL 36] ClearCase

    www.rational.com

    Управление версиями программы, рабочей областью и полной сборкой программы, управление процессом.

    [URL 37] MKS Source Integrity

    www.mks.com

    Управление версиями и конфигурацией. Некоторые версии включают средства, позволяющие удаленным пользователям-разработчикам одновременно работать над одними и теми же файлами.

    [URL 38] PVCS Configuration Management

    www.merant.com

    Система управления исходным текстом программ, очень популярная при работе в Windows.

    [URL 39] Visual SourceSafe

    www.microsoft.com

    Система управления версиями, интегрируемая с инструментами визуальной разработки фирмы Microsoft.

    [URL 40] Perforce

    www.perforce.com

    Менеджер конфигурирования программного обеспечения "клиент-сервер".

    Прочие инструментальные средства

    [URL 41] Winzip – Archive Utility for Windows

    www.winzip.com

    Фирма Nico Mak Computing, Inc., Mansfield, CT

    Утилита архивирования файлов, работающая в среде Windows. Поддерживает форматы zip и tar.

    [URL 42] The Z Shell

    www.sunsite.auc.dk/zsh

    Оболочка, предназначенная для интерактивной работы и содержащая мощный язык сценариев. В оболочку zsh было включено много полезных средств из оболочек bash, ksh и tcsh и добавлен ряд оригинальных элементов.

    [URL 43] A Free SMB Client for Unix Systems

    www.samba.anu.edu.au/pub/samba/

    Дает возможность совместного использования файлов и других ресурсов из операционных систем Unix и Windows. Samba включает в себя:

    • Сервер SMB, предоставляющий средства для работы с файлами и для печати (схожие со средствами, предоставляемыми Windows NT и LAN Manager) клиентам SMB, в роли которых могут выступать Windows 95, Warp Server, smbfs и др.

    • Сервер имен Netbios, обеспечивающий, кроме всего прочего, поддержку функций браузера. По желанию пользователя Samba может быть главным браузером в локальной сети.

    • Клиент SMB (схожий с клиентом ftp), позволяющий получать доступ к ресурсам ПК(дискам и принтерам) из Unix, Netware и других операционных систем.

    Статьи и публикации

    [URL 44] The comp.object FAQ

    www.cyberdyne-object-sys.com/oofaq2

    Солидный, четко организованный список часто задаваемых вопросов по группе новостей comp.object.

    [URL 45] extreme Programming

    www.Xprogramming.com

    Цитата с интернет-сайта: "При создании команды, способной быстро создать исключительно надежное, эффективное, четко структурированное программное обеспечение, в ХР используется весьма легковесное сочетание методик. Многие из методик ХР создавались и опробовались в части проекта СЗ фирмы «Крайслер», представляющего собой весьма успешную систему расчета заработной платы, написанную на языке Smalltalk".

    [URL 46] Alistair Cockburn's Home Page

    www.members.aol.com/acockburn

    Стоит посмотреть раздел "Structuring Use Cases with Goals" и так называемые шаблоны сценариев использования.

    [URL 47] Martin Fowler's Home Page

    www.ourworld.compuseimcom/homepages/martinjowler

    Мартин Фаулер является автором книги "Analysis Patterns" и соавтором книг "UML Distilled" и "Refactoring: Improvingthe Design of Existing Code". На домашней странице автора обсуждаются его книги и работа с UML.

    [URL 48] Robert С. Martin's Home Page

    www.objectmentor.com/home

    Неплохое собрание статей ознакомительного плана по объектно-ориентированным методам, включая анализ зависимости и метрики.

    [URL 49] Aspect-Oriented Programming

    www.parc.xerox.com/csl/projects/aop/

    Описывается методика придания функциональности программному коду с позиций ортогональности и описательности.

    [URL 50] JavaSpaces Specifications

    www.java.sun.com/products/javaspaces

    Linda-подобная система для Java, поддерживающая распределенное сохранение состояния объекта и распределенные алгоритмы.

    [URL 51] Netscape Source Code

    www.mozilla.org

    Исходный текст браузера Netscape.

    [URL 52] The Jargon File

    www.jargon.org

    Eric S. Raymond

    Определения дня многих общих (и не очень общих) терминов, применяемых в компьютерной индустрии, сдобренные хорошей дозой соответствующего фольклора.

    [URL 53] Eric S. Raymond's Papers

    www.tuxedo.org/~esr

    Статьи Эрика Раймона "The Cathedral and the Bazaar" и "HomesteadingNoosphere", в которых описаны психосоциальные основы и смысл движения Open Source.

    [URL 54] The К Desktop Environment

    www.kde.org

    Цитата с web-страницы: "KDE представляет собой мощную графическую настольную среду для рабочих станций Unix. KDE является интернет-проектом, открытым в полном смысле этого слова".

    [URL 55] The GNU Image Manipulation Program

    www.gimp.org

    Gimp является бесплатной программой по созданию, композиции и ретушированию изображений.

    [URL 56] The Demeter Project

    www.ccs.neu.edu/research/demeter

    Исследовательский проект, призванный упростить поддержку и развитие программного обеспечения с помощью адаптивного программирования.

    Другие источники

    [URL 57] The GNU Project

    www.gnu.org

    Фонд Free Software Foundation, Boston, MA

    Фонд "Free Software Foundation" – это некоммерческая благотворительная организация, осуществляющая сбор средств на проект GNU. Целью проекта GNU является создание завершенной, бесплатной UNIX-подобной операционной системы. Многие из попутно разработанных инструментальных средств уже стали отраслевыми стандартами.

    [URL 58] Web Server Information

    www.netcraft.com/survey/servers.html

    Ссылки на домашние страницы, находящиеся более чем на 50 web-серверах. Часть из них является коммерческими продуктами, другие же распространяются бесплатно.


    Примечания:



    5

    В оригинале английское слово annoy происходит от старофранцузского enui что также означает "наскучить".



    55

    ACM Member Services, РО BOX 11414, New York, NY 10286, USA. => www.acm.org



    56

    1730 Massachusetts Avenue NW, Washington, DC 20036-1992, USA. -> www.computer.org








    Главная | В избранное | Наш E-MAIL | Прислать материал | Нашёл ошибку | Наверх