Visual Basic .NET程序设计 学习路线

Visual Basic.NET 程序设计学习路线

目录

  • 1 总路线简图
    • 1.1 零基础起步
    • 1.2 并⾏学习
    • 1.3 深⼊专业领域学习
    • 1.4 ⼯作实践
  • 1a 经典参考书目
    • 程序设计
    • 软件工程
  • 2 学习案例设计
    • 2.1 学校类课程学习
    • 2.2 培训类课程学习
    • 2.3 项目实践
  • 3 相关网站资源
  • 4 相关文章转载及地址
      • 数据结构推荐书籍 王亚军的博客
      • 写给VB.NET新手的入门介绍


1 总路线简图

1.1 零基础起步

计算机概论、IT简史

1.2 并⾏学习

(1)数学类
数学基础—>专业基础理论
⾼等数学—>离散数学
概率论与数理统计、线性代数

(2)计算机理论类
数据结构与算法
计算机组成原理
操作系统
计算机⽹络
(编译原理、⾯向对象的⽅法、关系数据库理论、软件⼯程…)

(3)程序设计类
编程语⾔—>实⽤技术
开发框架和⼯具

1.3 深⼊专业领域学习

特定技术领域
⼈⼯智能
图形图像
云计算
物联⽹

1.4 ⼯作实践

⾼校/研究所等—科研实践
各类IT公司——⼯程实践


1a 经典参考书目

程序设计

