VB语言回忆录——到了是该放弃VB语言的时候了么

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

VB语言回忆录——到了是该放弃VB语言的时候了么

  • 前言
  • 初次接触编程
  • 开始学习VB
  • 开始发挥作用
  • 版本变迁
  • 有感而发


前言

4年前(2020年),微软 NET 团队在开发者博客中宣布,他们虽然还会继续在 .NET 5.0 上支持 Visual Basic ,但不再将 VB 作为一门独立的语言发展。VB这个语言我从接触到现在也将近十七八年了,虽然一直都是停留在初级的阶段,但作为一个自己的纯爱好,虽然技术上一直没有太大的进步,但也一直没有生疏,它一直在我的工作发挥着作用,甚至是锦上添花。

初次接触编程

在我们高一的时候(2002年)就开设了信息技术的课程,那个时候开始接触到了QBasic语言,本人虽然接触电脑比较早,但那个时候确实我第一次接触编程。当时在学校的机房,大家都在那里偷偷的玩三国群英传(三),我偶尔也会偷偷玩下游戏,但之前也会把老师出的编程题给做完。甚至我还会在家里的电脑也安装了个QBasic在家里也练了练。以至于后面受到信息老师的褒奖,说要不要考虑一下参加信息技术大赛之类的,其实当时我对编程也没太大感觉,就像做一个题一样枯燥,不是有作业的话自己肯定不会主动去学这个的。毕竟高一还是学文化课的时候嘛,这些东西只是所谓“素质教育”的一部分,不重要。我所不知道的是原来QBasic就是VB的前身,也就是我与Basic语言的首次接触。
在这里插入图片描述

开始学习VB

到了大一的时候(2005年),大家都在报二级计算机等级考试,大部分同学报的是C语言,因为我想着C语言是我们的课程必学的,我就学个不同的吧,当时我就相中了VB,因为我发现这个语言很有趣,做个界面很简单,只要拖动那些元件就可以创建一个简单的窗口,非常有意思。所以我就自学了VB,通过了计算机二级考试。当时最流行的就是VB6.0了,所以就一直使用的是VB6.0。
在这里插入图片描述

学了VB之后,就喜欢从网上搜寻一些稀奇古怪的代码去试,例如给别人做一个病毒,只要运行就关机的那种,嘿嘿。
但这个时候时钟还是停留在好玩的阶段,在于学习和工作还没发挥什么作用。如果在学习和工作中一直用不到的话,大概率慢慢就会遗忘掉。

开始发挥作用

最开始发挥作用的是读研究生的时候,当时做的项目,这个项目有FPGA、DSP、上位机等,我的工作主要是FPGA上实现算法,DSP也会涉及,而上位机是用VC++做一个界面,这个工作时另一个同学来做的。FPGA和上位机是通过串口进行通信的,我也对上位机比较感兴趣,所以也想自己试试。所以我也就试着用VB做了一个和VC一样功能的上位机,经过一阵折腾,做的功能还真跟另一个同学做的VC上位机功能基本一致了,这是第一次将自己所学的VB用于一个具体项目。
在接下来多份工作中虽然一直都是FPGA的开发,但我也一直没有遗忘掉VB,一直都是试图用它来实现一些测试功能,以及提升效率的小工具。包括串口通信、网口telnet、SSH通信、协议解析等这些与FPGA或者嵌入式系统紧密结合的一些调试或者测试界面,提升调试和测试效率,也会开发一些辅助工具,例如提升jtag下载FPGA效率、VB与matlab结合快速生成滤波器参数等等,很大的提升了自己的效率。因此VB也成了我工作中不可或缺的一种编程工具。

版本变迁

从最开始用的是VB6.0,随着微软对其升级到了VB.NET,VB6.0已经过时到经常会出现一些问题,到2016年的时候被迫转为了VB.net,使用的是VS2010,虽然两者语法基本也差不多,但每次变化都是比较痛苦的,到目前使用的是VS2019。但是微软不在更新VB这个语言,随着时间的推移估计也会越来越出现兼容性的问题,最终也不得不放弃。或许是时候我也应该逐渐跟VB语言说再见了,幸运的是,VC#和VB基本是兼容的,下一步的路或许可以从VB过渡到VC#,虽然又得经历一次痛苦的转型,相对于其他语言,这已经是代价最小的了。

有感而发

刚学VB的时候程序员这个职业还没开始火,要不得不慢慢放弃VB的时候,程序员已经开始饱和过剩了。VB已经老了,我也老了,人总是希望待在舒适区中,学个新东西越来越费力,祝愿我从VB过渡到VC#能够成功吧

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/273071.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【AI辅助研发】-趋势:大势已来,行业变革

【AI辅助研发】-趋势:大势已来,行业变革 引言 在科技日新月异的今天,人工智能(AI)技术已逐渐渗透到各行各业,其中软件研发行业更是受益匪浅。AI辅助研发已成为大势所趋,不仅提高了软件开发的效…

Python接口自动化测试:断言封装详解

前言 在进行API接口测试时,断言起着至关重要的作用。断言是用于验证预期结果与实际结果是否一致的过程。在Python中,我们可以利用一些库来实现断言功能。 1. 安装必要的库 在Python中,我们主要会使用两个库:requests和jsonpath…

2024-03-10 c++

🌸 MFC下拉框控件 | Combo Box eg 计算器 1。新建MFC项目(基于对话框、静态库) 2。添加控件,删除初始的3个多余控件 加3个edit control 加1个combo box,属性sort改为false,data为 ;-;;;% 加1个static text…

自动化运维利器Ansible基础(环境部署)

