发表时间:2022-03-25来源:网络
先介绍自己:我大二文史类专业,自学过Visual Basic、C语言、Python2和3,都是比入门者稍好的水平(能写点点东西),毕竟是自学,平时除了VB也用不到其他。
这首先需要看你的需求:
(1)如果不是想进入计算机专业的,只是想方便一下生活,解决一些生活问题的,简单快上手的,那么Visual Basic真的不差。不过VB的语法和很多其他编程语言如C、Java等很不一样的三点是:句尾不加分号,没有大括号{},不区分大小写。对VB转C、java的人来讲,忘记分号,不习惯打大括号是很常见的。只学VB可能会让你和很多编程者之间习惯不大一样。
你要知道,带有Visual的语言如Visual C++、Visual Basic是能够很容易地写出带窗体的程序的,直接拖拽按钮控件、文本框控件什么的,这些带界面的程序能友好地与人交互,带给人良好舒畅的用户体验。比如我自己写过十六进制以内任意进制间转换的程序,至今我都时不时要用(如下图),方便生活易于开发是其优点,而且市面上教材很多,选择范围广。我只读过孟东霞主编的《Visual Basic程序设计基础》电子工业出版社,2013,感觉可以。
而且Office/WPS中的宏就是要VB语言(VBA)写的,要熟练办公软件的话需要学VBA(对用户界面即如上图的窗体,就不能拖个按钮什么来自定义了,VBA的重点是代码而不是用户界面),不过听说微软打算让Office的宏支持由Python编写了。还有CAD等软件的宏也是仅支持VB的。
缺点是微软已经停止对Visual Basic的开发环境维护了,最新版本是1998年的VB6.0,很难说以后那一代Windows兼容不了它。至于Visual Studio 2017中的Visual Basic是VB还是VB.NET我不清楚了。VB.NET我也没用过(从编程语言的排行榜看,VB逐年减少、VB.NET逐年增加),听说和常用于游戏开发的C#(用于Unity,Cocos2d用的是C++)用法上比较类似,语法上接近VB。
(2)如果是想进入理工科专业的,C语言是必修的,计算机专业会修到C++乃至Java。C/C++与VB给初学者最大的不同是没有了界面程序,初学者常年在命令行中运行C语言的程序,就是那个黑乎乎的东西(如下图),有人叫其终端、cmd、命令提示符,可能自己写个C语言程序给自己解决问题时,用户体验没那么好吧。不过C语言比较古老,接近底层,开发操作系统、软件都能升任。而且,在主流编程语言中,C\C++是唯二能对内存进行操作的语言(指针),这一点很特别。个人觉得语法上C语言没有VB那么容易报错,而且VB程序报错常常让人摸不着头脑,C语言的报错相对容易找到原因。
相对于VB而言,C语言的内置函数不多,对文本的操作不佳,比如没有取值函数mid()、left()等,很多在Python、VB中习以为常的函数在C语言中都要自己写。C语言在70年代诞生,当时是为了处理数据而不是处理文本,所以感觉对文本处理没有VB、Python这些后来的语言那么支持。
我只读过乔保军主编的《C语言程序设计》,科学出版社,2013,感觉作为初学不错,很多典型用例是你在普通教程上看不到的,讲得也很详细
(3)如果想进军人工智能,Python是首选。据我了解:热门的编程语言中惟有它被冠以“人工智能”称号。Python常说是易学,个人觉得易学性不如VB,Python跟C语言有点像,而且和C一样都是跨平台的,Linux上也能用,同样也是在黑乎乎的终端上运行。用缩进代替大括号也很人性化。
其内置了很多函数,点运算符用得好的话也很方便。Python擅长于网络爬虫(爬取网络信息)、后端(按我理解,服务器叫后端,网页、APP叫前端),这点跟PHP类似。据说“能做几乎所有的事”,听说库很强大,社区很活跃。
(4)学习编程语言,需要一个社会环境,一是社区、百度知道这类能问答的地方,另一个是教材、课程、著作。我认为:学的人多、用的人多的语言才值得初学,因为你能很快得到自己想要的答案而不是自己拼命调试。相对而言:
VB的教材很多,容易找来学,但是网上课程就很少很少了,问答也不活跃;
C语言的教材很多,网上课程也多,懂的人多所以也比较容易在网上搜到答案,问题也能很快得到解决;
Python是2017年兴起的,各种网上课程比较多,学的人很多。
综上对比,而你又说想一直学下去,还是初学,我建议你学Python,其次是C语言,因为C语言的内置函数没有那么多,而Python作为后来者,函数比较多,你不用费心思去写个mid()函数。然而我在生活中很少能用到Python,对我而言,它只是一门开拓视野的语言。如果你选择Python语言,是学Python2还是Python3又是选择了。Python3先进些吧。而VB处于一个比较尴尬的位置(有用,但用者渐少,VBA也重要,但感觉VB前途不光明,如果学VB.NET恐怕又发挥不了VBA的优势,注:我没学过VB.NET)。不过C语言会涉及一些二进制的位运算,需要一定的大学计算机基础。C语言历经风雨而万古长青、Python新兴之势难以阻挡。很多人说什么C语言难,按我的初学经历并不觉得有什么,作为先学了VB和Python的人,主流编程语言的相通性会有很好的促进作用,我一个月就学到指针(就卡住了,因为这可以说是C语言独有的,复杂的文本处理方式也让人抓狂),总之,对我而言C语言都能一直学习下去,我相信你也能。
至于说先学VB能更好地学C语言,我认同,但B语言天生与很多主流编程语言长得不一样,再学起C来忘记分号大括号比比皆是(算法还是那个算法,但是语法就很陌生了,简直就是新天地)。但是,正是因为B语言语法不同寻常,学一学能开阔你的视野,不会以为数组只能装同一数据类型的数据(C语言),也会发现居然有编程语言不需要格式输出(形如%d)、反斜杠这些东西(在Python和C、Java都有)。有时候,正因为“不同”才值得学习。
(5)关于编程语言,与之对应还有一种类似的东西叫脚本语言(即不需编译直接运行,甚至用个记事本写完改了文件后缀,双击就能运行,而编程语言需要编译如C语言,或翻译如Python),比如用来写网页的Html、Javascript(简称js,貌似也用来写游戏乃至小程序了,听说也很强大,不同于Java),各类Shell语言如PowerShell等。
PowerShell跟C语言语法类似。网页脚本语言也有特色,就是一堆标签,和普通的编程语言区别较大,但不排斥像Js拥有循环、条件、数组这些编程语言有的东西。
另外,学习编程,如果你初学,语言选择还真的不算大问题。比如我在学VB时,学了冒泡排序,按语法修改下,用C、用Python都能实现。编程语言是相通的(数据类型、数组、循环、条件这些东西,一般编程语言都有的,比如while循环,C、VB、Python都有,乃至脚本语言Javascript、Powershell都有;有好几门语言如C#、Powershell、ActionScript、js是用var来声明变量的。另外,我看PHP语言的入门级别的代码都能看懂,尽管我没学过PHP),语法上差别有大小,但重要的是你懂得算法设计的思路,人有了想法,才能解决问题,编程语言只是工具。当然一早就选好路,一头扎进去学习也是很好的,方向精准才有能量集中。
学习编程语言,推荐中国大学MOOC平台(网易云课堂和高等教育出版社的爱课程网合办),里面都是大学老师讲课,免费而相对专业,其中浙江大学翁恺老师的C语言(亲测零基础可学,但二进制运算等内容需要一定大学计算机知识)、北京理工大学嵩天老师的Python语言(教的是Python3,亲测学起来要有基础)都是很有名气的,哈工大的车万翔老师开过Python2的课(亲测零基础可学,不过相对较闷),同济大学龚沛曾老师开VB6.0教程(亲测需要基础才能学)。慕课网、网易云课堂等都是不错的。
对我而言,学编程是为了方便生活,与你的动机不一样。但是,作为自学过三门编程语言的人,我建议:第一,学习编程语言,线下线上相结合,网络课程是真的好,你能直接获得国内一流大学师资的课程,不懂的地方多看书(也能先看书再看网课,不过我个人觉得倒过来更好,相对而言网课比书要简单)。在生活中多用活用,选书建议选教材,因为教材相对容易自学,如果是名著、译本之类没那么好学。第二,初学者选定语言就最好别变,还是那句话,编程语言是相通的,没人能保证一个语言经久不衰,算法设计的开窍才是真谛。别被网友带来带去诸如被Java很好、“php是世界上最好的语言”带到心里惴惴不安,后悔选错了路。你学第一门语言的话,可能比较慢,但是能量要集中,不要变成擅长于用各类编程语言写HelloWorld的人。
回答完毕
上一篇:python编程零基础免费网课
皓盘云建最新版下载v9.0 安卓版
53.38MB |商务办公
ris云客移动销售系统最新版下载v1.1.25 安卓手机版
42.71M |商务办公
粤语翻译帮app下载v1.1.1 安卓版
60.01MB |生活服务
人生笔记app官方版下载v1.19.4 安卓版
125.88MB |系统工具
萝卜笔记app下载v1.1.6 安卓版
46.29MB |生活服务
贯联商户端app下载v6.1.8 安卓版
12.54MB |商务办公
jotmo笔记app下载v2.30.0 安卓版
50.06MB |系统工具
鑫钜出行共享汽车app下载v1.5.2
44.7M |生活服务
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-02-15
2022-02-14