Javascript web开发的新方法:工具和组件建议请求
我正在寻找编写大量使用JavaScript的web应用程序的最佳可能性。因此,我想向您介绍我的想法,并征求您对此的意见和备选方案,请:) 1年前,我开始寻找除了PHP之外的web开发的可能性。我找到了JSP和Django。我决定和Django一起去。在与Django启动了一些项目之后,我得出结论,Django对我来说并不能提供简单的web开发。我不得不担心太多的特性,尤其是需要保持客户端和服务器代码的平衡 所以我再次开始搜索,找到了CouchDB,它为Ajax应用程序提供了一种很酷的后端。所以我的想法是使用CouchDB作为数据库服务器,它只提供数据验证和存储,并将所有其他内容保留给客户端。这显然不是一个新的想法,但我还没有找到任何好的例子。你知道吗 我希望有一个包含以下组件的体系结构:Javascript web开发的新方法:工具和组件建议请求,javascript,templates,html,mootools,couchdb,Javascript,Templates,Html,Mootools,Couchdb,我正在寻找编写大量使用JavaScript的web应用程序的最佳可能性。因此,我想向您介绍我的想法,并征求您对此的意见和备选方案,请:) 1年前,我开始寻找除了PHP之外的web开发的可能性。我找到了JSP和Django。我决定和Django一起去。在与Django启动了一些项目之后,我得出结论,Django对我来说并不能提供简单的web开发。我不得不担心太多的特性,尤其是需要保持客户端和服务器代码的平衡 所以我再次开始搜索,找到了CouchDB,它为Ajax应用程序提供了一种很酷的后端。所以我
- 数据存储与验证(CouchDB)
- web服务器:处理文件和WebSocket或轮询(Tornado或Eventlet)
- 客户端JavaScript处理所有其他内容(fav:自编MooTools)
- 客户端模板语言(你知道什么很酷吗?)
和
标记)发送到客户端。加载的JavaScript函数创建HTML代码并将其插入
标记中。从现在起,网站上的整个导航只请求通过Websocket提供并由客户端JavaScript处理的JSON
优点:
- 整个代码都是在客户端用JavaScript编写的
- 更新上的动画可以很容易地实现
- 页面的逻辑将是非常轻量级和透明的
- 服务器端可能没有扩展问题
- 由于出色的客户端缓存能力,应用程序性能非常快。例如,使用Webstorage
- 在低硬件机器上,模板处理可能非常慢李>
- 应用程序代码对所有人公开
- 您知道这种web开发的可用解决方案吗
- 你认为以这种方式编写web应用程序会是一件怪事吗
请再看 您知道这种web开发的可用解决方案吗 看一看。这是库切德背后的人写的。它基于jquery,但将其转换为使用mootools并不难。还有一个很好的JavaScript模板引擎,名为。模板引擎将在浏览器和couchdb的两侧工作 你认为用这种方式编写web应用程序会是件怪事吗 不,这是大多数谷歌应用程序(邮件、文档、电子表格)的工作方式,也有一些框架是这样工作的,比如sproutcore或cappuccino web服务器:处理文件和数据的服务器 WebSocket或轮询(龙卷风或 (小事件)
我认为couchdb也会处理这个问题尽管爱斯基摩血液回答了大多数问题,但在“我”描述的开发web应用程序的方法上仍然存在一个大问题:模板语言 如前所述,有很多人使用Javascript在客户端工作。但在我看来,到目前为止,我发现的所有模板语言都缺少一个重要功能:更新功能 我不是说在更新时重新提交整个模板,但我希望看到一种模板语言,它只更新我的变量
用例示例: 想象一下,我正在阅读一篇博客,其中包含25个JSON变量和一个用于呈现这些变量的大模板。突然,地球另一边的某个勇敢的人提出了一个冷静的评论。现在,向当前读者呈现“实时更新”有不同的可能性:
- 最坏情况:整个页面重置。26个Json变量和整个模板处理都必须重做
- 坏情况:当前页面的整个博客部分刷新。15个Json变量和很大一部分模板处理必须重做
- 更好的情况:只刷新当前页面的注释部分。5个Json变量和一个litle templateprocessing必须重做
- 最佳实践:新注释插入到注释列表的顶部。1个Json变量和一个非常小的templateprocessing必须重做
问题:
- javasscript和CSS的构建过程。能够组织起来会更好