Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
.NET Core¿çƽ̨µÄ°ÂÃØ[ÉÏÆª]£ºÀúÊ·µÄ¼ÏËø
 
À´Ô´£ºwww.cnblogs.com ·¢²¼ÓÚ£º 2017-11-20
  3542  次浏览      28
 

΢ÈíÍÆ³öµÄµÚÒ»¸ö°æ±¾µÄ.NET FrameworkÊÇÒ»¸öÃæÏòWindows×ÀÃæºÍ·þÎñÆ÷µÄ»ù´¡¿ò¼Ü£¬ÔÚ´ËÖ®ºó£¬Îª´Ë΢Èí¸ù¾ÝÉ豸×ÔÉíµÄÐèÇó¶Ô.NET Framework½øÐвüô£¬²»¶ÏÍÆ³öÁËÕë¶Ô¾ßÌåÉ豸ÀàÐ͵Ä.NET Framework°æ±¾ÒÔʵÏÖÕë¶ÔÒÆ¶¯¡¢Æ½°åºÍǶÈëʽÉ豸Ìṩ֧³Ö¡£³ý´ËÖ®Í⣬ÔÚWindowsƽ̨֮ÍâÒ»ÖÂÓε´×ÅÒ»Ö»ÌØÁ¢¶ÀÐеĺï×Ó£¨Mono£©¡£.NETƽ̨¿´ÆðÀ´ÐÀÐÀÏòÈÙ£¬¶øÊµ¼ÊÉÏÈ´ÈÕ±¡Î÷ɽ£¬¾ÍÔÚÕâ¸öʱºò΢Èí×ßÁËÒ»ÌõΨһÕýÈ·µÄµÀ·£¬ÄǾÍÊÇ»ùÓÚ¿çÆ½Ì¨ÀíÄîÖØÐÂÉè¼ÆµÄ.NET Core£¬ÒÔ¼°ÓÉ´ËÇý¶¯µØ¶ÔÕû¸ö.NETƽ̨½øÐÐȫв¼¾Ö¡£

.NET Core¿çƽ̨µÄ°ÂÃØ[ÉÏÆª]£ºÀúÊ·µÄ¼ÏËø

.NET Core¿çƽ̨µÄ°ÂÃØ[ÖÐÆª]£º¸´ÓÃÖ®éä

.NET Core¿çƽ̨µÄ°ÂÃØ[ÏÂÆª]£ºÈ«ÐµIJ¼¾Ö

¶ÔÓÚ¼ÆËã»ú´ÓÒµÈËÔ±À´Ëµ£¬¡°Æ½Ì¨£¨Platform£©¡±ÊÇÒ»¸öÎÒÃÇ˾¿Õ¼û¹ßµÄ´ÊÓÔÚ²»Í¬µÄÓï¾³ÖÐËü¾ßÓв»Í¬µÄÓïÒ壬±ÈÈçËü¿ÉÒÔÖ¸´ú²Ù×÷ϵͳ»·¾³ºÍCPU¼Ü¹¹ÀàÐÍ£¬Ò²¿ÉÒÔ±íʾӲ¼þÉ豸ÀàÐÍ¡£¾­¹ý¶àÄêµÄ¿àÐľ­Óª£¬Î¢ÈíÒѾ­ÎªÔÚWindowsƽ̨Ϲ¹½¨ÁËÒ»¸öÍêÕûµÄÖ§³Ö¶àÖÖÉ豸µÄ.NETÉú̬ϵͳ¡£Óë´Ëͬʱ£¬Í¨¹ý½èÖúÓÚMonoºÍXamarin£¬.NETÒѾ­¿ÉÒÔ±»³É¹¦ÒÆÖ²µ½°üÀ¨Mac OS X¡¢Linux¡¢iOS¡¢AndroidºÍFreeBSDµÈ·ÇWindowsƽ̨¡£

Ò»¡¢WindowsϵÄ.NET

΢ÈíÔÚ2002ÄêÍÆ³öÁ˵ÚÒ»¸ö°æ±¾µÄ .NET Framework£¬ÕâÊÇÒ»¸öÖ÷ÒªÃæÏòWindows ×ÀÃæ£¨Windows Forms£©ºÍ·þÎñÆ÷£¨ASP.NET Web Forms£©µÄ»ù´¡¿ò¼Ü¡£ÔÚ´ËÖ®ºó£¬PCµÄ°ÔÖ÷µØÎ»²»¶ÏÊܵ½ÆäËûÉ豸µÄÌôÕ½ÉõÖÁÈ¡´ú£¬Îª´Ë΢Èí¸ù¾ÝÉ豸×ÔÉíµÄÐèÇó¶Ô.NET Framework×÷ÁËÏàÓ¦µÄ¼ò»¯ºÍ¸Ä±ä£¬²»¶ÏÍÆ³öÁËÕë¶Ô¾ßÌåÉ豸ÀàÐ͵Ä.NET Framework£¬Ö÷Á÷µÄ°üÀ¨Windows Phone¡¢Windows Store¡¢SilverlightºÍ.NET Micro FrameworkµÈ£¬ËüÃÇ·Ö±ð¶ÔÒÆ¶¯¡¢Æ½°åºÍǶÈëʽÉ豸Ìṩ֧³Ö¡£ÓÉÓÚÕâЩ²»Í¬µÄ.NET Framework·ÖÖ§ÊÇÍêÈ«¶ÀÁ¢µÄ£¬ÕâʹÎÒÃǺÜÄÑ¿ª·¢Ò»¸öÖ§³Ö¶àÖÖÉ豸µÄ¡°¿ÉÒÆÖ²£¨Portable£©¡±Ó¦Óá£

.NET FrameworkµÄ²ã´Î½á¹¹

