- 浏览: 84025 次
文章分类
- 全部博客 (136)
- 我的技术资料收集 (98)
- 具体技术 (1)
- 的技术资料收集 (4)
- All Articles (1)
- 机器学习 Machine Learning (1)
- 网络编程 (1)
- java (2)
- ava (1)
- 零散技术 (1)
- C# (3)
- 技术资料收集 (1)
- CQRS (1)
- 数据库技术(MS SQL) (1)
- .Net微观世界 (1)
- Oracle SQL学习之路 (1)
- C/C++ (1)
- JS/JQ (1)
- Js封装的插件/实例/方法 (2)
- 敏捷个人 (2)
- Javascript (1)
- 程序设计---设计模式 (1)
- Bug (1)
- 未知分类 (1)
- 程序设计 (1)
- Sharepoint (1)
- Computer Graphic (1)
- IT产品 (1)
- [06]JS/jQuery (1)
- [07]Web开发 (1)
- .NET Solution (1)
- Android (3)
- 机器学习 (1)
- 系统框架设计 (1)
- Others (1)
- 算法 (1)
- 基于Oracle Logminer数据同步 (1)
- 网页设计 (1)
- 原创翻译 (1)
- EXTJS (1)
- Jqgrid (1)
- 云计算 (1)
最新评论
原帖地址:http://www.cnblogs.com/xzer/archive/2013/05/25/3098224.html
继续介绍Asta4D的主要特点和功能。
2. 分离的模板和渲染逻辑
asta4d的模板文件中不允许任何动态代码,一个asta4d的模板永远是一个标准的html文件,任何前端工程师都轻松的维护asta4d的模板文件。这是asta4d最初设计思想的体现--对设计师友好。源于asta4d的这个特性,使得我们减少了至少90%前端重构的工作量。
我们来看看示例代码,下面是一个模板文件片段:
<section>
<article>
<div afd:render="SimpleSnippet">dummy text</div>
<afd:snippet render="SimpleSnippet:setProfile">
<p id="name">name:<span>dummy name</span></p>
<p id="age">age:<span>0</span></p>
</afd:snippet>
</article>
</section>
首先,注意div标签中引入的afd:render属性,该属性声明了负责具体渲染逻辑的java类,我们通常称之为snippet class。除了afd:render属性,asta4d同时允许通过afd:snippet标签来声明snippet class。通过snippet声明,渲染逻辑被隔离到独立的java实现中,而对开发人员来说,他们不需要学习任何新的模板语言,他们可以用他们已经熟练掌握的具有强大能力的java语言来完成所有的渲染逻辑,没有学习成本,没有魔术代码,只有简洁明快的java代码。
public class SimpleSnippet {
public Renderer render(String name) {
if (StringUtils.isEmpty(name)) {
name = "Asta4D";
}
Element element = ElementUtil.parseAsSingle("<span>Hello " + name + "!</span>");
return Renderer.create("*", element);
}
public Renderer setProfile() {
Renderer render = new GoThroughRenderer();
render.add("p#name span", "asta4d");
render.add("p#age span", 20);
return render;
}
}
注意snippet实现中renderer的调用,renderer通过css selector来声明渲染对象,并将渲染内容同时作为参数传递给renderer。上面的模板文件和snippet将会得到下面的渲染结果:
<section>
<article>
<span>Hello Asta4D</span>
<p id="name">name:<span>asta4d/span></p>
<p id="age">age:<span>20</span></p>
</article>
</section>
最后说明一下,本节中引入的afd:snippet标签,和上一节介绍的afd:block以及afd:extenion一起,这三个标签是asta4d在一个标准html实现的模板中引入的额外标记,这样的额外标记能够被大多数html编辑器正常处理,基本上,这是asta4d给前端设计师带来的唯一的微不足道的称不上麻烦的麻烦。
发表评论
-
C#WebBrowser控件使用教程与技巧收集--苏飞收集 - sufeinet
2013-06-28 12:07 1070原帖地址:http://www.cnblogs.com/suf ... -
我要喷一个自认为很垃圾的网站架构 - 老赵【苏州】
2013-06-28 12:01 1131原帖地址:http://www.cnblogs.com/lao ... -
[翻译] Oracle Database 12c 新特性Multitenant - Cheney Shue
2013-06-28 11:43 622原帖地址:http://www.cnblogs.com/ese ... -
memcahd 命令操作详解 - 阿正-WEB
2013-06-28 11:37 473原帖地址:http://www.cnblogs.com/azh ... -
面向过程的代码符合大众的思维方式吗? - 史蒂芬.王
2013-06-27 10:28 597原帖地址:http://www.cnblogs.com/ste ... -
面向过程的代码符合大众的思维方式吗? - 史蒂芬.王
2013-06-27 10:28 559原帖地址:http://www.cnblogs.com/ste ... -
RPG游戏之组队测试 - zthua
2013-06-27 10:22 559原帖地址:http://www.cnblogs.com/zth ... -
IT人们给个建议 - SOUTHER
2013-06-26 14:06 525原帖地址:http://www.cnblogs.com/sou ... -
Java向前引用容易出错的地方 - 银河使者
2013-06-26 14:00 495原帖地址:http://www.cnblogs.com/nok ... -
使用Func<T1, T2, TResult> 委托返回匿名对象 - 灰身
2013-06-26 13:54 800原帖地址:http://www.cnblo ... -
【web前端面试题整理03】来看一点CSS相关的吧 - 叶小钗
2013-06-25 10:45 786原帖地址:http://www.cnblogs.com/yex ... -
Windows 8 动手实验系列教程 实验6:设置和首选项 - zigzagPath
2013-06-25 10:27 621原帖地址:http://www.cnblogs.com/zig ... -
闲聊可穿戴设备 - shawn.xie
2013-06-25 10:21 567原帖地址:http://www.cnblo ... -
CentOS下Mysql安装教程 - 小学徒V
2013-06-23 15:24 610原帖地址:http://www.cnblogs.com/xia ... -
vmware安装ubuntu12.04嵌套安装xen server(实现嵌套虚拟化) - skyme
2013-06-23 15:18 838原帖地址:http://www.cnblogs.com/sky ... -
之前专门为IE6、7开发的网站如何迁移到IE10及可能遇到的问题和相应解决方案汇总 - 海之澜
2013-06-23 15:12 954原帖地址:http://www.cnblogs.com/wuz ... -
Android学习笔记--解析XML之SAX - 承香墨影
2013-06-23 15:01 411原帖地址:http://www.cnblo ... -
SQL Server 性能优化之——T-SQL TVF和标量函数
2013-06-19 09:32 674原帖地址:http://www.cnblogs.com/Boy ... -
Nginx学习笔记(二) Nginx--connection&request
2013-06-19 09:26 670原帖地址:http://www.cnblogs.com/cod ... -
从郭美美霸气侧漏看项目管理之项目经理防身术
2013-06-19 09:20 503原帖地址:http://www.cnblogs.com/had ...
相关推荐
asta4d, 查看第一个web应用程序框架 新闻2016-11-17,1.2 -M2发布。2016-04-13,1.2 -M1,具备一些基本增强功能。2016-01-22,asta4d-ide 发布,以加速我们的开发与 asta4d 。2015-12-25,1.1年正式发
我们认为,Asta4D提供了对上述问题的完美答案,Asta4D通过分离的模板和代码向前端工程师提供了最为友好的工作环境,而另一方面,后端开发人员再也不必受到模板语言的折磨,Java将成为他们手中最趁手的武器,而且,...
总之,asta4d-spring-0.4.2.zip和foss-configs.zip揭示了开源项目如何在Spring框架下实现高效开发,并通过合理的父POM配置实现代码质量和构建流程的统一。这两个项目是开源精神的体现,也是技术社区共享知识和智慧的...
《asta4d-archetype-0.14.4.30.zip——开源键值存储原型探索》 在IT行业中,开源项目一直是技术创新的重要驱动力,它们为开发者提供了丰富的资源和学习平台。"asta4d-archetype-0.14.4.30.zip" 就是一个这样的开源...
asta4d-core-0.8.6-sources.jar
asta4d-core-0.4.2-sources.jar
asta4d-web-0.8.6-sources.jar
asta4d-web-0.4.2-sources.jar
asta4d-archetype-0.8.6-sources.jar
asta4d-sample-0.4.2-sources.jar
asta4d-spring-0.8.6-sources.jar
asta4d-spring-0.4.2-sources.jar
asta4d-core-0.4.2.jar
asta4d-web-0.8.6.jar
asta4d-archetype-0.8.6.jar
asta4d-spring-0.8.6.jar
asta4d-spring-0.4.2.jar
asta4d-core-0.7.24-sources.jar
asta4d-core-0.7.22-sources.jar
asta4d-core-0.5.16-sources.jar