无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
楼主: 不点
打印 上一主题 下一主题

编程语言的探究

    [复制链接]
91#
发表于 2022-3-2 19:03:10 | 只看该作者
回复

使用道具 举报

92#
发表于 2022-11-11 14:55:06 | 只看该作者
继续来学习的.
回复

使用道具 举报

93#
发表于 2022-11-14 09:15:30 | 只看该作者
新语言替代慢
回复

使用道具 举报

94#
发表于 2022-11-23 23:24:13 | 只看该作者
继续研究下吧
回复

使用道具 举报

95#
 楼主| 发表于 2022-11-27 14:43:36 | 只看该作者
各种编程语言的优缺点

https://cloud.tencent.com/developer/article/1925981

这是腾讯云上的一篇文章。文章虽然很短,但我觉得不错。

文章只提到了 C、Java、C++、Python、PHP、JavaScript、C# 这 7 种语言,没有涉及较新的 Rust 之类的语言。这从一个侧面说明,目前那些较新的语言,并不具有什么“替代优势”,仅仅是 “增加了一种选择” 而已,意义不大。

文章把 C 说成是 “万物之源”,我觉得有深度,这提醒得好。文章还把 “难度” 排在显眼的位置,我也十分认同。一个语言好不好,还得看学习的难度。你一个人偏爱某种语言,那是你自己的事,别人无权干涉。一个语言,如果学习者愿意学、愿意用,这才是属于他的语言。你用的语言,别人不用,即使你写文章强力推荐,别人仍然不用。

除了 “难度” 以外,我觉得还有一个方面比较重要,就是,这个语言的设计实现,是否简单。简单才是美。你一个语言的实现,需要若干兆、若干G 的存储空间,这能是好语言吗?我对此持否定的态度。千年、万年以后的人类,应该是使用设计得更精妙的、更简单易用的语言。

下面就抄录原文,免得大家还得点击上述链接。

-----------------------------  以下是原文  -------------------------

各种编程语言的优缺点

作者:大雄
原始发表时间:2021-12-23


1 万物之源 C 语言


难度:★★★ 人气:★★★★★
C语言是一种通用型命令式计算机编程语言,其支持结构化编程、词汇变量范围与递归,同时亦是套能够预防各类未预期操作的静态类型系统,最初构建目标在于编写系统软件。
用途:软件开发、硬件、操作系统。
优点:
1.可移植性:无需或者很少改动就可以将开发出的软件在不同平台上运行
2. C语言完全基于变量、宏、函数以及结构,因此可被嵌入至几乎一切现代处理器,从冰箱到闹钟即可作为其运行平台。
3. 了解C语言,也就了解了关于编程语言的一切,几乎所有现代编程语言都脱胎于C,因此了解C语言能够帮助大家快速掌握其它各类编程语言。
缺点:
1.运行时C语言不具备运行时检查机制。
2.面向对象编程: C语言不支持面向对象编程,因此C++才会诞生以解决这一问题。
3.复杂的学习曲线: 越是基础的东西并非最易上手,比较适合那些已经对其它编程语言有所了解的学习者。

2、 Java


难度:★★★ 人气:★★★★★
Java 的热度一直居高不下,长期霸占各类编程语言排行榜前三名。Java 是一门面向对象的编程语言,开发者可以利用其在计算机上创建应用程序。
用途:安卓、iOS开发、视频游戏开发、桌面GUI、软件开发。
优点:
1、需求旺盛,Java开发岗位为目前需求量最大的软件技能方向,Java也是世界上使用范围最广泛的编程语言。
2、不断发展的语言,Java平台不断迎来新功能,包括 lambda 机制的引入。
3、Android 应用开发的基石:谷歌公司的 Android 移动平台是目前全球范围内人气最高的移动平台,开发者可以利用自己的 Java 技能为 Android 系统开发应用。
缺点:
1、占用大量内存:Java使用的内存量高于C++.
2、学习曲线较长:并不属于最易于上手的语言,当然也不是最难学习的语言。
3、启动时间较长:利用 Java 语言开发 Android 应用时,我们一定会对其模拟器代码在台式机上运行速度留下深刻印象。


3、 C++

难度:★★★★ 人气:★★★★
C++是一款面向对象编程(简称OOP)语言,被广泛视为最出色的大规模应用构建语言。C++属于C语言的一个超集。
用途:软件开发搜索引擎操作系统视频游戏
优点:
1、重要技能:掌握C、C++能够帮助大家在众多开发人才当中脱颖而出,掌握了C/C++大家将能够深入了解Java或Python等编程语言中的内存管理机制,并了解如何回避各类常见的陷阱与难题。
2、灵活的调整空间:C++允许大家对自己的应用进行灵活调整并充分发挥计算机的全部性能。与Java/C++相比,编程过程并不友好,但我们却能够利用它实现一切操作。
缺点:1、艰难的学习曲线:C++非常难于学习,但在掌握之后大家将直接登上程序员金字塔的塔尖。
2、体系极为庞大: C++规模可观且拥有大量极为复杂的功能交互方式,没有哪位开发者能够使用其提供的全部构建组件,但我们可以充分发挥自己的才智选择正确的功能子集。

