Сайт о сжатии  >>  ARCTEST

Сравнительные тесты
    Текстовые файлы
    Текстовые файлы (Mac)
    EXE-файлы
    EXE-файлы (Mac)
    Исполнимые EXE-сжатые
    Аудио: Wav-файлы
    Аудио: Wav-файлы (Mac)
    Графика: TIFF-файлы
    Графика: TIFF-файлы (Mac)
    Разноформатные файлы
    Разноформатные файлы (Mac)
    Файлы демо-игры
    Файлы демо-игры (Mac)
Альтернативные тесты
    Русский текст
    Английский текст
    Исходники
    WinWord-файл
    Excel-файл
    EXE-файл
    Новые тесты
Графические тесты
    Сжатие изображений без потерь
Новости
    Архив новостей
    Архив рассылки
Утилиты
    Просмотра-распаковки
    Идентификации-распаковки
    COM/EXE-распаковки, анализа
    Распаковки инсталляций
    Создания SFX-архивов/инсталляций
    Конвертирования
    Починки архивов
    Поиска
    Универсальные оболочки
    Управления баннерами
    Управления файлами
    Резервного копирования
    Тестирования
    Разные
Файл-менеджеры
    Файл-менеджеры
    Арх.-модули для FAR
    Арх.-модули для Win. Commander
Описания
    Статьи, интервью
    Теория, алгоритмы
    Self-описания архиваторов
    FAQ
    Разное
Линки
    Архиваторные
    COM/EXE/DLL-пакеров
Necromancer's DN
    О программе
    Новости свежих версий
    Архив новостей
Поддержка
   
    Подписка на рассылку новостей
    Архиваторные опросы
    Об авторе
Все о сжатии / arctest. Авторский проект.
---------------------------------------------------------

Гости редакции PC Magazine/Russian Edition

Михаил Донской. 50 лет, руководитель коллектива разработчиков (А. Дубец, В. Кокин, И. Шабалин) компании "ДИСКо", разработавшего клон Norton Commander - DISCo Commander.

С чего началась разработка программы?

В свое время мы провели ряд исследовательских разработок и создали продукт, который получил название DISCo CD Organizer. Это была оболочка для Windows 3.1, максимально приближенная по внешнему виду и способам работы к ОС ПК Macintosh. Но она кое в чем превосходила свой прототип - мы использовали принцип под названием "рыбий глаз" - пиктограммы меняли свой размер в зависимости от расположения на экране (чем ближе к центру, тем больше). Это была удобная программа, но, увы, ей не суждено было стать бестселлером - как раз в то время началась рекламная кампания по продвижению Windows 95, ОС "с новым лицом"...

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

Мы нашли постоянного партнера в лице компании "Арсеналъ", с которой сотрудничаем уже почти три года. Причем схемы сотрудничества - разные. Если для DISCo Commander и ДИСКо Качалки "Арсеналъ" выступает издателем, то разработка новой версии "Лексикона" идет совместно.

А почему было принято решение ориентироваться не на текстовый, а на графический режим? Вроде оригинал - программа текстовая, пользователи привыкли...

Человек, который работает с компьютером, не должен замечать ОС. Как Norton Commander закрыл от пользователя DOS, так мы хотели закрыть Windows. Если подумать, может быть поэтому DISCo Commander так популярен?

Графическая среда задана самой Windows, деваться некуда. Зато можно сделать одну из самых популярных функций - просмотр графических файлов. А динамический курсор? Ведь это важно, а в тексте умрешь - не сделаешь.

На самом деле цель - сделать Windows такой же простой, как DOS.

А чем вы пользовались "в прошлой жизни", до появления Windows 95?

Разумеется, DISCo CD Organizer.

Как вообще вы относитесь к другим оболочкам?

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

Если взглянуть с другой стороны, надо отчетливо представлять круг пользователей своей оболочки. Наши пользователи - это новички, и уж во всяком случае не "системщики". Поэтому, разрабатывая DISCo Commander, мы сделали упор на простоту и понятность использования, возможно в ущерб многофункциональности. На другом конце спектра находятся такие программы, как FAR, программы, ориентированные скорее на специалистов в области компьютеров.

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

Как развивался DISCo Commander?

Для нашей компании характерно создание нового продукта как комбинации уже готовых частей и относительно небольшого нового куска. В начальной стадии работы над DISCo Commander разрабатывалась новая визуализация старого функционала, взятого из CD Organizer. Хотя в качестве образца был взят Norton Commander, разработка способов взаимодействия с пользователем только на малую часть состояла из копирования Norton Commander, многое было унаследовано из других продуктов DISCo.

Когда DISCo Commander стал популярным продуктом, его переделки были минимальными. Из новых возможностей упомяну только следующие: каждая строка для ввода содержит историю вводившихся значений, сделана новая команда "Сменить путь", которая, в сочетании с историей вводившихся значений, дает удобный способ попадать в часто используемые глубинные каталоги, сделаны встроенные программы просмотра, связанные с форматами данных, характерных для Интернета (HTML, JPEG).

