• 一、.Net基础【1.0】入门


    1.C#、.Net和ASP.Net

    • .Net是一个平台,提供了运行.Net程序需要的虚拟机、类库等
    • C#是.Net平台下的一个语言,.Net下的语言还有VB.Net、PowerShell等
    • ASP.Net是.Net下开发网站的技术

    读音:dot net、点儿奈特
    C#:C Sharp,C沙坡

    常用的开发工具是Visual Studio,简称VS;如果不用VS开发,其实安装.Net Framework即可运行.Net开发的程序,装VS的时候把.Net Framework同时装上了。运行程序也不需要装VS,有.Net Framework即可。

    2.关于项目(Project)

    什么时候新建一个项目:相关功能放到一个项目中,QQ:文件传输、聊天、视频聊天、QQ群。
    解决方案:相关的项目放在一个解决方案中,避免一个解决方案中项目太多,也不便于管理。
    创建解决方案(Solution):一个解决方案下建多个项目(Project),多个相关的项目放到同一个解决方案中;还有一种快速建立解决方案和第一个项目的方法;
    打开其他解决方案的方法:.sln。
    打开其他项目的方法:.csproj
    sln、csproj只是文件的结构,还要cs等文件;

     3.项目的生成(Build)

    项目“生成”就是把项目中的代码编译(Compile)成二进制可执行程序(exe、dll等),dll无法独立运行;
    修改代码后,如果不“生成”,那么exe中还是旧的运行效果;
    修改代码后直接运行exe还是之前的代码,“开始执行”或者“开始调试”后会自动保存并且“生成”;

    3.1“生成解决方案”和“重新生成解决方案”有什么区别?

    • 生成解决方案:已经是最新的就跳过。
    • 重新生成解决方案:先把已经生成好的全部删掉,然后再生成一遍。

    3.2 Debug和Release有什么区别?

    • Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。
    • Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。

    4.控制台编程

    • Console.WriteLine(“Hello”)是在屏幕的当前位置输出一个字符串,并且在结尾换行;Console.WriteLine()是只执行换行;Console.Write(“RuPeng”)是在屏幕的当前位置输出一个字符串,不换行。这几个Write支持各种数据类型。
    • Console.Beep():是让计算机发出蜂鸣声(有些计算机可能不支持); Console.Beep(1000,1000);是指定频率和持续时长(毫秒); (*)趣味: Beep音乐.txt
    • Console.Clear()清除屏幕上的内容;
    • Console.ReadKey()等待用户输入一个按键再继续向下执行,(*)可以通过返回值获取哪个按键被按下。不要错用成了Console.Read()。因为Main执行结束后程序就退出了,为了避免控制台程序一闪而过,一般最后加上一行Console.ReadKey()。不要乱加Console.ReadKey()
    • string s = Console.ReadLine();等待用户输入一行字符串,直到回车;通过返回值获取用户输入的内容。
    • Console.Write**();Console.Read**()默认都是把光标显示到当前位置(自动流动)
    • Console.SetCursorPosition(5, 5)设定光标位置,后面的输入、输出都会从这个位置开始“流动”;默认宽和高分别是80*25个字符。纵向可以滚屏,但是不能滚太多。
    • Console.BackgroundColor = ConsoleColor.Red;设置背景颜色。 Console.ForegroundColor = ConsoleColor.Yellow;设置前景颜色; 设置之后的受影响,之前的不受影响。注意这里是给“属性”赋值,和方法调用不一样,还涉及到“枚举”。“属性”、“枚举”以后会讲,先暂时记住用法。
    • Console.ResetColor():恢复前景、背景颜色的默认值;
    • Console.Title = “hello”;设置控制台标题;颜色不能改。
    • 除了这里讲的,其他的Console方法不用研究,也不用琢磨“***效果如何实现”,控制台编程不是重点。

    5.反编译

    反编译工具: ILSpy、 Reflector (收费,可能会搞崩VS)
    把编译程序“反编译”为cs代码。从原理上无法原样还原,比如:

    • 注释没有;
    • 编译器优化:int i=5+6;(被优化掉了)加上一个WriteLine(常量合并),修改后ILSpy中Reload
    • 反编译工具的bug、不足

    .Net反编译工具不能反编译用C等开发的程序。
    如何避免反编译:混淆器。没有太大研究价值。因为现在主要都是在做asp.net web开发;

  • 相关阅读:
    python
    redis
    mongodb replica on aws ec2
    mysql
    java正则表达式
    终端make命令和Git学习
    linux和shell学习
    centos普通用户安装jenkins
    centos7普通用户安装jdk
    WPF动画
  • 原文地址:https://www.cnblogs.com/lolitagis02/p/8052318.html
Copyright © 2020-2023  润新知