【C#】刘铁猛-C#语言入门详解听课笔记

叨叨在前:

这个视频共33集,油管和B站都可以看,B站有说有第二版本,但我在油管刘老师主页上没看见。


01 C#语言简介,搭建开发环境【略】

1、C#主要用来编写应用程序的
2、写程序步骤:编辑→编译[把语言转成计算机能看懂的]→调试→发布
3、学习路径:语言→类库【封装好的东西】 →框架【把类库组合好的集成,方便人用】
4、C# 5.0 In A Nutshell MSDN C#语言定义文档
Microsoft:C# 文档

注意这个MSDN其实就是本地帮助文档,如果VS里面【帮助】下没有【设置帮助首选项】,则在【工具】打开【获取工具和功能】,从而打开【VS的更新程序】,点击【单个组件】,在里面搜索【Help view】安装。
有类似情况的自己上网搜一下,很多教程。

02 初时各类应用程序

在这里插入图片描述
这几个原则我觉得很实用。值得没事的时候多练多体会

03 初识类和名称空间

3.1 类库及其引用、NuGet、namespace、class、依赖关系

类库: 顾名思义,类的集合
类库的引用:DLL引用【黑盒引用,无源码】,项目引用【白盒引用,有源码】
在这里插入图片描述
解决上面的层层嵌套引用的一个方法就是用NuGet包,大概是一种集成吧我感觉。
不需要自己去整,装一个合适的包就行。
在这里插入图片描述
这里是讲的 【项目引用】 的例子
添加现有的项目。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

名称空间namespace: 树形结构来组织类
类class: 构成程序的主体

依赖关系: 尽量要使用 弱依赖,这样一环一环程序嵌套时,其中一环报错受影响范围小、可控。当使用别人的DLL,就对别人产生依赖。
高内聚,低耦合 【数据、功能、类库分别归类放好,但依赖关系要尽量低】

UML【通用建模语言】类库
在这里插入图片描述

3.2 using相关的操作

using xxxx:引用名称空间,里面包含类,可以写程序时直接使用类而不报错

下图我删掉了【using System.Windows】,报错,鼠标移到报错处,有提示如何修改,跟快捷键走
在这里插入图片描述

04 类、对象和类成员【连SQL没做】

4.1 类和对象

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

4.2 成员

MSDN里面。【属性】加了【红色大写S】,为实例
在这里插入图片描述

05 C#语言基本元素概览、初识类型、变量和方法,算法简介

5.1 C#语言基本元素

在这里插入图片描述
自动取消空格
在这里插入图片描述

5.2 类型、变量和方法【汉诺塔没做】

在这里插入图片描述

在这里插入图片描述

06+07 详解类型、变量和对象

6.1 数据类型、强/弱类型

在这里插入图片描述
在这里插入图片描述

6.2 性能监视器查看进程的堆内存使用

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

7.1 数据类型:类、结构体、枚举、接口和委托

在这里插入图片描述

7.2 变量、对象和内存【excel】;值类型和引用类型

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

### 关于C#刘铁笔记的相关内容 以下是关于C#刘铁笔记的内容总结以及相关知识点的整理: #### 一、C#语言基础概述 C#是一种面向对象编程语言,其设计目标是为了简化开发过程并提高代码可维护性。在刘铁猛老师的课程中提到,C#语言的基础元素包括但不限于类型、变量和方法等内容[^1]。 - **类型**:分为值类型(如`int`, `float`)和引用类型(如类)。其中,`int`类型占用4个字节(32位),当将数值转换为二进制表示形式时,如果不足32位,则会在高位补充0以达到32位长度[^3]。 - **变量存储机制**:对于引用类型的变量,在内存中的分配方式有所不同。具体而言,引用类型的变量会先创建一个指向实际对象的指针,而该对象本身则被放置在堆内存区域。例如以下代码展示了如何定义和初始化一个引用类型变量: ```csharp Example e; e = new Example(); ``` #### 二、Lambda表达式与泛型委托的应用 Lambda表达式可以看作是对匿名函数的一种扩展语法支持,它允许开发者更简洁地编写内联代码片段来实现特定功能。通过将其赋值给某个委托类型的变量,能够方便地传递行为逻辑作为参数使用[^2]。 下面是一个简单的例子演示了如何利用Lambda表达式配合泛型委托完成两数相加操作: ```csharp public class Program { static void Main(string[] args) { DoSomeCalc((a, b) => { return a + b; }, 1, 2); Console.WriteLine("handle result!"); } static void DoSomeCalc<T>(Func<T, T, T> func, T x, T y) { T res = func(x, y); Console.WriteLine(res); } } ``` #### 三、高级特性介绍 除了上述基础知识外,刘铁猛老师还深入探讨了一些更为复杂的主题,比如接口的设计原则、反射技术的实际应用场景以及依赖注入模式的重要性等等。 这些概念虽然相对抽象难懂,但在构建大型软件系统过程中却扮演着至关重要的角色。掌握它们有助于提升个人技术水平,并使所编写的程序更加灵活高效。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值