服务器技术独立网络应用程序的元框架?

时间:2013-05-11 07:23:09

标签: javascript python web-applications

是否存在一个框架(元框架),我们可以在其中创建独立于服务器技术的Web应用程序,而无需编写大量UI?

在许多大型网络应用程序中,我们大量使用JavaScript和DOM(通过像angular / jqueryui / extjs / etc这样的框架)用于桌面,如UX。

我正在寻找一个Web应用程序UI框架(我们不需要构建UI),我可以使用服务器后端并公开与UI框架所需的API(json)相匹配的API。(/ p >

所以这里的服务器是后端数据存储区。客户端是浏览器。服务器实现可以在python / appengine-dbstore或php / mysql或C#/ mssql或Node / mongo中。

在下面添加了一个示例 - 如果上述内容没有多大意义。

实施例: UI框架有这个 - 1.导航能力 2.表格和表格定制 3.可能是用于创建新数据库对象的UI(其中UI只是一个抽象,但真正的实现在服务器上)

UI框架所需的API和适配器需要在下面 - 并且框架只需要我们将适配器写入服务器后端 1.有关导航器链接的数据 - 例如指向在线链接的“关于”链接 2.关于对象的元数据 - 以便UI框架可以自动创建表单 3.保存方法在适配器中覆盖或实现,但由UI框架调用。

------补充评论---- 我已经使用像ExtJS这样的UI框架很长时间了 - 这不是我想要的。

不幸的是,有很多框架 - 我们仍然需要进行大量编码(或者从bootstrap代码中进行大量的复制粘贴)

我正在寻找一个框架 - 如果过于简单 - 可以提及指示web-API如何为应用程序工作。

一个过于简单的例子:

要显示导航,UI框架需要一个类似" / api / navigator"的网址。将接受GET请求并以特定格式返回数据。 UI框架的工作是渲染导航器。

类似地,对于Contact数据库表/对象,UI框架将呈现接口,但是指示web-API,例如" POST" /" PUT" to" / api / object / Contact"将更新/插入到对象。 要在表单上呈现的字段通过GET获取到" / api / metadata / form / contact"


关键在于UI框架/元框架我们不需要编写UI代码。可能需要UI构建的唯一部分 - 当人们想要自定义/覆盖它时。 唯一需要的是根据框架的需要创建Web-API。

我问的原因是因为我正在与AngularJS一起编写类似的框架 - opensource与否 - 还不确定。

它背后的动机很简单 - 应用程序开发时间更快。 (虽然使用先前编写的代码进行引导已经更快 - 但它仍然意味着大量冗余代码)

2 个答案:

答案 0 :(得分:1)

有多种可能性,我目前使用的堆栈很多:

ExtJS / Sencha Touch作为UI和UX框架,用于构建应用程序和交互。我只使用模型和存储(数据库表和数据库条目的代理)。在这一层我只使用record.save()和store.sync()。

班查为桥梁。 Bancha为ExtJS / Sencha Touch提供配置,因此record.save()和store.sync()通过json发送到服务器(Ext.Direct是技术规范,但你不需要知道)。

CakePHP是我的后端,我处理验证,业务逻辑等。我在后端实现CRUD功能,Bancha转换并将数据发送到前端。


我不确定那个是你正在寻找的,或者你是否想要一层更高的抽象。让我知道:))

最好的问候,
罗兰

PS:有时候我使用Bancha.Scaffold进行原型设计,Sencha Architect仍然会为我的原型设计放慢速度。

答案 1 :(得分:0)

我知道你要去哪里。您的想法是基于配置的用户界面。你会发现什么叫快速原型脚手架

我有类似的想法,但我没有找到时间来完全实现这个概念。我想你想要像这里的最后一个例子(稍微复杂一些):
http://scaffold.banchaproject.org/examples.html

与Bancha一起,你只需要使用cakephp bake shell从数据库创建MVC。只需这个动作就可以使模型在前端和前端代码中可用,然后为每个模型创建一个选项卡,并在下面显示一个网格。根据可用的CRUD功能,网格可以编辑或不编辑。