Õë¶Ô²»Í¬É豸.NET FrameworkµÄ¶ÀÁ¢ÐÔµ¼ÖÂÁËÔںܶàÇé¿öÏÂÎÒÃDz»µÃ²»Õë¶Ô¾ßÌåµÄÉ豸ƽ̨½øÐбà³Ì£¬¿çÉ豸ƽ̨´úÂëµÄÖØÓÃÏÔµÃÒì³£À§ÄÑ¡£ÎªÁËÈöÁÕßÅóÓÑÃǶÔÕâ¸öÎÊÌâ¾ßÓÐÉî¿ÌµØÀí½â£¬ÎÒÃÇ´Ó.NET FrameworkµÄ½á¹¹¿ªÊ¼½²Æð¡£´Ó½á¹¹×é³ÉµÄ½Ç¶ÈÀ´½²£¬.NET FrameworkÓÉÈçÏÂͼËùʾµÄÁ½¸ö²ãÎö¹¹³É£¬ËüÃÇ·Ö±ðÊÇÌṩÔËÐл·¾³µÄCLR£¨Common Language Runtime£©ºÍÌṩAPIµÄFCL£¨Framework Class Library£©¡£

CLRÖ®ÓÚ.NETµÈͬÓÚJVMÖ®ÓÚJava£¬ËüÊÇ.NETÐéÄâ»ú¡£×÷Ϊһ¸öÔËÐÐʱ£¨Runtime£©£¬CLRΪ³ÌÐòµÄÖ´ÐÐÌṩһ¸öÍйܣ¨Managed£©µÄÖ´Ðл·¾³£¬ËüÊÇ.NET FrameworkµÄÖ´ÐÐÒýÇæ£¬ÎªÍйܳÌÐòµÄÖ´ÐÐÌṩÄÚ´æ·ÖÅä¡¢À¬»ø»ØÊÕ¡¢°²È«¿ØÖÆ¡¢Òì³£´¦ÀíºÍ¶àÏ̹߳ÜÀíµÈ·½ÃæµÄ·þÎñ¡£CLRÊÇ.NET FrameworkµÄ×Ó¼¯£¬µ«ÊÇÁ½ÕßÈ´¾ßÓв»Í¬µÄ°æ±¾²ßÂÔ¡£µ½Ä¿Ç°ÎªÖ¹£¬Î¢Èí½ö½ö·¢²¼ÁË4¸ö°æ±¾µÄCLR£¬ËüÃÇ·Ö±ðÊÇ1.0¡¢1.1¡¢2.0ºÍ4.0£¬.NET Framework 1.0ºÍ1.1·Ö±ð²ÉÓÃCLR 1.0ºÍ1.1£¬CLR 2.0±».NET Framework 2.0ºÍ3.x¹²Ïí£¬.NET Framework 4.xϵÄÔËÐÐʱ¾ùΪCLR 4.0¡£

FCLÊÇÒ»¸öÖ¼ÔÚΪ¿ª·¢ÈËÔ±ÌṩAPIµÄÀà¿â£¬ÓÉËüÌṩµÄAPIÓÖ¿ÉÒÔ»®·ÖΪÈçÉÏͼËùʾµÄÁ½¸ö²ã´Î¡£´¦ÓÚ×îµ×²ãµÄ²¿·Ö±»³ÆÎªBCL£¨Basic Class Library£©£¬ËüÌṩÁËһϵÁлù´¡ÀàÐÍ£¬ËüÃÇÓÃÓÚÃèÊöһЩ»ù±¾µÄÊý¾ÝÀàÐͺÍÊý¾Ý½á¹¹£¨±ÈÈç×Ö·û´®¡¢Êý×Ö¡¢ÈÕÆÚ/ʱ¼äºÍ¼¯ºÏµÈ£©ºÍÌṩһЩ»ù´¡ÐԵIJÙ×÷£¨±ÈÈçIO¡¢Õï¶Ï¡¢·´Éä¡¢Îı¾±àÂë¡¢°²È«¿ØÖÆ¡¢¶àÏ̹߳ÜÀíµÈ£©¡£ÔÚBCLÖ®ÉϵÄÔòÊÇÃæÏò¾ßÌåÓ¦ÓÃÀàÐ͵ÄAPI£¬ÎÒÃÇ´óÌåÉÏ¿ÉÒÔ½«ËüÃÇ»®·ÖΪÈëÏÂÈýÖÖÀàÐÍ£º

ÃæÏòÓ¦Ó㨱ÈÈçASP.NET¡¢WPFºÍWindows FormsµÈ£©

ÃæÏò·þÎñ£¨±ÈÈçWCF¡¢WFºÍData ServicesµÈ£©

ÃæÏòÊý¾Ý£¨±ÈÈçADO.NET¡¢Entity FrameworkºÍLinQ to SQLµÈ£©

ÎÒÃÇÒ²¿ÉÒÔ²ÉÓÃÁíÒ»ÖÖ·½Ê½¶ÔFCL½øÐÐÖØÐ»®·Ö£º½«ÃæÏòijÖÖÓ¦ÓûòÕß·þÎñÀàÐÍ£¨±ÈÈçWindows Forms¡¢WPF¡¢ASP.NETºÍWCFµÈ£©µÄ²¿·Ö³ÉΪAppModel£¬ÄÇôÕû¸ö.NET FrameworkÔò¾ßÓÐÁËÈçÏÂͼËùʾµÄÈý²ã½á¹¹¡£

´ó¶øÈ«µÄBCL

ÎÒÃÇÖªµÀ΢ÈíµÄ.NETÕ½ÂÔÊÇÔÚǧìûÄêÌá³öÀ´µÄ£¬Á½ÄêÖ®ºóµÚÒ»¸ö.NET Framework°æ±¾ºÍIDE£¨VS.NET 2002£©ËæÖ®ÎÊÊÀ¡£ÔÚÖ®ºóµÄ10¶àÄêÖУ¬Ò»ÏµÁа汾µÄ.NET Framework±»ÏȺóÍÆ³ö¡£Î¢ÈíĿǰ·¢²¼µÄ×îÐÂ.NET Framework°æ±¾Îª4.7£¬ÏÂͼΪÄãչʾÁËÕû¸ö.NET Framework²»¶ÏÉý¼¶µÄÑݽø¹ý³Ì£¬ÒÔ¼°¸÷¸ö°æ±¾ÌṩµÄÖ÷ÒªÌØÐÔ¡£

