下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922
论坛 >编程语言 >实用编程学习指南!为什么你还学不会一门编程语言?

实用编程学习指南!为什么你还学不会一门编程语言?

女神晴姐发布于 2016-01-16 16:27查看:731回复:3

还在继续开发Growth(Github: )的路上,很多功能似乎已经趋于完善,有些功能也让我百玩不厌——如最近添加的规则引擎。接着我开始陆陆续续地添加了这么多功能。直接今天我想我需要一篇文章放在最前面来告诉用户,你需要怎样去学习?因此,也就有了此文。

我不是一个学霸,大学挂了六科。也没有受过非常好的教育,上大的大学是二本倒数的。好在计算机学得比较早,也可以混点自学能力,也算混得还行。一直想着做一些有意义的事,并且可以获得更多的用户反馈。想法一直有的,直到有一天在整理资料的时候才想起来可以整理出一个APP。

尽管之前已经有技能树、成长书单和Web Developer 成长路线图的经验,说到底这也是很大的挑战。

一次语言学习体验

在我们开始学习一门语言或者技术的时候,我们可能会从一门hello,world开始。

好了,现在我是Scala语言的初学者,接着我用搜索引擎去搜索『Scala』来看看『Scala』是什么鬼:

Scala 是一门类Java 的编程语言,它结合了面向对象编程和函数式编程。

接着又开始看『Scala 'hello,world'』,然后找到了这样的一个示例:

object HelloWorld {
  def main(args: Array[String]): Unit = {
    println("Hello, world!")
  }
}

GET到了5%的知识。

看上去这门语言相比于Java语言来说还行。然后我找到了一本名为『Scala 指南』的电子书,有这样的一本目录:

  • 表达式和值

  • 函数是一等公民

  • 借贷模式

  • 按名称传递参数

  • 定义类

  • 鸭子类型

  • 柯里化

  • 范型

  • Traits

  • ...

看上去还行, 又GET到了5%的知识点。接着,依照上面的代码和搭建指南在自己的电脑上安装了Scala的环境:

brew install scala

Windows用户可以用:

choco install scala

然后开始写一个又一个的Demo,感觉自己GET到了很多特别的知识点。

到了第二天忘了!

blob.png

接着,你又重新把昨天的知识过了一遍,还是没有多大的作用。突然间,你听到别人在讨论什么是这个世界上最好的语言——你开始加入讨论了。

于是,你说出了Scala这门语言可以:

  • 支持高阶函数。lambda,闭包...

  • 支持偏函数。 match..

  • mixin,依赖注入..

  • 等等

虽然隔壁的Python小哥赢得了这次辩论,然而你发现你又回想起了Scala的很多特性。

blob.png

你发现隔壁的Python小哥之所以赢得了这场辩论是因为他把Python语言用到了各个地方——机器学习、人工智能、硬件、Web开发、移动应用等。而,你还没有用Scala写过一个真正的应用。

让我想想我来能做什么?我有一个博客。对我有一个博客,我可以用Scala把我的博客重写一遍:

  1. 先找一Scala的Web框架,Play看上去很不错,就这个了。这是一个MVC框架,原来用的Express也是一个MVC框架。Router写这里,Controller类似这个,就是这样的。

  2. 既然已经有PyJS,也会有Scala-js,前端就用这个了。

好了,博客重写了一遍了。

感觉还挺不错的,我决定向隔壁的Java小弟推销这门语言,以解救他于火海之中。

『让我想想我有什么杀手锏?』

『这里的知识好像还缺了一点,这个是什么?』

好了,你已经GET到了90%了。如下图所示:

blob.png

收藏(0)0
查看评分情况

全部评分

此主贴暂时没有点赞评分

总计:0

回复分享

版主推荐

    共有3条评论

    • IT宅男
    • mr jack
    • Mr ken
    • Mright
    • cappuccino
    • YUI
    • 课课家运营团队
    • 课课家技术团队1
    • 酸酸~甜甜
    • 选择版块:

    • 标题:

    • 内容

    • 验证码:

    • 标题:

    • 内容

    • 选择版块:

    移动帖子x

    移动到: