让人们高兴,现在是3月,是2013年法国Devoxx的时间! 这是我在活动期间记下的一些笔记。
David Delabasse和Laurent Ruaud的Java EE 7动手实验
Thierry Chatel撰写的 Angular JS
演讲者来自Java开发人员背景。 他过去曾经使用过Swing,从那以后,他一直在寻找绑定功能:一种自动在模型和视图之间交换数据的方法。 两年前,他找到了AngularJS 。
AngularJS是一个JavaScript框架,由+40 kloc组成,最小权重77 kb。 第一个稳定版本于一年前发布,代号为temporal-domination
。 Google用AngularJS开发的应用程序是发布商的Doubleclick 。 其他示例包括OVH的未来管理控制台和PS3上的Youtube应用程序。 它的座右铭是:
HTML增强了Web应用程序
HTML增强意味着什么? 是HTML6吗? 问题是HTML从未被设计用来创建应用程序:仅用于显示文档和它们之间的链接。 在大多数情况下,实现模型与模板之间的单向绑定以创建视图。 Misko Hevery(AngularJS创始人)的观点不是尝试绕过此限制,而是最好将此功能添加到HTML。
因此,AngularJS的理念是从模板编译视图,然后在视图与模型之间进行双向绑定。 AngularJS的用法很简单:
Your name:<inputtype="text"ng-model="me">
Hello
AngularJS是一个JavaScript框架,使开发人员无需编写太多JavaScript行。
该框架使用简单的概念:
- 监视表达式(属性,函数等)
- 对事件进行脏检查(键盘,HTTP请求等)
每次脏检查都会对手表进行重新评估。 这意味着表达式必须简单( 即计算结果而不是计算本身)。 该框架旨在处理多达2000只简单手表。 请注意,标准(以及用户代理)也在不断发展,并且ECMAScript的下一版本将提供Object.observer()
来处理x50的实际手表数量。
AngularJS应用程序非常简单:
<divng-app="myapp"></div>
这样一来,我们就可以在同一页面上拥有尽可能多的应用程序。 AngularJS能够创建单页应用程序,并自动处理浏览器导航(书签,下一个,上一个)。 没有像全球国家这样的东西。
AngularJS还提供了诸如模块,服务和依赖注入之类的核心概念。 无需从特定的类或接口继承:任何对象均可用于任何角色。 因此,代码很容易进行单元测试 ,因此,首选的工具是Karma (例如Testacular)。 对于端到端的场景测试,还可以使用基于框架的相同专用工具,并在定义的浏览器中进行测试。 总之,AngularJS不仅是具有正确抽象级别的框架,而且是完整的平台,因此开发的代码纯粹是业务。
没有AngularJS UI组件,但是许多组件是由第三方提供的,例如AngularUI , AngularStrap等。
哇,这是我参加的有关AngularJS的第二次演讲 ,看起来非常好! 我唯一的抱怨是,它遵循纯客户端框架的趋势,并且不是为移动设备设计的。
Gradle, SébastienCogneau改变了30分钟
本质上,Gradle是可自动构建的Groovy DSL。 它可以通过Java&Groovy插件进行扩展。 Gradle基于现有原则:它使您可以重用Ant任务,可以重用Maven约定,并且与Ivy&Maven存储库兼容。
典型的gradle构建文件如下所示:
applyplugin:'jetty'
version='1.0.0'
repositories{
mavenCentral()
}
configuration{
codeCoverage
}
sonarRunner{
sonarProperties{
...
}
}
dependencies{
compile:'org.hibernate:hibernate-core:3.3.1.GA'
codeCoverage:'org.jacoco....'
}
test{
jvmArgs'...'
}
taskwrapper(type:Wrapper){
gradleVersion='1.5-rc3'
}
taskhello(type:Exec){
description'Devoxx 2013 task'
group'devoxx'
dependsOnwrapper
executable'echo'
args'Do you have question'
}
添加插件会将任务添加到可用版本。 例如,通过添加jetty
,我们得到jettyStart
。 此外,插件具有依赖关系,因此您还具有依赖插件的任务。
Gradle可以与Jenkins集成,因为有可用的Gradle插件。 有两种可用的选项可在Jenkins上运行Gradle构建:
- 您可以安装Gradle并在Jenkins上配置其安装。 至此,您可以将构建配置为使用此特定安装
- 或者您生成Gradle包装器,而仅将构建配置为使用此包装器。 在这种情况下,根本不需要安装Gradle
Gradle功能还可以添加自定义任务,例如上述的hello
任务。
演讲者告诉我们他正在使用Gradle,因为它是如此灵活。 但这恰恰是我非常不愿意采用它的原因:我已经与Ant合作多年,然后才来到Maven。 现在,我被迫再次使用Ant,与Maven POM相比,理解构建文件花了很多时间。
菲利普·安托万(Pierre)
本演示演示了HTML5带来的新功能。
吸收任何东西太快了,但是演示确实很棒。 特别是其中之一使用了three.js ,这是您应该真正了解的3D渲染库。 当我认为15年前实现射线追踪时。
Vaadin&GWT 2013巴黎聚会
要点( 因为此时,我有点累了 ):
- 我的演讲就FIELDGROUP和转换器可在SlideShare上
- 每个版本支持Vaadin 5年。 Vaadin 6支持将于2014年结束
- 可能会看到无头Vaadin TestBench的发布 。 适用于自动化测试!
- 这个星期五,Vaadin 7.1将随着服务器推送而退出
- 请记住,Vaadin Ltd还提供商业支持 (并且附带JRebel许可证 !)