Visual Studio 2010中的F#语言 - 面向对象网 f# 学习 对象 - 面向对象技术开发

面向对象技术开发

会员投稿 投稿指南 站长资讯通告:
您的位置: 首页 > OOP语言 > F# > 正文

Visual Studio 2010中的F#语言

来源: www.bianceng.cn 阅读:

在Visual Studio 的使用过程当中,我们总是希望在.NET 框架下得到一种语言。他可以高效且带有互操作性的来解决宽泛的软件问题。有基于此,在Visual Studio 2010中集成了F# 语言。

F#是一个高效的.NET程序语言。其混合了函数语言和物件导向程序编制语言,并且完美的适用于并行编程、算法、技术和探索性开发,因此可以在使用的过程当中感受到趣味性和吸引力。

F#主要是由Microsoft Research 和 Visual Studio 小组协作开发的,并采纳了F#社区和一些主要使用者的意见。

F#为Visual Studio 2010带来了很大的改观。因为替代了局部程序中的元组,因此使工作变的简单了。在异步编程和强类型对于浮点编码方面也提供的不错的解决方式。可以说F# 是Visual Studio 2010中结合了众多优点的编程语言。

简单简洁的句法

F#像C#一样,是一种强制型的语言。但是我也可以使用类似在Python中那样的方式。既轻量级的,灵活的,数学类的编程方式。

let data = (1,2,3)
let rotations (x, y, z) =
    [ (x, y, z);
      (z, x, y);
      (y, z, x) ]
let derivative f x =
    let p1 = f (x - 0.05)
    let p2 = f (x + 0.05)
    (p2 - p1) / 0.1
let f x = 2.0*x*x - 6.0*x + 3.0
let df = derivative f
System.Console.WriteLine("The derivative of f at x=4 is {0}", df 4.0)

其运行结果为:“The derivative of f at x=4 is 10”。

并行和异步编程

在.NET Framework 4 和Visual Studio 2010中,包含了一个关于并行程序开发的庞大文档库和工具库。F#提供了强健的编程模式和灵活优秀的功能,使并行编程显现的更为直观。最为重要的是,我们可以在过去习惯了的线性编程模式下进行异步编程。

let http url =
    async { let req =  WebRequest.Create(Uri url)
            let! resp = req.AsyncGetResponse()
            let stream = resp.GetResponseStream()
            let reader = new StreamReader(stream)
            let! contents = reader.AsyncReadToEnd()
            return contents }
let sites = ["http://bing.com"; "http://microsoft.com";
             "http://msdn.com"; "http://msnbc.com"]
let htmlOfSites =
    Async.Parallel [for site in sites -> http(site)]
    |> Async.RunSynchronously

在Visual Studio 2010 和 .NET 4 中的集成

F#被集成到了Visual Studio 2010 中,得到了集成开发环境的支持,并提供了IntelliSense(智能提示)和集成的交互式窗口。可以被用于开发程序和组件,比如从 .NET 2.0到 .NET 4以及Silverlight中的组件。F#可以轻松的与C#和Visual Basic .NET相结合。一些 .NET Framework 4的核心组件是用F# 编写的,这些组件可以在.NET框架下的所有.NET语言中被使用。

在 Visual Studio 中,F # 交互式工具窗口提供了一种探索性开发风格的模式。可以在 Visual Studio 编辑器中看到 F # 源代码的脚本和交互方式窗口中的代码执行结果。 在右上角窗体中是脚本创建的图形。

\

图1 交互式设计窗口

度量单位

F#中一项突破性的开创就是度量单位的定制,我们可以对浮点编码进行单位注释,比如米或秒。这很容易做到,他的好处就是当浮点编码与注释不符合的时候会报错。这样在不牺牲性能的前提下,就可以对浮点编码进行检测了。

\

图2 注释浮点单位

以上就是Visual Studio 2010中F#语言简单介绍,在开发使用过程中肯定会有更多的体验。

Tags:
相关文章列表: