Хорошие учебные пособия для понимания предметно-ориентированных языков (DSL) с нуля, чтобы начать тезис опроса
Тема моей диссертации о предметно-ориентированных языках в целом, я хочу сосредоточиться на разработке или реализации для внешних или внутренних DSL, но я даже не могу думать или начинать, потому что сталкиваюсь с проблемами с пониманием концепции DSL.
Я прочитал и собрал так много статей и опросов по этой проблеме, но все они я считаю продвинутыми. Мне нужен хороший учебник (для начинающих), чтобы понять с нуля всю концепцию и фазы DSL..
Я прочитал первую главу о DSL Мартина Фаулера, Фаулер начал с конечных автоматов и кодов жесткого программирования с первой страницы своей книги, и проблема в том, что я не очень хорош в программировании в целом, у меня нет опыта, моя диссертация будет опрос о DSL без программирования. До сих пор я не знаю, на чем сосредоточиться, потому что опрос должен быть конкретным в такой области, как разработка методов или сравнений при проектировании или реализации, но поскольку я не могу получить общую картину, я даже не могу решить. Любые предложения по этому вопросу также я буду очень признателен.
Пожалуйста, помогите мне и большое спасибо. Я всегда смотрю на вопросы и ответы на этом замечательном веб-сайте и верю, что я найду решение моей кошмарной проблемы здесь!
большое спасибо
натуральный
3 ответа
Эта книга - Библия для DSL, по моему мнению. Эта книга была бесплатной, когда она была в черновике. Вы также можете найти другие учебные ресурсы там.
Пройдите этот пост, чтобы найти успешные DSL. Этот пост может помочь вам определить различные варианты и домены, в которых они используются.
Если вы хотите понять это, вам будет очень много работы, поэтому, если вы не разбираетесь в программировании, изучите его или выберите более простой тезис.
Я написал свою диссертацию о разработке программного обеспечения на основе моделей и специфичных для предметной области языков, даже не имея базовых знаний о моделировании и т.д.
В качестве основного введения я бы порекомендовал эпизоды подкастов se-radio.net 5 и 6 (... и еще много о более сложных темах по MDSD/DSL).
Я прочитал тезис Джеймса Соседей, после прочтения его резюме. Он парень, который определил термины "анализ предметной области" и "проектирование предметной области" в контексте определения "предметно-ориентированных языков". И он показывает систему генерации программ Draco, которая генерирует удивительное разнообразие сложных прикладных кодов, основанных на этих идеях. (Тезис намного более читабелен, чем вы можете ожидать, но ожидайте увидеть некоторый реальный код!).
Вы также можете прочитать историю по этой теме, и еще раз, как те, кто не знает свою историю, обречены повторять ее.