LINUX.ORG.RU

IDE для D


0

0

Здравствуйте,

Я хочу представить на обсуждение язык программирования D и среду разработки для него.

BITPROX™ Среда Разработки 1.0 для GNU/Linux и Windows - это продукт специально разработанный при помощи языка программирования D для разработки приложений на языке D для этих платформ.

На данный момент доступна пробная бета версия 2 для GNU/Linux и пробная бета версия 1 для Windows. Тридцатидневную пробную версию можно загрузить свободно по адресу: http://bitprox.com/ru/download.html

Язык D версии 2.0 - это современный, статически типизированный язык, который компилируется прямо в машинный код, что означает быстроту исполняемого кода на уровне C/C++, при сохранении высокой продуктивности программиста, предоставляя функции, свойственные таким языкам высокого уровня, как C# или Java, плюс много новых функций. Язык D позволяет легко мигрировать с таких языков, имея похожий синтаксис, он предоставляет возможность выбора таких парадигм программирования, как императивное, объектно-ориентированное или метапрограммирование. Поддерживает связывание(компоновку) с библиотеками C и, с ограничениями, C++. Имеется утилита для создания интерфейс-файлов D для заголовочных файлов .h .

Поддерживается загрузка функций во время компиляции(Compile Time Function Execution (CTFE)), делегаты(указатели функций), отключаемая автоматическая сборка мусора, встроенные типы string, полная поддержка стандарта Юникод, встроенные легковесные и массивы, встроенные ассоциативные массивы, вставляемые функции, объектые типы, интерфейсы, свойства(property), включаемый ассемблер, прямой доступ к оборудованию, возможность явного управления памятью, не зависит от какогй-либо виртуальной среды или платформы; особенно широкая поддержка шаблонов, шаблонов функций, mixins(позволяет делать вставку кода, компенсирует недостаток множественного наследования), ограничения шаблонов(template constraints); циклы foreach; контрактное программирование, юнит-тесты, гарантированная инициализация, RAII (автоматические деструкторы), обработка исключений, блоки try-catch-finally, примитивы синхронизации потоков; C-подобный синтаксис, пречисления, все типы C, прямой доступ к C, существующие отладчики подходят, контроль выравнивания в структурах, генерирует стандартные объектные файлы; условная компиляция, документационные комментарии и т.д. Более подробную информацию можно узнать на сайте Digital Mars http://www.digitalmars.com/d/2.0/index.html

BITPROX™ Среда Разработки - это интегрированная среда разработки для языка D, которая позволяет эффективно и быстро разрабатывать кроссплатформенное ПО на этом языке.

Среди возможностей:

1. Поддержка компилятора DMD v2.046 и отладчика GDB 7.0(также известно, что уже следующая версия GDB будет полностью совместима с D).

2. Мультипоточная система сборки. Компиляция кода в считанные секунды на GNU/Linux в режиме параллельной сборки. Задание любого количества потоков компиляции для многоядерных/многопроцессорных систем.

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

