学习C#第一天

先是了解了VS 2019编辑器的基本使用

安装Visual Studio

  1. https://mp.weixin.qq.com/s?__biz=MzU0MTg5NDkzNA==&mid=2247495527&idx=1&sn=04a9c39f703ff3491f6050be807e7afc&chksm=fb205f1ecc57d6082bc9bdd30fa455f550babfb1b729716b578b2214fbf80a40fbf002cd3c5e&scene=21#wechat_redirect 通过此网站教程安装

  2. 打开后安装必要工具”.NET 桌面开发、通用Windows平台开发、ASP.NET和Web开发、使用Unity的游戏开发”

  3. 安装位置需重新选择,不要安装在系统盘C盘,下载时间非常久,耐心等待。

  4. 下载安装完毕后最好重启一下电脑


    创建项目

    安装完毕后开始进入学习环节,打开VS后的第一部肯定是创建项目。对于初学者。现了解一下项目类型

    1. dos项目(控制台应用程序)

      创建时有两个可选,一般选(.NET Framework)

    2. C/S(Client Server)项目(Windows窗体应用程序)

      一般选择Windows窗体应用(.NET Framework)

    3. B/S(Browser Server)项目(ASP.NET Web窗体应用程序)

      一般选择ASP.NET Web 窗体网站(.NET Framework)选择完毕后在解决方案资源管理器中双击Properties打开设置窗口。选择Web,启动操作选择特定页Default.aspx


C#程序的基本结构

  

  1. 命名空间

    1. 概念

      C#程序中的一种代码组成形式,主要用来标识的可见范围

    2. 创建命名空间的语法

      namespace 命名空间名称

      (使用namespace关键字来命名空间。一般创建项目后,会自动给你一个命名空间)

      就好像创建了一个仓库,需要对应的钥匙来获得它的使用权

    3. 引用命名空间

      using 命名空间

      (使用using关键字来引用命名空间)

      using就好比打开仓库的钥匙。可以使用这个仓库中的内容

    1. 什么是类

      一种数据结构,存储数据成员、方法成员和其他类等个类容,便于调用。。。

    2. 语法

      class 类名{

      //类中的代码

      }

      使用关键字 class + 类的名字 来创建一个类

      在同一个命名空间中,雷鸣不能重复

    3. 引用

      同一个命名空间直接引用,不同空间需要先引用命名空间再来用命名空间调用其中的类

  2. Main方法

    Main其实就是一个程序的入口方法,它可以说是集火一个程序的开关,没有这个开关,这个程序就无法启动

    1. Main方法的要求

      1. Main方法必须定义为static(静态)

      2. Main的首字母必须大写

      3. 返回值类型可以是void(不返回数据)或者int(整数),其他都不可以

      4. 命令行参数可选

        命令行参数就是

        static void Main(string[] args)
              {
                   //输出内容
                   
              }

        中的string[] args,这个命令行参数可选也可以不选,一般用于dos窗口用命令行来运行方法

    1. 语法

      static void Main(string[] args)
            {
                 //输出内容
            }
      static int Main(string[] args)
            {
                 //输出内容
        //设定返回值
        return 0;
            }
      1. Main方法的常见错误提示

        1. 程序“***”不包含适合于入口的静态“Main”方法
          1. 没有Main方法

          2. Main方法写成了main方法

          3. 没有用static定义为静态方法

        2. 并非所有的代码路径都返回值
          1. Main方法的返回值不是void或者int

        3. 定义有多个入口点“***”,请使用/main参数编译以指定包含入口点的类型
          1. 如果有多个入口点,则点击菜单栏中单项目、选择“项目名“ 属性、选择应用程序选择启动对象(选择对应的启动对象)

  3. 注释

    1. 注释就是对代码的说明,让自己或别人知道这些代码是干什么的,注释是不会运行的,注释可以使代码失效。

    2. 行注释:给一行代码注释

      int a = 10;//定义一个a,给它赋值为10
      int A= 20;//定义一个A,给它赋值为20
    3. 块注释。多行全部注释

      /*
       这些都是注释
       注释
       ssss
       aaaa
       ddddd
      */
  4. 语句

    1. 概念:
      1. c#语句实质上就是实现各种功能的C#代码

  5. 关键字

    1. 关键字不要用做空间、类、方法的命名

  6. 标识符

    类名、变量名、方法名、数组名都属于标识符,标识符就好比一个名字。

    1. 名字的组成

      1. 首字母
        1. 字母

        2. 下划线 "_"

      2. 其余部分
        1. 任意的数字、字母、下划线 "_"

      3. 标识符不能与C#关键字冲突

        例如:

        int static= 20;
      4. 标识符区分大小写

        例如:

        int a = 10;
        int A= 20;
        //大小写不同不会冲突,大小写是需要区分的
  7. 程序编写规范

    1. 代码编写规则
      1. 尽量使用接口编程

      2. 关键语句一定要写注释

      3. 局部变量随用随声明

      4. 尽量少用got o语句

      5. 如果参数多,建议使用结构

      6. 避免对大段代码使用try...catch

      7. 同一个文件中避免编写多个类

      8. 字符串多变时,用StringBuilder

      9. if语句块中使用“{ }”

      10. switch语句中一定编写default

    2. 常用的两种命名方法
      1. Pascal命名法:所有单词第一个字母大写,其他字母小写。如User GetInfo

      2. Camel命名法:除了第一个单词,所有单词的第一个字母大写,其他字母小写。如userId userName

    3. 程序中各元素的命名规范

      遵循这些命名规范,能使代码的可读性提高

      1. 项目名

        1. 公司域名+产品名称

      2. 命名空间名

        1. 公司名称、产品名称

      3. 接口

        1. 一切接口开始于 I (大写的“i”)

      4. 类名

        1. 功能与操作的完美结合

      5. 方法名

        1. 动宾关系,实现何种操作

      6. 成员变量

        1. 尽可能加前缀“_”

