先弄清楚:这门课解决的是哪一类问题

很多人学 VB.NET 卡住,不是卡在“不会写程序”,而是卡在“写出来的东西编译器不认”。比如把 Dim 当成声明对象专用、搞不清 ByVal 和 ByRef 到底改了谁、数组下标从 0 还是从 1 开始、Option Strict On 打开后一片红线。这些都不是逻辑问题,是语法和类型系统的问题。这门课就是冲着这一类缺口去的。

它不教你怎么做界面、不教数据库、不教三层架构,只讲 VB.NET 的语言本身。所以它更像一本“可以跟着敲的语法手册”,而不是一个能直接做出成品项目的实战营。

谁适合看,谁看了会浪费时间

合适的:完全没碰过 VB 的初学者,以及从 VB6 转过来的人。特别是 VB6 老手,你脑子里的很多“常识”在 .NET 里是错的——Variant 没了、字符串和数字的隐式转换被收紧、Set 关键字被取消、对象赋值语义变了。这些坑不主动踩一遍,后面写正式项目时会反复翻车。

不合适的:已经在用 C# 或 VB.NET 写过完整项目的人。你会发现大半内容你早就会了,剩下的部分翻文档更快。

另外要注意课程标题里写明不提供答疑。这不是一句客套话,意味着你遇到报错要自己查、自己调。如果你的学习习惯是“卡住就等人回”,这门课会让你很难受。

看完应该能回答的几个问题

用这几个问题自查,比看目录有用得多:

  • 值类型和引用类型在赋值、传参时分别发生了什么?为什么改了一个变量,另一个也跟着变?
  • ByVal 传一个对象引用,方法内部改它的字段,外面能看到变化吗?改引用本身呢?
  • Option Explicit、Option Strict、Option Compare 各管什么,关掉会有什么后果?
  • 数组、List(Of T)、Dictionary(Of K, V) 分别什么时候用?遍历方式有什么区别?
  • Sub 和 Function 的区别是什么?递归函数忘写返回会发生什么?
  • Try / Catch / Finally 里,Finally 中的 Return 会带来什么问题?
  • 结构体(Structure)和类(Class)在使用上的差别,你能举出一个必须用结构体的场景吗?

如果这些问题你能说清楚,说明语法这一关基本过了;说不清楚的地方,就是你该重点练的地方。

怎么用这门课才不白看

纯看视频学语法,效率很低。建议的做法是:每看完一节,先不看示例代码,自己按理解写一遍,再用课程提供的源码对照,看差异在哪里。差异往往就暴露了你的理解偏差。

环境上,课程用的是 Windows 10/11 + Visual Studio 2022,这个组合目前仍然好装好用。新建项目时选“控制台应用”,比直接上 WinForms 更适合练语法——界面会分散注意力。

还有一点:练习时主动把 Option Strict 打开,强迫自己写显式转换。一开始会很痛苦,报错一大堆,但这是把类型概念刻进脑子最快的方式。等你习惯了再关掉,你会知道自己在放弃什么。

和后续内容的衔接

语法课的价值在于它是地基。后面学面向对象、集合与泛型、LINQ、文件与流、ADO.NET 访问数据库,任何一个环节卡住,回头看往往都能追到语法层:不知道接口是什么、不清楚委托怎么传方法、不理解装箱拆箱。如果你打算沿着 VB.NET 往下走,这门课值得老老实实过一遍,而不是跳着看。

但如果你只是想快速改一个已存在的项目,那就别从语法课开始,直接去读那份代码。缺什么补什么,比按顺序刷课省时间。

VB .NET 编程语法知识(不提供答疑服务)

课程详情

课程标题

VB .NET 编程语法知识(不提供答疑服务)

课程核心介绍

本课程旨在帮助学员掌握Visual Basic .NET编程语法知识,为后续的VB.NET开发打下坚实的基础。

适合人群

- 没有VB编程基础的学员 - 由VB6转学VB.NET的编程爱好者

学习收获

- 掌握VB.NET编程语言的语法知识 - 了解和掌握计算机编程概念 - 能够利用VB.NET进行常用程序开发

课程亮点

- 由资深讲师编写和录制,内容讲解详实 - 适合初学者,语言接近人类自然语言 - 课程内容与后续VB开发课程紧密关联 - 演示内容在Windows 10或Windows 11操作系统上进行,使用Visual Studio 2022编程工具 - 提供课程各节的源代码文件,方便学员学习和实践

课程目录

01 语言介绍和工具安装
  01 介绍VB.NET及.NET.mp4
  02 VisualStudio的安装.mp4
  03 设置VisualStudio.mp4
02 编译程序和存储单位
  01 编译一个控制台程序.mp4
  02 编译一个类库程序.mp4
  03 数值进制和存储单位.mp4
03 数据类型、变量、常量
  01 数据类型.mp4
  02 变量和常量.mp4
  03 Char和数值格式输出.mp4
  04 类型转换和Date.mp4
04 运算符
  01 数学运算符.mp4
  02 数值运算规则.mp4
  03 数值比较和字符比较.mp4
  04 内存分配和对象比较.mp4
  05 逻辑运算符.mp4
05 控制语句
  01 判断选择语句.mp4
  02 循环语句.mp4
  03 跳转语句.mp4
  04 排错语句.mp4
06 数组
  01 单维数组.mp4
  02 多维数组和不规则数组.mp4
07 子过程与函数
  01 子过程.mp4
  02 函数.参数1.mp4
  03 函数.参数2.mp4
08 类
  01 类的构建方法.mp4
  02 类成员的访问范围.mp4
  03 类的继承.mp4
  04 属性.分部方法.销毁方法.mp4
09 模块、类、命名空间
  01 模块.类.命名空间.mp4
10 结构
  01 结构.mp4
11 枚举
  01 枚举1.mp4
  02 枚举2.mp4
12 接口
  01 自定义接口.mp4
  02 列举器接口和列举器.mp4
  03 格式化接口.克隆接口.mp4
  04 资源处理接口.mp4
  05 转换接口.比较接口.mp4
13 泛化过程和泛型
  01 泛化过程.mp4
  02 泛型类1.mp4
  03 泛型类2.mp4
  04 泛型接口.mp4
  05 泛型结构.mp4
14 集合
  01 自定义集合1.mp4
  02 自定义集合2.mp4
  03 预定义集合的选择.mp4
  04 队列集合.层叠集合.mp4
  05 链接表.可观察集合.mp4
  06 哈希表.mp4
  07 排序字典.含键集合.mp4
15 LINQ
  01 认识LINQ语句.mp4
  02 LINQ操作符(立即执行).mp4
  03 LINQ操作符(延迟执行)1.mp4
  04 LINQ操作符(延迟执行)2.mp4
16 委托
  01 自定义委托.mp4
  02 使用委托.mp4
17 事件
  01 事件.mp4
18 特性
  01 自定义特性.mp4
  02 预定义特性.mp4
19 操作文件
  01 文件系统信息对象.mp4
  02 文件流与读写器.mp4
  03 字符编码.mp4
  04 VB文件操作系统.mp4
  05 VB文本解析器.mp4