Why I am called myself Scarja?

栏目: IT技术 · 发布时间: 4年前

内容简介:2020-07-21别的不能说,只能聊聊技术与架构设计啦…大家都知道, 我虽然不写生产代码很久了,但偶尔还是会用Scala(Lang)写写prototyping,但我不是典型的Scala老粉红,我更多用的是一种裁剪后的Scala,或者说走的是用Scala来写Java的曲风,所以,我一直说我用的是Scarja, 即带点儿伤疤(Scar)的Scala+Java。

2020-07-21

别的不能说,只能聊聊技术与架构设计啦…

大家都知道, 我虽然不写生产代码很久了,但偶尔还是会用Scala(Lang)写写prototyping,但我不是典型的Scala老粉红,我更多用的是一种裁剪后的Scala,或者说走的是用Scala来写 Java 的曲风,所以,我一直说我用的是Scarja, 即带点儿伤疤(Scar)的Scala+Java。

Why I am called myself Scarja?

我在老早之前就说过了,Scala的设计初衷和理念加上主流社区的一些工程实践, 其实,并不太适合大规模的上生产环境,你用它来写Endpoints型的应用或者服务是OK的,但如果要用它来写较为通用的Component或者说SDK Library,就没那么好玩了, 交叉编译,Scala自身版本之间的行为不一致甚至不兼容,所有这些东西都会让你处处有惊喜。瞧, 已经不止一个人反映这个问题了,比如今天Scala小王子lihaoyi就牢骚了一把:

Why I am called myself Scarja?

其实在此之前就有人反映Scala各个版本之间的Collection行为不一致的问题, 甚至于让我很不爽的一点就是, 2.12里Scala和Java的Collection转换用的 import scala.collection.JavaConverters._ , 升级2.13却得改成 import scala.jdk.CollectionConverters._ , 其实一个产品让用户不爽的就是这些小的地方,计算机语言的语法设计, 类库的接口设计, 产品的UI/UX设计,其实都是一个道理: 你是不是让你的用户更加乐于接受、更容易接受你的这种设计 。 所谓Don’t Make Me Think, 无非也就是这样。

我为什么一种用Scala,其实无非也只是尝试了n种计算机语言智慧化,也就Scala的语法和设计更符合自己的口味罢了,但也还是没法完全匹配个人的口味,所以只能裁剪着用。比如我只用最基本清晰的语法和特性,比如我只用Java类库而很少用Scala社区的类库,比如我就是用Scala来写Java…

语言之争其实没有意义, 因为萝卜白菜各有所爱, 最主要的是这个东西能最终形成一种能力,让你可以 解决现实中的问题 ,这才是最终诉求。

但对自己来说,简单、务实、高效的工具,显然更有价值。

Why I am called myself Scarja?

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

深度学习轻松学

深度学习轻松学

冯超 / 电子工业出版社 / 2017-7 / 79.00

《深度学习轻松学:核心算法与视觉实践》介绍了深度学习基本算法和视觉领域的应用实例。书中以轻松直白的语言,生动详细地介绍了深层模型相关的基础知识,并深入剖析了算法的原理与本质。同时,书中还配有大量案例与源码,帮助读者切实体会深度学习的核心思想和精妙之处。除此之外,书中还介绍了深度学习在视觉领域的应用,从原理层面揭示其思路思想,帮助读者在此领域中夯实技术基础。 《深度学习轻松学:核心算法与视觉实......一起来看看 《深度学习轻松学》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具