Ansible 介绍及安装 1. 介绍 Ansible 是⼀个 IT ⾃动化⼯具。它能配置系统、部署软件、编 排更复杂的 IT 任务,如连续部署或零停机时间滚动更新。 Ansible ⽤ Python 编写,尽管市⾯上已经有很多可供选择的 配置管理解决⽅案(例如 Salt、Pupp…

代码讲解:如何把3D数据转换成旋转的视频?

目录 3D数据集下载 读取binvox文件 使用matplotlib创建图 动画效果 完整代码 3D数据集下载 这里以shapenet数据集为例,可以访问外网的可以去直接申请下载;我也准备了一个备份在百度网盘的数据集,可以参考: ShapeNet简介和下…

开源组件安全风险及应对

在软件开发的过程中,为了提升开发效率、软件质量和稳定性,并降低开发成本,使用开源组件是开发人员的不二选择(实际上,所有软件开发技术的演进都是为了能够更短时间、更低成本地构建软件)。这里的开源组件指…

java SSM厂房管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 java SSM厂房管理系统是一套完善的web设计系统(系统采用SSM框架进行设计开发,springspringMVCmybatis),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S…

VScode---php环境搭建

文章目录 1.下载php Dehug;php server2.下载php环境3.配置环境变量5.配置php.ini文件6.设置vscode6.测试遇到的问题 1.下载php Dehug;php server 2.下载php环境 下载地址:https://www.php.net/downloads.php 3.配置环境变量 C:\Users\hacker>php -v PHP 8.3.3 (…

DJI RONIN 4D摄像机mov无法播放的修复方法

DJI大疆是无人机领域的一哥,最近几年大疆除了巩固无人机方面的技术实力还额外加强了其它领域产品的开发,而RONIN 4D的发布说明了大疆进军影视级的决心和实力。下边来看下DJI RONIN 4D生成的MOV文件无法播放的修复方法。 故障文件: 237.1G MOV文件 故障…

自动创建word文档的exe文件,自定义文件名、保存路径

目录 一、exe 二、使用方法 三、代码 四、Python打包exe 一、exe 百度网盘: 链接:https://pan.baidu.com/s/1dyCo_iVv7fb369BHbwGjHg 提取码:2333 夸克网盘: 链接:https://pan.quark.cn/s/36b14a53cccd 二、使用方法 1. 下载完成后双…

Java宝典-抽象类和接口

目录 1. 抽象类1.1 抽象类的概念1.2 抽象类的语法1.3 抽象类的特点 2. 接口2.1 接口的概念2.2 接口的语法2.3 接口的特点2.4 实现多个接口2.5 接口的继承 3. 接口使用案例 铁汁们好,今天我们学习抽象类和接口~ 1. 抽象类 1.1 抽象类的概念 什么是抽象类?在面向对象中,如果一…

DataGrip 连接 Centos MySql失败

首先检查Mysql是否运行: systemctl status mysqld , 如果显示没有启动则需要启动mysql 检查防火墙是否打开,是否打开3306的端口 sudo firewall-cmd --list-all 如果下面3306没有打开则打开3306端口 publictarget: defaulticmp-block-inver…

力扣同类题:重排链表

很明显做过一次 class Solution { public:void reorderList(ListNode* head) {if(!head||!head->next)return;ListNode *fasthead,*lowhead;ListNode *prenullptr,*curnullptr,*nextnullptr;while(fast->next!nullptr){fastfast->next;if(fast->next)fastfast->…

Unity性能优化篇(十二) 音频优化之导入音频后的属性设置

Unity支持后缀为.wav、.ogg、.mp3的音频文件,但建议使用.wav,因为Unity对它的支持特别好。 注意:Unity在构建项目时总是会自动重新压缩音频文件,因此无需刻意提前压缩一个音频文件再导入Unity,因为这样只会降低该音频文…

Jmeter---非GUI命令行的执行生成报告、使用ant插件执行接口测试脚本生成报告

非GUI命令行的执行 1. 在jmx后缀的文件目录下打开命令行 2. 运行: jmeter -n -t filename.jmx(-n : 非GUI的方式 -t: 指定需要执行的脚本) 生成jtl报告 运行: jmeter -n -t filename.jmx -l result_filename.jtl 生成html报…

前端将html导出pdf文件解决分页问题

这是借鉴了qq_251025116大佬的解决方案并优化升级完成的,原文链接 1.安装依赖 npm install jspdf html2canvas2.使用方法 import htmlToPdffrom ./index.jsconst suc () > {message.success(success);};//记得在需要打印的div上面添加 idlet dom document.que…

数字化转型导师坚鹏:科技金融政策、案例及营销创新

科技金融政策、案例及营销创新 课程背景: 很多银行存在以下问题: 不清楚科技金融有哪些利好的政策? 不知道科技金融有哪些成功的案例? 不知道科技金融如何进行营销创新? 课程特色: 以案例的方式解…

力扣刷题Days15-136. 只出现一次的数字(js)

目录 1,题目 2,代码 2.1利用map()数据结构 2.2利用Set()数据结构 2.3位运算 3,学习与总结 3.1位运算 1,题目 给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元…

数字图像处理—python

pycahem终端也可以下载库,我只会用终端下载,用的镜像网站 pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple pip install scikit-image -i https://pypi.tuna.tsinghua.edu.cn/simple. pip install matplotlib -i https://pypi.tuna.tsinghua.edu.c…

GO: 快速升级Go版本

由于底层依赖升级了,那我们也要跟着升,go老版本已经不足满足需求了,必须要将版本升级到1.22.0以上 查看当前Go版本 命令查看go版本 go version[rootlocalhost local]# go version go version go1.21.4 linux/amd64 [rootlocalhost local]# …