Просто добавив несколько ссылок на некоторые прототипы проектов с открытым исходным кодом, с которыми я столкнулся в последнее время, которые известны как тем, что они расширяют границы, так и тем, что взгляд на код дает повод для оптимизма.
PHPRestSQL
http://phprestsql.sourceforge.net/ — опубликуйте свою базу данных MySQL напрямую через PHP в виде XML с приятными дружественными URL-адресами (хотя мы можем исключить «?»).
Первоначальные проблемы, которые приходят мне на ум, не глядя слишком глубоко
— постраничный набор результатов? Без них, что происходит, когда у вас много строк …
Именование тегов. Мы хотим, чтобы теги назывались «таблица» и «строка». Кит недавно поднял вопрос, который может быть связан с этим — заменить «таблица» на множественное (например, «пользователи») и «строка» на единственное (например, «пользователь»)?
Qwad Framework
http://www.qwad.com.au/code/doku.php?id=qwad_framework — «Целью QWAD Framework является упрощение разработки многофункциональных интернет-приложений. Можно создавать кросс-браузерные веб-приложения, обеспечивающие функциональность Rich GUI, которую пользователи ожидают от настольного приложения ». Я знаю, что есть несколько оконных библиотек Javascript, но код здесь делает меня оптимистом, плюс я предвзят, что некоторые из Примеры используют JPSpan .
xulRecordSet
http://xulrecordset.sourceforge.net/ — «xulRecordset — это проект для создания библиотеки виджетов XUL с поведением набора записей». Что здорово в этом, так это то, как он использует XBL для расширения набора тегов XUL и упрощения работы с набором записей (плюс он также использует JPSpan, так что еще больше предвзятости). Дистанционный API, вероятно, слишком мелкозернистый сейчас для достойной производительности, — добавил я здесь, но думаю, что общее представление — это большой шаг в правильном направлении.
Отстранение и раздражение в стороне (извините): если вы хотите выйти за рамки прототипа, не забывайте свои модульные тесты PHP (или JSUnit — попытка JS- макетов здесь ).
Обновить
Прежде чем я забуду, посмотрите http://map.search.ch/ — не прототип, а скорее полнофункциональный сервис, работающий на Javascript и XMLHttpRequest (проверьте перетаскивание / масштабирование) — без использования Flash / Applets и т. Д. И там мы были в восторге от Google Suggest …
Еще одна вещь о map.search.ch — «back end» это mapdata.search.ch — вот критическая строка из LiveHttpHeaders в ответ на запрос к http://mapdata.search.ch/ ;
X-powered-by: PHP/4.3.9
Говорит сам за себя.