ÉÏͼ¹´ÀÕ³ö.NET FrameworkÕâЩÄêµÄ·¢Õ¹Àú³ÌÖ¼ÔÚ˵Ã÷Ò»¸öÎÊÌ⣺×÷ΪÕû¸ö.NETƽ̨µÄ»ù´¡¿ò¼Ü£¬.NET FrameworkÔÚ²»¶ÏÉý¼¶¹ý³ÌÖÐÊÇ×Ô¼º±äµÃ¸ü¼ÓÇ¿´óºÍÍ걸£¬µ«ÊÇÔÚÁíÒ»·½ÃæÒ²ÊÇ×Ô¼º±äµÃÔ½À´Ô½Ó·Öס£Ëæ×Ű汾µÄ²»¶ÏÉý¼¶£¬¹¹³É.NET FrameworkµÄÓ¦ÓÃÄ£ÐÍ¡¢BCLºÍÔËÐÐʱ£¨CLR£©¶¼ÔÚ²»¶ÏµØÅòÕÍ£¨.NET Framework 2.0/3.xºÍ.NET Framework 4.x·Ö±ð²ÉÓÃCLR 2.0ºÍCLR 4.0£©£¬ÏÂͼºÜÖ±¹ÛµØËµÃ÷ÁËÕâ¸öÎÊÌâ¡£

ÎÒÃÇÖªµÀ³ÌÐò¼¯ÊÇ.NET×î»ù±¾µÄ²¿Êðµ¥Ôª£¬²»ÂÛ¶¨ÒåÆäÖеĶàÉÙÀàÐͱ»Ê¹Óã¬CLR×ÜÊǽ«Õû¸ö³ÌÐò¼¯¼ÓÔØµ½ÄÚ´æÖС£¶ÔÓÚÉÏÃæ½éÉܵĹ¹³É.NET FrameworkµÄÈý¸ö²ã´ÎÀ´Ëµ£¬Ó¦ÓÃÄ£ÐÍÊÇÕë¶Ô¾ßÌåÓ¦ÓÃ/·þÎñÀàÐ͵ģ¬ÏàÓ¦µÄAPIͨ¹ý¶ÀÁ¢µÄ³ÌÐò¼¯À´³ÐÔØ£¨±ÈÈçASP.NETµÄºËÐÄ¿ò¼Ü¶¨ÒåÔÚ³ÌÐò¼¯System.Web.dllÖУ¬³ÐÔØÕû¸öWindows Forms¿ò¼ÜµÄ³ÌÐò¼¯ÔòÊÇSystem.Windows.Forms.dll£©£¬ËùÒÔ.NET FrameworkµÄ¸÷¸öÓ¦ÓÃÄ£ÐÍÊÇÏ໥¶ÀÁ¢µÄ¡£ÔÚ¿ª·¢Ä³ÖÖÀàÐ͵ÄÓ¦ÓÃʱ£¬ÎÒÃÇÖ»ÐèÒªÒýÓÃÓ¦ÓÃÄ£ÐͶÔÓ¦µÄ³ÌÐò¼¯¾Í¿ÉÒÔÁË£¬Ò²¾ÍÊÇ˵ÎÒÃÇ¿ª·¢Ò»¸öWindows FormsÓ¦Óã¬ÊDz»ÐèҪȥÒýÓÃSystem.Web.dll³ÌÐò¼¯µÄ¡£

µ«ÊÇBCLµÄ¾ø´ó²¿·ÖºËÐÄ´úÂë¶¼¶¨ÒåÔÚmscorlib.dllÕâ¸öºËÐijÌÐò¼¯ÖУ¬ËùÒÔBCL»ù±¾ÉÏÀ´ËµÊÇ×÷Ϊһ¸ö²»¿É·Ö¸îµÄÕûÌå´æÔÚÓÚ.NET FrameworkÖ®ÖС£.NET FrameworkÐèÒª¶ÔÔËÐÐÔÚ±¾»ú¸÷ÖÖÀàÐ͵ÄÍйܳÌÐòÌṩ֧³Ö£¬Õë¶ÔËùÓÐÓ¦ÓÃÀàÐ͵Ļù´¡ÀàÐ;ùÐèÒª¶¨ÒåÔÚBCLÖС£ÔںܶàÇé¿öÏ£¬ÎÒÃǵÄÓ¦ÓÿÉÄܽö½öÐèҪʹÓõ½BCLÒ»¸öºÜСµÄ×Ó¼¯£¬µ«ÊÇÎÒÃDz»µÃ²»½«¶¨ÒåÕû¸ö³ÌÐò¼¯¶¼¼ÓÔØµ½ÄÚ´æÖ®ÖС£

Ò»·½ÃæBCL×ÜÊÇ×÷Ϊһ¸ö²»¿É·Ö¸îµÄÕûÌå±»¼ÓÔØ£¬ÁíÒ»·½ÃæÆä×ÔÉíµÄ³ß´çÒ²ÔÚËæ×Å.NET FrameworkµÄÉý¼¶¶ø²»¶ÏµØÅòÕÍ¡£¶ÔÓÚ¿Í»§¶ËÓ¦Ó㨱ÈÈçWindows Forms/WPFÓ¦Óã©À´Ëµ£¬ÕâÓ¦¸Ã²»ËãÊÇÒ»¸ö´ó²»Á˵ÄÎÊÌ⣬µ«ÊǶÔÓÚÒÆ¶¯ºÍ·þÎñ¶ËÓ¦Ó㨰üÀ¨²¿ÊðÓÚÔÆ¶ËÓ¦Óã©À´Ëµ£¬ÓÉ´Ë´øÀ´µÄ¶ÔÐÔÄܺÍÍÌÍÂÁ¿µÄÏìÓ¦¾Í³ÉÁËÒ»¸ö²»µÃ²»¿¼ÂǵÄÎÊÌâ¡£