4、 Python


难度: ★★ 人气:★★★★★
Python是一项服务器端解释型开源非编译脚本语言可单独使用,也可作为django等框架的组成部分。
用途:Web开发、视频游戏开发、桌面GUI 软件开发。
优点:
1、易于学习:Python作为最易于掌握的编程语言而拥有极高人气。
2、库:广泛的工具及功能库能够帮助大家轻松完成构建工作。
3、物联网:Python特随着物联网技术的普及而进一步发展,目前Rasp-bery Pi等新型平台已经将其作为开发基础。
缺点:1、速度:作为一种解释型语言,其速度往往往低于编译语言。
2、移动:Python在移动计算领域的表现比较直观,利用Python开发的移动应用非常罕见。
3、设计:Python语言在设计上存在一些问题,其属于动态类语言,因此需要进行更多测试且带来某些只在特定运行时中出现的错误。

5、 PHP


难度:★★★  人气:★★★★
PHP是一款服务器端脚本语言,社区庞大且活跃,主要面向Web开发但同时作为通用性编程语言。
用途:WordPress插件、Web开发、创建包含数据库功能页面。
优点:
1、易于上手且功能丰富:它是一款适合Web开发与通用用途,易于快速上手的服务器端脚本语言。
2、庞大的社区:PHP拥有庞大的活跃社区。Web开发者面临的大部分难题都拥有现成的解决方案。
3、数据库:可与各类数据库、文件系统及图片顺畅协作。
缺点:1、学习门槛过低:由于学习门槛太低,项目中存在着大量经验不足的开发者,某些开源代码甚至已经存在十余年。
2、速度:PHP为解释型语言,其代码运行速度低于大部分编程语言竞争对手。
3、错误处理机制: PHP的错误处理机制比较糟糕,特别是与其它编程语言相比较,这主要是因为PHP的开发历史过长且需要支持大量旧有功能。

6、 JavaScript


难度: ★★ 人气:★★★★
JavaScript 是一款使用效率最高的客户端脚本语言,这意味着 JavaScript 代码写至 HTML 页面当中,当用户通过内部 JavaScript 请求至 HTML 页面时,该脚本会被发送至浏览器,并由浏览器决定下一步操作。
用途:网站前端、分析、功能控件、Web交互
优点:
1、速度:作为客户端脚本语言 JavaScript 中的任意代码函数却可立即运行而无需等待服务器连接及应答,因此其速度非常出色。
2、易学性:JavaScript 相对易于学习及使用。并且掌握了 JavaScript 语言就等于成为能同时开发网页、后台、移动端的全栈工程师。

3、简单性:JavaScript 能够与其它多种语言顺利协作,并可用于多种不同应用程序与PHP或者SSI脚本不同,JavaScript 可被插入任意网页当中,而无需考虑具体文件扩展名。
缺点:1、安全性:由于代码在用户计算机上执行,因此其有时会被恶意活动所利用正因为如此,部分用户会选择禁用JavaScript。
2、最终用户依赖性: JavaScript 有时会在不同浏览器上以不同方式进行解释。相较于总能提供同样输出结果的服务器端脚本,JavaScript 客户端脚本的可预测性相对较差。不过这一问题并不是非常严重,只要我们在全部主流测览器上对脚本进行充分测试即可。

7、 C#


难度:★★★ 人气:★★★★
这是一款强大而灵活的编程语言。 与其他编程语言一样,它也可用于创建多种应用程序。事实上,C#的功能只受限于我们的想象力。该语言对开发者的操作内容完全不设任何限制,其可被用于交付动态网站、开发工具甚至是编译器等等。
用途:Windows应用、企业级业务应、软件开发。
优点:1、Net库: 全面集成Net库,提供出色的功能与支持库访问能力。
2、可转换性:其基于C语言,因此C#的结构可转移至Java、Objective-C、PHP以及C++等其它语言形式
3、需求旺盛::C#加Java为目前各企业需求最为旺盛的软件开发技能组合。
缺点:
1、C#并不是最适合新手们进行入门学习的编程语言,其学习曲线非常陡峭。
2、跨平台能力差:由于集成 .Net,因此不具备跨平台能力。


从上面的对比我们不难发现,每种程序语言都有它的优势和劣势,我们在选择编程语言呢,主要考虑几个要点。

1、构建编写网页 推荐:HTML、CSS、PHP
2、开发app   推荐:Java、C++
3、制作视频游戏 推荐:Python、Java
4、对数据进行管理 推荐:C#、PHP、Python
5、进行偏硬件的编程 推荐:C
6、进行科学计算 推荐:Python


当然,我们在实际开发的时候需要我们综合考虑产品需求,在程序运行速度指标、硬件要求、开发周期等方面进行权衡,最终确定编程所需语言。



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-12-10 20:46

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表