第一章 .Net入门

1.Net学习路线及几个容易混淆的概念

 

C#.NetASP.Net

.Net是一个平台,提供了运行.Net程序需要的虚拟机、类库等

C#是.Net平台下的一个语言,.Net下的语言还有VB.Net、PowerShell等

ASP.Net是.Net下开发网站的技术

 

.Net : dot net

C# :c sharp

 

2.Net开发环境说明和安装

 

.Net开发环境配置

1、Visual Studio (简称VS)是微软官方提供的.Net开发工具。

2、 还有MonoDevelop、SharpDevelop等开源的;Visual Studio 有Expree免费版。

3、 如果不用Vs开发,其实安装.Net Framework即可,安装VS的时候会默认安装.Net Framework。运行程序.Net程序不需要装VS,有.Net Framework即可。

4、VisualStudio 2012 的下载:

下载地址1:http://www.xiazaiba.com/html/7678.html

下载地址2:http://www.jb51.net/softjc/64094.html

Visual Studio 2012 Ultimate旗舰版序列号:

 

YKCW6-BPFPF-BT8C9-7DCTH-QXGWC(可用)

 

 

3节用记事本编写和csc编译程序

 

 步骤:

1、新建一个文本文件,内容: 

using System;
 
class Test
{
   static void Main(string[] args)
   {
      Console.WriteLine("如鹏网");
      Console.ReadKey();
   }
}

2、保存为Test.cs(C#文件后缀是.cs),注意显示文件扩展名。类名和文件名要一致。

3、打开cmd命令提示符(开始→运行/Win+R)

4、cd进入Test.cs所在的文件夹,执行:

cd 目录名:进入特定的目录。

cd\ 退回到根目录。 

cd..退回到上一级目录。 

C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe Test.cs,编译生成Test.exe  

5、执行Test.exe

 

 

4.netframework介绍、界面不是我们的重点

 

 .Net程序运行必须依赖于.Net Framework ,无法独立运行。  

生成的exe、dll不是普通的“原生”的,而是叫“程序集”,是“MSIL/IL”二进制字节码。

.Net Framework中的CLR是运行.Net程序的核心  

Linux、IOS等非Windows系统下也可以运行.net程序:通过Mono。  

Android、IOS上也可以借助于Xamarin使用C#开发手机程序。

微软已经将.Net开源,可以在Linux、IOS上运行.Net程序,并且免费提供Visual Studio Community

 

5VisualStudio基本使用

 

 

6节注释

 

被注释的代码编译器忽略。作用:说明代码的作用:程序中适当加注释;屏蔽无用的代码。

// 注释一行代码,//之后的代码编译器会忽略(给例子代码加注释)。

/**/ 注释多行代码。不能嵌套多行注释。

/// 文档注释。

 

//                            _ooOoo_
//                           o8888888o
//                           88" . "88
//                           (| -_- |)
//                            O\ = /O
//                        ____/`---'\____
//                      .   ' \\| |// `.
//                       / \\||| : |||// \
//                     / _||||| -:- |||||- \
//                       | | \\\ - /// | |
//                     | \_| ''\---/'' | |
//                      \ .-\__ `-` ___/-. /
//                   ___`. .' /--.--\ `. . __
//                ."" '< `.___\_<|>_/___.' >'"".
//               | | : `- \`.;`\ _ /`;.`/ - ` : | |
//                 \ \ `-. \_ __\ /__ _/ .-` / /
//         ======`-.____`-.___\_____/___.-`____.-'======
//                            `=---='
//
//         .............................................
//                  佛祖镇楼                  BUG辟易
//          佛曰:
//                  写字楼里写字间,写字间里程序员;
//                  程序人员写程序,又拿程序换酒钱。
//                  酒醒只在网上坐,酒醉还来网下眠;
//                  酒醉酒醒日复日,网上网下年复年。
//                  但愿老死电脑间,不愿鞠躬老板前;
//                  奔驰宝马贵者趣,公交自行程序员。
//                  别人笑我忒疯癫,我笑自己命太贱;
//                  不见满街漂亮妹,哪个归得程序员?

 

 

7节反编译神器和编译器优化

 

反编译工具:Reflector 、ILSpy

把编译程序“反编译”为cs代码,从原理上无法原样还原,比如:

1.没有注释(被注释的代码编译器忽略);

.cs文件源码 :

    class Program
    {
        static void Main(string[] args)
        {
            //注释内容
            Console.WriteLine("如鹏网");
            Console.ReadKey();
        }
    }

 

Reflector 源码:

 

internal class Program
{
    // Methods
    private static void Main(string[] args)
    {
        Console.WriteLine("如鹏网");
        Console.ReadKey();
    }
}
 

注:“//注释内容”  被编译器优化,没有显示

 

 2.编译器优化:

2.1常量合并

.cs文件源码:

    class Program
    {
        static void Main(string[] args)
        {
            //定义变量
            int i = 7 + 1;
            Console.WriteLine(i);
            Console.ReadKey();
        }
    }

 

Reflector 源码:

 

internal class Program
{
    // Methods
    private static void Main(string[] args)
    {
        int num = 8;
        Console.WriteLine(num);
        Console.ReadKey();
    }
}

注:i=7+1  被编译器优化成 int num=8

 

2.2 没有使用的变量会被编译器优化

.cs文件源码:

   class Program
    {
        static void Main(string[] args)
        {
            //定义变量
            int i = 3;
            Console.WriteLine("没有使用的变量会被编译器优化");
            Console.ReadKey();
        }
    }
    

Reflector 源码 :

internal class Program
{
    // Methods
    private static void Main(string[] args)
    {
        Console.WriteLine("没有使用的变量会被编译器优化");
        Console.ReadKey();
    }
}
注:i=3被编译器优化掉,没有显示

 

反编译工具下载: 

1)Reflector 

下载地址1:http://www.xiazaiba.com/html/5268.html

下载地址2:http://www.downxia.com/downinfo/35185.html

 

2)ILSpy

下载地址1:http://www.orsoon.com/Soft/14703.html

 

posted @ 2015-01-22 20:12  linyongqin  阅读(234)  评论(0)    收藏  举报