ÀíÏëµÄBCLÏû·Ñ·½Ê½ÊÇ¡°°´ÐèÏû·Ñ¡±£¬ÎÒÃÇÐèÒªÄǸö²¿·Ö¾Í¼ÓÔØÄǸö²¿·Ö¡£ÓÉÓÚ×÷Ϊ¶ÀÁ¢²¿Êðµ¥ÔªµÄ³ÌÐò¼¯×ÜÊÇ×÷Ϊһ¸öÕûÌå±»CLR¼ÓÔØµ½ÄÚ´æÖУ¬ÒªÍêȫʵÏÖÕâÖÖÀíÏëµÄBCLÏû·Ñ·½Ê½£¬Î¨Ò»µÄ°ì·¨¾ÍÊǽ«Æä»®·ÖΪÈô¸ÉСµÄµ¥Ôª£¬²¢·Ö±ð¶¨Òåµ½¶ÀÁ¢µÄ³ÌÐò¼¯ÖС£³ý´ËÖ®Í⣬°´ÕÕÄ£¿é»¯µÄÔ­Ôò¶ÔÕû¸öBCL½øÐвð·ÖÒ²Êǰ汾Éý¼¶±äµÃ¸ü¼ÓÈÝÒ×£¬Èç¹ûÏÖÓа汾¾ßÓÐÐèÒªÐÞ¸´µÄBug£¬»òÕßÐÔÄÜÐèÒª¸Ä½ø£¬ÄÇôֻÐèÒª¸Ä¶¯²¢Éý¼¶ÏàÓ¦µÄÄ£¿é¾Í¿ÉÒÔÁË¡£ÏÂͼչʾÁ˾ßÓÐÄ£¿é»¯BCLµÄ.NET Framework²ã¼¶½á¹¹¡£

¶à¸öÉ豸ƽ̨¶À×ÔΪÕþ

¾­¹ý¶àÄêµÄ¾­Óª£¬Î¢ÈíÒѾ­ÎªÎÒÃǹ¹½¨ÁËÒ»¸öÍêÕûµÄÖ§³Ö¶àÖÖÉ豸µÄ.NETÉú̬ϵͳ£¬´Ó×î³õµ¥´¿µÄ×ÀÃæÆ½Ì¨£¬Öð½¥À©Õ¹µ½Òƶ¯¡¢Æ½°åºÍǶÈëʽµÈƽ̨¡£É豸ÔËÐл·¾³µÄ²îÒìÐÔµ¼ÖÂÁËÕë¶ÔËüÃǵÄÓ¦Óò»Äܹ¹½¨ÔÚÒ»¸öͳһµÄ.NET Frameworkƽ̨ÉÏ£¬ËùÒÔ΢Èí²ÉÓöÀÁ¢µÄ.NET Frameworkƽ̨À´¶ÔËüÃÇÌṩÕë¶ÔÐÔµÄÖ§³Ö¡£¾ÍĿǰÀ´Ëµ£¬³ýÁËÖ§³ÖWindows ×ÀÃæºÍ·þÎñÆ÷É豸µÄ¡°ÍêÕû°æ .NET Framework¡±Ö®Í⣬΢Èí»¹ÏȺóÍÆ³öÁËһϵÁС°Ñ¹Ëõ°æ.NET Framework¡±£¬ÕâÆäÖоͰüÀ¨Windows Phone¡¢Windows Store¡¢SilverlightºÍ.NET Micro FrameworkµÈ£¬ËüÃÇ·Ö±ð¶ÔÒÆ¶¯¡¢Æ½°åºÍǶÈëʽÉ豸Ìṩ֧³Ö¡£

ÕâЩ.NET Framework²¢²»Êǽö½öÔÚAppModel²ã´ÎÌṩÕë¶ÔÏàÓ¦É豸ƽ̨µÄ¿ª·¢¿ò¼Ü£¬ËüÃÇÌṩµÄBCLºÍRuntimeÒ²ÊDz»Í¬¡£»»¾ä»°Ëµ£¬ÕâЩ.NET Frameworkƽ̨ÊÇÍêÈ«¶ÀÁ¢µÄ£¬²»Í¬.NET Frameworkƽ̨֮¼äµÄ¶ÀÁ¢ÐÔºÜÖ±¹ÛµØÌåÏÖÔÚÏÂͼ֮ÖС£Ä¿±êƽ̨µÄ¶ÀÁ¢ÐÔµ¼ÖÂÎÒÃǺÜÄѱàдÄܹ»ÔÚ¸÷¸öƽ̨¸´ÓõĴúÂ룬¹ØÓÚÕâÒ»µãÎÒÃÇ»áÔÚÏÂÃæÒ»½Ú¡°¸´ÓÃÖ®ÉË¡±ÖÐ×öÖØµãÌÖÂÛ¡£

¶þ¡¢·ÇWindowsϵÄ.NET

¾¡¹Ü΢Èí×ÔÉí¶àÄêÒÔÀ´»ù±¾É϶¼Ö»ÔÚWindowsƽ̨ϵÄһĶÈý·ÖµØÉϽøÐиûÔÅ£¬µ«ÊÇ.NET Ôòͨ¹ýMonoºÍXamarin½«´¥½ÇÑÓÉìµ½ÆäËûƽ̨£¨Mac OS X¡¢Linux¡¢iOSºÍAndroidµÈ£©¡£ËäȻĿǰ×öµÃ²¢²»ËãÍêÃÀ£¬µ«ÊÇÎÒÃÇ¿ÉÒÔ˵.NET¾ß±¸¿çƽ̨µÄÄÜÁ¦¡£

