[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: json2php
iit
Это мой первый пост на этом форуме. Пригласил один знакомый.

Обычно я создаю кучу вещей для кровавого энтерпрайза, но сейчас планирую иногда делать фановые open-source решения.

В данный момент я работаю над одной веселой библиотекой. Причина по которой я её создаю - генерация кода.

Я использую Laravel но знаком с Symfony и Yii 1.* и ни в одном из них я не видел нормального генератора кода.

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

Основная идея - создать файл blablabla.json который описывает какие проект - какие классы используются, от чего они наследованы и что расширяют, какие у них есть терейты, свойства, константы и методы. Что методы принимают и возвращают.

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

Что думаете об этом бреде моего воспаленного сознания?
стоит ли его реализовывать дальше и тем более выпускать в сеть?



_____________
Dum spiro, spero!
Guest
Покажите какой-нибудь сложный blablabla.json, где могоуровневые неймспейсы, наследование, трейты, константы, свойства и методы и все вот это.
Может нет смысла заморачиваться и проще сразу руками писать php? Активно использую кодогенерацию того же PhpStorm.
TMake
Цитата (iit @ 19.08.2016 - 15:22)
и ни в одном из них я не видел нормального генератора кода.

что в твоем понятие нормальный? напиши тезисно что иммено в них не устроило.
Цитата (iit @ 19.08.2016 - 15:22)
Далее файл скармливается консольной утилите, которая генерирует проект со всей его структурой. Остается только набить пустые метода кодом и радоваться жизни.

разве по др. происходит?
iit
Цитата
Активно использую кодогенерацию того же PhpStorm.

В шторме отличная кодогенерация, особено live templates. Сам её тоже часто использую. Но вот если нужно сгенерировать 15 классов в разных неймспейсах - уже задалбывает.

Цитата
напиши тезисно что иммено в них не устроило.

Все они построены по принципу шаблонов. т.е по сути если мне нужно сгенерировать сложную сущность с помощью генератора то мне нужно писать шаблон для каждой такой сущности. В итоге проще самому написать нужный код.



_____________
Dum spiro, spero!
redreem
Цитата
проще самому написать нужный код

это, резюмирующая весь, возможно, дальнейший холивар фраза.
TMake
Цитата (iit @ 19.08.2016 - 19:49)
Все они построены по принципу шаблонов. т.е по сути если мне нужно сгенерировать сложную сущность с помощью генератора то мне нужно писать шаблон для каждой такой сущности. В итоге проще самому написать нужный код.

Все сложные построения индивидуальны. Попробуй расписать как ты себе это представляешь и какие проблемы будут закрыты. Я думаю что инструмент получится грамозким для восприятия, а следовательно интерес к внедрению будет нулевым.
Гость_Invis1ble
Цитата (iit @ 19.08.2016 - 15:22)
Что думаете об этом бреде моего воспаленного сознания?

Думаю, в лучшем случае получится новый мета-язык, который будет ничем не проще самого php. Иначе он будет недостаточно гибким.
McLotos
хотите создать ковейер для создания велоипедов?
Знаю я одного чувака, который такое сделал, причем как раз для laravel, но возникает тогда логичный вопрос "зачем?"

_____________
программирование - инструмент для решения конкретных задач, любая попытка спроектировать что-то универсальное приведет к провалу.©paul85
В любом случае тебе прийдётся пройти путь изобретения велосипеда, который прошли другие, только причиной твоего изобретения будет непонимание принципов работы велосипеда изобретённого другими людьми.©SlavaFr
jQuery это попытка использовать АН-225 для перевозки зубочистки
iit
Цитата
Знаю я одного чувака

Серый это я и есть, балда!


_____________
Dum spiro, spero!
jetistyum
Идея вполне имеет место быть.
А зачем - за тем же, для чего и существует кодгенерация.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.