(1)阶段1:入门

  • Visual Basic2003-2005开发秘诀与范例大全
    Visual Basic .NET程序设计 学习路线_第1张图片
  • 深入研究Visual Basic.NET
    Visual Basic .NET程序设计 学习路线_第2张图片
  • 《Visual Basic (.NET)程序设计》,王栋,2014年,清华大学出版社出版。
    Visual Basic .NET程序设计 学习路线_第3张图片
    (2)阶段2:
  • Programming Microsoft Visual Basic .NET(Core Reference)(Visual Basic NET技术内幕)
  • Programming Microsoft Windows with Microsoft Visual Basic.NET (Microsoft Windows程序设计——Visual Basic.NET语言描述)
  • Applied Microsoft .NET Framework programming>>(Microsoft NET框架程序设计(修订版)

软件工程

  • Design Patterns:Elements of Reusable Object-Oriented software(设计模式:可复用面向对象软件的基础 )
  • Head First Design Pattern(深入浅出设计模式)
  • Design Pattern Explained(设计模式解析)
  • CODE COMPLETE, Second Edition(代码大全第二版)
  • The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition (2nd Edition)(人月神话)
  • Peopleware : Productive Projects and Teams, 2nd Ed(人件)
  • The Pragmatic Programmer (程序员修炼之道——从小工到专家)

2 学习案例设计

这里针对跨专业学习对象,简要设计具体学习路线。
2.1任选,建立基本的认识。
2.2可以看作是2.1的进阶。

2.1 学校类课程学习

(1) VisualBasic.NET程序设计:https://www.icourse163.org/course/TONGJI-89002?from=searchPage&outVendor=zw_mooc_pcssjg_
Visual Basic .NET程序设计 学习路线_第4张图片

(2) VisualBasic.NET程序设计入门:VisualBasic.NET程序设计入门
Visual Basic .NET程序设计 学习路线_第5张图片
(3) VisualBasic.NET程序设计进阶:VisualBasic.NET程序设计进阶
Visual Basic .NET程序设计 学习路线_第6张图片

2.2 培训类课程学习

关注以下作品即可:
(1) 杨中科 :杨中科 .NET
Visual Basic .NET程序设计 学习路线_第7张图片
(2) 金旭亮:金老师的自学网站
Visual Basic .NET程序设计 学习路线_第8张图片

(3) 一些站点、up等
网络搜素,多了解即可。

2.3 项目实践

找开源项目即可。


3 相关网站资源

  • VB.Net Programming Tutorial:https://www.tutorialspoint.com/vb.net/index.htmVB.Net Programming Tutorial

  • vb.net 教程:https://www.w3cschool.cn/vb_net/

  • 数据结构推荐书籍 王亚军的博客:数据结构推荐书籍 王亚军的博客https://www.cnblogs.com/wangyajunblog/p/10710480.html

4 相关文章转载及地址

数据结构推荐书籍 王亚军的博客

数据结构推荐书籍 王亚军的博客https://www.cnblogs.com/wangyajunblog/p/10710480.html

数据结构推荐书籍
史上最系统的算法与数据结构书籍推荐!!!!!吐血整理!!

前言:技术书阅读方法论
一.速读一遍(最好在1~2天内完成)
人的大脑记忆力有限,在一天内快速看完一本书会在大脑里留下深刻印象,对于之后复习以及总结都会有特别好的作用。
对于每一章的知识,先阅读标题,弄懂大概讲的是什么主题,再去快速看一遍,不懂也没有关系,但是一定要在不懂的地方做个记号,什么记号无所谓,但是要让自己后面再看的时候有个提醒的作用,看看第二次看有没有懂了些。
二.精读一遍(在2周内看完)
有了前面速读的感觉,第二次看会有慢慢深刻了思想和意识的作用,具体为什么不要问我,去问30年后的神经大脑专家,现在人类可能还没有总结出为什么大脑对记忆的完全方法论,但是,就像我们专业程序员,打代码都是先实践,然后就渐渐懂了过程,慢慢懂了原理,所以第二遍读的时候稍微慢下来,2周内搞定。记住一句话:没看完一个章节后,总结一下这个章节讲了啥。很关键。
三.实践(在整个过程中都要)
实践的时候,要注意不用都去实践,最好看着书,敲下代码,把重点的内容敲一遍有个肌肉记忆就很不错了。
以及到自己做过的项目中去把每个有涉及的原理的代码,研究一遍,就可以了
一共四个系列整整50+本电子书,找了好久终于齐了,如果都能看完看懂且科学的总结外加合理的实践,相信未来你的技术路会更好走,当然阿里巴巴,腾讯,阿里这些的Offer不将是梦,除了多看点技术书,你觉得还有什么能拿出来和985,211的朋友比呢?
最近在学习算法和数据结构+涉及一点acm方面的知识,看到一篇好的关于数据结构和算法的书籍,如果计算机系只开三门课,那么这三门课就一定是:离散数学,数据结构与算法,编译原理。如果只开一门课,那剩下的就一定是:数据结构与算法。Niklaus Wirth说:算法+数据结构=程序,不说废话了,下面列出一份数据结构+算法书单,从入门到进阶说起。

一.入门系列
推荐理由:通过图片,打比方等通俗易懂的方法讲述算法的书籍让你能达到懂一些基础算法,线性表,堆栈,队列,树,图,DP算法,背包问题等,不要求会实现,但是看过以下这些书对于之后实现算法打下坚实的思维基础。

1.1《啊哈!算法 啊哈磊》
1.2《算法图解》
1.3《妙趣横生的算法(C语言实现 第2版)》
1.4《趣学算法》
1.5《大话数据结构》
1.6《算法神探》
1.7《算法帝国》
1.8《算法设计与分析基础第3版》

二.进阶系列
推荐理由:在基本入门算法书的调教和领悟下,渐渐懂得一些基础算法是什么,现在就是进阶系列可以参阅,力荐《算法导论》《编程原本》,经典款不解释,当然这些书最好是在入门后再看合适,还有王晓东那本算法书也很不错,有几个版本,可以挑选看还附有课后答案。

2.1《算法导论英文版第三版》
2.1《算法导论中文版》
2.2《算法 (第4版)》
2.3《数据结构与算法 Java版》
2.4《Algorithms算法概论中文版》
2.5《算法心得-高效算法的奥秘(原书第2版)》
2.6《计算机程序设计艺术 第1卷:基本算法(第三版)》
2.7《计算机程序设计艺术 第2卷:半数值算法(第三版)》
2.8《计算机程序设计艺术 第3卷:排序与查找(第二版)》
2.9《数据结构(C语言版)-严蔚敏 》
2.9《计算机算法设计与分析 第4版 (王晓东) 课后答案[1-9章]》
2.9《计算机算法设计与分析(王晓东)(第三版)》
2.9《计算机算法设计与分析(王晓东)(第二版)》
2.9《计算机算法设计与分析(第三版)课后习题答案详解》
2.10《Java数据结构和算法(第二版)》
2.11《编程原本》
2.12《算法设计手册第2版 》
2.13《JavaScrit数据结构与算法(第2版)》
2.14《数据结构与算法分析:C语言描述(原书第2版)》
2.15《数据结构与算法Python语言》
三.算法题系列
推荐理由:一些题海讲解具体的算法思想应用在题目上是怎么求解的,想刷题的可以看看结合各大OJ+leetCode一起学习。多刷题总不会错。

3.1《挑战程序设计竞赛(第2版)》
3.2《算法艺术与信息学竞赛(清华大学出版社)》
3.3《算法谜题》
3.4《编程高手箴言》
四.实用工作系列
推荐理由:在面试和工作中经常要用到的算法讲解,以及一些过来人工程师的心血总结,建议在面试前翻看,提升思维广度,外加一些实操。

4.10《算法与数据结构-实用算法基础教程》
4.1《编程之法 面试和算法心得》
4.2《程序员代码面试指南 IT名企算法与数据结构题目最优解 》
4.3《算法Ⅰ-Ⅳ(C++ 实现)–基础、数据结构、排序和搜索(第三版)》
4.4《程序员实用算法》
4.5《编程珠玑(第2版)》
4.6《编程之美》
4.7《程序调试思想与实践》
4.8《[改变未来的九大算法》
4.9《排序算法汇总》
五.算法奇门遁甲系列
推荐理由:包括一些可能在图形学,游戏设计,数据挖掘方面的算法书,偏冷门,乃大佬可以赏读的系列书籍

5.1《matlab数学建模算法》
5.2《常用数据挖掘算法总结及ython实现》
5.3《机器学习十大算法》
5.4《计算机程序设计艺术 The Art o Comuter rogramming 第2卷(第3版)》
5.5《算法百科 Encycloeia o Algorithms》
5.6《智能Web算法》
5.7《现代计算机常用数据结构与算法》
5.8《数据挖掘原理与算法》
5.9《计算几何–算法与应用》
5.10《数值最优化算法(numerical otimization)》
5.11《计算机图形学原理及算法教程(Visual C++版)-和青芳 清华大学》
5.12《算法概论(Algorithm)》
5.13《数据结构教程》
5.14《图论中的常用经典算法》

总结:天下没有不劳而获的果实,望各位年轻的朋友,想学技术的朋友,在决心扎入技术道路的路上披荆斩棘,把书弄懂了,再去敲代码,把原理弄懂了,再去实践,将会带给你的人生,你的工作,你的未来一个美梦。

写给VB.NET新手的入门介绍

写给VB.NET新手的入门介绍
https://tieba.baidu.com/p/3397219249

二笔青年
模块10
这是一篇我很早很早以前写的文章,以前一直作为置顶文。但是之后不知道为何被百度删了,我也找不到以前的文档记录。所以就根据现在的情况,稍微删改一些内容,重新发布出来,算是给想学.NET的新手一些启示吧。

在网络上,C#的教程、文档、讨论比比皆是,但是VB.NET的教程(特指优秀的)却寥寥无几,至少我自学VB.NET就从来都没有从这些教程中受益过。
国人追逐潮流之风愈加严重,大部分的程序员在听说过C#是专门为.NET环境所设计的语言之后,就“义无反顾”地投入到了C#的怀抱中去了……
很不巧的,我却爱上了VB这门语言,对于C#的食古不化感觉厌恶至极(指语法上,我太讨厌花括号和分号了)。

说实话,.NET明显被某些人恶意夸大了功能,至少在他们唾沫横飞地夸夸其谈.NET的某某优点时,却支口不提或者故意隐匿了.NET的缺点。
我个人觉得.NET程序最大的缺点就是性能,别听信那些专家所说的“微软做了很多工作,让.NET程序比机器程序性能上并没有太大损失”,这是唬人的。
虽然目前大部分的用户机器配置,都可以很快的启动和运行一般的.NET程序,但是一些大型软件,对性能要求较高的程序,都极少使用用.NET作为开发语言。
.NET程序比用C++或VB6所写出的程序占用的内存和启动程序都要高很多,而且还需要安装.NET框架才可以运行。

目前主流的.NET框架有2.0、3.5、4.0、4.5,低版本程序可运行在高版本框架内,但高版本程序就无法运行在低版本框架。
不过目前所有的新版本Windows系统都会集成.NET框架,作为兼容性和稳定性最好的,我个人推荐使用2.0版的框架作为程序开发。
另外,开源框架Mono,可以作为非Windows系统下的.NET程序框架和运行环境,用于开发安卓手机应用及Mac或Linux操作系统的.NET程序。
虽然.NET并不如JAVA开放,不过其在拥有MONO这种开源运行框架之下,其应用途径还是比较广泛的。

还有一个不得不提的致命缺点,就是.NET程序的代码安全性。.NET编译器所生成的代码并非是机器语言,而是一种类似汇编语言的中间代码,它在运行时被装载到系统中一个.NET运行解释器中进行即时编译(这就是性能问题的原因所在),所以这造成了一个问题——代码容易被反汇编。
在微软官方发布的SDK中,就有一个反汇编.NET程序的小工具ildasm。还有其他比较好的反编译工具如.NET Reflector、Telerik JustDecompile等,甚至可以直接查看程序集内代码。
想要保护.NET程序代码,除了使用代码混淆器,也可以使用一些“虚拟机”外壳程序,不过这些工具都是治标不治本,很难保护.NET程序不被破解,或代码不被窃取。
因此,.NET不是一个好的商用软件或共享软件的开发语言,而只是一个能快速开发或作为网络服务的语言,你可以使用.NET利用以前十分之一的时间写出一个完整功能的小程序,或者将关键代码放到自己的服务器中,使用客户端程序与服务器连接而产生具体实现功能,但不要指望使用.NET开发的共享程序让你的荷包鼓起来。

说了这么多坏话,如果你没有立刻掉头离开,并决定选择这一门语言(或者说环境更恰当)的话,那么恭喜你,你将体验到简单编程的快乐!
.NET程序更像是脚本语言,就它所生成的中间语言代码而言,它本身也属于一种低级脚本语言。
想当年微软发布第一个.NET开发环境VS.NET(VS2003)时,最让人眼前一亮的不是脱胎换骨的VB.NET,而是新出生的C#。就当时而言,VB.NET虽然增加了完整的面向对象的环境,但却在某些细节上输给了C#,比如缺乏无符号类型整数,没有summary注释,没有运算符重载,在底层处理上不如C#,无法使用指针……

当然,那是当年的事。现在的VB.NET已经紧随C#的升级而改变了,虽然在底层的处理上仍然不如C#(VB还是没有指针),但一些其他的缺点已经被克服了。VB.NET现在是一门很完美的.NET编程工具,虽然有人抱怨VB的关键字太长,而且代码冗余,但就通俗明了、简单易学和“傻瓜式”的编程方法,可以让我们省却很多的时间。
指出一些VB拥有而C#没有的功能你就会明白:VB拥有智能变量类型推理,隐藏式的自动数据转换,后期对象绑定,代码编辑时的后台智能编译,拥有众多VB6保留下来的方便的功能函数,My扩展……
就我看来,VB.NET并非不敌C#,而是很多人都迷失在了追逐潮流中。
再来一点,VB和C#都一样,都是依托于.NET框架,所以在很多功能上,它们都是调用同一个框架内的类型和函数才得以实现的。就语法上的不同,存在于编译器不同的解释上。如果你多多研究.NET程序的中间语言,就会发现,其实在VB中实现C#的功能,也并非难事,只是微软尽力隐藏了这些功能,让VB停留在BASIC之上,这是微软固有的营销策略。

废话扯了这么多,现在该谈谈如何入门了。
只要选一本好的VB.NET教程?如果你有那样的教程,拜托请附送给我一本。
别去书摊上买《VB.NET从入门到精通》这一类的书籍,多是些官话、废话,对于没有编程经验的新手来说毫无用处。最好的教程是微软的MSDN——程序员开发文档。
将Visual Basic 的指导教程和类型概念仔细通读一遍,并将所有源代码编写一次,理解其中的概念,那么基本的东西你也就掌握得差不多会了。
再然后是了解VB.NET的所有关键字功能,对于暂时不了解的或者不急着会用到的可以放一下,以后再回头来看。

最后,也是最漫长的,就是开始熟悉.NET框架。所有.NET程序的功能都被包含在了这个框架中,我们的.NET程序中的大部分功能将依托于这个框架。你得了解一些常用的命名空间、类型和借口,并熟记一些常用的静态方法(函数)。
如果进行窗体开发,需要仔细了解Windows.Forms命名空间内的类型;
如果需要与系统或者其他WIN32程序进行交互(比如COM),那么就要开始研究Runtime命名空间;
如果是网络开发,就需要研究Web命名空间;
如果是数据开发,就需要研究Data、XML命名空间……

最后的最后,恭喜你,终于成为了一个高手,那么我们将要开始进入.NET的核心高级开发技术,比如反射(动态类型加载)、比如CodeCOM(动态源码生成),比如MSIL(中间语言)的汇编与反汇编。
简单来说,使用.NET,我们不需要了解更多的系统底层知识,就可以快捷方便地开发桌面、数据库、网络应用程序,它在牺牲了性能和硬盘的空间之后,可以为我们提供强大的功能支持。
如果你想要掌握一门主宰未来,并且是一门拥有完整功能且简单易学的语言的话,那么VB.NET是你最好的选择。
到最后的最后,某一天,你会突然发现,什么VB.NET,什么C#、J#,都是一样,只不过是叫了个不同的名字,它们傍的都是同一个大款。这些编程语言在实现细节中有大部分都是相同的,你会突然顿悟,不过是一个王八换了件马甲……
这只是我自学两年VB的见解。
说实话,我学编程也只是为了好玩儿,因此也没有放太多的精力于此,所以肯定有一些不太正确的观点,请大家多多指正。

PS:这篇教程是在VB2008的基础上阐述的,所以之后版本所添加的一些新功能并没有讲解,请各位新手根据自己所学习的版本慢慢摸索吧。兴趣才是你最好的老师!

你可能感兴趣的:(程序设计,学习,c#)