´ÓCLI̸Æð

.NET¿çƽ̨µÄÄÜÁ¦½¨Á¢ÔÚÒ»ÖÖ¿ª·ÅµÄ±ê×¼»òÕ߹淶֮ÉÏ£¬Õâ¸öËùνµÄ±ê×¼/¹æ·¶¾ÍÊÇCLI¡£CLIµÄÖÆ¶¨Ö¼ÔÚ½â¾öÕâÑùÒ»¸öÎÊÌ⣺Óɲ»Í¬£¨¸ß¼¶£©±à³ÌÓïÑÔ¿ª·¢µÄ.NETÓ¦ÓÃÄܹ»ÔÚÎÞÐèÈκθü¸ÄµÄÇé¿öÏÂÔËÐÐÓÚ²»Í¬µÄϵͳ»·¾³Ï¡£ÒªÊµÏÖÕâ¸öÄ¿±ê£¬±ØÐèÓÐЧµØ½â¾öÕâÀïÉæ¼°µ½Á½ÖÖÀàÐ͵IJîÒ죬¼´±à³ÌÓïÑԵIJîÒìºÍÔËÐÐʱ»·¾³µÄ²îÒì¡£±à³ÌÓïÑÔÖ®¼äÄܹ»ÊµÏÖÏ໥¼æÈÝ¡¢ÔËÐÐʱ»·¾³Äܹ»µÃµ½Í³Ò»£¬¿çƽ̨µÄΰҵ·½ÄÜʵÏÖ¡£

CLIÈ«³ÆÎªCommon Language Infrastructure£¬ÆäÖÐCommon Language˵µÄÊÇÓïÑÔ£¬¾ßÌåÀ´ËµÊÇÒ»ÖÖͨÓÃÓïÑÔ£¬ËüÖ¼ÔÚ½â¾ö¸÷Öָ߼¶¿ª·¢ÓïÑԵļæÈÝÐÔÎÊÌâ¡£InfrastructureÖ¸µÄÔòÊÇÔËÐÐʱ»·¾³£¬Ö¼ÔÚÃֺϲ»Í¬Æ½Ì¨Ö®¼äÖ´Ðз½Ê½µÄ²îÒì¡£Common LanguageÊǶԳÐÔØÓ¦ÓõĶþ½øÖÆÄÚÈݵľ²Ì¬ÃèÊö£¬InfrastructureÔò±íʾ¶¯Ì¬Ö´ÐÐÓ¦ÓõÄÒýÇæ£¬ËùÒÔCLIΪ¿ÉÖ´ÐдúÂëºÍÖ´ÐÐÒýÇæÈ·Á¢Ò»¸öͳһµÄ±ê×¼¡£

±à³ÌÓïÑÔÓбàÒëÐͺͽâÊÍÐÍÖ®±ð£¬Ç°ÕßÐèҪͨ¹ý±àÒëÆ÷½øÐбàÒëÒÔÉú³É¿ÉÖ´ÐдúÂ룬CLIÉæ¼°µÄCommon LanguageÖ¸µÄÊDZàÒëÐÍÓïÑÔ¡£ÒªÊµÏÖÕæÕýµÄ¿çƽ̨£¬×îÖÕÐèÒª½â¾öµÄÊÇ¿ÉÖ´ÐдúÂëÔÚ²»Í¬Æ½Ì¨Ö®¼äµÄ¼æÈݺͿÉÒÆÖ²µÄÎÊÌ⣬¶ø±à³ÌÓïÑÔµÄÑ¡Ôñ½ö½ö¾ö¶¨ÁËÓ¦ÓÃÔ´ÎļþµÄԭʼ״̬£¬Ó¦ÓõļæÈÝÐԺͿÉÒÆÖ²ÐÔÓɱàÒëºóµÄ½á¹ûÀ´¾ö¶¨¡£Èç¹ûͨ¹ý²»Í¬±à³ÌÓïÑÔ¿ª·¢µÄÓ¦ÓÃͨ¹ýÏàÓ¦µÄ±àÒëÆ÷±àÒëºóÄܹ»Éú³É±ê×¼µÄÄ¿±ê´úÂ룬ÄÇô±à³ÌÓïÑÔÖ®¼äµÄ²îÒì¾Í²»ÔÙÊÇÒ»¸öÎÊÌâÁË¡£

°´ÕÕCLIµÄ¹æ¶¨£¬ÓÃÀ´ÃèÊö¿ÉÖ´ÐдúÂëµÄÊÇÒ»ÖÖ½Ð×öCIL£¨Common Intermediate Language£©µÄÓïÑÔ£¬ÕâÊÇÒ»ÖÖ½éÓڸ߼¶ÓïÑԺͻúÆ÷ÓïÑÔÖ®¼äµÄÖмäÓïÑÔ¡£ÈçÏÂͼËùʾ£¬ËäÈ»³ÌÐòÔ´ÎļþÓɲ»Í¬µÄ±à³ÌÓïÑÔ±àд£¬µ«ÊÇÎÒÃÇ¿ÉÒÔ½èÖúÏàÓ¦µÄ±àÒëÆ÷½«Æä±àÒë³ÉCIL´úÂë¡£Ô­ÔòÉϽ²£¬ÎÒÃÇ¿ÉÒÔÉè¼Æ³öеıà³ÌÓïÑÔ²¢½«Æä¼ÓÈëµ½.NET´ó¼ÒÍ¥ÖУ¬Ö»ÐèÅäÒÔÏàÓ¦µÄ±àÒëÆ÷Éú³ÉͳһµÄCIL´úÂë¼´¿É¡£ÎÒÃÇÒ²¿ÉÒÔΪÏÖÓеÄij¸ö±à³ÌÓïÑÔÉè¼ÆÒ»ÖÖÒÔCILΪĿ±êÓïÑԵıàÒëÆ÷ʹ֮³ÉΪ.NETÓïÑÔ¡£CILÊÇÒ»ÃÅÖмäÓïÑÔ£¬Í¬Ê±Ò²ÊÇÒ»ÃÅÃæÏò¶ÔÏóµÄÓïÑÔ£¬ËùÒÔ¶ÔÓÚÒ»¸öCIL³ÌÐòÀ´Ëµ£¬ÀàÐÍÊÇ»ù±¾µÄ×é³Éµ¥ÔªºÍºËÐÄÒªËØ¡£Î¢ÈíÖÆ¶¨ÁËÒ»¸öÃûΪCTS£¨Common Type System£©µÄ¹æ·¶ÎªCLIÈ·Á¢ÁËÒ»¸öͳһµÄÀàÐÍϵͳ¡£

