资源描述:
《[Programming.F#.3.0(2nd,2012.4,Early.Release)].Chris.Smith.文字版》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、O’ReillyMedia,Inc.4/2/2012PrefaceHaveyoueverbeeninahurryandpoundedinanailusingsomethingotherthanahammer?Orperhapssettledanargumentconcerningdistanceswith“thelengthofmyarmisabout20inches,andthat’sabouttwoarm-lengths…?”Youmightnotbewillingtofallforsuchobviouslyflawedshort-cuts,butasyourhumbleauthor
2、IwilladmitthatIhave.Thereiselegancetousingtherighttoolforthejob.And,justlikeahammeroratapemeasure,programminglanguagesaretoolslikeanyother.ThroughoutthisbookyouwilldiscoverthatwhileF#isn’tthebesttoolforeverysituation,itistheperfecttoolforsomesituations.ThisbookisaboutshowingyouhowtousetheF#progra
3、mminglanguageasageneral-purposetool,withanemphasisonthespecificdomainswhereitcanleadtodramaticbootsinproductivity.Alongthewayyouwillpickupaknackforfunctionalprogramming;asemi-mysteriouscollectionsofconceptsthatcanhelpyourethinkyourprogramsregardlessofthehostprogramminglanguage.IntroducingF#Sowhat
4、actuallyisF#?Inanutshell,F#isamulti-paradigmprogramminglanguagebuilton.NET,meaningthatitsupportsseveraldifferentstylesofprogrammingnatively.I’llspareyouthehistoryofthelanguageandinsteadjustgooverthebigbullets:•F#supportsimperativeprogramming.InF#youcanmodifythecontentsofmemory,readandwritefiles,s
5、enddataoverthenetwork,andsoon.•F#supportsobject-orientedprogramming.InF#youcanabstractcodeintoclassesandobjectsenablingyoutosimplifyyourcode.•F#supportsfunctionalprogramming,whichisastyleofprogrammingwhichemphasizeswhataprogramshoulddo,notexplicitlyhowtheprogramshouldwork.•F#isstaticallytyped.Bei
6、ngstaticallytypedmeansthattypeinformationisknownatcompiletime,leadingtotype-safecode.F#won’tallowyoutoputasquarepegintoaroundhole.•F#isa.NETlanguage.ItrunsontheCommonLanguageInfrastructure(CLI)andsoitgetsthingslikegarbagecollection(memorymanagement)andpowerfulclass1O’ReillyMedia,Inc.4/2/2012libra
7、riesforfree.F#alsosupportsall.NETconceptsnatively,suchasdelegates,enumerations,structures,P/Invoke,andsoon.Evenwithoutallthejargon,itisclearthatF#ispowerfullanguage.Butdon’tworry;we’llcoveritallstepbystep.WhoThisBookIs