Scala 光速入门之一 笔记

Scala光速入门之一

2016年的第一天就参加了王家林老师的课程,不可不谓特殊的一天呀。王老师牺牲假期时间授课,本就令人感动,况且带来了整整三个小时的Scala入门讲解,着实让人钦佩!
[TOC]

课程介绍

昨晚是Scala入门三板斧之第一斧,注重基础。对于从未接触过Scala,甚至没有编程基础的同学都很有助益。三个小时之后你就可以应用Scala解决基本的问题了,而据王老师讲,学会这三板斧基本可以阅读Spark 95%的代码了!真是一件令人兴奋的事情!
这期的课程我大概分三块吧:

为什么学习Scala

为什么我们学Scala呢?因为它重要有价值呗!
Scala集函数式和面向对象于一身,同时也是在处理大数据时的不二之选。在大数据越来越火的今天,涌现出一批非常优秀的框架如Spark, Kafka等,而这些都是用Scala语言编写的。因此,学习Scala你将获得处理大数据任务上的优势。
此外,Scala完全兼容Java,可以调用Java的所有功能。曾经有人问Java之父,除了Java会选用什么语言,他毫不犹豫的回答是Scala!

Scala基础讲解

像将其他语言一样,在这部分王老师讲解了Scala的基本语法,特点等。涉及内容包括Array、Map、Tuple等,紧跟王老师讲解,你绝对可以体会到Scala面向对象的特点和它的函数式大法!
没有基础?完全不用担心,这是面向大众的一次深入浅出的讲解,你完全跟的上。

Spark案例结合

在讲解完Scala基础部分后,王老师会亲自带你在Spark源码中寻找这些基础的痕迹。可以看到Map Tuple等在Spark中的广泛应用。这样你就深切体会到了这节课可谓基石中的基石,根基稳健方能构大厦!

作业

纸上得来终觉浅,绝知此事要躬行!
三个小时酣畅淋漓的学习之后,你或许会有这样一种幻觉——已经掌握Scala了。确实在王家林老师的讲解下,我确实可以阅读基本的Scala代码了,然而当我尝试写点什么的时候,我发现还是很空白。还有一问题就是,即便你学习了Scala,一时你也想不出用Scala解决一点什么问题,不勤加练习这三板斧的精妙是掌握不了的。
为了让大家真正的掌握Scala,王老师还特意留了一个课后作业,以便大家联系掌握。完成有些困难?那为何不再温习一遍王老师的视频呢?没有资源?或许你可以在微博上@王老师让他知道你是一个有梦想的少年!

作业:
移除一个数组中第一个负数以后的负数

代码

/**
  * Created by Takechiyo on 2016/1/1.
  * DT 大数据梦工厂 第一个作业
  * Remove the negative numbers in an array after the first negative number.
  */
object DT_1 {
  def main(args: Array[String]) {
    var flag : Boolean = true
    def isNegative(n : Int) : Boolean = {
      if(flag)
        if(n < 0){
          flag = false
          return true
        }
      n >= 0 || flag
    }
    val a = Array(-1, -1, 2, 3, -4)
    val b = a.filter(isNegative(_))
    b.foreach(x => println(x))
  }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值