• Scala随记


    使用Scala首先确保本地Java 8版本,然后按照官网所说,比较流行的方式(1) sbt; (2) IDE

    "The most popular way to get Scala is either using Scala through sbt, the Scala build tool, or to use Scala through an IDE."

    但是通过Scala的编译版本,应该会快速的对Scala有个大概的了解 -> RUNNING SCALA BINARIES


    (一)开发环境

    1. Scala IDE

    2. IntelliJ IDEA Community Edition

    Scala IDE在Eclipse基础上开发,免费开源,插件多,且能支持像Play这样的Web框架;IDEA社区版支持Scala开发,免费。

    由于之前分别使用Eclipse和IDEA进行过Java开发,个人感觉IDEA更加顺畅,适合初学者,选择使用IDEA社区版。

    (二)IDEA社区版 - 配置Scala开发环境

    按照该blog的方式配置(未使用其中的版本),发现Scala插件版本同IDEA社区版本不兼容,之后还是改成使用HTTP安装插件的方式。

    这里顺便说下在IDEA里设置HTTP Proxy的方式,如下:

     

    补充以上被抹掉的部分,配置完后可以点击"Check connection"测试下连通性。

    (IDEA社区版2018.1将插件安装在".IdeaIC2018.1configplugins"路径下)


    (三)语言特性

     (1) 构建在Java基础之上,面向对象+函数式编程;

     (2) 变量var val;

     (3) Scala中一切皆对象,objects with methods

     (4) 不存在操作符重载,像+-*/均可看作方法名 ->  1+2 <=> (1).+(2)

     (5) print(greetStrings(0)) <=> print(greetStrings.apply(0)); greetStrings(0) = "Hello" <=> greetStrings.update(0, "Hello")

     (6) Unit <=> void; trait <=> interface; implement <=> extend / mix in

     (7) mutable: Array/Set/Map; immutable: List/Tuple/Set/Map 像Set/Map,默认采用immutable的

     (8) 函数式:no side effects & no var (函数有返回值 & 函数内部没有var变量)

     (9) 首先使用val类型变量, immutable对象以及有返回值的函数,其次再考虑使用var类型,mutable对象以及Unit函数

     (10)  public是默认的访问权限

     (11)  伴生对象/伴生类,静态方法或者工具方法放在单例对象中

     (12) main入口 <=> extends App

     (13) 比较相等:==, eq, equals

      eq: 判断引用是否一样

      equals: 判断值是否一样

      ==: 如果左边为null,则判断右边是否为null,否则调用equals

  • 相关阅读:
    【非技术】谈谈业务6W+H
    WinForm二三事(三)Control.Invoke&Control.BeginInvoke
    企业应用架构模式读书笔记(一)
    WinForm二三事(四)界面布局(上)
    WinForm二三事(二)异步操作
    WinForm二三事(一)消息循环
    白话基础之虚拟存储器
    不清楚自己的位置,会走很多弯路
    WinForm二三事(一)补遗
    技术、业务、市场
  • 原文地址:https://www.cnblogs.com/hello-yz/p/9056426.html
Copyright © 2020-2023  润新知