电脑店-solidwork教学
2023年4月5日发(作者:笔记本显卡温度过高怎么办)
北⽃杯——C#上位机学习⼼得
#来⾃学渣的问候~
前情提要
因为准备2020的北⽃杯⼤赛,要写⼀个基于我们硬件实物的上位机软件,思来想去之后觉得⽤C#来写。其实在春节之前,我只会C
语⾔和VerilogHDL,C#属于那种听过但从来没学过的语⾔。
但是这个软件,基础知识我学了10天,上位机我写了10天,⼤概20天不到就搞定了。(也算神速了吧)因此也想分享⼀下,如何快
速⼊门C#,并制作⼀个上位机软件
这篇博客⽐较是个电⼦类学⽣,急需给⾃⼰的硬件实物配置⼀个电脑端调试助⼿,不打算学习太多的基础知识的那种,像我⼀样为了⽐赛⽽
准备的。
学习视频
在C#⼊门的学习,肯定是需要看学习视频的,上B站搜索C#上位机,就会出现很多针对上位机的⼊门教程。
我⽐较推荐杜洋⼯作室的上位机⼊门,这个教程的主持⼈刚好是⼀个写软件⼀个做硬件的,做硬件的主持⼈就⽐较能了解到像电⼦类的学
⽣学习C#,是⼀个怎么样的思维。
代码量积累
在正式些⽐赛的上位机软件之前,我⼤概是写了近10个C#的窗体应⽤程序,来作为练习。内容覆盖了串⼝,信息显⽰,按键控制,串⼝信
息转图像,多窗体应⽤,这⼏个算是最基础的⼀些应⽤,必须要会的。
C#本⾝作为⼀门⾼级语⾔(指⾼度模块化封装),拥有很完善的库,在不需要进⾏⼤项⽬开发的情况下,基本不需要⾃⼰造函数,直接调
⽤就可以了。C#整体的学习难度不⼤(指写上位机),只要拥有了良好的C语⾔基础,和了解C#中各种类的使⽤,就能写出⼀个不错的上
位机了。
上位机编程
我为北⽃杯写的上位机,是⼀个数据显⽰的窗体应⽤程序,包含了串⼝,数据显⽰,串⼝收发,⽂件打开/保存,图像显⽰,GMap地图显
⽰,⽹络数据库连接。
其中,地图⽤的是的拓展包,需要去其官⽹上下载应⽤程序拓展包。
应⽤效果是这样的:
数据库在C#的应⽤有好⼏种,SQLServer,MySQL,ACCESS。我是因为借⽤了同学的阿⾥云数据库,必须要匹配,所以我⽤的就是
MySQL。
这个我没有⽤数据库的显⽰界⾯,我将数据库的信息格式转换成了TextBox的显⽰,也就是字符串显⽰。⽹端是这个样⼦的:
学习⼼得
上位机介绍的博客改天单独写⼀个,这个博客主要就是想写⼀下学习C#和上位机编程的⼼得。
我写上位机的过程⽐较简单粗暴,⼊门了基础知识之后就直接硬刚,不会的就直接上⽹查资料,找相应的函数来⽤。
在编写过程中,我是对照了⼀个学长的模板,来设计整个软件的。有⼀个模板的好处就在于,它能帮忙节省很多图形界⾯的设计时间,还有
⼀些基础控制连接之间的⿇烦。⽐如按键显⽰数据,串⼝和数据发送之间的约束。
如果是速成的话,我认为过多的纠结类的原理是没有必要的,了解应⽤⽅式可能更加重要。但如果是要进⼀步学习的话,还是要从头⼊门,
先从控制台应⽤学起,了解了C#语⾔的架构,在有针对性的去学⼀个⽅向,⽐如数据库、地图、图像、算法之类的。
我⾃⼰本⾝的学习⽅法⽐较功利,或者说⽬的性过强。⼀般情况下,我不是先学会⼀门知识,再去应⽤它,⼤部分情况下,我是因为要参加
某个⽐赛,或者被要求做某个⼯作,然后去学去⽤。
这个学习有好有坏,好处就是能够有压⼒带来的动⼒,时间的限制会逼迫⾃⼰⾼速的接收知识,但是坏处就在于对于知识的信息会有很⼤的
取舍,会⽬的性⾮常强的把有⽤的信息提取出来,忽略掉次要信息。在⼀门语⾔,⼀个软件或者⼀款硬件的整体学习上,这个是⽐较不利
的。
因此,
就C#的学习来说,如果只想为了⽐赛去做⼀款上位机软件,学个⼏天就可以了,对于硬件⼯程师来说,⾃⼰编写上位机软件是为了更好的
调试硬件,只考虑实⽤性,但若是想在C#编程上更近⼀步的⼈来说,借助书籍去了解封装类的原理,会有利于更加灵活的编程和应⽤。
娱乐⼀下,奉上表情包⼀个。
菜鸡⼀个,⽂章看法和内容也许有问题。如有错误,请指正,感激不尽。
更多推荐
北斗助手
发布评论