±à³ÌÓïÑԵIJîÒìͨ¹ý±àÒëÆ÷Õâ¸öÊÊÅäÆ÷µÃÒÔ¡°Í¬Ò»»¯¡±£¬ÔËÐл·¾³µÄ²îÒìÔò¿ÉÒÔͨ¹ýÐéÄâ»ú£¨VM£ºVirtual Machine£©¼¼ÊõÀ´½â¾ö¡£ÐéÄâ»úÊÇCILµÄÖ´ÐÐÈÝÆ÷£¬ËüÄܹ»ÔÚÖ´ÐÐCIL´úÂëµÄ¹ý³ÌÖвÉÓü°Ê±±àÒëµÄ·½Ê½½«Ëü¶¯Ì¬µØ·­Òë³ÉÓ뵱ǰִÐл·¾³ÍêȫƥÅäµÄ»úÆ÷Ö¸Áî¡£ÐéÄâ»úÆÁ±ÎÁ˲»Í¬²Ù×÷ϵͳ֮¼äµÄ²îÒ죬ÈÃÄ¿±ê³ÌÐò¿ÉÒÔ²»×öÈκÎÐ޸ĵÄÇé¿öϾÍÄÜÔËÐÐÓÚ²»Í¬µÄµ×²ãÖ´Ðл·¾³ÖУ¬¶øCILʵ¼ÊÉÏÊÇÒ»ÖÖÐéÄâ»úÓïÑÔ¡£

´ÓʵÏÖÔ­ÀíÀ´¿´£¬ÈÃ.NETÄܹ»¿çƽ̨Æäʵ²»ÄÑ£¬µ«ÊÇÈø÷ÖÖÏà¹ØµÄÈËÔ±²ÎÓë½øÐÐÒÔ¹¹½¨Ò»¸ö½¡¿µ¶øÍêÉÆµÄ¿çƽ̨.NETÉú̬ȦÔò×¢¶¨²»ÊÇÒ»¼þÒ»õí¶ø¾ÍµÄÊÂÇ飬ÕâÀïÉæ¼°µÄÀûÒæÏà¹Ø·½°üÀ¨±à³ÌÓïÑÔµÄÉè¼ÆÕߣ¬ÒÔ¼°Éè¼ÆºÍ¿ª·¢±àÒëÆ÷¡¢ÐéÄâ»ú¡¢IDEÒÔ¼°ÆäËûÏà¹Ø¹¤¾ßµÄÈË£¬µ±È»»¹°üÀ¨¹ã´óµÄÓ¦Óÿª·¢Õß¡£¿çƽ̨.NETÉú̬»·¾³±ØÐ뽨Á¢ÔÚÒ»¸ö±ê×¼µÄ¹æ·¶Ö®ÉÏ£¬ËùÒÔ΢ÈíΪ´ËÖÆ¶¨ÁËCLI£¬È»ºóÌá½»¸øÅ·ÖÞ¼ÆËã»úÖÆÔìÉÌЭ»á£¨ECMA£ºEuropean Computer Manufacturers Association£©²¢±»ºóÕß½ÓÊÜ£¬³ÉΪÁËÒ»¸ö±àºÅΪ335µÄ¹æ·¶£¬ËùÒÔCLIÓÖ±»³ÆÎªECMA-335£¨Ë³±ã˵һÏ£¬ECMA»¹½ÓÊÜÁË΢ÈíΪC#ÕâÃDZà³ÌÓïÑÔÖÆ¶¨µÄ¹æ·¶£¬¼´ECMA-334£©¡£

MonoÓëXamarin

CLI£¨ECMA-335£©ÕâÒ»¿ª·ÅµÄ¹æ·¶ÔÚ.NETµ®ÉúµÄÄÇÒ»¿ÌÆð¾Í¸³ÓèÁËËü¿çƽ̨µÄ»ùÒò£¬µ«ÊDZ»ÀÓÉÏWindowsÕâÒ»Ó¡¼ÇµÄ΢ÈíËÆºõ¸ù±¾¾Í²»ÔøÏë¹ý½«.NETÍÆ¹ãµ½ÆäËûµÄƽ̨£¬ÕæÕýÍê³ÉÕâһʹÃüÁËÊÇÒ»¸ö½Ð×öMonoµÄÏîÄ¿¡£ËäÈ»MonoÒѾ­ÊÇÒ»¸ö²»ËãÄêÇáµÄÏîÄ¿ÁË£¬µ«ÊÇÒÀÈ»ÓкܶàÈ˶ÔËü²»ÊǺÜÁ˽⣬ËùÒÔÎÒÃDz»·ÁÀ´¼òµ¥½éÉÜÒ»ÏÂËüµÄÀúÊ·¡£

