c# 4.0ÐÂÌØÐÔÒ»ÀÀ
ÖÕÓÚ¾²ÏÂÐÄÀ´×ÐϸÌýÁËÒ»±éAnders Hejlsberg£¨Visual Studio×éµÄTECHNICAL FELLOW£¬C#µÄÉè¼ÆÕßÖ®Ò»£©ÔÚPDC08ÉϽ²µÄ“The Future of C#”£¨http://channel9.msdn.com/pdc2008/TL16/£©¡£
»Ø¹ËC#·¢Õ¹µÄÀúÊ·£¬C#1.0ÍêÈ«ÊÇÄ£·ÂJava£¬²¢±£ÁôÁËC/C++µÄÒ»Ð©ÌØÐÔÈçstruct£¬ÐÂѧÕߺÜÈÝÒ×ÉÏÊÖ£»C#2.0¼ÓÈëÁË·ºÐÍ£¬Ò²ÓëJava1.5µÄ·ºÐÍÈç³öÒ»ÕÞ£»C#3.0¼ÓÈëÁËÒ»¶ÑÓï·¨ÌÇ£¬²¢ÔÚûÓÐÐÞ¸ÄCLRµÄÇé¿öÏÂÒýÈëÁËLinq£¬¼òÖ±ÊÇÉñÀ´Ö®±Ê£¬ËäÈ»ºÜ¶àÏîÄ¿³öÓÚ¸÷ÖÖ¸÷ÑùÈçÐÔÄÜÖ®ÀàµÄÔÒòûÓвÉÓ㬵«·Ç³£ÊʺÏСÐͳÌÐòµÄ¿ìËÙ¿ª·¢£¬¼õÇáÁ˳ÌÐòÔ±µÄ¹¤×÷Á¿£¬Ò²Ìá¸ßÁË´úÂëµÄ¿É¶ÁÐÔ£»C#4.0Ôö¼ÓÁ˶¯Ì¬ÓïÑÔµÄÌØÐÔ£¬´ÓÀïÃæ¿ÉÒÔ¿´µ½ºÜ¶àjavascript¡¢pythonÕâЩ¶¯Ì¬ÓïÑÔµÄÓ°×Ó¡£ËäȻԽÀ´Ô½Æ«À뾲̬ÓïÑԵĵÀ·£¬µ«´ÓÁíÒ»¸ö½Ç¶ÈÀ´Ëµ£¬ÕâÐ©ÌØÐÔÒ²¶¼ÊÇΪÁËÌá¸ß³ÌÐòÔ±µÄÉú²úÁ¦¡£ÖÁÓÚ±»½ÓÊÜÓë·ñ£¬»¹ÊÇÈÃʱ¼äÀ´Ëµ»°°É¡£
PS£ºÕâÀïÃæ»¹ÓÐÒ»µã°æ±¾ºÅµÄС²åÇú——VS2008Ëù¶ÔÓ¦µÄ.Net FrameworkÊÇ3.5£¬C#ÊÇ3.0£¬CLRÊÇ2.0£¬¼°Æä»ìÂÒ£¬MSÖÕÓÚϾöÐÄÔÚVS2010ÖаÑÕâÈý¸ö°æ±¾ºÅ¶¼Í³Ò»³ÉÁË4.0£¬ÓÚÊÇCLR3²»ÖªËùÖÕ……
Dynamically Typed Object
C#4.0¼ÓÈëÁËdynamic¹Ø¼ü×Ö£¬¿ÉÒÔÉêÃ÷ ......
²ÉÓÃc/s ¿Í»§¶ËºÍ·þÎñ¶Ëģʽ½øÐÐÎļþºÍÃüÁîÊý¾ÝµÄ´«Ê䣬ÒÔ¼°Êý¾ÝµÄ½»»»¡£c/s ºÍb/s p2pµÈ¶àÖÖ¼¼ÊõÏë½áºÏ¡£
Ò»£¬cs ÍøÂçµÄʵÏÖ
²ÉÓô«Í³µÄ¿Í»§¶ËºÍ·þÎñ¶Ëģʽ£¬ÓÃtcp/ip ÐÒé½øÐÐÊý¾ÝµÄ½»»¥ºÍ´«µÝ¡£
¶þ£¬csÍøÂ翪·¢
Ä£·ÂÖøÃûµÄ»Ò¸ë×ÓÈí¼þ£¬»Ò¸ë×ӵĵ½À´£¬¸øÍøÂçÊÀ½ç£¬´øÀ´ÁËеĻîÁ¦£¬¸øÈËÃÇ´øÀ´ÐµÄÌåÑ飬
ºÍ¹ÛÄÕâÒ²ÊÇ»¥ÁªÍø±ØÈ»µÄ½á¹û¡£
Èý£¬csÍøÂçµÄȱµã
¶ÔÍøÂçÒªÇó¸ß£¬ÓÐÆÕ¼°ºÍȺÌåµÄʵÓÃÐÔ£¬¶¼±Èbs ·½Ê½²î¡£
ËÄ£¬csÍøÂçµÄ·¢Õ¹
½áºÏÁ˶àÖֺڿͼ¼Êõ£¬´Ù½øÁËÍøÂçÔڶ෽λµÄ·¢Õ¹¡£
PS:ΪÁËÌåÏÖÎÄÕµÄÔ´´ÐÔ,¹Ê¼Ó¶àÁËÐí¶à´í±ð×Ö,ÇëÎðץȡ ......
¸Õ¸Õ¿´¹ýÕâÆª¡¶30 years of C¡·£¬»ØÏëÁËÕ⼸ÄêµÄѧϰÀú³Ì¡£
ÔÚ´óѧÀÎÒѧϰµÄµÚÒ»ÃųÌÐòÉè¼ÆÓïÑÔÊÇC£¬µ«»¨Ê±¼ä×î¶àµÄ»¹ÊÇC++¡£´óÔ¼ÎåÄêǰ£¬¿ªÊ¼¿Ð¡¶ C++±à³Ì˼Ïë¡·Á½¾í±¾£¬ÓÃDev-cppÔÚ»úÆ÷Á·Ï°×ÅÊéÉϵÄÒ»¸ö¸öÀý×Ó³ÌÐò£¬Ö®ºóÓÖѧϰÁËÃæÏò¶ÔÏó±à³Ì¡¢STL¡¢Ä£°å¡£Æ¾×ÅÕâЩֽÉÏ̸±øµÄ¾Àú£¬²Î¼ÓÁËÊýѧ½¨Ä£±ÈÈü£¬Ð´Á˼¸¸öÊýÖµ¼ÆËãÓëÔ˳ïѧµÄС³ÌÐò£¬Ð¡Óгɾ͸С£ÔÙÖ®ºó²Î¼ÓACM³ÌÐòÉè¼Æ±ÈÈü£¬ÕâÆÚ¼äÊܵ½ACM´ú±í¶ÓµÄÀÏʦºÍͬѧµÄÓ°Ï죬¿ªÊ¼½Ó´¥Unix²¢½ÓÊÜ×ÔÓÉ/¿ªÔ´Èí¼þµÄ˼Ïë¡£µ«ÊÇÔÚ²ÎÈüÆÚ¼ä£¬ÎÒ·¢ÏÖѧ»áÁËC++¡¢STLÕâЩ»¹ÊDz»ÄܰÑÄÇЩÎÊÌâ¸ã¶¨¡£È»ºó×ܽá½Ìѵ£¬¿ÉÄÜÊÇ»ù´¡²»ÀΡ¢ÄÚ¹¦²»¹»£¬ÓÚÊÇ¿ªÊ¼·µ¹¤£¬ÖØÑ§CºÍÊý¾Ý½á¹¹¡£ÂòÁËÒ»ºÐA4´òÓ¡Ö½£¬°ÑÖ½¶ÔÕÛ¿ªÀ´Á·Ï°ÔÚÖ½ÉÏÓÃCд´úÂë¡£½ñÌ죬µ±ÎÒ¿´µ½¡¶30 years of C¡·ÀïµÄÕâÒ»¾ä“ I just read the book cover-to-cover and wrote out the exercises on paper. ”ºÜÓй²Ãù¡£Ö½ÉÏд´úÂëÆÄÓÐдɢÎĵĸоõ£¬µ±È»Ò²ÊÇÐÎÉ¢¶øÉñ²»É¢µÄ¡£KnuthÔç¾Í˵¹ýÀàËÆµÄ»°£¬±àд³ÌÐòµÄ¹ý³ÌÄܸøÈËÒÔÃÀµÄÏíÊÜ£¬¾ÍÏñдʫ×÷ÇúÒ»Ñù¡£ÎÒÏëËûÀÏÈ˼ÒÓ¦¸ÃÒ²ÓйýÖ½ÉÏд³ÌÐòµÄ¾Àú¡£ÑÔ¹éÕý´«£¬Ð´Í ......
¸Õ¸Õ¿´¹ýÕâÆª¡¶30 years of C¡·£¬»ØÏëÁËÕ⼸ÄêµÄѧϰÀú³Ì¡£
ÔÚ´óѧÀÎÒѧϰµÄµÚÒ»ÃųÌÐòÉè¼ÆÓïÑÔÊÇC£¬µ«»¨Ê±¼ä×î¶àµÄ»¹ÊÇC++¡£´óÔ¼ÎåÄêǰ£¬¿ªÊ¼¿Ð¡¶ C++±à³Ì˼Ïë¡·Á½¾í±¾£¬ÓÃDev-cppÔÚ»úÆ÷Á·Ï°×ÅÊéÉϵÄÒ»¸ö¸öÀý×Ó³ÌÐò£¬Ö®ºóÓÖѧϰÁËÃæÏò¶ÔÏó±à³Ì¡¢STL¡¢Ä£°å¡£Æ¾×ÅÕâЩֽÉÏ̸±øµÄ¾Àú£¬²Î¼ÓÁËÊýѧ½¨Ä£±ÈÈü£¬Ð´Á˼¸¸öÊýÖµ¼ÆËãÓëÔ˳ïѧµÄС³ÌÐò£¬Ð¡Óгɾ͸С£ÔÙÖ®ºó²Î¼ÓACM³ÌÐòÉè¼Æ±ÈÈü£¬ÕâÆÚ¼äÊܵ½ACM´ú±í¶ÓµÄÀÏʦºÍͬѧµÄÓ°Ï죬¿ªÊ¼½Ó´¥Unix²¢½ÓÊÜ×ÔÓÉ/¿ªÔ´Èí¼þµÄ˼Ïë¡£µ«ÊÇÔÚ²ÎÈüÆÚ¼ä£¬ÎÒ·¢ÏÖѧ»áÁËC++¡¢STLÕâЩ»¹ÊDz»ÄܰÑÄÇЩÎÊÌâ¸ã¶¨¡£È»ºó×ܽá½Ìѵ£¬¿ÉÄÜÊÇ»ù´¡²»ÀΡ¢ÄÚ¹¦²»¹»£¬ÓÚÊÇ¿ªÊ¼·µ¹¤£¬ÖØÑ§CºÍÊý¾Ý½á¹¹¡£ÂòÁËÒ»ºÐA4´òÓ¡Ö½£¬°ÑÖ½¶ÔÕÛ¿ªÀ´Á·Ï°ÔÚÖ½ÉÏÓÃCд´úÂë¡£½ñÌ죬µ±ÎÒ¿´µ½¡¶30 years of C¡·ÀïµÄÕâÒ»¾ä“ I just read the book cover-to-cover and wrote out the exercises on paper. ”ºÜÓй²Ãù¡£Ö½ÉÏд´úÂëÆÄÓÐдɢÎĵĸоõ£¬µ±È»Ò²ÊÇÐÎÉ¢¶øÉñ²»É¢µÄ¡£KnuthÔç¾Í˵¹ýÀàËÆµÄ»°£¬±àд³ÌÐòµÄ¹ý³ÌÄܸøÈËÒÔÃÀµÄÏíÊÜ£¬¾ÍÏñдʫ×÷ÇúÒ»Ñù¡£ÎÒÏëËûÀÏÈ˼ÒÓ¦¸ÃÒ²ÓйýÖ½ÉÏд³ÌÐòµÄ¾Àú¡£ÑÔ¹éÕý´«£¬Ð´Í ......
var loader:URLLoader = new URLLoader();
var url:URLRequest = new URLRequest("test.asp");
url.method = URLRequestMethod.POST;
var values:URLVariables = new URLVariables();
values.message="hello im flash!";
url.data = values;
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
loader.addEventListener(Event.COMPLETE,loaded);
function loaded(e:Event) {
out1.text=loader.data;
//outPut: phpMessage=im php message!&flashMessage=hello im flash!
out2.text=loader.data.phpMessage;
// im php message!
out3.text=loader.data.flashMessage;
// hello im flash!
out4.text=loader.data.dbMessage;
}
loader.load(url);
³ÌÐò´úÂë
<%@LANGUAGE="JAVASCRIPT"%>
<%
//½ÓÊÕflash´«½øÀ´µÄÊý¾Ý
var flashData;
flashData = Request("message");
//·¢¸øflashµÄÊý¾Ý
var aspMessage ......
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
if request("action")=1 then
Response.ContentType="application/ms-excel"
Response.AddHeader "content-disposition","attachment;filename=www.xls"
end if
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>ÎÞ±êÌâÎĵµ</title>
<style type="text/css">
table {
border-top:1px solid #003399;
border-left:1px solid #003399;
}
td {
border-right:1px solid #003399;
border-bottom:1px solid #003399;
}
thead {
background-color:#000066;
font-weight:bold;
padding:5px;
color:#FFFFFF;
}
</style>
<script language="javascript">
function tableToExcel(){
location.href='?action=1'; ......
using System;
using System.Collections.Generic;
using System.Text;
namespace PublicClass
{
public static class Log
{
public static void WriteLine(string line)
{
try
{
System.Diagnostics.Debug.Assert((line != null), " public static void WriteLine(string line) line ²»ÄÜΪ¿Õ!");
line = String.Format("#############{0}################## \r\n{{\r\n {1} \r\n}}\r\n", DateTime.Now.ToString(), line);
line += "%%%% ......