成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

F#簡明教程一:F#與函數(shù)式編程概述

原創(chuàng)
開發(fā) 開發(fā)工具
F#是微軟.NET平臺上一門新興的函數(shù)式編程語言,通過函數(shù)式語言,開發(fā)人員可以輕松應對多核多并發(fā)時代的并行計算和分布問題。本文是F#簡明教程的第一章,帶您走進F#和函數(shù)式編程。

【51CTO獨家特稿】F#是微軟.NET開發(fā)平臺的一門編程語言,其最大的特點是對函數(shù)式編程(FP,F(xiàn)unctional Programming)的引入;F#對面向對象(OOP)編程的支持也很出色,使用F#語言,開發(fā)人員可以自由選擇函數(shù)式編程或面向對象編程來實現(xiàn)他們的項目。此外,F(xiàn)#還可以與.NET平臺上C#、VB等其他編程語言緊密結合。

#T#CPU多核心化和云計算的背景下,函數(shù)式編程可以很好的解決多并發(fā)運算的問題(在處理并發(fā)問題方面,面向對象編程存在一定程度的固有缺陷,比如類和實例化過程中產生的一些副作用,詳細請參考51CTO.com對另一門函數(shù)式編程語言Erlang的視頻訪談《因并發(fā)而生 因云計算而熱:Erlang專家訪談實錄》)。微軟看到了這個趨勢,試圖通過專門為函數(shù)式編程打造的F#語言提升.NET平臺在并發(fā)處理、多核多并發(fā)方面的能力,進一步提升開發(fā)人員的生產力和代碼運行效率。

在2009年的TechED上,51CTO.com就F#和函數(shù)式編程的問題視頻采訪了微軟MVP趙頡老師,我們可以采訪視頻了解F#和函數(shù)式編程最近的發(fā)展,詳細請參考《TechED 09視頻專訪:F#與函數(shù)式編程語言》。

F#小背景:看似年輕的F#已經有近10年的歷史。最初由微軟研究院的Don Syme于2002年立項研發(fā);F#在2005年推出第一個版本,2007年底,微軟宣布F#進入產品化階段。在不斷的改進中,F(xiàn)#從C#、Linq和Haskell中吸收了很多優(yōu)點。

F#編程起步

F#可以運行在.NET Framework 2.0版本以上的平臺。如果你的Visual Studio之前沒有安裝F#,可以從微軟F# Developer Center獲得(http://msdn.microsoft.com/en-us/fsharp/default.aspx)。

不能免俗,讓我們來看看F#的Hello World代碼:

  1. #light  
  2. System.Console.WriteLine(“This is one hello”)  
  3. printfn “This is another hello” 

 

將代碼保存為hello.fs文件后,我們需要在命令行中通過fsc.exe編譯生成一個.NET程序集。在命令行中的編譯代碼如下:

  1. fsc hello.fs 

通過上面的代碼,我們就得到了常見的可執(zhí)行文件(.exe文件),這就是我們F#的起步——hello.exe。

F#小提示:F#是.NET平臺上的一個編譯型語言,但仍然可以像腳本語言一樣運行。可以使用Visual Studio或fsi.exe(在F#安裝目錄下的bin目錄)進行F#腳本的執(zhí)行。

代碼解讀

讓我們來仔細看看hello.fs文件里的代碼

◆程序首先以“#light”開始,在以后的F#之路上,我們會經常看到“#light”;大多數(shù)時候,“#light”總是出現(xiàn)在F#程序的開始位置,這是F#輕量級語法的標識;在最新的F#版本中,#light將作為默認選項。

◆“System.Console.WriteLine”調用一個.NET基礎類(熟悉C#或VB.NET的朋友會相當熟悉)用來初始化一些必要的功能。

◆“printfn”是F#的一個常用函數(shù),他會將雙引號中的參數(shù)輸出到控制臺上顯示。

跟其他程序的Hello World一樣,這段F#代碼簡單易懂,看著跟其他語言寫就的Hello World還有些相似;但作為函數(shù)式編程語言,F(xiàn)#的語法和編程中的思路卻有很大的不同。在下周的章節(jié)中,我們將深入F#編程,講解F#的類型系統(tǒng)及編譯機制

責任編輯:佚名 來源: 51CTO.com
相關推薦

2010-01-26 08:25:06

F#語法F#教程

2010-01-15 08:33:13

F#F#類型推斷F#教程

2011-06-09 09:52:41

F#

2009-11-09 17:51:51

F#函數(shù)式編程

2010-07-07 13:11:20

ScalaF#C#

2010-04-07 16:51:59

F#

2010-07-09 14:12:00

ScalaF#C#

2009-08-18 18:01:20

F#函數(shù)式語言

2012-11-06 10:01:35

ContinuatioF#

2009-09-10 14:18:59

Functional F#

2009-08-13 17:39:48

F#數(shù)據(jù)類型Discriminat

2009-06-22 13:43:01

F#函數(shù)式編程

2009-08-19 09:42:34

F#并行排序算法

2012-03-12 12:34:02

JavaF#

2018-05-23 08:41:14

編程語言Azure Searc數(shù)字化

2009-11-16 09:05:46

CodeTimer

2010-03-26 19:22:08

F#代理

2009-12-04 09:16:44

Visual Stud

2009-12-14 09:04:10

F#運算符

2009-08-13 17:25:21

F#入門
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲精品在线看 | 日韩视频在线播放 | 午夜在线精品 | 欧美区在线 | 国产精品久久久久久久午夜 | 色接久久 | 亚洲人a| 亚洲综合五月天婷婷 | 国产精品区二区三区日本 | 成人精品久久日伦片大全免费 | 精品一区av | 久婷婷 | 91一区二区三区在线观看 | 亚洲综合视频 | 国产精品一区二区三区在线 | 国产乱码精品一区二区三区五月婷 | 黄色网址在线免费观看 | 日韩精品1区2区3区 爱爱综合网 | 亚洲午夜久久久 | 日本91av视频 | 天天人人精品 | 亚州av在线| 亚洲精品无 | a黄视频| 日本a视频| 98久久| 中文成人在线 | 亚洲日本一区二区三区四区 | 91婷婷韩国欧美一区二区 | 亚洲成人网在线 | www.日日操| 婷婷色在线 | 国产精品免费观看 | 久久久视 | 99精品国产一区二区青青牛奶 | 国产成人在线视频免费观看 | 91看片| 国产精品亚洲一区二区三区在线 | 91在线观看视频 | 黄色一级片视频 | 天天草视频 |