Какой язык программирования использовался при создании DISCo Commander?

Наша "среда обитания" - Borland C++. При этом версии продуктов для Windows 3.xx мы разрабатываем в среде Borland C++ 4.5, а для Windows 95 - 5.02. Тем не менее нам приходится отслеживать возможность трансляции и другими трансляторами, в частности MS Visual C++ 5.0, из соображений интегрируемости с другими продуктами.

Насколько велик проект с точки зрения исходных текстов?

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

Сравнительная трудоемкость разработки модулей?

Системное и интерфейсное программирование (а именно таким занимается DISCo) не отличается большой трудоемкостью программирования. Главные проблемы лежат в разработке архитектуры и дизайне. Это как в литературе - главное придумать, а написать уже нетрудно. От идеи DISCo Commander до первой прилично работающей версии прошло три месяца, а еще через два мы "положили" на CD-ROM, выпущенный компанией "Аурамедиа" специально для выставки "Комтек-96", демонстрационную версию, которую до сих пор с успехом продают пираты.

Основные трудности при разработке?

Преодоление Windows было нашей главной заботой. До сих пор пользователь должен отличать программы DOS от программ Windows, потому что многие вещи в этих средах происходят по-разному. Нам хотелось дать пользователю ту свободу, которую он имел в DOS, и те удобства, которые принесло распространение Windows.

Немало забот нам доставила функция "пользовательского меню". Нам пришлось делать свой "диспетчер задач", который отслеживает окончание программ, проверяя, нет ли их в какой-нибудь из "цепочек" задач из пользовательского меню; если да, то запускается следующая программа (все не так просто, потому что задачи могут окончиться ошибкой, и тогда цепочка либо обрывается, либо ветвится). Мы реализовали корректную работу с разными каталогами на каждом логическом диске, поэтому последовательность DOS-программ работает нормально. В Windows понятие текущего каталога существует только для текущего диска (да и то не всегда).

Очень большие проблемы вызвала поддержка клавиатурных комбинаций, особенно тех, которые используются на уровне Windows. Полной победы не получилось - комбинацию Alt+F6 мы так и не смогли перехватить.

Кроме того, в Windows заявлено "золотое" для нас сообщение об изменении состояния файловой системы WM_FILESYSTEMCHANGED. Но оно выдается не при всех изменениях, поэтому нам приходится через каждые 10 с перечитывать состояние текущих каталогов, что, конечно, не всегда приятно для глаз.

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

Мы, кстати, до самого последнего времени (лето 1998 г.) аккуратно поддерживали работу в Windows 3.1 и соответственно 16-разрядную версию DISCo Commander, поскольку знаем, что многие наши пользователи все еще работают на этой системе.

С точки зрения дизайна продукта основная проблема состояла в умерении аппетитов пользователей и сохранении минимально необходимой функциональности.

Мы хотели иметь продукт легкий, понятный и удобный для простого пользователя. Единственная функция, которую мы вставили в DISCo Commander "для себя", - это функция построчного сравнения файлов. Она дает возможность интерактивно наблюдать разницу между файлами в каталоге и архиве или двух каталогах и выбирать для каждого конкретного различия окончательную версию. Эта функция позволяет нам параллельно вести работу над одними и теми же исходными текстами, а потом легко "сливать" их.

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

Что вы думаете по поводу Windows 98 и NT 5.0 применительно к DISCo?

Эти операционные системы будут весьма популярны, несмотря ни на что. Значит, нам придется адаптироваться к ним. Если учесть любовь создателя этих систем к ограничению работоспособности продуктов третьих фирм за счет изменений в последний момент, то мы не собираемся адаптировать DISCo Commander к Windows NT 5.0 до появления коммерческой версии. А с Windows 98 такую работу делать сейчас самое время.

Как устроен DISCo Commander изнутри?

Вопрос, конечно, интересный. У программы две как бы отдельные части. Одна часть обеспечивает взаимодействие с пользователем, а другая - реализует набор системных функций. Это, естественно, не полное описание. Есть еще монитор задач, программа сравнения файлов, программы просмотра файлов разного формата и много других кусков.

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

Все наши продукты базируются на своих библиотеках объектно-ориентированного взаимодействия. То есть единица взаимодействия с пользователем - объект. При разных визуализациях это порождает интересные проблемы. Представьте себе на экране две пиктограммы: одна прямоугольная, а другая - бублик, лежащий прямо на первой. Для пользователя при нажатии на ту часть прямоугольной пиктограммы, которая видна в дырке бублика, естественно ожидать взаимодействия именно с прямоугольной пиктограммой. Но так происходит далеко не всегда: отрицательный пример - "рабочий стол" Windows 95. В нашей технологии результат взаимодействия всегда совпадает с ожиданиями пользователя. Более сложные примеры (в частности, при иерархических объектах) я приводить не буду.

Сколько сегодня пользователей у DISCo?

