![Cчетчик со страницы Getting Started на момент публикации статьи](https://habrastorage.org/files/68c/f8d/a8b/68cf8da8b6ec4ef4ad35318498d13db7.png)
Cчетчик со страницы Getting Started на момент публикации статьи
С минуты на минуту случится то, чего ждали очень многие, и я в том числе. А именно: компания ObjectArts полностью открывает исходники и выпускает язык и среду разработки Dolphin Smalltalk под открытой лицензией MIT!
О проекте
![](https://habrastorage.org/files/51f/a3d/8cf/51fa3d8cfb7d4c7abc1a6cdb919524a1.jpg)
Долгое время Dolphin Smalltalk был доступен в двух вариантах: условно-бесплатная ограниченная версия (community edition) и платный пакет для профессиональной разработки. Последний давал доступ ко всем функциям, включая продвинутые редакторы и публикацию приложений в standalone режиме, однако стоил около четырехсот долларов, что, по понятной причине, устраивало далеко не всех.
Похоже, что компания таки одумалась (или терять стало нечего) и решила выпустить ПО на волю. Под катом краткое описание среды разработки и размышления на тему open source будущего Dolphin Smalltalk.
Возможности среды разработки
![](https://habrastorage.org/getpro/habr/post_images/764/8e0/c5d/7648e0c5deab734361933ceada9633f6.png)
IDE предоставляет как обычные возможности, вроде code assist, навигации по коду и встроенного отладчика, так и средства, специфичные для Smalltalk: поддержку тестов SUnit, управление публикацией приложения (упаковка, вырезание лишних классов), WYSIWYG редактор интерфейсов и многое другое. Мне нравится возможность поиска по всему содержимому проекта, включая классы, методы и комментарии, доступная в тулбаре любого окна.
Навигация
![](https://habrastorage.org/files/7ae/a78/bc6/7aea78bc6dd84beb9c30eb95fc51d5df.png)
Разбираясь с незнакомым кодом на традиционных языках мы открываем файлы исходных текстов и читаем их подряд. Smalltalk организован несколько по другому. Вместо простыни исходных текстов мы имеем иерархию классов и списки их методов. Значительное время проводится именно в изучении иерархии классов, которая в Dolphin представлена довольно аккуратным Class Browser-ом.
Отладка
Отладка динамических языков всегда была проще, чем кропотливая работа с креш дампами. В Smalltalk это вынесено на уровень выше. При отладке приложения мы можем не просто наблюдать каждый шаг работы программы, но и взаимодействовать с объектами в диалоговом режиме. Помимо тотальной интроспекции программы Dolphin предоставляет возможность буквально ткнуть в любой элемент окна и мгновенно получить все его свойства и содержимое в окне инспектора.
Часто бывает так, что при написании программы многие методы приходится оформлять заглушками, поскольку времени на все про все не хватает. Если в ходе выполнения традиционной программы управление доходит до заглушки, то нам остается только вывести сообщение в лог или вывалиться по ассерту, если дальнейшее выполнение программы невозможно.
![](https://habrastorage.org/files/d16/f47/254/d16f472544094ed3aa64a80541f63d64.png)
Что это даст нам, простым смертным?
Если все будет действительно так, как заявлено, то сообщество получает отличный инструмент для быстрой разработки и прототипирования софта под Windows. Меня, как пользователя Linux, разработка под Windows не очень интересует. Тем не менее, я считаю, что это событие можно использовать и в своих целях.
В первую очередь я обратил бы внимание на внутреннее устройство виртуальной машины, которая к слову считалась весьма быстрой еще во времена Windows XP, хотя, насколько я знаю, JIT они не используют.
Если существует техническая возможность портирования Dolphin Smalltalk на другие ОС, можно ожидать появления дружественных к неподготовленному пользователю сред разработки на Smalltalk. Большое количество кода было написано в рамках интеграции с ОС. Другим средам, таким как Pharo это может быть на руку.
Наконец, удобная среда разработки с большим количеством встроенной документации и великолепным иллюстрированным туториалом может быть полезна начинающим и способствовать развитию самого языка Smalltalk.
В комментариях прошу делиться своими мыслями и предложениями.
UPD: На гитхабе появились репозитории Dolphin и DolphinVM.
А напоследок, маленький опрос:
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Каким вы видете будущее Dolphin Smalltalk?
73.49% Никаким не вижу — они опоздали лет на *дцать.244
8.13% Пойдет для первичного ознакомления, а потом надо переходить на что-то серьезное27
7.53% Не только пойдет, но может использоваться и для реальной разработки25
22.29% Если портируют на никсы — будет жить74
0.6% Я давно пользуюсь платной версией и не понимаю, в чем проблема2
0.6% Я давно пользуюсь community версией и не понимаю, в чем проблема2
2.11% Свой вариант (в комментариях)7
Проголосовали 332 пользователя. Воздержался 241 пользователь.