любая реальная библиотека MVC на PHP (для приложений с графическим интерфейсом) - PullRequest
8 голосов
/ 02 января 2011

Мне интересно, есть ли какие-либо структуры абстракции для одной из библиотек PHP.У нас есть PHP-GTK , PHP / Tk интерфейс и, по-видимому, также PHP-QT .(Не пробовал ни одного.)

Я знаю, что писать на сыром интерфейсе Gtk + в Python просто терпимо, и поэтому для PHP это выглядит не очень заманчиво.Я предполагаю, что это то же самое для Qt, и Tk тоже довольно низкоуровневый.Поэтому я ищу что-то, что обеспечивает более хорошую структуру объекта поверх любого из трех.Прежде всего TreeViews - это рутинная работа, а обратные вызовы php-gtk странны в PHP, поэтому я бы хотел упростить это.Если это облегчит добавление GUI / View поверх моей бизнес-логики без большого количества управляющего кода, это уже может помочь.

И так как приложения с графическим интерфейсом - это область, где MVC или MVP действительно имеют смысл, я бы хотелзнать, существует ли какая-либо библиотека для этого.

Все еще открыта для ответов.
(Вероятно, будет второй раунд вознаграждений. Это необычная тема, поэтому необходимо больше исследований.)

Ответы [ 4 ]

2 голосов
/ 06 января 2011

[Не ответ.Просто хотел убрать это из вопроса, поскольку это только связано, а не решение.]

Есть препроцессор интерфейса PHP .Однако это очень просто и низкоуровнево.Он обеспечивает интерфейс вывода для Gtk, а также ncurses , а также сериализацию в формате PDF или XHTML.Что интересно, поскольку он близок к реальным конструкциям MVC, позволяя обменивать View на разные бэкэнды, даже не адаптируя контроллер.Но тогда он предоставляет только основные виджеты, а не много упрощений.Таким образом, я считаю, что это связано с моим первоначальным вопросом.Итак, примечание.

1 голос
/ 03 января 2011

Вы пробовали WinBinder? Не совсем связанный с MVC, но очень хорошее расширение для создания программ на основе графического интерфейса в PHP.

0 голосов
/ 25 января 2011

http://phpketchup.isgreat.org/ PHPKetchup - новый проект на стадии планирования. На данный момент нет доступного кода (также, похоже, предназначенный для коммерческого использования, а не с открытым исходным кодом). Он был объявлен как фреймворк поверх PHP-GTK. Существует концептуальный документ , в котором четко указана цель разработки инфраструктуры MVC.

Однако кажется, что они черпают вдохновение из CodeIgniter и в основном из общей структуры фреймворка PHP Похоже, основное внимание уделяется не интеграции PHP-GTK с логикой приложения, а главным образом обеспечению интерфейса базы данных в качестве модели и тонкого интерфейса Gtk для View.

Архитектура MVC:
Мы разработаем и внедрим архитектуру Model-View-Controller (MVC) для платформы PHP-GTK. SQLite будет использоваться для Model. Функции PHP-GTK и файлы Glade будут интегрированы в View после удаления HTML, CSS и Javascript. Контроллер будет соответствующим образом изменен для работы с вновь созданным представлением.

Так что это может быть просто MVC по имени и организации, но на одной из диаграмм упоминается «добавление функций PHP-GTK», и есть дополнительные подсказки о объектно-структурированных помощниках Gtk.

0 голосов
/ 10 января 2011

Я действительно сомневаюсь, что вы найдете что-то подобное, готовое к использованию OotB.Программирование PHP GUI полностью провалилось несколько лет назад.

Что вы можете сделать, так это использовать какой-то мост для взаимодействия приличного MVC с другого языка.Какой PHP у вас есть следующие варианты:

...