Я точно не знаю. Если говорить о легальных пользователях, то это - коммерческая тайна, но не нашей фирмы, а фирм - сборщиков российских компьютеров, поскольку основной канал легального распространения DISCo Commander - предустановка на компьютеры российской сборки. Но речь идет о тысячах экземпляров в месяц. Сюда надо добавить два с половиной года функционирования пиратского рынка и копирования для родных и знакомых. Мы не защищали DISCo Commander от копирования.

Несколько слов о географии. Мы получаем письма со всех концов СНГ. В основном это просьбы о наращивании функционала и вопросы о новых версиях.

Но много писем и из-за границы, особенно из Западной Европы. Способ решения проблем локальных кодировок, примененный в DISCo, оказался удачным и для таких стран, как Бельгия, Голландия, Польша. Оттуда идут просьбы о работе со специальными видами клавиатуры, распространенными в этих странах. Есть пользователи и в США.

А кто пользуется DISCo?

Я уже говорил, что мы ориентировались на неподготовленного пользователя. Но я знаю многих профессионалов, предпочитающих DISCo. Во всяком случае, в нашей компании и в "Арсенале" все пользуются только им.

Вообще, пути пользователей неисповедимы. Я знаю людей, использующих DISCo Commander в основном для просмотра специфических картинок, полученных из Интернета.

Я с удивлением узнал, что мало кто осведомлен о режиме сравнения файлов, существующем в DISCo Commander уже более года. Да и успех демонстрационной версии DISCo Commander, весьма ограниченной по сравнению с текущей, показывает, что пользователям много не надо.

А как вообще обстоят дела с продажей DISCo?

Этот вопрос надо в первую очередь адресовать к компании "Арсеналъ", имеющей эксклюзивные права на коммерческое распространение DISCo Commander. На мой взгляд, продажи идут неплохо. Во всяком случае, сегодня, при кризисе рынка, они не падают. Но всегда хочется лучшего.

До сих пор самым распространенным на рынке вариантом DISCo Commander является 16-разрядная версия, опубликованная в 1996 г. на CD, выпущенном компанией "Аурамедиа" к Комтеку-96. Эту популярность ей обеспечило вхождение практически во все пиратские сборники служебных программ (утилит) для Windows. С точки зрения сегодняшнего состояния DISCo Commander это - довольно убогая версия, кстати не работающая с длинными именами и не приспособленная к Windows 95 и Windows NT. Тем не менее все выглядит так, что она приносит заметную пользу при работе, раз люди до сих пор ею пользуются.

Можно немного о планах?

Чего мы точно не будем делать - разрабатывать собственный архиватор для DISCo Commander.

Первой причиной является уважение авторских прав разработчиков архиваторов. Если вставлять существующий архиватор, надо его честно лицензировать у его создателей.

Мы самостоятельно не разрабатываем архиваторы, так как уважаем чужую квалификацию. Мы наверняка не сможем в этой, достаточно новой для нас, области быстро создать продукт высокого качества. Заметим, что FAR начался с архиватора, а не наоборот. Кроме того, самостоятельная разработка архиватора(ов) означала бы вступление в гонку как с авторами архиваторов, так и с разработчиками операционных систем (по крайней мере в части файловой системы). Мне кажется, что в интересах пользователя, купить нормальный архиватор и установить его на своем компьютере, после чего DISCo Commander создаст полную иллюзию встроенности этого архиватора.

Уже начались продажи DISCo Commander 98 вместе с нашим новым продуктом "DISCo Качалкой" (offline browser для Интернета). А в остальном наши планы связаны с разработкой продуктов для Интернета.

PCMagazine Online

Последнее обновление: 11-October-2021

Сайт о сжатии  >>  ARCTEST  >>  Сравнительные тесты  |  Альтернативные тесты  |  Графические тесты  |  Новости  |  Утилиты  |  Файл'менеджеры  |  Описания  |  Линки  |  Necromancer's DN  |  Поддержка

Поиск:
Справка Детальный запрос

Сайт о сжатии >>
  Новинки | О сервере | Статистика

  Книга "Методы сжатия данных" >>
     Универсальные | Изображений | Видео

  Разделы >> Download (статьи+исходники) | Ссылки | Ru.compress | Arctest | Видео | Каталог ссылок | Форум
  Проекты >> Д.Ватолина | А.Ратушняка | М.Смирнова | В.Юкина | Е.Шелвина | А.Филинского | Д.Шкарина | С.Оснача

  Оставьте ваши замечания, предложения, мнения!
  О найденных ошибках пишите на compression_на_graphicon.ru
  © Д.Ватолин, А.Ратушняк, М.Смирнов, В.Юкин и др., текст, состав., 2001-2003
    Project supported by Graphics & Media Lab

   ЭТОТ ДОКУМЕНТ МОЖНО СКАЧАТЬ C http://www.compression.ru/compression.ru/arctest/descript/donskoi.htm

Rambler's Top100 Рейтинг@Mail.ru