学习日记01-刘铁猛《C#语言入门详解》

前言

因为工作原因与.NET有关会需要C#故来努力学习,工作之余会在此积累进行代码跟练和笔记心得方便观看存档。工作为主学习为辅,技多不压身,和千千万万代码人共勉。

24-5-21进度:P2至P4

B站大学名不虚传,课程地址C#语言入门详解001课程简介、C#语言简介、开发环境准备_哔哩哔哩_bilibili

使用2022版本vs,个人觉得这个教程不适合彻底的小白来学习,因为比较吃力。如果愿意,那就多过几遍常看常新。(其实自己过的也稍微有点吃力,也打算常看常新)

P2

利用了十种技术来“精通”helloWorld(本人只关心.NET)一般工作上或者学习上会拿别人的东西来用,在别人的带领下来实现自己的逻辑。无论看书还是看视频都必须亲自动手。我们遇到任何困难,也不要怕。

千万不要钻牛角尖,只关心对自己工作上有用的技术。远离学院派。

  1. solution和project:solution解决方案、project解决具体的某个问题。一个项目project可以隶属于不同的solution=project的重用,一个solution里可以有很多project

helloworld如下

using System;//前面有花括号:名称空间的标记;解决同名类冲突
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;//如果没有此命名空间,右侧引用右键 添加引用 windows forms的类库
//using引用

namespace ConsoleApp1
{
    internal class Program//program和下面的console都是类名
    {
        static void Main(string[] args)
        {
        //2024-5-21hay
        Console.WriteLine("hello world");//开始执行不调试就不会闪退了【ctrl+f5】
        }
    }
}

 P3-P4: 

初识类class和名称空间namespace;类和类之间有继承关系,类库引用(dll和项目引用)

用dll的话一定要用文档,要不然拿了也没用(利用NuGet),只有dll无源代码这是不行的,多关心root cause!(根本原因)

1.类class是程序主体,名称空间namespace以树型结构组织类(和其它类型)

2.通常类的名字在程序里用水蓝色表示,程序本身就是一个类

using System;//前面有花括号:名称空间的标记;解决同名类冲突
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;//如果没有此命名空间,右侧引用右键 添加引用 windows forms的类库
//using引用

namespace ConsoleApp1
{
    internal class Program//program类名
    {
        static void Main(string[] args)
        {
         (new Form()).ShowDialog();//把表单实体显现出来
         (new Form()).Text = "My Form";//a创建form实例改了title
         (new Form()).ShowDialog();//b可是在这里又创建了一个新的实例并显现出来,所以输出的时候不成功,随即引用变量
        }
    }
}
using System;//前面有花括号:名称空间的标记;解决同名类冲突
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;//如果没有此命名空间,右侧引用右键 添加引用 windows forms的类库
//using引用

namespace ConsoleApp1
{
    internal class Program//program类名
    {
        static void Main(string[] args)
        {
         Form myForm;//声明引用变量(myForm为引用变量像小孩)引用实例(Form是是实例是对象,相当于气球)
         myForm = new Form();//把new出来的实例交给myform这个引用变量
         myForm.Text = "MyForm";//把title给变量
         myForm.ShowDialog();可以有很多实例引用同一变量
         }
    }
}

3.dll:dynamic link library动态链接库文件(应用程序扩展)

4.黑盒引用白盒引用,个人觉得可以和黑盒白盒测试来连着记

        黑盒引用:dll引用(偏外部dll文件及其文档)

        白盒引用:项目引用(偏向源代码)

题外话:

         黑盒测试:功能测试,只关心输入输出(偏外部)

         白盒测试:结构测试,手握源代码,关心内部逻辑(偏内部)

5.高内聚低耦合:一个模块或类应该专注于做一件事,并且与其他模块或类的依赖关系尽可能少

依赖关系:他人的类库有问题,我自己的项目就会跟着有问题,就产生了依赖。

一个优秀的项目是低耦合的,依赖性越低越好。

6.事件为C#独有

其实是看到P5的,可能比较匆忙,之后再完善

未完待续。。。。

常看常新!

02链接:学习日记02-刘铁猛《C#语言入门详解》-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值