4. Текстовый редактор с полной поддержкой синтаксиса D, комментариев, русского языка ввода(Юникод), большого набора настраиваемых функцийй, поля ошибок и номеров строк, автоотступы и автоматическое форматироавние(настраивамое). Автоотступы комментариев, автопродолжение комментариев( //, /**/ и /++/). Выделение документирующих комментариев. Автоформатирование скобок и поддержание отступа на уровне предыдущей строки.

5. Интерактивная проверка ошибок. Проверяет вводимый код по мере того как он поступает, мгновенно выдаёт и выделает в текстовом редакторе все предупреждения и ошибки. Предусмотрено выставление значения интервала проверки. Список ошибок, переход двойным щелчком в место предупреждения/ошибки на строку в исходном коде.

6. Отладка приложения в графическом режиме. Выставление контрольных точек(breakpoint). Автоматический переход в исходный код и его выделение при поступлинии исключения или достижения контрольной точки. Задание команд отладчика в ручном режиме. Пошаговая отладка(Шаг В(F11), Шаг Через(F12), Шаг Из(Shift+F11)). Прерывание приложения при отладке и остановка отладчика одним нажатием. Вывод отладчика в отдельном окне.

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

8. Автоматический переход и выделение ошибок/предупреждений после неудачной сборки.

9. Автоматическое определения местоположения компилятора DMD и отладчика GDB из переменной окружения $PATH.

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

11. Создание любого количества проектов в рабочей области. Каждый проект поддерживает любое количество настраиваемых конфирураций.

12. Рабочая область может иметь любое количество конфигураций сборки. Настраиваемый порядок сборки проектов. Включение/исключение любого проекта в сборке, выбор конфигурации для каждого проекта.

13. Копирование/создание/удаление конфигураций проектов и конфигураций рабочей области. Автоматическое создание проектных конфигураций для родительской рабочей области. Автоматичечкое создание конфигураций для дочерних проектов.

14. Настраиваемый пользовательский интерфейс с поддержкой русского языка(детектируется автоматически или выставляется вручную).

15. Справка по языку D и автоматический переход в справку по ключевому слову(F1).

16. Поиск/замена текста, поддержка клавиши F3.

17. Контроль отступа текста, комменттирование, изменение регистра выделенного текства, дублирование строки - всё одним нажатием или из меню.

18. Открытие каталогов рабочей области или проекта из контекстного меню в приложениях Konqueror/Nautilus/Explorer, в зависимости от платформы.

Снимки при тестировании на Ubuntu 9.10 GNU/Linux можно посмотреть здесь: http://www.bitprox.com/ru/products/bde/scr.html

Кроме Ubuntu, ПО также протестировано на CentOS 5.3(дистрибутив, совместимый с RHEL).

Однако, перед установкой следует ознакомиться с файлом readme: http://www.bitprox.com/ru/products/bde/lin/beta2/readme_ru.txt

На данный момент бета версия 2 для Windows готовится к выходу, окончательная версия 1.0 выйдет и будет коммерчески доступна для обеих платформ, примерно, через 1-2 недели.

Среди новых возможностей, находящихся на этапе планирования для версии 2.0:

1. Сборка наращиванием(incremental build).

2. Оптимизация времени компоновки(link-time optimization).

3. Поддержка семантики языка D, автодополнение кода, просмотр дерева классов.

4. Улучшенная отладка.

5. Поддержка кроссплатформенной графической библиотеки в комплекте и редактора оконного интерфейса для проектирования GUI приложений.

Мне интересно, что об этом думает сообщество linux.org.ru. Как вы относитесь к языку и среде разработки. Буду рад услышать отзывы и критику.

Если нужна отсутствующая функциональность или функция не работает должным образом на вашей системе, обращайтесь на этом форуме, по почте(s u p p o r t@bitprox.com). Также меня можно найти на news.digitalmars.com, digitalmars.D.ide.

Спасибо.

-- Алексей Махотин, основатель «БИТПРОКС» http://bitprox.com

мой блог: http://bitprox.com/blog


Язык D версии 2.0 - это современный

А авторы сего языка совместимость в ветке 2 уже закончили ломать?

оконный интерфейс

и

задавать каталоги импорта

противоречат друг другу.

Begemoth ★★★★★
()
Ответ на: комментарий от Begemoth

На данный момент происходит активное исправление обнаруженных неисправностей в компиляторе D 2.0, стандартной библиотеке phobos2, и финализация спецификации. Книга Александреску скоро поступит в продажу. Больше спецификация языка меняться не будет.

Задавать каталоги, где будет произведён поиск компилятором импортируемых файлов, можно через окно свойств проекта.

alexm
() автор топика
Ответ на: комментарий от alexm

Задавать каталоги, где будет произведён поиск компилятором импортируемых файлов, можно через окно свойств проекта.

Это очень неудобно при переносе проекта с одной машины на другую, каталоги с библиотеками могут меняться. Правильным решением тут является поиск библиотек системой сборки (как, например, реализовано в autotools или CMake).

Begemoth ★★★★★
()
Ответ на: комментарий от Begemoth

Можно использовать относительные пути(относительно проектного, например ../../) как для задания каталогов для поиска компилятором файлов с расширением .d(которые в исходном тексте определяются директивой import)(Свойства проекта -> Компилятор D -> Общие Дополнительные каталоги импорта) так и для установки каталогов для поиска библиотек для компоновщика(Свойства проекта -> Компоновщик -> Ввод -> Дополнительные каталоги).

alexm
() автор топика

По-моему Descent умеет намного больше, разве нет? Автокомплит, вычисление CTFE функций, go to definition, подсветка текущего токена. Ну и опен-сорс. Всего этого я не увидел. Подсвечивать синтаксис и запускать компилятор можно и в емаксе.

Legioner ★★★★★
()

что то у меня шрифт интерфейса на ~5ть пунктов больше шрифта в других gtk приложениях?...

tonn
()
Ответ на: комментарий от tonn

При тестировании на Ubuntu 9.10 и CentOS 5.3 этого не наблюдается. Напишите подробнее о параметрах системы.

alexm
() автор топика
Ответ на: комментарий от tonn

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

alexm
() автор топика
Ответ на: комментарий от tonn

ПО не предусматривает работу с другими версиями wxWidgets библиотек, кроме той, что поставляется в комплекте(2.8.10, Unicode), для запуска основного приложения, нужно выполнить скрипт sbde из корневого каталога, распакованного на диске. Если есть конфликт версий, то необходимо его устранить, прежде чем запускать приложение.

alexm
() автор топика
Ответ на: комментарий от alexm

Для всего этого IDE не нужна - make справляется.

Begemoth ★★★★★
()

Хорошо, что появляются средства разработки для D, это радует.

Несколько замечаний/вопросов:

  • Если не ошибаюсь, Микрософт вот беты Вижуалстудии раздает с бесплатным временем работы до даты выхода релиза (что в общем случае больше, чем месяц). Почему бы не поступать также? Это касается не текущей версии, а скорее бет версии 2.
  • Сайт страшен. Стоит все-таки озаботиться дизайном.
  • Когда планируется к выпуску вторая версия?
  • Планируется ли реализация (и если да, то когда) функций compile-time view (а также шаблонов кода хотя бы на том уровне), quick fix (как в Eclipse или ReSharper), рефакторинга, юнит-тестирования, генерации документации?
  • Какая именно библиотека планируется для интерфейсов? DWT? GtkD? QtD? WxD? DFL?
gizzka ★★
()

Ну и ещё, планируется ли возможность изменения кода во время отладки и изменение текущей команды (см. например отладчик в Visual Studio)?

Да, я так понимаю там свой формат проекта и сторонние инструменты для сборки не поддерживаются?

gizzka ★★
()

И не могли бы Вы сделать сравнение с OpenSource аналогом Descent (да, я знаю, что поддержка D2 там до сих пор хромает) по этому списку фич?

gizzka ★★
()

Много слышал, мол есть метапрограммирование в Ди.

Кто-нибудь может показать как реализоваться самый обычный cond в Ди?

Ruga-Suneto
()
Ответ на: комментарий от Miguel

Обычно таким слогом расхваливают доморощенные ERP системы, написанные на дельфях.

Меня смущает прошлое разработчиков сего продукта.

anonymous
()
Ответ на: комментарий от anonymous

Какое-то оно страшное на вид это IDE, видимо влияние WxWidgets

Gorthauer ★★★★★
()
Ответ на: комментарий от gizzka

> Если не ошибаюсь, Микрософт вот беты Вижуалстудии раздает с бесплатным временем работы до даты выхода релиза (что в общем случае больше, чем месяц). Почему бы не поступать также? Это касается не текущей версии, а скорее бет версии 2.

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

Когда планируется к выпуску вторая версия?

В данный момент идёт планирование. Оценка необходимости той или иной функции для успешной разработки на D. Реализация - сразу же после выхода первой версии.

Планируется ли реализация (и если да, то когда) функций compile-time view
quick fix (как в Eclipse или ReSharper)
рефакторинга

Перечисленные возможности напрямую связаны с реализацией встроенного предварительного компилятора(front end). Для всего вышеперечисленногшо понадобится семантическая осведомлённость BDE с семантикой языка D. Это будет в версии 2.0 совершенно точно. Однако я не могу сказать, насколько это будет похоже на указанные вами функции, однако известно, что встроенный front end будет полностью совместим с текущей спецификацией языка D версии 2.0. Но работающей практически реализации пока нет.

Какая именно библиотека планируется для интерфейсов? DWT? GtkD? QtD? WxD? DFL?

Планируется использовать модифицированную версию wxD в связке с wxWidgets. Открытый код будет доступен в соответствии с лицензией. Но дизайн на текущий момент не определён. Дизайн графической библиотеки будет вынесен на всеобщее обсуждение и решение будет в воответствии с этим. Если у вас есть конкретные предложения, пришлите их, пожалуйста, по эл. почте, желательно практически аргументированно.

alexm
() автор топика
Ответ на: комментарий от gizzka

> Ну и ещё, планируется ли возможность изменения кода во время отладки и изменение текущей команды (см. например отладчик в Visual Studio)?

Нет. Хотя я посмотрю, что можно сделать.

Да, я так понимаю там свой формат проекта и сторонние инструменты для сборки не поддерживаются?

Нет. Какое обоснование для сторонних инструментов сборки? Кроме того, сборка сторонними инструментами, код которых я не могу контролировать, не может гарантировать полную совместимость или качество выполнения.

alexm
() автор топика
Ответ на: комментарий от Ruga-Suneto

Например, смотрите лекцию Уолтера Брайта исключительно по метапрограммированию в D: Walter Bright: Metaprogramming in D http://vimeo.com/4333802

alexm
() автор топика
Ответ на: комментарий от alexm

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

Ок, ваша позиция ясна.

Планируется использовать модифицированную версию wxD в связке с wxWidgets.

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

Что касается моих предложений - я пока слегка не в теме современного состояния графических библиотек для D, поэтому сначала надо глянуть, что там произошло за последнее время.

gizzka ★★
()
Ответ на: комментарий от alexm

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

Очень интересная позиция. Вас в детстве пытали автотулзами?

baverman ★★★
()
Ответ на: комментарий от alexm

Нет. Хотя я посмотрю, что можно сделать.

Я бы посоветовал пока не запариваться, все-таки это трудоемко очень.

Нет. Какое обоснование для сторонних инструментов сборки? Кроме того, сборка сторонними инструментами, код которых я не могу контролировать, не может гарантировать полную совместимость или качество выполнения.

Проект лежит в svn, ему требуется проведение nightly-build'ов, автоматического тестирования. Было бы хорошо, чтобы проект мог собрать человек, у которого не установлена ваша IDE. А если ещё при этом зависимости нетривиальные? Вот и может оказаться, что скрипты нужны точно, но поддерживать их в таком состоянии, чтобы они при билде давали в точности такой же результат, как и билд с помощью вашей IDE - лишняя трата времени и нервов.

gizzka ★★
()
Ответ на: комментарий от gizzka

> Довольно странное решение в силу того, что wxD на данный момент считается находящимся в статусе Alpha (пруф).

Значительно доработанная и расширенная версия wxD в данный момент используется в текущей бета 2 BDE.

А вообще, какие именно модификации планируются?

Наиболее полная поддержка классов wxWidgets и глобальных функций, а также, например, обложка для XULRunner, которая уже позволяет реализовать похожий на Firefox веб-браузер(например, система помощи BDE использует эту технологию).

небольшие багфиксы или переделывание библиотеки с нуля)?