1999Ä꣬Miguel de Icaza´´½¨ÁËÒ»¼Ò½Ð×öXimianµÄ¹«Ë¾£¬ÕâÊÇÒ»¼ÒÖ¼ÔÚΪGNOMEÏîÄ¿£¨ÕâÊÇÒ»¸öΪÀàUnixϵͳÌṩ×ÀÃæ»·¾³µÄGNUÏîÄ¿£¬GNOMEÊÇĿǰLinux×î³£ÓõÄ×ÀÃæ»·¾³Ö®Ò»£©¿ª·¢Èí¼þºÍÌṩ֧³ÖµÄ¹«Ë¾¡£2000Äê6Ô£¬Î¢ÈíÕýʽ·¢²¼.NET Framework£¬Miguel de Icaza±»¸ö¡°»ùÓÚ»¥ÁªÍøµÄȫпª·¢Æ½Ì¨¡±£¨.NETÔÚ·¢²¼µÄʱºò±»±ê°ñΪ¡°a new platform based on Internet standards¡±£©ÉîÉîÎüÒý¡£Í¬Äê11Ô£¬Î¢Èí·¢²¼ÁËCLI¹æ·¶£¨ECMA-335£©²¢Îª¹«ÖÚ¿ª·ÅÁ˶ÀÁ¢ÊµÏÖµÄÐí¿É£¬Miguel de Icaza´ÓÖп´µ½ÁËÉÌ»ú£¬ÒòΪÕâʵ¼ÊÉÏΪ.NET×ßÏò·ÇWindowsƽ̨ÌṩÁË¿ÉÄÜ¡£Miguel de IcazaÔÚ2001Äê7Ô¿ªÆôÁËMonoÕâ¸öÏîÄ¿£¬²¢²ÉÓÃC#×÷ΪÖ÷ÒªµÄ¿ª·¢ÓïÑÔ£¨Ä¿Ç°Ö§³ÖVB .NET£©£¬ËùÒÔÕë¶ÔCLIºÍC#µÄÁ½¸öECMA¹æ·¶Êǹ¹½¨MonoÏîÄ¿µÄÀíÂÛ»ù´¡£¬Èç¹û·ÃÎÊMonoµÄ¹Ù·½ÍøÕ¾£¬ÎÒÃǻᷢÏÖËüÊÇÕâÑù¶¨ÒåMonoµÄ£º¡°Mono is an open source implementation of Microsoft's .NET Framework based on the ECMA standards for C# and the Common Language Runtime.¡±

MonoµÄʹÃü²»½ö½ö¾ÖÏÞÓÚÄܹ»½«.NETÓ¦ÓÃÕý³£ÔËÐÐÔÚÆäËû·ÇWindowsƽ̨£¬Ëü»¹Ï£Íû°ïÖú¿ª·¢ÈËÔ±Äܹ»Ö±½ÓÔÚÆäËûƽ̨½øÐÐ. NETÓ¦ÓõĿª·¢£¬ËùÒÔMono²»½ö½ö¸ù¾ÝCLIΪÏàÓ¦µÄƽ̨¿ª·¢ÁË×÷ΪÐéÄâ»úµÄCLRºÍ±àÒëÆ÷£¬»¹Ìṩ¸øÁËIDEºÍÏàÓ¦µÄ¿ª·¢¹¤¾ß£¨±»³ÆÎªMonoDevelop£©¡£MonoµÄµÚÒ»¸öÕýʽ°æ±¾£¨Mono 1.0£©ÔÚÏîÄ¿¿ªÆô²î²»¶àÈýÄêÖ®ºó£¨2004Äê6Ô£©·¢²¼¡£

2003Äê8Ô£¬Ximian±»ÁíÒ»¼Ò½Ð×öNovellµÄ¹«Ë¾ÊÕ¹º£¬ºóÕß¼ÌÐøÖ§³ÖMiguel de Icaza¿ª·¢MonoÏîÄ¿£¬ÔÚÕâÆÚ¼äMonoÂ½ÐøÍÆ³öÁËÈô¸ÉMono 2.x°æ±¾¡£2011Äê4Ô£¬NovellÓÖ±»ÁíÒ»¼þ½Ð×öAttachmateµÄ¹«Ë¾ÊÕ¹º£¬ºóÕß¾ö¶¨·ÅÆúMono£¬ÓÚÊÇMiguel de Icaza´ø×ÅÕû¸öMonoÍŶӳÉÁ¢ÁËÒ»¸ö¼ÒÐµĹ«Ë¾£¬ÆðÃûΪXamarin¡£Í¬Äê7Ô£¬XamarinÏòÔ­À´µÄĸ¹«Ë¾NovellÄõ½ÁËMonoµÄ¿ª·¢Ðí¿É¡£ÔÚ´ËÖ®ºóµÄ¼¸ÄêÄÚ£¬XamarinÏȺ󷢲¼ÁËMono 3.x¡¢Mono 4.0ºÍMono 5.x£¬Ä¿Ç°µÄ×îа汾Ϊ5.4¡£MonoÏÖ½ñµÄÄ¿±êÊÇʵÏÖ.NET 4.5³ýWPF¡¢WFºÍ²¿·ÖWCFÍâµÄËùÓÐÌØÐÔ£¬Ä¿Ç°È±Ê§µÄ²¿·ÖµÄ¿ª·¢ÕýÔÚͨ¹ýÒ»¸ö½Ð×öOlive£¨MonoµÄÒ»¸ö×ÓÏîÄ¿£©µÄÏîÄ¿½øÐÐ×Å¡£

