Rust初步(七):格式化
摘要: 在Rust中,如果要进行屏幕输出,或者写入到文件中,需要对数据进行格式化。这一篇总结一下它所支持的几种格式化方式。 这篇文章参考了以下官方文档,不过,按照我的风格,我还是会突出于C#语言的比较,这样可能更好懂一些。 http://rustbyexample.com/hello/print.html http://doc.rust-lang.org/std/fmt/ http://rustbyexa...阅读全文
posted @ 2015-08-27 13:00 陈希章 阅读(36) | 评论 (2) 编辑
Rust初步(六):在C#中使用Rust组件
摘要: 上一篇文章,我们通过实例比较了一下C#和Rust的性能表现,应该说在Release模式下面,Rust进行计算密集型的运算还是有些比较明显的优势的。那么,我们有没有可能,在C#中做一些快速应用开发,而一些核心的算法用Rust来实现呢?答案是可以的。 编写Rust代码 下面这段代码,保存在lib.rs文件中use std::thread; #[no_mangle] pub extern fn p...阅读全文
posted @ 2015-08-26 15:57 陈希章 阅读(30) | 评论 (0) 编辑
Rust初步(五):Rust与C#性能比较
摘要: 我学习Rust的目的并不是说期望用它来取代掉现有的开发平台或语言。相反,我认为当前绝大部分研发团队,都不可能只用一个平台或者一个语言。 当组织增长,他们越来越依赖大量的编程语言。不同的编程语言有不同的能力和弱点,而一个多语言栈让你在某个特定的编程语言的优点起作用的时候能使用它,当它有缺陷时使用其他编程语言。 Rust 主要擅长的领域是:数值计算和线程。 我下面用一个实例来比较一下Rust和C#的性...阅读全文
posted @ 2015-08-26 13:46 陈希章 阅读(29) | 评论 (0) 编辑
Rust初步(四):在rust中处理时间
摘要: 这个看起来是一个很小的问题,我们如果是在.NET里面的话,很简单地可以直接使用System.DateTime.Now获取到当前时间,还可以进行各种不同的计算或者输出。但是这样一个问题,在rust里面,还是费了我一些时间的。当然,我觉得这种折腾也是有些益处的,从中可以更好地理解rust的一些内部原理。 首先来看一下怎么做吧 rust默认自带的std库,里面并没有针对时间的功能,如果我们要处理时间(获...阅读全文
posted @ 2015-08-26 13:05 陈希章 阅读(26) | 评论 (0) 编辑
Rust初步(三):使用atom搭配racer进行rust编程
摘要: 在rust.cc社区中有一个关于rust编辑器的讨论(话说很多人要学一个新语言,都会立即考虑编辑器的问题,包括我在内),主要关注的是,智能提示(这个真的太重要了)。大家讨论下来有几个选择 1. eclipse 2. vs code(我用过,目前支持语言高亮显示,但没有智能提示,还是不顺手) 3.emacs (GNU的创始人作品,再次向开源致敬) 4.SolidOak (我用过,体验很不好) 5...阅读全文
posted @ 2015-08-26 11:46 陈希章 阅读(28) | 评论 (0) 编辑
Rust初步(二):使用Visual Studio Code编写Rust程序(猜猜看游戏)
摘要: 我是照着下面这篇帮助文档,完成了第一个完整的Rust程序: 猜猜看 游戏 http://kaisery.gitbooks.io/rust-book-chinese/content/content/3.1.Guessing%20Game%20%E7%8C%9C%E7%8C%9C%E7%9C%8B.html 我采用的开发工具是Visual Studio Code, 这应该是目前能找到的最"所见即...阅读全文
posted @ 2015-08-18 15:31 陈希章 阅读(83) | 评论 (0) 编辑
Rust初步(一):介绍
摘要: 最近在研究Rust这个新的语言。那么Rust是什么呢? Rust是一个注重安全与速度的现代系统编程语言,通过在没有垃圾回收的情况下保证内存安全来实现它的目标,这使它成为一个在很多其它语言不适合的用例中大展身手的语言:嵌入到其它语言中,在特定的时间和空间要求下编程,和编写底层代码,例如设备驱动和操作系统。它通过一系列的不产生运行时开销的编译时安全检查来提升目前语言所关注的领域,同时消除一切数据竞争...阅读全文