Это и есть вопрос. Оставить только обложку, или доработать в соответствии с возможностями D. Я склонен к последнему.

Будут ли изменения возвращены в сам wxD и кто будет поддерживать модифицированную библиотеку?

Да, все изменения будут доступны открыто, и будут поддерживаться «БИТПРОКС», в том числе, поскольку эта же библиотека является основой для BDE.

alexm
() автор топика
Ответ на: комментарий от gizzka

> они при билде давали в точности такой же результат, как и билд с помощью вашей IDE - лишняя трата времени и нервов.

То есть вы предлагаете добавить экспорт проекта в формат общедоступных систем сборки? Я правильно понял?

alexm
() автор топика
Ответ на: комментарий от alexm

То есть вы предлагаете добавить экспорт проекта в формат общедоступных систем сборки? Я правильно понял?

Скорее все-таки просто поддержку сборки проекта не только средствами IDE, но и по желанию пользователя с помощью внешних (определенных вами наиболее популярных) средств. Ну, например, как в Eclipse сделано со сборкой при помощью Ant'а.

gizzka ★★
()
Ответ на: комментарий от gizzka

> Кстати к слову, как там с плагинами к IDE (планируется ли)

Планируется. В планах также поддержка других языков, в качестве совместимости с существующим кодом, который нужно поддерживать(C++0x). Долгосрочная перспектива.

