会员注册 | 登录 | 微信快捷登录 支付宝快捷登录 QQ登录 微博登录 | 帮助中心 人人文库renrendoc.com美如初恋!
站内搜索 百度文库

热门搜索: 直缝焊接机 矿井提升机 循环球式转向器图纸 机器人手爪发展史 管道机器人dwg 动平衡试验台设计

   首页 人人文库网 > 资源分类 > DOC文档下载

外文翻译--C#介绍.doc

  • 资源星级:
  • 资源大小:120.00KB   全文页数:13页
  • 资源格式: DOC        下载权限:注册会员/VIP会员
您还没有登陆,请先登录。登陆后即可下载此文档。
  合作网站登录: 微信快捷登录 支付宝快捷登录   QQ登录   微博登录
友情提示
2:本站资源不支持迅雷下载,请使用浏览器直接下载(不支持QQ浏览器)
3:本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

外文翻译--C#介绍.doc

英文原文IntroducingCCpronouncedSeeSharpisaprogramminglanguagedesignedforMicrosofts.NETplatform.Sinceitsfirstreleasein2002,Chasfoundmanyroles.Itiswidelyusedontheserversideofwebsites,andalsoonboththeclientandserverinlineofbusinessWindowsdesktopapplications.YoucanwritesmartphoneuserinterfacesandXbox360gamesinC.Morerecently,MicrosoftsSilverlightplatformhasmadeCanoptionforwritingRichInternetApplicationsthatruninawebbrowser.ButwhatkindoflanguageisCTounderstandalanguagewellenoughtouseiteffectively,itsnotenoughtofocuspurelyonthedetailsandmechanisms,althoughwellbespendingplentyoftimeonthoseinthisbook.Itisequallyimportanttounderstandthethinkingbehindthedetails.Sointhischapter,welllookatwhatproblemsCwasbuilttosolve.Thenwellexplorethestyleofthelanguage,throughaspectsthatdistinguishitfromotherlanguages.AndwellfinishthechapterwithalookatthelateststepintheevolutionofC,itsfourthversion.WhyCWhy.NETProgramminglanguagesexisttohelpdevelopersbemoreproductive.Manysuccessfullanguagessimplifyorautomatetedioustasksthatpreviouslyhadtobedonebyhand.Someoffernewtechniquesthatallowoldproblemstobetackledmoreeffectively,oronalargerscalethanbefore.HowmuchdifferenceCcanmaketoyouwilldependonyourprogrammingbackground,ofcourse,soitsworthconsideringwhatsortsofpeoplethelanguagedesignershadinmindwhentheycreatedC.CisaimedatdevelopersworkingontheWindowsplatform,anditssyntaxisinstantlyfamiliartousersofCorC,orotherlanguagesthatdrawfromthesametradition,suchasJavaScriptandJava.Fundamentallanguageelementssuchasstatements,expressions,functiondeclarations,andflowcontrolaremodeledascloselyaspossibleontheirequivalentsinCfamilylanguages.Afamiliarsyntaxisnotenoughofareasontopickalanguage,ofcourse,soCoffersproductivityenhancingfeaturesnotfoundinsomeofitspredecessors.Garbagecollectionfreesdevelopersfromthetyrannyofcommonmemorymanagementproblemssuchasmemoryleaksandcircularreferences.Verifiabletypesafetyofcompiledcoderulesoutawiderangeofbugsandpotentialsecurityflaws.WhileCorCWindowsdevelopersmaynotbeaccustomedtothosefeatures,theywillseemoldhattoJavaveterans,butJavahasnothingtocompetewiththeLINQfeaturesCoffersforworkingwithcollectionsofinformation,whetherinobjectmodels,XMLdocuments,ordatabases.Integratingcodefromexternalcomponentsisremarkablypainless,eventhosewritteninotherlanguages.Calsoincorporatessupportforfunctionalprogramming,apowerfulfeaturepreviouslymostcommonlyseeninacademiclanguages.ManyofthemostusefulfeaturesavailabletoCdeveloperscomefromthe.NETFramework,whichprovidestheruntimeenvironmentandlibrariesforC,andallother.NETlanguages,suchasVB.NET.Cwasdesignedfor.NET,andoneofthemainbenefitsofitscloserelationshipwiththe.NETFrameworkisthatworkingwithframeworkfeaturessuchastheclasslibraryfeelsverynatural.The.NETFrameworkClassLibraryWorkinginCmeansmorethanusingjustthelanguagetheclassesofferedbythe.NETFrameworkareanextremelyimportantpartoftheCdeveloperseverydayexperienceandtheyaccountforalotofthisbookscontent.Mostofthelibraryfunctionalityfallsintooneofthreecategoriesutilityfeatureswrittenin.NET,wrappersaroundWindowsfunctionality,andframeworks.Thefirstgroupcomprisesutilitytypessuchasdictionaries,lists,andothercollectionclasses,aswellasstringmanipulationfacilitiessuchasaregularexpressionengine.Therearealsofeaturesthatoperateonaslightlylargerscale,suchastheobjectmodelsforrepresentingXMLdocuments.SomelibraryfeaturesarewrappersaroundunderlyingOSfunctionality.Forexample,thereareclassesforaccessingthefilesystem,andforusingnetworkfeaturessuchassockets.Andthereareclassesforwritingoutputtotheconsole,whichwecanillustratewiththeobligatoryfirstexampleofanyprogramminglanguagebook,showninExample11.Example11.TheinevitableHello,worldexampleclassProgram{staticvoidMain{System.Console.WriteLineHello,world}}Wellexamineallthepiecesshownhereinduecourse,butfornow,notethateventhissimplestofexamplesdependsonaclassfromthelibrarytheSystem.Consoleclassinthiscasetodoitsjob.Finally,theclasslibraryofferswholeframeworkstosupportbuildingcertainkindsofapplications.Forexample,WindowsPresentationFoundationWPFisaframeworkforbuildingWindowsdesktopsoftwareASP.NETwhichisnotanacronym,despiteappearancesisaframeworkforbuildingwebapplications.NotallframeworksareaboutuserinterfacesWindowsCommunicationFoundationWCFisdesignedforbuildingservicesaccessedoverthenetworkbyothercomputersystems,forinstance.Thesethreecategoriesarenotstrict,asquiteafewclassesfitintotwo.Forexample,thepartsoftheclasslibrarythatprovideaccesstothefilesystemarenotjustthinwrappersaroundexistingWin32APIs.Theyaddnewobjectorientedabstractions,providingsignificantfunctionalitybeyondthebasicfileI/Oservices,sothesetypesfitintoboththefirstandsecondcategories.Likewise,frameworksusuallyneedtointegratewithunderlyingservicestosomeextentforexample,althoughtheWindowsFormsUIframeworkhasadistinctiveAPIofitsown,alotoftheunderlyingfunctionalityisprovidedbyWin32components.Sothethreecategoriesherearenotstrict.Theyjustofferausefulideaofwhatsortsofthingsyoucanfindintheclasslibraries.LanguageStyleCisnottheonlylanguagethatrunsonthe.NETFramework.Indeed,supportformultiplelanguageshasalwaysbeenakeyfeatureof.NET,reflectedinthenameofitsruntimeengine,theCLRorCommonLanguageRuntime.Asthisnameimplies,.NETisnotjustforonelanguagenumerouslanguageshaveaccesstotheservicesofthe.NETFrameworkclasslibrary.WhymightyouchooseCovertheothersWealreadymentionedoneimportantreasonCwasdesignedspecificallyfor.NET.Ifyouareworkingwith.NETtechnologiessuchasWPForASP.NET,youllbespeakingtheirlanguageifyouworkinC.ComparethiswithC,whichsupports.NETthroughextensionstotheoriginallanguage.Theextensionsarecarefullythoughtoutandworkwell,butcodethatuses.NETlibrariesjustlooksdifferentfromnormalC,soprogramsthatbridgetheworldsof.NETandstandardCneverfeelcompletelycoherent.AndthedualpersonalityoftenpresentsdilemmasshouldyouusestandardCcollectionclassesortheonesinthe.NETclasslibrary,forexampleInnative.NETlanguagessuchasC,suchquestionsdonotemerge.Fistheoddoneouthere.Itsafunctionalprogramminglanguage,heavilyinfluencedbyalanguagecalledML.Backin1991,whenyourauthorswerefirstyearstudents,ouruniversityscomputersciencecoursechoseMLforthefirstprogramminglanguagelecturesinpartbecauseitwassoacademicthatnoneofthestudentswouldpreviouslyhavecomeacrossanythinglikeit.Fisstillattheacademicendofthespectrumdespitehavingclimbedfarenoughdowntheivorytowertobeastandardpartofamainstreamdevelopmentenvironment.Itexcelsatcomplicatedcalculationsandalgorithms,andhassomecharacteristicsthatcanhelpwithparallelexecution.However,aswithmanyfunctionallanguages,thecostofmakingsomehardproblemseasieristhatalotofthingsthatareeasyinmoretraditionallanguagesareremarkablyhardinFfunctionallanguagesareadeptatcomplexproblems,butcanbeclumsywithsimpleones.ItseemslikelythatFwillmostlybeusedinscientificorfinancialapplicationswherethecomplexityofthecomputationtobeperformeddwarfsthecomplexityofthecodethatneedstoactontheresultsofthosecalculations.ManagedCodeThe.NETFrameworkprovidesmorethanjustaclasslibrary.Italsoprovidesservicesinsubtlerwaysthatarenotaccessedexplicitlythroughlibrarycalls.Forexample,earlierwementionedthatCcanautomatesomeaspectsofmemorymanagement,anotorioussourceofbugsinCcode.AbandoningheapallocatedobjectsonceyouredonewiththemisacodingerrorinC,butitsthenormalwaytofreethemin.NET.ThisserviceisprovidedbytheCLRthe.NETFrameworksruntimeenvironment.AlthoughtheCcompilerworkscloselywiththeruntimetomakethispossible,providingthenecessaryinformationabouthowyourcodeusesobjectsanddata,itsultimatelytheruntimethatdoestheworkofgarbagecollection.Dependingonwhatsortsoflanguagesyoumayhaveworkedwithbefore,theideathatthelanguagedependsheavilyontheruntimemightseemeithercompletelynaturalorsomewhatdisconcerting.ItscertainlydifferentfromhowCandCworkwiththoselanguages,thecompilersoutputcanbeexecuteddirectlybythecomputer,andalthoughthoselanguageshavesomeruntimeservices,itspossibletowritecodethatcanrunwithoutthem.ButCcodecannotevenexecutewithoutthehelpoftheruntime.Codethatdependsentirelyontheruntimeiscalledmanagedcode.Managedcompilersdonotproducerawexecutablecode.Instead,theyproduceanintermediateformofcodecalledIL,theIntermediateLanguage.Theruntimedecidesexactlyhowtoconvertitintosomethingexecutable.OnepracticalupshotofmanagedcodeisthatacompiledCprogramcanrunonboth32bitand64bitsystemswithoutmodification,andcanevenrunondifferentprocessorarchitecturesitsoftenpossibleforcodethatrunsonanARMbasedhandhelddevicetorununmodifiedonIntelbasedPCs,oronthePowerPCarchitecturefoundintheXbox360gameconsole.IfyoureaJavadeveloper,allofthiswillsoundratherfamiliarjustsubstitutebytecodeforILandthestoryisverysimilar.Indeed,apopularbutsomewhatignorantjokeamongthelessthoughtfulmembersoftheJavacommunityistodescribeCasapoorimitationofJava.WhenthefirstversionofCappeared,thedifferencesweresubtle,butthefactthatJavawentontocopyseveralfeaturesfromCillustratesthatCwasalwaysmorethanamereclone.Thelanguageshavegrownmoreobviouslydifferentwitheachnewversion,butonedifference,presentfromthestart,isparticularlyimportantforWindowsdevelopersChasalwaysmadeiteasytogetatthefeaturesoftheunderlyingWindowsplatform.ContinuityandtheWindowsEcosystemSoftwaredevelopmentplatformsdonotsucceedpurelyontheirownmeritscontextmatters.Forexample,widespreadavailabilityofthirdpartycomponentsandtoolscanmakeaplatformsignificantlymorecompelling.Windowsisperhapsthemoststrikingexampleofthisphenomenon.Anynewprogrammingsystemattemptingtogainacceptancehasaconsiderableadvantageifitcanplugintosomeexistingecosystem,andoneofthebiggestdifferencesbetweenCandJavaisthatCandthe.NETFrameworkpositivelyembracetheWindowsplatform,whileJavagoesoutofitswaytoinsulatedevelopersfromtheunderlyingOS.While.NEToffersfeaturestoeaseintegrationwiththeunderlyingplatform,thereisstillsupportfornonWindowssystems.MicrosoftsSilverlightcanrunCandVB.NETcodeonMac

注意事项

本文(外文翻译--C#介绍.doc)为本站会员(英文资料库)主动上传,人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知人人文库网([email protected]),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。

copyright@ 2015-2017 人人文库网网站版权所有
苏ICP备12009002号-5