what is C# & How Does a C# Application Run

【译】http://www.csharp-station.com/

 

 

在院子里已经有一年多的时间,在这一年多的时间里就老是看别人的文章,自己是一点也么有总结,给自己的成长也没有丢下任何足迹,感觉很遗憾。在院子里这么长时间,感觉到了程序人生的温暖,虽然不是我亲身经历,但也谈得上感同身受,“感受”着不同程序员所经历的,看到了程序员的人生是如此丰富多彩。在这么长的时间里也像院子里可敬可亲的大神们学到了不少东东,在此感谢那些大神们,能让我分享到你们的所经所历,也让我通过你们的肩膀看到了我还没看到的,巨人的头衔你们是当之无愧,说实话,在现在这样的年代,能把自己的经验与别人分享,这是值得赞赏的美德。看着院子里浩如烟挥的博文,我也想不为别人也要为自己写些什么,但是自己又不是言必行,行必果的料,到目前为止,自己还没有积累一点属于自己财富。自己不逼自己,其实自己根本不知道自己有多聪明,现在回想,其实自己一点也不聪明,大师们都一点一滴的积累自己的经验,更何况我现在还是菜鸟,真是菜的一塌糊涂。老是觉得自己这个行,哪个行,老是看到院子里面有那种写一两句的博文的,也有我很熟悉的内容的博文,当我看了后,就觉得”这个有什么,这个我也能写出来,他们还把这么简单的问题那里写在上面“,现在我终于恍然大悟,其实能写博客的人都是善于积累 的人,都是懂得珍惜自己财富的人。善于总结,善于积累,善于讨论,善于分享,这种思想其实都是胸怀大志。想想春秋时期楚庄王的情形就能理解。刚开始楚庄王也是明白人装糊涂,整天不务政事,整天沉浸在花天酒地间,其实楚庄王人家是在观察形势。后来等到他执政,那叫个一鸣惊人。史书上说楚庄王这个人很精明,胸怀大志。庄王学会审时度势,韬光养晦为以后的称霸奠定了基础。古人都能意识到这点,我们进化到现在更能知道这样的道理。有好几次我都冲冲欲动想动手写点自己对某个观点的看法时,手底下不知所措,根本不知道怎么写,不知道从哪里开头。我想这种状态不止我有过,肯定有其他人也遇到过。记录其实也是一门学问,不论好与坏,你是写给自己的,那是留给自己的备忘录,无怪乎别人的怎么评论。从这篇开始,学会写博文、学会记录作为一个程序员成长的点点滴滴,希望以后能都所回忆的材料。

 

 

最近也没有做什么项目,也没有一个好的思路写高质量的博文再加上没有素材,今天就从最简单的翻译开始。翻译一些与技术相关的英文文档,在此过程中不经能学习英文,还能理解技术,和乐而不为呢,开始吧。。。。。。。

 

What is C#?  什么是C#

C#(读作’Csharp‘)是基于.net框架语言中的一种。他是面向对象的,他也允许你能为可变动的应用程序创建可重复使用的组件(方法,公共类呀等)。 

C#也是C和C++家族改革后出现的语言。他效仿了其他的面向对象语言所具有的特征,比如像java 和Delphi。如果你看java 和C#的基础语法,他们在代码结构上看起来很相似,他更像C++,当然了只是这么说说的。有许多开发人员经常性的问一个问题,就是关于C#为什么支持特定的属性或者特定方法。其实答案还是追溯到C#是从C++继承来的。

 

How Does a C# Application Run?    C#应用程序怎么样运行?

最重要的一点就是C#是一个管理型语言,就是说他是在CLR 平台上运行,太必须借助于ClR。从本质上讲,当一个C#应用程序执行的时候,CRL自动管理内存,垃圾回收,处理异常等一些列底层开发者用代码难于处理的操作。

C#编译器IL(中间语言,不是机器语言),CRL能理解IL所代表的含义。当CLR看到IL时,及时把他编译成机器码放在内存中然后执行他,就像先前说道的那样,CLR管理代码以及他的运行过程。

因为C#需要CLR,所以在做这方面开发的时候必须得有CLR的饿支持才行,所以必须在自己的系统内安装CLR。目前的window操作系统都带有基础版本的CLR 可以通过window的更新程序来更新最新版到系统中。其实CLR就是.net的一部分,其实在你更新.net framwork 的时候卆已经更新了CLR 和FCL。如果你拷贝C#应用程序到其他的机器上时,那么这台机器也要有相应的CLR支持才能正常运行。

 

 

What can I do with C#?  我们能用C#干什么?

C#仅仅是一们程序语言,他只是一种编程的规范,有了这种规范,我们就可以很好的利用.net为我们提供的很多架构类库,所以我们可以根据我们的需求在.net平台上开发我们想要的东西。为了能开发更可能多的应用,微软开放了FCL和一些基础架构。鉴于此你就可以用现有的架构(winform、wpf)开发一些桌面应用程序和一些控制台应用程序。你也可以利用(asp.net、silverlight)开发一些web应用程序。当你需要访问你数据的时候,你就可以用ado.net、和lingQ 技术来访问数据。当然,以上这些只是很多可利用技术中的一部分,作为一门专门的编程语言,你可以用C#做出很多应用的东西来。

 

 

posted @ 2012-02-23 16:46  st_gloden  阅读(656)  评论(0编辑  收藏  举报