и что с поддержкой систем контроля версий?

Какой именно?

alexm
() автор топика
Ответ на: комментарий от alexm

Нет. Какое обоснование для сторонних инструментов сборки? Кроме того, сборка сторонними инструментами, код которых я не могу контролировать, не может гарантировать полную совместимость или качество выполнения.

В *nix системах есть некий стандарт на средства сборки. В противном случае все будут всё равно использовать cmake, automake и т.д. и максимум генерить на лету файлы проекта для вашей IDE.

Причина тут простая - сборщики пакетов. Они уж точно не хотят зависить от проприетарной IDE.

Gorthauer ★★★★★
()
Ответ на: комментарий от alexm

Да, все изменения будут доступны открыто, и будут поддерживаться «БИТПРОКС», в том числе, поскольку эта же библиотека является основой для BDE.

Открыто под какой лицензией? Пусть я написал графическое приложение на основе вашей библиотеке в вашей IDE (которую купил). Могу ли я его продавать, не открывая исходный код / распространять исходный под GPL / BSD / etc?

Это и есть вопрос. Оставить только обложку, или доработать в соответствии с возможностями D. Я склонен к последнему.

Если дорабатывать, то вам придется при каждом выпуске новой версии wxWidgets обновлять свою библиотеку. Будут ли у вас на это силы (процесс-то трудоемкий) и ресурсы - это вопрос. В качестве примера можно посмотреть на разработчиков Reactos, которые до появления Airwinss очень упорно переносили изменения из основной ветки wine'а, тратя на это кучу сил.