学习C#第一天的更多相关文章

  1. RabbitMQ学习总结 第一篇:理论篇

    目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 ...

  2. 学习KnockOut第一篇之Hello World

    学习KnockOut第一篇之Hello World 笔者刚开始学习KnockOut.写的内容就相当于一个学习笔记.且在此处向官网致敬,比较喜欢他们家的Live Example版块,里面有jsFiddl ...

  3. ActionBarSherlock学习笔记 第一篇——部署

    ActionBarSherlock学习笔记 第一篇--部署          ActionBarSherlock是JakeWharton编写的一个开源框架,使用这个框架,可以实现在所有的Android ...

  4. Java学习记录第一章

    学习Java第一章的记录,这一章主要记录的是Java的最基础部分的了解知识,了解Java的特性和开发环境还有Java语言的优缺点. 计算机语言的发展大概过程:机器语言--->汇编语言---> ...

  5. oracle学习笔记第一天

    oracle学习笔记第一天 --oracle学习的第一天 --一.几个基础的关键字   1.select select (挑选) 挑选出显示的--列--(可以多列,用“,”隔开,*表示所有列),为一条 ...

  6. javascript的ES6学习总结(第一部分)

    ES6(ESNext学习总结——第一部分) ES6, 全称 ECMAScript 6.0 ,是 JavaScript 的下一个版本标准,2015.06 发版. ECMA每年6月份,发布一个版本 201 ...

  7. Web基础学习---HTML 第一天

    Web基础学习---HTML 第一天 1 HTML标签 2.CSS Web开发基础HTML好吧离开Python几天...如何学好前端?? 多去看别人的网站.多看.多写.多练,(知乎.36Kr.)多练就 ...

  8. QT学习之第一个程序

    QT学习之第一个程序 目录 手动创建主窗口 居中显示 添加窗口图标 显示提示文本 Message Box的应用 手动连接信号与槽 手动创建主窗口 窗口类型 QMainWindow: 可以包含菜单栏.工 ...

  9. 创芯Xilinx Microblaze 学习系列第一集

    创芯Xilinx Microblaze 学习系列第一集 Xilinx ISE Design Suite 13.2 The MicroBlaze™ embedded processor soft cor ...

  10. 学习GO第一天,自我感觉可麻利的开干了-GO语言配置、开发、服务器部署

    学习GO第一天,自我感觉可麻利的开干了-GO语言配置.开发.服务器部署 第一步下载 go sdk https://golang.org/dl/ https://storage.googleapis.c ...

随机推荐

  1. js function call hacker

    js function call hacker you don't know javascript function https://developer.mozilla.org/en-US/docs/ ...

  2. 如何正确的阅读 js 源码

    如何正确的阅读 js 源码 https://astexplorer.net/ AST Abstract Syntax Trees https://alligator.io/js/traversing- ...

  3. BGV上线两天价格超过880美金,下一个YFI已到来!

    BGV自上线以来就备受币圈关注,众多投资者纷纷表示看好BGV.BGV也不负众望,在上线交易所第二天,价格就迎来了暴涨,最高价格为888.88美金,超越了当前以太坊的价值.而这也迎来了币圈众多投资者的一 ...

  4. go-admin在线开发平台学习-3[细节解析]

    本章节主要的内容是对go-admin中的一些有趣编码进行分析,为自己以后提供一些借鉴 使用cli方式启动项目 使用cobra[眼镜蛇]完成强壮cli的工具,确保稳定. 使用cli的方式启动项目的好处显 ...

  5. IDEA 敏捷开发技巧——后缀完成

    前言 "工欲善其事,必先利其器." 所以说今天来看一看如何压榨 IDEA ,让你的 IDEA 使用的更顺手! 今日技巧: 后缀完成 自定义后缀完成模版 示例 上面动图使用了 .so ...

  6. ImageCombiner - Java服务端图片合成的工具包,好用!

    自己的第一个也是唯一一个开源项目,因为平时比较懒,很少做宣传,今天刚好突破160个star,发到园子里推荐给大家,算是庆祝一下,哈. 项目地址:https://gitee.com/opensource ...

  7. sklearn中的pipeline的创建与访问

    前期博文提到管道(pipeline)在机器学习实践中的重要性以及必要性,本文则递进一步,探讨实际操作中管道的创建与访问. 已经了解到,管道本质上是一定数量的估计器连接而成的数据处理流,所以成功创建管道 ...

  8. 从几个问题开始理解CFS调度器

    本文转载自从几个问题开始理解CFS调度器 导语 CFS(完全公平调度器)是Linux内核2.6.23版本开始采用的进程调度器,它的基本原理是这样的:设定一个调度周期(sched_latency_ns) ...

  9. js合并字符串的3种方法和效率

    /* abc abc abc*/function concat(s,n){ let a = new Array(n); a.fill(s); let str = a.join(''); a = nul ...

  10. @media屏幕适应

    /** 屏幕特殊处理 我们用min-width时,小的放上面大的在下面,同理如果是用max-width那么就是大的在上面,小的在下面 **/ @media screen and (max-width: ...