网站首页 > 技术教程 正文
初学编程的时候,尤其是自学编程的同学们,选择第一门编程语言很让人头大,现在的编程语言可太多了,C、C++、Java、CSharp让人眼花缭乱,不知道如何选择。
我自学编程十一年了,接触过各种编程语言,在网上免费教学十年,有着丰富的教育经验,让我来给大家分析一下各语言的优劣。
不过先说明一点,就是我没上过大学,职高毕业就出来打工了,因为我觉得上了大学也学不到真本事,不如直接进社会积累项目经验,结果在社会上被打脸了,没有文凭根本寸步难行,所以这里稍微插一句,能升学历还是升吧,升了总比不升好。
我虽然没上过大学,但我接触过海量的大学生,毕竟在网上教编程那么多年了,没吃过猪肉也该见过猪跑,大学里的进度据我所知是从C++语言开始,到Java,再到网页编程,可能不同的大学情况不同,这里就不细说了。
如果在大学有编程课,那通过大学的编程课再额外自己自学一下也能学出点名堂出来,在大学学习得靠自己,不能完全靠课堂,课堂只能提供一个基本的学习环境,学习是自己的事,现在的网络那么发达,有什么网上查不到呢?所以课堂 + 网络 + 练习能起到很好的学习效果。
如果是自学的呢?比如高中生、大一的学生想学编程又不知道如何开始的又该怎么办呢?我的建议是打好基础,从C语言开始,现在的大部分编程语言都是类C的,什么叫类C?就是类似于C语言,比如C++、Java、CSharp等这些都属于类C语言,也可以叫C类语言,这个说法无所谓,类C语言的特点就是语法大多相似,可以触类旁通,比如我有C语言的基础,我学习PHP的语法只用了两个小时,因为语法上差不多,就是个别知识不一样需要单独学习,所以学习效率就高。
学会了C语言,再学其他大部分语言都会觉得不难了,可以说C语言是编程中的启蒙语言。当然如果你已经有了自己的目标,直接从Java开始也行,Java属于入门容易精通难的语言,学会了Java也能做不少事了。
说说不同语言的应用领域,这点很重要,不同语言为了不同的目的而诞生,应用领域也各有不同。
- C语言是一门面向过程的编程语言,比较底层,操作系统中除了引导以外,其他的都可以用C语言来编写,最典型的例子就是Linux内核。执行效率高,源代码级跨平台,可以说各种应用程序和系统软件都能做,只是做起来会比较麻烦
- Java语言是目标代码级跨平台,只要有JVM就能运行Java程序,属于半编译型编程语言,JVM的优化很好,所以执行效率也不错,是各大厂支持的编程语言,是一门面向对象的编程语言,最著名的软件就是Android(中文叫安卓),安卓应用都可以用Java来编写。
- CSharp是微软的亲儿子,跟Java竞争的编程语言,学习起来难度也不大,而且能很快效果,也就是说想快速开发桌面级应用程序,用CSharp是一个不错的选择,著名的框架有WinForm和WPF,都是用来开发图形界面应用程序的。
- C++的语法跟C语言极为相似,甚至被称为是C with class,但难度很高,要精通不容易,连C++之父都自称自己没精通C++,可见其难度有多高,但执行效率跟C语言有的一拼,也是编译型语言,源代码级跨平台,很多对性能要求高的项目都是用C++写的,比如游戏引擎,常用的图形化界面框架有MFC、Qt、GTK等。
- PHP的底层是C语言,所以性能还算可以,主要是用来写动态网站用的,有一句话叫:PHP是世界上最好的语言。PHP的难度极小,上手极快,可以说是一门非常简单的编程语言了,属于解释型语言。
- Python的底层也是C语言,但性能有点差,不过也是极为简单的,高中生上手一点问题都没有,也是解释型语言,还登上了编程语言排行榜第一名,在人工智能方面有很多应用。
上面举出了几个常见的编程语言,当然编程语言的数量实在是太过庞大了,不可能全部列举出来,但能掌握以上的编程语言也可以认为是大神了,比如我(手动滑稽)。
希望各位准程序员们都能学好编程!
猜你喜欢
- 2024-11-19 C# 文字识别(OCR)
- 2024-11-19 c#手机开发Maui实现条形码扫描
- 2024-11-19 CSharp学习笔记(7)
- 2024-11-19 CSharp学习笔记(10)
- 2024-11-19 37岁辞职自学C#上位机开发通信类库第2天:进度记录
- 2024-11-19 CSharp学习笔记(16)
- 2024-11-19 python调用CSharp动态库
- 2024-11-19 C# 读取CSV文件
- 2024-11-19 CSharp学习笔记(14)
- 2024-11-19 C#委托—马工教你轻松玩转委托
你 发表评论:
欢迎- 最近发表
-
- 阿里P8大佬总结的Nacos入门笔记,从安装到进阶小白也能轻松学会
- Linux环境下,Jmeter压力测试的搭建及报错解决方法
- Java 在Word中合并单元格时删除重复值
- 解压缩软件哪个好用?4款大多数人常用的软件~
- Hadoop高可用集群搭建及API调用(hadoop3高可用)
- lombok注解@Data没有toString和getter、setter问题
- Apache Felix介绍(apache fineract)
- Spring Boot官方推荐的Docker镜像编译方式-分层jar包
- Gradle 使用手册(gradle详细教程)
- 字节二面:为什么SpringBoot的 jar可以直接运行?
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)