gizzka ★★
()
Ответ на: комментарий от alexm

Какой именно?

svn, mercurial, git. Кто-то может ещё cvs захотеть.

gizzka ★★
()
Ответ на: комментарий от Gorthauer

> В *nix системах есть некий стандарт на средства сборки. В противном случае все будут всё равно использовать cmake, automake и т.д. и максимум генерить на лету файлы проекта для вашей IDE.

Причина тут простая - сборщики пакетов. Они уж точно не хотят зависить от проприетарной IDE.

Шорошо, я рассмотрю это детально, после чего смогу дать ответ.

alexm
() автор топика
Ответ на: комментарий от gizzka

> Открыто под какой лицензией?

По лицензии wxWidgets.

Пусть я написал графическое приложение на основе вашей библиотеке в вашей IDE (которую купил). Могу ли я его продавать, не открывая исходный код / распространять исходный под GPL / BSD / etc?

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

alexm
() автор топика
Ответ на: комментарий от Gorthauer

и максимум генерить на лету файлы проекта для вашей IDE

Это в случае бешеной популярности IDE :) Если sln-файлы для VS ещё в OpenSource-программах, предполагающих работу под оффтопиком, периодически встречаются, то для любых других IDE (Code::blocks там) - редчайшая экзотика.

А вообще у D в этом плане есть некоторая проблема, стандарта де-факто на систему сборки (как autotools || cmake для си и плюсов и ant для javы) особо нет, народ самодеятельностью занимается..

gizzka ★★
()
Ответ на: комментарий от alexm

В планах также поддержка других языков, в качестве совместимости с существующим кодом, который нужно поддерживать(C++0x).

Наверное на первых порах не стоит этим заморачиваться, сильно неподъёмно выглядит. Разве что речь о базовой поддержке (подсветка синтаксиса да сборка с базовой отладкой).

Просто коммерческий продукт разрабатывать на нескольких языках, один из которых ещё и не продакшен до сих пор.. Рискованно сильно. Поэтому кажется, что на данный момент это не такая уж важная фича.

И к слову, причем здесь C++0x, на нем-то как раз ещё немного кода?

gizzka ★★
()
Ответ на: комментарий от alexm

По лицензии wxWidgets.

