zoukankan      html  css  js  c++  java
  • 第一课时之c#程序设计概述

    第一章 c#程序设计概述

    本章学习目标:

    •  c#语言的主要特点
    • Visual Studio 2008/2017的集成开发环境
    • c#控制台应用程序和Windows窗体应用程序设计步骤
    • c#程序代码的基本书写规则和应用程序结构

    1.1c#语言简介

    C# 是一个简单的、现代的、通用的、面向对象的编程语言,它是由微软(Microsoft).NET公共语言运行环境中内置的核心程序设计语言。使用c#语言可以开发在.NET Framework上运行的多种应用程序,包括:控制台应用程序,Windows窗体应用程序,Web应用程序以及Web服务等。

    首先写一个c#程序的基本实例:

    using System;
    
    namespace Chapter_one
    {
        /* 类名为HelloWorld  */
        class HelloWOrld
        {
            /* main函数 */
            static void Main(string[] args)
            {
                /* 我的第一个c# HelloWorld程序 */
                Console.WriteLine("Hello World");
                Console.ReadLine();
            }
        }
    }

    1.1.1c#语言的主要特点

    c#语言是Microsoft为.NET环境开发的一种全新编程工具,它集c/c++语言的强大功能,Java语言面向对象的体征以及Visual Basic语言的易用性为一体,为在.NET环境下的计算机应用提供了功能强大,全新,易用的程序设计工具。

    c#语言的主要特点如下:

    • 语法简洁
    • 满足通用语言规范
    • 面向对象
    • 完整的安全性和错误处理
    • 兼容性和灵活性
    • 版本控制
    • Web完美结合

    c#语言强大的编程功能:

    • 布尔条件(Boolean Conditions)
    • 自动垃圾回收(Automatic Garbage Collection)
    • 标准库(Standard Library)
    • 组件版本
    • 属性(Properties)和事件(Events)
    • 委托(Delegates)
    • 索引器(Indexers)
    • 条件编译(Conditional Compilation)
    • 简单的多线程(Multithreading)
    • LINQ和Lambda表达式
    • 集成Windows

    1.1.2c#与其他程序设计语言的比较

     c#是在吸收c/c++和java等程序设计语言优点的基础上构建出来的一种新型程序设计语言,列举c#与c/c++以及java的主要异同之处

    比较内容

         c#程序设计语言

         c/c++程序设计语言

    语言处理方式

    编译成中间语言(MSIL)代码,执行时通过JIT(及时处理器)将中间代码转换为本机代码执行

    直接编译成为本机可以执行的代码

    指针数据

    默认数据下,不使用指针数据,而是使用对类实例的引用。也可以”非托管”方式下使用指针

    大量使用指针数据(特别是函数的参数中)

    依赖于.NET基类

    依赖于以继承和模板为基础的标准库

    继承

    只允许单继承,通过接口实现多继承

    c++允许多继承

    内存管理

    使用垃圾回收机制,自动在合适的时机回收不再使用的内存空间

    程序中必须显式地删除(回收)动态分配的存储空间

    字符串处理

    字符串是基本数据类型,提供多种处理字符串的方法

    字符串处理基于数组处理方法

    备注:在通用语言规范中,任何语言编写的源程序都被编译成相同的中间语言(MSIL)代码,然后由通用语言运行环境(Common Lanuage Runtime,CLR)负责执行,这种处理方式称为”托管方式”,因而这样的代码亦称为”托管代码

    比较内容

          c#程序设计语言

          Java程序设计语言

    语言处理和程序运行方式

    c#代码编译成为中间语言(MSIL)代码,然后在通用语言运行环境(CLR)中运行,CLR的JIT编译器将中间代码编译成为本地代码执行

    Java代码编译成为中间代码,通过运行环境JRE提供的Java虚拟机执行

    语言功能区别

    源程序文件名不受类名的限制,提供运算符重载,装箱与拆箱,方法隐藏等功能

    源程序文件名受类名的限制

    c#语言编写的源程序文件处理方式所示:

     

    1.2c#控制台应用程序设计实例

    控制台(Console)应用程序是利用c#语言开发的应用程序类型之一,由于不涉及windows系统的组成元素,因而结构比较简单

    1.2.1c#控制台应用程序的创建

    Microsoft Visual Studio 2008/2017(简称VS 2008/2017)中创建一个c#控制台应用程序的主要步骤如下:

    (1) 启动”Microsoft Visual Studio 2017”,进入VS2017集成开发环境的页面,如下

     

    (2) 选择项目类型为控制台应用程序,并指定项目名称及其保存位置

    (3) 在应用程序编辑环境中输入程序代码

    (5) 调试运行程序,按F5或选择”调试菜单组中的启动调试命名,执行(调试)

    1.2.2c#控制台应用程序的结构

    c#程序中,一个应用程序可以由一个或者多个类组成,所有程序代码必须封装在类中。一个源程序文件中可以由一个或者多个类,但不允许将一个类拆散存放在不同的源程序文件中。在为源程序文件命名时,可以与类的名字相同,也可以不同,即源程序文件的命名不受类名限制。

    一个c#控制台应用程序主要由以下几部分构成:

    1.导入其他系统定义元素部分

    高级程序设计语言总是依赖许多系统预定义元素,为了在c#程序中能够使用这些预定义元素,需要将这些元素导入。上面创建的控制台应用程序中,使用下述代码段导入了对其他命名空间的引用:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    2.命名空间

    使用namespace和命名空间标识符(命名空间名字)构建用户命名空间,空间的范围用一对化括号界定,如下所示:

    namespace Hello      //默认情况下命名空间名与解决方案名相同
    {
    
    }

    3.类

    类必须包含在某个命名空间中(例如namespace Hello),使用关键字class和类标识符(类名,默认为Prograam)构建类,类的范围使用一对花括号界定,如下所示:

    class Program
    {
    
    }

    4.主方法

    每个应用程序都有一个执行的入口,指明程序执行的开始点。c#应用程序中的入口点用主方法标识,主方法的名字为Main(),后面的括号中即使没有参数也不能省略。

    static void Main(string[] args)
    {
    
    }

    5.方法中的c#代码

    在方法体(方法的左右括号之间)中书写实现方法逻辑功能的代码

    static void Main(string[] args)
    {
        Console.Write("请输入你的姓名:");          
        string name = Console.ReadLine();           //输入姓名字符串赋值给name变量
        Console.WriteLine("欢迎"+name+"进入c#程序设计");
        Console.ReadLine();                       /* 使得程序设计不会自动退出调试环境 */
    }

    1.2.3c#程序代码的基本书写规则

    1.程序代码区分字母大小写

    c#是一种大小写敏感的语言,字母大小写不同的标识符被视为不同的标识符。

    2.语句书写规则

    (1)每个语句都必须用一个分号(“;”)作为结尾

    (2)c#允许在同一个代码行上书写多个语句,但从可读性的角度来看,并不提倡这种做法

    (3)c#是一种块结构的编程语言,所有的语句都是代码块的一部分

    (4)语句中作为语法成分的标点符号必须是西方标点符号,中文标点符号只能作为字符常量使用

    3.注释信息

    注释信息是程序中不可执行的部分,仅用于对程序代码加以说明,有助于提高程序的可读性。c#中的注释方法由3种:

    (1) 单行注释。在一个语句行上,用双斜杠”//”作为引导符,其后的任何内容均为注释信息,编译时被忽略

    (2) 多行注释。从”/*”开始,到”*/”结束,其中的所有内容(可以是一行,或多行)均为注释信息,但注释文字中必须不包含”*/”

    (3) XML注释。在一个代码行上,用”///”开始,其后的任何内容均为注释信息,编译时并提取出来,形成一个特殊格式的文本文件(XML),用于创建文档说明书

    对于初学者来说,在程序设计中经常使用的是前两种注释方式

    1.3c#Windows窗体应用程序设计实例

    Windows窗体应用程序通过窗体上的各种图形用户界面(Graphical User Interface,GUI)元素形成与用户交流的界面。

    1.3.1c#windows窗体应用程序的创建

    Visual Studio 2008中创建一个c#windows窗体应用程序通常需要以下4个步骤:

    (1) 设计用户界面

    (2) 设置对象属性

    (3) 编写对象事件过程代码

    (4) 保存并运行程序

    1.3.2c#windows窗体应用程序的结构

    窗体应用程序主要由下面几种程序构成:

    (1) 导入其他系统预定义元素定义

    (2) 命名空间

    (3) 

    (4) 方法(主方法,事件响应处理过程)

    Program.cs的源代码如下:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Windows.Forms;
    namespace motto
    {
        static class Program
        {
            ///<summary>
            ///应用程序的主入口点
            ///</summary>
            [STAThread]
            static void Main()
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new Form1());
            }
        }
    }

    本章小结

    本章介绍了c#语言的主要特点,并通过两个简单实例介绍了c#控制台应用程序和Windows窗体应用程序的开发过程,以及它们的组成结构,还介绍了c#程序代码的基本书写规则。

    习题:

    (1) 简述在VS 2017集成环境中创建c#控制台应用程序的主要步骤

    (2) 一个c#控制台应用程序主要由哪几个部分构成?

    (3) 什么是托管方式?

  • 相关阅读:
    pymysql 查询大量数据导致内存使用过高优化方案
    docker-compose文件
    Flask关于request一些方法和属性的整理
    gitignore 文件中忽略项不起作用的解决方法
    Django 时区
    django-apscheduler定时任务
    结队-贪吃蛇游戏-项目进度
    团队-科学计算器-开发环境搭建过程
    《团队-科学计算器-设计文档》
    《结对-贪吃蛇-设计文档》
  • 原文地址:https://www.cnblogs.com/LQ6H/p/csharp-1.html
Copyright © 2011-2022 走看看