原文:Language Complexity?观点总结:作者认为一门语言是否是复杂的,代码输入量的多少倒在其次,主要是使用起来是否复杂;而决定是否容易使用的主要因素是这门语言是否有一个清新易懂的模型,这个模型了语言中的哪些结构是否存在,什么时候使用等等。它举了scala中的trait的例子,认为它的...
分类:
编程语言 时间:
2015-08-04 13:10:35
阅读次数:
179
语法上讲像接口,使用extends或withtrait Logger{def log(msg:String){}}class Student extends Person with Logger{ def hello(name:String)log(name)}混入语法(mix-in)new Stu...
分类:
其他好文 时间:
2015-08-01 18:49:38
阅读次数:
234
/** * @author Guohui Li *//** * 1、trait中未被实现的方法默认就是抽象的 * 2、在重写trait的抽象方法时不需要给出override关键字 * 3、如果你需要的trait不止一个,可以用with关键字来添加额外的trait * 4、Logger with Cl...
分类:
其他好文 时间:
2015-07-29 09:02:43
阅读次数:
141
本节主要内容
Scala I/O操作简介
Scala 写文件
Scala 读文件
Scala 网络I/O
正则表达式简介
Scala正则表达式实战
1. Scala I/O操作简介I/O操作是一门编程语言中的重要内容,在Scala中,它更多的是调用java中的I/O类或者通过对java中的I/O类进行相应的封装来实现I/O操作。在上一节内容中我们已经用到了I/O操作:trait FileLogger...
分类:
其他好文 时间:
2015-07-26 17:26:36
阅读次数:
178
本节主要内容
trait构造顺序
trait与类的比较
提前定义与懒加载
trait扩展类
self type
1 trait构造顺序在前一讲当中我们提到,对于不存在具体实现及字段的trait,它最终生成的字节码文件反编译后是等同于java中的接口,而对于存在具体实现及字段的trait,其字节码文件反编译后得到的java中的抽象类,它有着scala语言自己的实现方式。因此,对于trait它也有自己的...
分类:
其他好文 时间:
2015-07-26 12:49:27
阅读次数:
138
我无可救药地成为了Scala的超级粉丝。在我使用Scala开发项目以及编写框架后,它就仿佛凝聚成为一个巨大的黑洞,吸引力使我不得不飞向它,以至于开始背离Java。固然Java 8为Java阵营增添了一丝亮色,却是望眼欲穿,千呼万唤始出来。而Scala程序员,却早就在享受lambda、高阶函数、trait、隐式转换等带来的福利了。
Java像是一头史前巨兽,它在OO的方向上几乎走到了极致,硬将...
分类:
其他好文 时间:
2015-07-19 21:51:44
阅读次数:
132
在scala中Option是一个有可能包含值的容器Option对应的特质如下trait Option[T] { def isDefined: Boolean def get: T def getOrElse(t: T): T}他有两个子类Some[T]和None。Map.get返回的就是一个O...
分类:
其他好文 时间:
2015-06-17 19:40:19
阅读次数:
103
特质Scala里相当于Java接口的是Trait(特征)。实际上它比接口还功能强大。与接口不同的是,它还可以定义属性和方法的实现。Scala中特征被用于服务于单一目的功能模块的模块化中。通过混合这种特征(模块)群来实现各种应用程序的功能要求,Scala也是按照这个构想来设计的。特质的构造顺序特质也可以有构造器,由字段的初始化和其他特质体中的语句构成。这些语句在任何混入该特质的对象在构造时都会被执行。...
分类:
其他好文 时间:
2015-06-15 22:13:31
阅读次数:
1382
本节条款的题目:请使用trait classes来表示类型信息本节条款主要讲述的技术是如何在编译期间实现对迭代器类型的判断,根据判断的类型进行最优处理。
我们先来看一下迭代器的种类:
1.input_iterator:只读,只能逐个前移
2.output_iterator:只写,只能逐个前移
3.forward_iterator:可读可写,只能逐个前移
4.bidirectional_it...
分类:
编程语言 时间:
2015-06-09 11:52:17
阅读次数:
123
The Professional ProgrammerRobert C. Martin (Uncle Bob)WHAT iS A PROFESSiONAL PROGRAMMER?
The single most important trait of a professional programmer is personal responsibility. Professional programm...
分类:
其他好文 时间:
2015-05-29 12:10:03
阅读次数:
195