reactive-turtle
reactive-turtle
标签(空格分隔): Scala Github
偶然在Github上看到一个有意思的小项目,一个粑粑教11岁的儿子学习scala,因为学习语法等太枯燥了,所以写了一个海龟的小游戏,跟儿子一起学习。(我也要酱紫的粑粑!!)
链接-->https://github.com/ktonga/reactive-turtle/blob/master/README.md
先导
- Github
- sbt:类似于java的架构工具Maven,主要用来管理Scala。因为Scala也是基于JVM的,所以也需要一个好用的工具来管理Scala仓库等。这里使用
sbt来创建,运行,测试和发布项目。
所以这篇博客主要记录sbt搭建Scala环境以及reactive-turtle项目的安装及使用向导。
Github shell安装
在Windows环境中,最简单快捷的方法是使用msysGit,下载链接为https://git-for-windows.github.io/。
- 下载安装包,安装即可;
- 配置gihub:在
sbt/bin目录下新建sbtconfig.txt文件,并配置如下信息:-Dfile.encoding=UTF8 -Dsbt.boot.directory=d:/sbt/boot/ -Dsbt.ivy.home=d:/sbt/ -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256m - 这里配置了本地仓库的位置及使用的堆内存大小等信息。
下载reactive-turtle项目
在Git bash中:
$ git clone https://github.com/ktonga/reactive-turtle.gitcd reactive-turtlesbt compile
使用reactive-turtle项目
在cmd中:
sbt
[info] Set current project to reactive-turtle
> tg-start 500 500
然后一只神奇的小海龟出现了~然后通过使用命令console切换到scala命令行模式(使用:q回到sbt模式):
// run var args Commands
runAndWait(SetXY(100, 400), Clean)
// run a Seq of Commands
val commands = Seq.fill(4)(Seq(Forward(300), Right(90))).flatten
runAllAndWait(commands)
// run a single Command
PenUp.rnw
Home.rnw

然后可是自己修改ScalaAppExample.scala,have fun with your little turtle~

reactive-turtle的更多相关文章
- Python Turtle
之前对这个turtle这个模块不了解,觉得没什么意思,最近试了一下发现不错,来点最简单的.写的时候深刻感受到自己智商是个硬伤,算角度都算了半天... 图就不导了吧,懒癌晚期... import tur ...
- Reactive Extensions(Rx) 学习
Bruce Eckel(著有多部编程书籍)和Jonas Boner(Akka的缔造者和Typesafe的CTO)发表了“反应性宣言”,在其中尝试着定义什么是反应性应用. 这样的应用应该能够: 对事件做 ...
- Reactive Extensions介绍
Reactive Extensions(Rx)是对LINQ的一种扩展,他的目标是对异步的集合进行操作,也就是说,集合中的元素是异步填充的,比如说从Web或者云端获取数据然后对集合进行填充.Rx起源于M ...
- .Net中的反应式编程(Reactive Programming)
系列主题:基于消息的软件架构模型演变 一.反应式编程(Reactive Programming) 1.什么是反应式编程:反应式编程(Reactive programming)简称Rx,他是一个使用LI ...
- 基于移动端Reactive Native轮播组件的应用与开发详解
总结下这段时间学习reactive native的一些东西,我们来认识一下,被炒得这么火的rn,究竟是个什么东西,以及如何去搭建自己的demo. reactive native是什么 由facebo ...
- RX(Reactive Extinsion)和IX(Interactive Extinsion)库改名了
RX和IX库是我经常用到的库,今天写一个小程序的时候想用IX库的时候,发现却找不到了.在它的源码的网站上找了一下,发现它们被改名了,具体的变化为为: 对于RX库: Rx-Main -> Syst ...
- 牛刀小试:使用Reactive Extensions(Rx),对短时间内多次发生的事件限流
我之前有一篇文章介绍到了Reactive Extension这个组件,请参考下面的文章,其中有一些基本的概念和相关的链接 牛刀小试:使用Reactive Extensions(Rx),一行代码实现多线 ...
- Unity基于响应式编程(Reactive programming)入门
系列目录 [Unity3D基础]让物体动起来①--基于UGUI的鼠标点击移动 [Unity3D基础]让物体动起来②--UGUI鼠标点击逐帧移动 时光煮雨 Unity3D让物体动起来③—UGUI DoT ...
- Paip.Php Java 异步编程。推模型与拉模型。响应式(Reactive)”编程FutureData总结... 1
Paip.Php Java 异步编程.推模型与拉模型.响应式(Reactive)"编程FutureData总结... 1.1.1 异步调用的实现以及角色(:调用者 提货单) F ...
- ReactiveCocoa与Functional Reactive Programming
转自 http://blog.leezhong.com/ios/2013/06/19/frp-reactivecocoa.html Functional Reactive Programming(以下 ...
随机推荐
- Python之路-python(css布局、JavaScript)
CSS布局 JavaScript css布局: 后台管理界面一:(左右标签都有下来菜单) 利用position: absolute;让某个标签固定在具体位置,然后使用overflow: auto;属性 ...
- 解决Windows下网络原因Composer安装失败问题
由于Composer镜像都在国外,所以直接在官网下载Windows Installer后安装很多情况下是无法成功安装的. 解决办法: 1,将php添加到系统环境变量,并开启openssl扩展. 2,点 ...
- cygwin E437
这个简单错误居然查到了 报错E437: terminal capability "cm" required 执行:# export TERM=xterm
- Java操作Excel: POI不能创建xlsm问题的方法(源自StackOverFlow)
write to xlsm (Excel 2007) using apache poi POI的下载(记得把其中的jar包全部加到工程里哦)http://mirror.bit.edu.cn/apach ...
- jQuery.serialize() 函数详解////////////z
serialize()函数用于序列化一组表单元素,将表单内容编码为用于提交的字符串. serialize()函数常用于将表单内容序列化,以便用于AJAX提交. 该函数主要根据用于提交的有效表单控件的n ...
- jffs2和yaffs2文件系统制作工具的编译与使用
一 . 先准备文件 mtd-utils-1.4.5.tar.bz2 ftp://ftp.infradead.org/pub/mtd-utils/ zlib-1.2.5.tar.bz2 http://z ...
- vnc服务的安装与配置
1. 安装必要的软件包 系统为CentOS 6.0,为最小化安装. a. 安装vncserver服务端和客户端端 yum install tigervnc tigervnc-server -y b. ...
- VB.NET中Form窗体运行时,按ESC退出全屏状态
1.在其KeyDown事件添加: If e.KeyValue = 27 Then Me.FormBorderStyle = Windows.Forms.FormBorderStyle.Sizable ...
- tcp连接listen的backlog剖析
TCP连接中,最重要的是连接TCP连接上,两个方向之间的各个状态及各个系统调用与状态之间的关系.往往可以以两种图表示,第一种是状态转换图,第二种是连接时序图.如下: 状态图: 时序图: ...
- C++11特性(模板类 initializer_list)
[1]initializer_list模板类 C++primer 原文如下: 通读原文相关篇幅,分析解读内容如下: 提供initializer_list类的初衷,为了便于将有限个同一类型(或可转换为同 ...