# 013.现场.快用Scala(2月)
不等不靠,有囧有料。终日乾乾,或跃在渊。
「快用scala」第2期:写业务逻辑,写测试用例,
给SpringBatch执行。深入scala,读anorm源码。
@史荣久 / 2015-02-22 / CC-BY-SA-3.0
## 观看视频
* [优酷视频(被转720P)](http://v.youku.com/v_show/id_XODk4MDA2NTQw.html)
* [腾讯视频(被转720P)](http://v.qq.com/page/e/r/h/e0147kurmrh.html)
* [百度网盘(原始1080P)](http://pan.baidu.com/share/link?shareid=3935315343&uk=1380913564&fid=947382626103785)
## 内容摘要
* 第一坑,mysql的tinyint(1),anorm与JDBC有差异。
* 第二坑,nullable字段的get和set。
* 第三坑,IDEA的scala插件升级带来的烦恼。
* 技巧:jdbc执行多条sql。勿过度使用,以免sql注入。
* 有囧:sql汉字乱码:服务器指定或客户端协商编码。
* OSOP:面向stackoverflow的程序开发。
* scalatest的测试用例,更简洁高效。
* jdbc batch执行更快,anorm的batch执行。
* java泛型的PECS法则。java数组默认是协变的。
* 尾递归,可被优化为循环。加注解,当不被优化时报错。
* trait的def 可以被 def,val,lazy val, object 实现。
* implicit隐士(这么称呼更准),隐士函数,隐士参数。
* 隐士自动出现:类型不符,方法没有,方法类型不符。
* 隐士所在范围:当前作用域,源或目标类型的伴生对象。
* 隐士不会出现:能直接编译,非多层转换,没有二义性。
* case 很强大,源码中到处可以读到。
* scala类型很强大,逆变,协变,上下界常见到。
* for会被展开为map,flatMap,foreach和filter。
* 读源码,下手写代码,是升级最快的道路。
## 参考资源
* [模式匹配](http://hongjiang.info/scala-pattern-matching-1/)
* [for表达式的背后](http://hongjiang.info/scala-pitfalls-3/)
* [Java泛型](http://hongjiang.info/java-generics)
* [PECS法则](http://stackoverflow.com/questions/2723397)
* [Override val vs def](http://stackoverflow.com/questions/19642053)
## 欢迎围观
if (you.accept(MoilionCircle.SPIRIT)) {
if(you.haveADL()){
MoilionCircle we = you.search(MoilionCircle.SLOGAN);
we.welcome(you);
}
if(you.share(this)){
We.thank(you);
We.mayFind7Moilion();
}
}
## 后记
「第三坑,IDEA的scala插件」最终是升级IDEA解决了。
视频中的版本是:idea IC 14.0.2,scala 1.1.3
升级后的版本是:idea IC 14.0.3,scala 1.3.3
升级后,play!工程不显示工程目录的问题,也解决了。
升级需谨慎,当然也有好处:)决心再试升级,是因为:
一是,强迫症,有提示不点吧,真闹心。
二是,StackOverflow上说这是个bug,升级就好了。
-- 2015-03-06
----
题图:白孔雀,人工繁育的蓝孔雀的变品。全身洁白无瑕,像穿着雪白婚纱端庄美少女,但,雌孔雀们并不这么认为
原文:
http://www.moilioncircle.com/release/013.live.rush-scala-2m.html
分享到:
相关推荐
windows版本 scala-2.12.14.zip & Linux版本 scala-2.12.11.tgz 压缩包.rar
IntellJIDEA Scala插件:scala-intellij-bin-2016.3.9
scala-intellij-bin-2020.2.23.zip scala插件 FOR INTELLING IDEA 2020.2.23
Scala 是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。 Scala 运行在Java虚拟机上,并兼容现有的Java程序。 Scala 源代码被编译成Java字节码,所以它可以运行于...
Binding.scala 是一个用 Scala 语言编写的数据绑定框架,可以在 JVM 和 Scala.js 上运行。它可以用作 reactive web freamework。 它允许你使用原生 XHTML 语法去创建 reactive DOM 节点,这种 DOM 节点可以在数据源...
scala-intellij-bin-2019.1.9IDEA-scala插件,支持2019.1.X版IDEA。极难下载
本资源是scala-2.12.11.tgz 用于linux的安装包,spark2以上需要用scala2.12以上的版本,本软件安全无毒,放心使用。便于大家的使用,可以直接下载使用。
scala-intellij-bin-2021.3.6.zip
scala-intellij-bin-2020.3.14.zip
scala windows安装包,下载后直接一直点下一步即可安装成功
idea 开发 scala 、spark 的插件,兼容 idea2018.3.5 和 idea2018.3.6 ,亲测有效。
scala-intellij-bin-2020.2.3.zip
scala-intellij-bin-2017.2.6插件下载较慢,存个!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
斯卡拉高性能编程20165.epub.7z(scala high performance programming)
scala-intellij-bin-2018.3.2.zip插件,亲测可用!!!scala-intellij-bin-2018.3.2.zip插件,亲测可用!!!scala-intellij-bin-2018.3.2.zip插件,亲测可用!!!
scala 2.12.5 我就是想下载一个jar包而已阿 还需要c币
快学scala习题、答案、详细解答 快学scala第一章习题答案.doc 快学scala第二章习题答案.doc 快学scala第三章习题答案.doc ......
快学scala 完整清晰版 大数据spark 主要的编程语言 快学scala 完整清晰版 大数据spark 主要的编程语言
eclipse scala插件,第二部分
scala插件最大的一个jar包