博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

.NET小常识——答你所问

Posted on 2012-04-27 12:13  乌雲安全  阅读(228)  评论(0编辑  收藏  举报

1、.NET是什么?
        .Net全称.NET Framework是一个开发和运行环境,
        该战略是微软的一项全新创意,
        它将使得“互联网行业进入一个更先进的阶段”,
        .NET不是一种编程语言. 简单说就是一组类库框架,
        .NET开发支持C#、VB.NET、J#、Jsript和Managed C++等。
        C#是.NET Framework框架支持的一种主力开发语言,
        可用于开发ASP.NET网站, Windows 程序,控制台程序,甚至于手机软件

2、ASP.NET、.NET和C#的关系是怎样的?
        .NET 分成两个方面:
        (1)WinForm
        (2)WebForm
        ASP.NET就是属于WebForm,也就是平时说的B/S模式的开发。
        而WinForm就是属于C/S模式。
        .NET有很多种语言组成,比如C#、 VB.NET、J#、Jsript、Managed C++
        但是都是运行在.NET FrameWork Run Time底下的。
        Asp.NET 可以用C#或VB.NET来开发。
        编译后形成CLR,通过服务器的IIS+.NET FrameWork再次编译来运行。
        C#是开发语言.
        总之,ASP.NET是.NET Framework环境下的动态网页编程技术,
        .NET Framework是.NET的基础框架,
        Visual Studio.NET是用于开发软件的一个集成环境(IDE)。

3、.NET开发是用什么语言?
        .NET声称支持市面上20多种语言,但目前
        只有微软官方发布的C#,VB.NET,J#, Jsript和Managed C++

4、为什么大部分用C#语言开发.NET?
        C#是Microsoft公司设计的一种编程语言,
        C#(读做‘Csharp’)。它基于C/C++,是面向对象的.
        没有指针,有垃圾回收机制,会自动释放内存空间
        学习C#并不必须有C语言的基础,不过,如果你学过C语言,
        那会事半功倍的,因为他们之间有很多语法是一样的。
        C#支持的基本类型和C++很相似,包括int, long,
        float, double, char, string, arrays, structs和 classes等。
     

5、ASP.NET环境的安装
        (1)、其实现在一般的电脑都可以安装,至于操作系统目前
        .NET支持的平台有Windows,至于Linux和Unix的支持正在开发中.
        Microsoft Windows 2000\windows xp sp3\windows 2003的操作系统
        (2)、运行环境下载,因为是向下兼容,所以可以下载最新的Framework框架
       
         (3)、安装过程
        首选安装MDAC,再安装SDK,SDK的安装时间比较长要耐心等待。
         (4)、试运行
        安装完成后,试着运行一个简单的ASP.NET编写的小程序,以便确定安装是否成功。
      

6、Bin文件夹下的DLL可以做什么?
        (1)它是自动生成的,不用自己添加。
        (2)作用:bin文件夹中包含项目中所用到的所有引用的类库,支持服务器等内容
        DLL的全称是Dynamic Link Library, 中文叫做“动态链接文件”。

7、.NET主要的优点有哪些?
        .NET的主要优点有跨语言,跨平台,安全,以及对开放互联网标准和协议的支持.
        .NET支持多种语言的互操作,即在一种语言下开发的组件,
         可在另一组件下通过面向对象的继承而得以重用.
        .NET通过将各语言先编译成中间语言(IL),
         然后再执行时用即时(Just In Time)编译器将之编译成本地平台代码来实现异构平台下对象的互操作,
        .NET通过公共语言运行库CLR(Common Language Runtime)来实现资源对象,类型的安全.
        .NET通过对HTTP,XML等Internet标准的支持提供在异构网络环境下获取远程服务,
         连接远程设备,交互远程应用的编程界面

8、ASP.NET和ASP的区别?
        ASP.NET和ASP的最大区别在于编程思维的转换以及功能的增强。
        ASP使用VB/JS这样的弱类型、面向结构的脚本语言混合html来编程,
        而非面向对象,这就明显产生以下几个问题:
        1、代码逻辑混乱,难于管理。
        2、代码的可重用性差:由于是面向结构的编程方式,并且混合html,
           所以可能页面原型修改一点,整个程序都需要修改,代码重用性差。
        3、弱类型造成潜在的出错可能。
        以上是ASP语言本身的弱点,在功能方面ASP同样存在问题:
        第一是功能太弱,一些底层操作只能通过组件来完成
        第二缺乏完善的纠错/调试功能
        ASP.NET理论上可以使用任何编程语言包括C#,VB.NET、JS、、J#、Managed C++等等,
        最合适的编程语言还是MS为.NET Frmaework专门推出的C#
        优点如下:
        (1)是面向对象的编程语言,简单易学。
        (2)具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,
        封装性使得代码逻辑清晰,并且应用到ASP.NET上就可以使业务逻辑和Html页面分离;
        继承性和多态性使得代码的可重用性大大提高
        (3)C#还提供了完善的调试/纠错体系。 

9、做项目时数据库类型的选择?
        当前流行的数据库有:Sql server,MySql,Oracle,DB2。
        VS项目中大多是选择以下四种:
        Sql2000简单实用,功能完全够学习时使用,可通过命令行快速打开;
        Sql2005功能全面,但安装麻烦,体积大,刚打开数据库的时候比较慢,启动之后就快了许多;
        Sql2008新出的数据库,功能肯定比前两者强大,建议使用Sql2005的用户升级到Sql2008;
        ACCESS体积小、部署方便(不用启动服务等)使用方便简单.

10、ASP.NET中经常使用的控件有哪些?
        Label控件用来显示文本的控件。Label控件不能接收鼠标或是键盘输入。
        TextBox控件来显示和更新任务数据,用户输入内容。
        Button按钮控件当用户单击或者点击一个按钮时,即会触发Click事件
        ListBox和ComboBox控件外观不同,但功能极为相似,允许用户进行选择,不允许输入文本。

11、.net开发工具都有哪些?
        现在主流是Visual Studio 2005/2008,但是不少小企业仍然固执使用vs2003,
        不过最近vs2010也上市了。
        VS提供了下列几个版本:标准版、专业版、Tools for Office 和 Team System 版。
        还有C# builder只应用于大型企业开发,
        支持一些微软的vs.net都不支持的企业级功能。
        还有一款免费的开发工具web matrix,这款自动感知能力弱到几乎没有,
        适合开发页面和代码不分开的那种页面,可以提高独立写代码的水平。
        不过他带有.net类库浏览器,以及一个数据库开发的控件,也算是有些特点。
        入门初学者VS.NET会很容易上手,
        当然,还有就是高手只用记事本咯!

12、为什么.NET程序第一次运行比较慢?        aspx页面在运行时,第一次访问时要进行编译。
        当你再次运行时,由于缓存机制,速度就会正常了。

13、C#的命名规范
        主要有Pascal和Camel两种
        Pascal:单词的首字母大写,如ProductType;
        Camel:首个单词的首字母小写,其余单词的首字母大写,如productType)
        以下是一些常用的C#成员及其推荐命名方法:
        类class:Pascal
        枚举类型enum:Pascal记住,是以Pascal命名,切勿包含Enum
        委托delegate:Pascal以Pascal命名,不以任何特殊字符串区别于类名、函数名
        接口interface:Pascal注:总是以"I"前缀开始,后接Pascal命名
        方法function: Pascal                
        命名空间namespace: Pascal比如:usingExcelQuicker.Framework
        属性:Pascal
        参数:Camel 首字母小写                
        常量const: Camel 字母全部大写
        局部变量:Camel 声明变量是以str开头
        数据成员:Camel 以m开头+Pascal命名规则,如mProductType(m意味member)