首页
学习
活动
专区
工具
TVP
发布

LeoXu的博客

专栏作者
81
文章
95047
阅读量
13
订阅数
在 Tomcat 中设置 Tapestry 框架的 html 热加载
如果开发中使用到了 Tapestry 这个框架,如果事先没有设置过的话,开发的时候 html 是不会热加载的,也就是说修改了 html 文件,不能刷新浏览器后立马看到修改完的效果,必须先重新启动应用服务器(比如 Tomcat)才行。
LeoXu
2018-09-21
1.8K0
[翻译]Ext JS 教程-类系统 原
<h3>类系统</h3> <p>ExtJS 史上第一次进行了重整新的类系统的大重构。新的架构以ExtJS 4.X所编写的每一个类作为后盾,因此在你编写代码以前理解它是非常重要的。</p> <p>这个手册主要面向任何想在ExtJS 4.x中新建或者扩展类的开发人员。它分成四个部分:</p> <p>Ø 部分一:“综观”解释了稳定的类系统的需求</p> <p>Ø 部分二:“命名规则”讨论给类、方法、属性、变量和文件命名的最佳实践</p> <p>Ø 部分三:“动手实践”提供详细的一步步编码的例子</p> <p>Ø 部分四:“错误处理&amp;调试”提供如何处理一场的小建议和小计谋</p> <h3>一 综观</h3> <p>ExtJS 4 靠超过300 多个类驱动。我们拥有一个超过20万来自世界各地,具备各种编程背景的开发人员组成的巨大社区。在一个框架的范围内,我们面对提供一个通用的编码结构的那些大挑战:</p> <p>Ø 简单易上手</p> <p>Ø 开发快速、调试简单、部署无忧</p> <p>Ø 结构良好,可扩展可维护</p> <p>JavaScript 是 classless 的面向原型的语言。天性使然,灵活是这个语言最强大的特性。使用不同的方式,不同的编码形式和技术,都可以让工作有效。然而就是那个特性,带来了不可预知的代价。没有一个统一的形式,JavaScript代码可能很难去理解、维护和重用。</p> <p>从另一方面来看,基于类的编程仍然是面向对象编程领域最受欢迎的模式。基于类的语言常常需要强类型,提供封装和标准的编码规范。一般而言要让开发人员遵守一大堆规则,而编码就会变得一直可预知、可扩展和规规矩矩。然而,他们不会有在JavaScript这样的语言中发现的同样的动态能力。</p> <p>每种方法都有其利弊,但是我们是否可以利用两者好处的同时避免他们的坏处呢?答案是肯定的,我们在ExtJS 4中实现了这个解决方案。</p> <h4>二 命名规范</h4> <p>至始至终为你编码的类、命名空间和文件名使用一致的命名规则有助于保持你代码的组织性、结构性和可读性。</p> <h4>1)类</h4> <p>类名应该只包含字母和数字字符。数字在大多数情况下是不鼓励使用的,除非他们属于一种技术手段。不要使用下划线,连字符或者其它任何非字母非数字的字符。举个例子:</p> <p>Ø MyCompany.useful_util.Debug_Toolbar 不鼓励这样命名</p> <p>Ø MyCompany.util.Base64 是可以被接受的</p> <p>类名应该被组成成为包,在包中合适恰当的使用对象属性点记号(.)分出命名空间。至少,应该只有唯一的顶层命名空间后面跟类名。举个例子:</p> <p>MyCompany.data.CoolProxy</p> <p>MyCompany.Application</p> <p>顶层命名空间和真实类的命名应该采用Camel形式(单词的首字母都大写),其它所有事物都应该是小写的。举个例子:</p> <p>MyCompany.form.action.AutoLoad</p> <p>不是Sencha发行的类永远不应该使用Ext作为顶层命名空间的名字。</p> <p>首字母缩略词也应该遵守上面列出的Camel形似命名规则。示例如下:</p> <p>Ext.data.JsonProxy 而不是Ext.data.JSONProxy</p> <p>MyCompany.util.HtmlParser 而不是 MyCompary.parser.HTMLParser</p> <p>MyCompany.server.Http 而不是MyCompany.server.HTTP</p> <h4>2)源代码</h4> <p>类地址的名字应该直接指向文件被存储的路径。基于此,每个文件中只能有一个类,示例如下:</p> <p>Ext.util.Observable 被存储在路径 /to/src/Ext/util/Observable.js 中</p> <p>Ext.form.action.Submit 被存储在路径 /to/src/Ext/form/action/Submit.js中</p> <p>MyCompany.chart.axis.Numeric 被存储在路径 /to/src/MyCompany/chart/axis/Numeric.js中</p> <p>Path/to/src 是你的应用程序类所在的路径。所有的类都应该在这个公共的根下面,并且为了获得最好的开发、维护和部署体验,适当的赋予命名空间。</p> <p>2)方法和变量</p> <p>跟类名类似,方法和变量的名字应该只包含数字和字母字符。数字被允许的,但在大多数情况下是不被鼓励的
LeoXu
2018-08-15
1.3K0
ActionScript的事件处理机制处理机制
ActionScript和JavaScript的事件处理机制处理机制几乎完全相同,所不同的主要是ActionScript的事件处理机制还提供了一个 事件对象。
LeoXu
2018-08-15
3080
Tapestry 教程(一) 原
这篇教程帮助人们来创建基于 Tapestry 的 web 应用程序。你是否有过使用 Tapestry 早期版本或者其它 web 框架的经历,这一点并不重要。事实上,从某些立场来看,对于一般的 web 开发了解的越少,你就能学得更好……因为那样你要忘掉的就不太多啦!
LeoXu
2018-08-15
1.1K0
NDK学习笔记(三)SWIG:自动生成JNI代码
SWIG 的全称是 Simplified Wrapper and Interface Generator,它是一个开发工具,在Android Native开发中可被用来自动生成需要的 JNI 封装器代码。
LeoXu
2018-08-15
2.2K0
NDK学习笔记(二)使用JNI同原生代码通信 原
任何使用JNI的操作都需要两次或者三次函数调用,因此要实现大量的原生方法并让它们同Java类保持同步很容易编程一件非常艰辛的工作。
LeoXu
2018-08-15
5430
NDK学习笔记(一) 原
以Windows环境为例,以下工具在使用NDK开发Android应用程序时都会要用到:
LeoXu
2018-08-15
3990
JavaScript异步调用操作可增加finally回调
JavaScript异步调用操作(如远程服务、本地任务)的API一般只提供的执行成功(success)和执行失败(fail)的回调,其实还可以提供一个无论执行成功还是失败最终都会执行的回调(finally),使得一些扫尾工作不用在成功和失败的回调代码中都重复写一遍,流程更加清晰规整。
LeoXu
2018-08-15
5100
启动 mini-web 报错 java.lang.ClassNotFoundException...
在学习Springside的实例mini-web的时候遇到了Tomcat报错:
LeoXu
2018-08-15
4100
关于软件框架功能升级的一点看法 原
我使用的公司研发团队提供的开发框架,HTML5技术,在调试一个原生功能的时候,发现一个原来一直没出过问题的地方居然不能正常工作了。
LeoXu
2018-08-15
5110
Tapestry 教程(四)探索项目结构 原
l Web应用程序文件放在 src/main/webapp(包括src/main/webapp/WEB-INF)
LeoXu
2018-08-15
6800
没有更多了
社区活动
RAG七天入门训练营
鹅厂大牛手把手带你上手实战
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档