Понятно. Лично мне такое решение нравится :)

gizzka ★★
()
Ответ на: комментарий от gizzka

> И к слову, причем здесь C++0x

Я же ответил, это долгосрочная перспектива. Это будет доступно, может быть в 3,4-ой версии. Как раз, когда выйдет официальный стандарт. Одно из преимуществ - полная, 100%, совместимость с существующим кодом С++, для поддержки существующих программ, незаменим.

alexm
() автор топика
Ответ на: комментарий от alexm

Ок. У самого D взаимодействие с плюсовым кодом все равно довольно ограниченное вроде и выглядит как костыль. Или я ошибаюсь?

gizzka ★★
()
Ответ на: комментарий от gizzka

> У самого D взаимодействие с плюсовым кодом все равно довольно ограниченное

Ограниченное. Смотрите здесь: http://www.digitalmars.com/d/2.0/cpp_interface.html

В практическом плане для классов создаётся обложка на С(вручную или при помощи утилиты) после чего связывание и вызов из D осуществляется, как правило, без проблем.

alexm
() автор топика
Ответ на: комментарий от alexm

Ещё к слову. Выпустите первую версию - напишите сюда. Один из наиболее известных блогов по D (ведет один из разработчиков Derilect'а), IDE как раз к его тематике относятся. Если ему понравится - будет немного бесплатного пиара.

gizzka ★★
()
Ответ на: комментарий от gizzka

Ну так и Си с плюсами долгое время не было стандарта де факто, он в общем-то выстраданым оказался. Впрочем я так чую, что штуки навроде

http://www.dsource.org/projects/cmaked

будут популярны

Gorthauer ★★★★★
()
Ответ на: комментарий от alexm

Какое обоснование для сторонних инструментов сборки?

В том то и дело, что cmake умеет генерить нативные файлы проектов. Обоснование в том, чтобы не создавать и не поддерживать по куче файлов проектов для каждой платформы, а использовать один CMakeLists.txt на основе которого cmake сам нативный файл проекта под нужную платформу/IDE.

Reset ★★★★★
()
Ответ на: комментарий от Reset

> Поддержка cmake планируется?

Нет. CMake имеет встроенную поддержку для MSVS. Это конкурирующая система сборки, да ещё и производящая проекты для конкурирующего продукта.

alexm
() автор топика
Ответ на: комментарий от alexm

Всё ясно, с таким подходом ваш проект не приспособлен для кроссплатформенной разработки, а поэтому нахер не нужен.

На сервер или на кластер тоже прикажете вашу среду ставить, чтобы можно было собирать проект? На десктопе я могу использовать всё что угодно в том числе и MSVS, а вот когда я лезу считать на кластер, то там, естественно, никаких IDE нет и не будет. Еще один файл проекта городить я не намерен ибо это слишком гемморойно.

Reset ★★★★★
()
Ответ на: комментарий от Reset

> В том то и дело, что cmake умеет генерить нативные файлы проектов.

Цель BDE заключается в эффективном создании приложений на языке D.

Обоснование в том, чтобы не создавать и не поддерживать по куче файлов проектов для каждой платформы, а использовать один CMakeLists.txt на основе которого cmake сам нативный файл проекта под нужную платформу/IDE.

Много файлов проектов для BDE создавать нет необходимости. Достаточно создать один, спроектировать, скопировать, собрать на необходимых, поддерживаемых, платформах, выпустить продукт. Это более удобно, чем вручную редактировать текстовые файлы для системы сборки, вручную выправлять платформенные несовпадения и различия(cmake проект не собирается), а потом выяснить, что не собирается по причине внесённых изменений неким, неконтролируемым программистом в open source cmake. Я исхожу из того, что как пользователям, так и компаниям, нужны решения. Эти решения не должны целиком и полностью сосредоточиваться только исключительно на поиске решения, но брать готовые, работающие решения, и производить на основе них что-то новое.

alexm
() автор топика
Ответ на: комментарий от Reset

> На сервер или на кластер тоже прикажете вашу среду ставить

Ничего не нужно «ставить». Скопировал дистрибутив, распаковал, запустил, спроектировал(или готовый), собрал, выпустил продукт.

alexm
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.