Мне кажется, проблема в названии вашего каталога.
«День - 1»
Здесь есть два пробела. Я думаю, что это невозможно
Я использую быть в спящем режиме инструменты в myEclipse для генерации моделей предметной области и кода ДАО от моей модели данных. Это, кажется, работает вполне прилично (существуют некоторые проблемы, если Вы пишете пользовательские методы в своем ДАО, они, кажется, теряются на перезаписях), но обычно это, кажется, работает вполне прилично особенно в сочетании с Spring.
В компании мы записали наше собственное для генерации большинства наших entity/dalc/business классов и связанных хранимых процедур, поскольку потребовалось только немного времени, и у нас были некоторые особые требования. Хотя я уверен, что мы, возможно, достигли того же самого с помощью существующего генератора, это был забавный небольшой проект продолжить работать.
Codesmith рекомендовали многие люди, и это, действительно кажется, хорошее. Лично все, в чем я нуждаюсь от генератора кода, должно помочь исправить шаблоны.
Я записал утилиту, где Вы указываете таблицу, и она генерирует триггер Oracle, который записывает все изменения в той таблице. Делает вход действительно простым.
существует другой, я записал, что это генерирует класс Delphi, который моделируют любая таблица базы данных, которую Вы даете ему, но я полагаю, что это запах кода делает это, таким образом, я редко использую его.
Python .
я использовал MyGeneration, который использует C# для записи шаблонов кода. Однако я начал использовать Python, и я нашел, что могу написать код, который генерирует другой код быстрее на том языке, чем я был бы, если записано в C#. Впоследствии, я использовал Python для кодирования генерала C#, TSQL и VB.
Обычно код, который генерирует другой код, имеет тенденцию быть более твердым следовать по его самому характеру. Более чистый синтаксис Python помогает чрезвычайно путем создания этого более читаемым и более удобным в сопровождении, чем эквивалент в C#.
Я сделал несколько одни-off's из генерации кода с помощью Castor для создания исходного кода Java на основе XSD. Последнее использование должно было создать классы Java для Открыть реализации Travel Association. Схема ОТЫ является довольно волосатой и была бы переносом, чтобы сделать вручную. Castor сделал довольно хорошее задание, учитывая сложность схемы.
LLBLGen Pro является превосходным инструментом, который позволяет Вам писать решение агностика базы данных. Это действительно быстро для взятия основных характеристик. Расширенные функции не намного более сложны. Я настоятельно рекомендую, чтобы Вы проверили его.
Мы сделанный на заказ наша генерация кода с помощью linq и литералы XML (VB). Мы не нашли способ повредить решения в шаблоны все же; однако, те две технологии делают эту задачу таким образом тривиальной, я не думаю, что мы будем.
Я работал в течение четырех лет основным разработчиком в веб-агентстве, поскольку я записал из земли свои первые два или три веб-сайта, я скоро понял, что это было очень скучной задачей сделать все это времена. Таким образом, я начал писать свой собственный механизм генератора веб-сайта.
Моя начальная точка была этим сайтом http://www.codegeneration.net/ . Я взял один из их примеров для простого поколения грязи и расширился на уровень, что я генерировал все сайты с ним.
я использовал xml для определения различных частей веб-сайта (страницы, datalists, соединения, таблицы, управление формой). Сгенерированные веб-сайты были полностью отсоединены от генератора, таким образом, сгенерированный веб-сайт мог также быть изменен вручную.
Вот является их статья http://www.codegeneration.net/tiki-read_article.php?articleId=19 .
Я использовал LLBLGen и nHibernate успешно для генерации уровней Entity и DAL.
Мы используем Codesmith и имели большой успех с ним. Я теперь постоянно пытаюсь найти, где мы можем реализовать шаблоны для ускорения приземленных процессов.
Я сделал работу с CSLA и использовал codesmith для генерации моего кода с помощью шаблонов CSLA.
codesmithtools.com
Если Ваша база данных является Вашей моделью, , SubSonic имеет превосходный генератор кода, что с v2.1, больше не требует ActiveRecord (можно использовать Шаблон Репозитория вместо этого). Это менее гибко, чем другие, но существуют настройки, которые могут быть сделаны в шаблонах запаса.
Я вижу генерацию кода, вредную также, но только если Вы используете сторонние инструменты как codesmith и mygeneration. У меня есть 2 хранимых процедуры, которые генерируют мои объекты области и доменные интерфейсы
Пример
GenerateDomainInterface 'Имя таблицы'
Затем, я просто копирую и вставляю его в Visual Studio. Работы, довольно потрясающие для тех задач, я очень не хочу сделать.
Я считал бы генерацию кода вредной, поскольку она чрезмерно увеличивает размер кодовой базы, не добавляя новую логику или понимание. Идеально нужно повысить уровень абстракции, использовать файлы данных, шаблоны или макросы и т.д., чтобы не генерировать большие объемы шаблонного кода. Это помогает Вам добиться цели быстро, но может повредить пригодность для обслуживания в конечном счете.
, Если бы Ваш выбранный язык программирования становится намного менее болезненным путем генерации его с некоторого шаблонного языка, который кажется, указывают, что Вы сэкономили бы еще больше времени путем выполнения высокоуровневой работы в другом, возможно, более динамический язык. YMMV.
Я использовал CodeSmith и MyGeneration, не было чрезмерно увлечено также, чувствовавший несколько краткий для использования, уча шаблонные языки и т.д.
, SubSonic - то, что мы иногда используем здесь для генерации Уровня доступа к данным. Используемый в проектах правильного размера, это - фантастический экономящий время инструмент. clicky
Я люблю использовать SubSonic. Открытый исходный код является способом пойти с генерацией кода, я думаю, потому что очень легко изменить шаблоны и ядро, поскольку они всегда имеют тенденцию иметь ошибки или одна или две вещи, Вы хотите сделать, который не встроен.
Я использовал генерацию кода для функций swizzle в векторной математической библиотеке. Я использовал пользовательский сценарий Perl для него. Ни один из генераторов ВЫШИВАЛЬНОГО ШЕЛКА, я смотрел на казавшийся, подходящий к созданию swizzle функции
я обычно, не использует шаблоны C++, а не генерацию кода.
Я, прежде всего, использовал LLBLGen Pro, чтобы сгенерировать код. Это предлагает множество шаблонов для использования для поколения, и можно предоставить собственные скороговорки, точно так же, как CodeSmith. Поддержка клиентов была превосходна.
По существу, я генерирую свои бизнес-объекты и DAL с помощью LLBLGen и совершенствую их. Шаблоны кода имеют разделы, где можно добавить собственную логику, которая не будет уничтожена во время регенерации. Это определенно стоит смотреть.
Два framworks я часто использую.
Что-то стоящее проверить Ragel. Это используется, чтобы сгенерировать код для конечных автоматов.
Вы просто добавляете некоторую простую разметку к своему исходному коду, затем работаете, генератор на Ragel генерирует код для C, C++, Objective C, D, Java и Ruby, и легко смешать его с Вашим регулярным источником.
Ragel даже позволяют Вам выполнять код на изменениях состояния и таком. Это помогает создать синтаксические анализаторы протокола и формат файла.
Некоторые известные проекты, что пользователь Ragel, Полукровка , большой рубиновый веб-сервер. И Hpricot, основанный на рубине синтаксический анализатор HTML, вид вдохновленных jQuery.
Другая замечательная особенность Ragel - то, как она может генерировать graphviz - базирующиеся диаграммы, которые визуализируют Ваши конечные автоматы. Ниже пример, взятый от Zed Shaw статья о ragel диаграммах состояний.
(источник: zedshaw.com )
XMLBeans является основанной на Java xml-привязкой. Это имеет большой рабочий процесс, и я часто использую его.
XMLBeans processen схема XML, которая описывает Вашу модель в ряд классов Java, который представляет ту модель. Можно программно создать модели, затем сериализируют их к и от xml.
MyGeneration полностью!
MyGeneration является чрезвычайно гибким основанным на шаблоне генератором кода, записанным в Microsoft.NET. MyGeneration силен в генерировании кода для архитектуры ORM. Метаданные от Вашей базы данных сделаны доступными для шаблонов через MyMeta API.
Я главным образом кодирую в C# и когда мне нужна генерация кода, я делаю это в XLST, когда источник мог быть просто преобразован в XML или рубиновый сценарий, когда это более сложно.
, Если части генерации кода нужны частые модификации больше, чем несколькими разработчиками работы CodeSmith вполне прилично (И легче учиться, чем XSLT или рубин новыми разработчиками).
SubSonic является большим!! Возможность запроса легко схватить, и реализация хранимой процедуры является действительно потрясающей.Я могу продолжать и дальше. Это делает Вас продуктивными немедленно.
T4 является уничтожителем CodeSmith для Microsoft!!!!
Идут, проверяют его. Microsoft не хочет уничтожать их партнеров, таким образом, они не рекламируют ее, но это - вещь, с которой будут считаться и ЕГО СВОБОДНОЕ, и прибывает установленное в Visual Studio 2008.
Некоторое время я использовал самодельный язык сценариев / шаблонов для генерации кода. (Я использовал этот язык в основном только для того, чтобы найти применение в моем маленьком домашнем проекте)
Недавно я создал несколько сценариев SQL * PLUS для создания кода доступа к базе данных (без Hibernate для нас ...)
Гибкая платформа Outsystems может использоваться для создания хорошо документированных приложений C # и Java с открытым исходным кодом. Поскольку он также имеет несколько функций, связанных с развертыванием, управлением и изменением, большинство людей в конечном итоге используют его не только для генерации кода, но фактически для управления полным жизненным циклом веб-приложений.