ÔÚMonoÏîÄ¿µÄ»ù´¡Ö®ÉÏ£¬Xamarin¿ªÊ¼¿ª·¢ÒÔй«Ë¾ÃüÃûµÄ²úÆ·£¬ÆäÖÐ×îÖØÒª°æ±¾µ±Êô2013Äê2Ô·¢²¼µÄXamarin 2.0¡£Xamarin 2.0ÓÉXamarin.Android¡¢Xamarin.iOSºÍXamarin.Windows×é³É£¬ËüÃÇʹÎÒÃÇ¿ÉÒÔ²ÉÓÃC#¿ª·¢Õë¶ÔAndroid¡¢iOSºÍWindowsµÄNativeÓ¦Óᣳý´ËÖ®Í⣬Xamarin 2.0»¹Ð¯´ø×ÅÒ»¸ö½Ð×öXamarin Studio£¨MonoDevelopµÄÉý¼¶°æ£©µÄIDEÒÔ¼°ÓëһЩÓëVisual Studio¼¯³ÉµÄ¹¤¾ß¡£2014Äê5ÔÂXamarin 3.0·¢²¼£¬×÷ΪÆäºËÐĵÄXamarin.FormsΪ²»Í¬Æ½Ì¨µÄNativeÓ¦ÓÃÌṩͳһµÄ¿Ø¼þ£¬Ò²¾ÍÊÇ˵ÎÒÃÇÀûÓÃXamarin.Forms API¿ª·¢NativeÓ¦ÓÿÉÒÔÔÚÎÞÐè×öÈκθıäµÄÇé¿öÏÂÔËÐÐÔÚAndroid¡¢iOSºÍWindowsÉÏ¡£

2016Äê2Ô£¬Î¢ÈíºÍXamarinÐû²¼Ë«·½Ç©ÊðЭÒé´ï³ÉÁËǰÕßÕë¶ÔºóÕßµÄÊÕ¹º¡£ÔÚ2016ÄêBuild´ó»áÉÏ£¬Î¢ÈíÐû²¼½«Õû¸öXamarin SDK¿ªÔ´£¬²¢½«Ëü×÷Ϊһ¸öÃâ·ÑµÄ¹¤¾ß¼¯³Éµ½Visual StudioÖУ¬Visual StudioÆóÒµ°æµÄÓû§»¹¿ÉÒÔÃâ·ÑʹÓÃXamarinÆóÒµ°æµÄËùÓÐÌØÐÔ¡£

×ÛÉÏËùÊö£¬ÓÉÓÚ.NETÊǽ¨Á¢ÔÚCLIÕâÒ»±ê×¼µÄ¹æ·¶Ö®ÉÏ£¬ËùÒÔËüÌìÉú¾Í¾ßÓÐÁË¡°¿çƽ̨¡±µÄ»ùÒò¡£ÔÚ΢Èí·¢²¼Á˵ÚÒ»¸öÕë¶Ô×ÀÃæºÍ·þÎñÆ÷ƽ̨µÄ.NET FrameworkÖ®ºó£¬Ëü¿ªÊ¼ ¡°Àִ˲»Æ£¡± µØ¶ÔÕâ¸öÍêÕû°æµÄ.NET Framework½øÐв»Í¬·¶Î§ºÍ²ã´ÎµÄ ¡°Ñ˸ £¬½ø¶øÔì¾ÍÁËÏñWindows Phone¡¢Windows Store¡¢SilverlightºÍ.NET Micro FrameworkµÄѹËõ°æµÄ.NET Framework¡£´ÓÕâ¸öÒâÒåÉϽ²£¬MonoºÍËüÃDz¢Ã»Óб¾ÖʵÄÇø±ð£¬Î¨Ò»²»Í¬µÄÊÇMonoÕæÕýÍ»ÆÆÁËWindowsƽ̨µÄ·ªÀé¡£°üÀ¨MonoÔÚÄÚµÄÕâЩ·ÖÖ§´Ù³ÉÁË.NETµÄ·±ÈÙ£¬µ«ÎÒÃǶ¼ÖªµÀÕâ½ö½öÊÇÒ»ÖÖÐé¼ÙµÄ·±ÈÙ¶øÒÑ¡£ËäÈ»¶¼ÊÇ.NET FrameworkµÄ×Ó¼¯£¬µ«ÊÇÓÉÓÚËüÃDzÉÓÃÍêÈ«¶ÀÁ¢µÄÔËÐÐʱºÍ»ù´¡Àà¿â£¬ÕâʹÎÒÃǺÜÄÑ¿ª·¢Ò»¸öÖ§³Ö¶àÖÖÉ豸µÄ¡°¿ÉÒÆÖ²£¨Portable£©¡±Ó¦Óã¬ÕâЩ·ÖÖ§·´¶ø³ÉÎªÖÆÔ¼.NET·¢Õ¹µÄÒ»µÀµÀ¼ÏËø¡£ÖÁÓÚΪʲô¡°¿ÉÒÆÖ²£¨Portable£©¡±.NETÓ¦ÓõĿª·¢Èç´Ë·±Ëö£¬¾´Çë¹Ø×¢ÖÐÆª¡¶.NET Core¿çƽ̨µÄ°ÂÃØ[ÖÐÆª]£º¸´ÓÃÖ®éä¡·¡£

   
3542 ´Îä¯ÀÀ       28
 
Ïà¹ØÎÄÕÂ

Éî¶È½âÎö£ºÇåÀíÀôúÂë
ÈçºÎ±àд³öÓµ±§±ä»¯µÄ´úÂë
ÖØ¹¹-ʹ´úÂë¸ü¼ò½àÓÅÃÀ
ÍŶÓÏîÄ¿¿ª·¢"±àÂë¹æ·¶"ϵÁÐÎÄÕÂ
 
Ïà¹ØÎĵµ

ÖØ¹¹-¸ÄÉÆ¼ÈÓдúÂëµÄÉè¼Æ
Èí¼þÖØ¹¹v2
´úÂëÕû½àÖ®µÀ
¸ßÖÊÁ¿±à³Ì¹æ·¶
 
Ïà¹Ø¿Î³Ì

»ùÓÚHTML5¿Í»§¶Ë¡¢Web¶ËµÄÓ¦Óÿª·¢
HTML 5+CSS ¿ª·¢
ǶÈëʽC¸ßÖÊÁ¿±à³Ì
C++¸ß¼¶±à³Ì