Мастер создания кода на нескольких языках программирования - PullRequest
0 голосов
/ 04 мая 2009

как часть нашего приложения мне нужно построить компонент, который будет выводить код в php и asp которые имеют такую ​​же функциональность (и, возможно, последний JSP). Как я могу спроектировать этот вид компонента, чтобы быть как можно более универсальным?

Ответы [ 2 ]

1 голос
/ 04 мая 2009

Вы должны иметь возможность создавать дерево разбора из всех языков ввода.

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

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

1 голос
/ 04 мая 2009

Я бы лично выбрал шаблон стратегии . Вы могли бы иметь класс создателя мастер-кода и создать его экземпляр с помощью стратегии.

PHPCodeStrategy ASPCodeStrategy

Тогда у каждого будет метод execute, возможно. Но тогда вы можете добавить дальнейшие стратегии и расширить свое приложение.

Andrew

...