Оберон-клуб «ВЄДАsoft» https://zx.oberon.org/forum/ |
|
Среда XDev: с чего начать? https://zx.oberon.org/forum/viewtopic.php?f=8&t=84 |
Страница 1 из 1 |
Автор: | Zorko [ 02 мар 2013, 04:44 ] |
Заголовок сообщения: | Среда XDev: с чего начать? |
XDev — открытая и свободная интегрированная среда разработки на модульных языках программирования (Оберон, Оберон-2, Компонентный Паскаль), базирующаяся на Оберон-окружении BlackBox Component Builder, трансляторе Ofront и Си-компиляторах в качестве кодогенераторов заднего плана (back-end), а также наборе дополнительных утилит и библиотек. Скачать: https://github.com/Oleg-N-Cher/XDev/zipball/master Контроль версий: https://github.com/Oleg-N-Cher/XDev С помощью XDev можно разрабатывать проекты для различных платформ, как ретро, так и современных, и на нескольких языках программирования одномоментно. Сейчас больше всего проработана подсистема ZXDev для разработки под ретро-платформу ZX Spectrum, но готовятся подсистемы WinDev (для разработки под Windows) и J2meDev (для Java microedition). Я заинтересован в поддержке других платформ (различными способами, как с Ofront, так и без него), в разработке новых (и адаптации существующих) библиотек, утилит и компиляторов для этих платформ. Любая помощь, даже самая маленькая, будет очень кстати. Основные цели и преимущества XDev, на что будет сделан упор:
+ Надёжность получаемых решений + Сверхкомпактный размер целевого машинного кода + Широкое использование достижений европейской школы программирования, таких как безопасные и модульные языки программирования — Oberon, Oberon-2, Component Pascal, возможно, Modula-2 и Objective Modula-2. |
Автор: | Zorko [ 04 мар 2013, 08:55 ] |
Заголовок сообщения: | Среда XDev: с чего начать? |
Подсистемы для кроссплатформенной разработки в XDev имеют следующую структуру:
Код: "C" /* Configuration file of the library Console */
В корень подсистемы могут помещаться целевые бинарники. |
Автор: | Zorko [ 28 ноя 2014, 19:50 ] | ||
Заголовок сообщения: | Re: Среда XDev: с чего начать? | ||
Несколько слов о реструктуризации подсистем WinDev и ZXDev. Они подверглись изменению структуры папок в целях бОльшей логичности и универсальности сборочных скриптов. Итак: Lib\Bin — сборочные скрипты как для сборки библиотек, состоящих из нескольких модулей, так и универсальные compile.bat и build.bat, заточенные соответственно для компиляции любого модуля (чтобы выявить возможные ошибки времени компиляции) и сборки библиотеки, состоящей из одного модуля. Одноимённые с модулями скрипты унифицированы чтобы иметь наиболее ясную структуру. Например: Код: "WINBATCH" @REM Build the library Kol Остаётся открытым вопрос про многомодульные проекты пользовательского уровня. Подумываю над подобной же унификацией некоторого универсального скрипта для сборки и пользовательского скрипта типа главного проектного файла, в котором будут задаваться специфические для данного проекта отличия, оформленные в стиле скрипта, показанного выше, т.е. максимально наглядно. Lib\C — исходники библиотек, написанных на языке Си. Раньше они хранились просто в /Lib. Теперь же там хранится продукт: те самые двоичные библиотеки, для создания которых подсистемы собственно и нужны. Lib\Mod — исходники библиотек, написанных на Обероне имеют расширение .Mod, биндинги к сишным библиотекам (или dll, или so) имеют расширение .Def. Lib\Obj — исходники на языке Си, не написанные программистом, а сгенерированные средой из обероновских. Всякий раз при компиляции или сборке скрипт проверяет существование одноимённого с модулем сишного исходника сначала в папке Lib\C, если находит, то реализация модуля считается написанной на Си, а Оберон-часть считается биндингом; если же в Lib\C сишного исходника нет, то модуль считается написанным на Обероне, а значит компилируются и собираются исходники, находящиеся в Lib\Obj, которые по сути являются объектными файлами, просто в формате Си. В подсистеме WinDev есть также папка: Lib\Obj64 — для 64-битной версии объектных файлов. Эту папку пришлось ввести потому, что генерируемые сишные исходники для 32 бит и 64 бит могут отличаться. Lib\Sym — символьные файлы. Текстовое представление хранить оказалось не нужным: его очень просто получить с помощью браузера XDev -> Show Definition. Lib — готовые библиотеки, сгенерированные с помощью подсистемы, а также их конфигураторы, т.е. в данной реализации это *.h-файлы. Мы здесь не прячем их, Reobne. Мы наоборот выставляем наружу интерфейсы, опции, параметры библиотек. А прячем реализацию.
|
Страница 1 из 1 | Часовой пояс: UTC + 2 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |