Как написать билдер?
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Как написать билдер? - 2009-11-14 03:23:16.936666
|
|
|
tor.leo
Сообщений: 428
Оценки: 0
Присоединился: 2009-11-03 16:26:32.993333
|
Объясните суть. Я просто не пойму, есть прога в проге, т.е. в выполняемом заложен исходник другой проги, она этот исходник поправляет допустим во временном файле в соответствии с инструкциями….но его же ещё нужно откомпилить!…. P/S/ к примеру я написал исходник на асме, под него я пишу билдер на делфи…как мне это реализовать?
|
|
|
RE: Как написать билдер? - 2009-11-15 21:34:07.780000
|
|
|
tеstеr
Сообщений: 377
Оценки: -46
Присоединился: 2008-02-08 17:56:40.563333
|
Конкретный пример: мы писали генераторы для следующих ситуаций: генератор программы обработки меню. генератор программы распечатки структурированного файла. генератор программы сортировки массива данных. … Во все случаях, кстати, генерируемая программа была на ассемблере, а билдерм служила программа на delphi. Например, есть у тебя программы сортировки массива чисел (1 байт, 2 байта, 3 байта, 4 байта или целые, целые без знака, дробные) все они отличаются только типом данных в массиве (функции создания массива, заполнения массива), также функцией сравнения - для чисел одна функция сравнения, для строк другая, … Вот - билдер содержит шаблон кода, а также удобные меню/выпадающие списки/текстовое поле для ввода названия программы/текстовое поле для ввода текста, который будет выводиться при передаче программе опции "-?". Всё - запускаешь билдер, указываешь настройки, получаешь исходник на ассемблере. Компилировать его надо внешними средствами - fasm, например. Но можно в настройках билдера указать путь к компилятору и вызвать компиляцию прямо из билдера. system("текст команды"); где "текст команды" будет "D:\Program\Fasm\Fasm.exe C:\Project\Asm\bild_code.asm". 1. напиши нужную программу на ассемблере и отладь её (не используй при этом разные трюки и хаки - пиши понятный код) 2. пойми что в программе нужно параметризировать. 3. пиши генератор, в который загони неизменные куски текса и куски текста, которые нужно изменить. Генерацию исходника можно выполнить разными способами: 1. простой способ - просто конкатенация строк (дописывание файла) 2. генерация xml-файла с параметрами будущего исодника и применение к этому xml-файлу xsl шаблона, который уже выдаёт нужный ассемблерный код. Преимущество второго способа в том, что неизменная часть кода не хранится в самой программе (билдере) и не хранится во внрешних файлах, к которым должен обращаться билдер. XSLT не такой и сложный язык, обладеешь им за 2-3 дня и пригодится он тебе ещё не раз. Поэтому я советую выбирать второй вариант реализации генератора исходников (xml-вариант с xsl-преобразованием). Если что-то непонятно спрашивай поясню.
|
|
|
RE: Как написать билдер? - 2010-01-11 14:21:15.510000
|
|
|
_SaZ_
Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
|
Чел, ты свой компилятор/интерпретатор написать хочешь? Подумай, а оно тебе надо? Да и над терминологией поработай, ничего не понятно из того, что ты пишешь.
|
|
|
|
|