首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    2019最新编程语言排行,C家族没落了吗,Python有机会挑大梁吗?

    关于编程语言的排名的问题一直在争吵不休,随着全球科技的发展,任何一种编程语言都没有资格说永远不会过时,可能很多人觉得底层编程语言像C语言汇编永远都不会过时,这点说的也是有些武断了,当今计算机架构主要基于美籍匈牙利科学家冯诺依曼理论而建造的,包括机器能够识别的二级制文件也是基于着这种结构完成的,现在很多有实力的巨头已经投入到量子计算机的研发种,前几天谷歌提出的量子霸权论文,一石激起千层浪,很多企业都不认可这个观点,但是量子计算机或者类似量子计算机的新架构也必将出现,中国的华为公司也在致力于这方面的基础研究,没有永恒不过时的事物,包括现在的正在流行的编程语言。

    02

    编程学习初体验(3. 语言的选择)

    编程语言的选择应该说是学习编程时碰到的第一个问题,并且这个问题会在今后相当长的一段时期(一年到几年)内一直萦绕在你身上。根据我自己的认识, 对于这个问题,没有人能给你一个确定的答案,但是你会发现身边的人一直在为这个问题在论战。至于我, 我也同样没办法给出一个放之四海而皆准的答案,我能说的只有三点: 1. 每种现存的语言都有其存在的合理性; 2. 没有任何一种语言是能够包打天下的; 3. 编程入门应该根据自己以后的发展需要来选择。 就第一点合理性而言,是很显而易见的。 实际上, 在这个世界上曾经出现过的编程语言的种类远远超过目前依然存在的数目。语言本身就在经历一个优胜劣汰的过程。 剩下的语言本身就具有其不可替代性,因此具有其一大批使用者和信众。因此武断地认定某种广为流行的语言是否时髦是没有意义的。 其次, 从我自己对各种语言的尝试经历来看,的确是没有任何一种语言能够一统江湖的,现在没有,以后也没有。 我想,其原因在于不同的语言的设计和与之想对应的应用领域是相关的。例如汇编语言多用于硬件相关的开发, C语言和汇编语言多用于操作系统底层相关的开发以及C++,Java和C#用于应用程序开发三个不同的领域。 这三个不同应用领域有着不同特征和对语言表达能力的相应要求,因此是没办法互换的。 硬件相关的开发注重的是性能和实时性,对于逻辑的复杂性没有太大要求;操作系统的开发既需要考虑硬件问题,有需要对上层应用程序提供一个统一,方便和有效 的接口界面;而应用程序的开发往往需要包含复杂的逻辑和体系结构。 因此,如果你说java比汇编好,因为java语言清晰快捷;或是汇编语言比java好,因为汇编语言是所有语言的基础支持,那么你说的都是正确的,但是 都是没有意义的。因为谁也不可能取代谁,他们之间的关系是:各司其职;而非谁吃掉谁。 最后回到语言的选择这个问题上,初学入门应该学什么语言。我觉得总体而言,不同领域的初学者应该选择不同的语言。电子工程专业出身的人,应该以汇编和C语 言的学习作为入门,因为这两个语言和今后的工作最为密切相关,也是以后赚钱的“金刚钻”的所在。而计算机专业出身的初学者就相对复杂一些,如果是学系统结 构专业的,应该主攻C和C++语言。如果是学习软件工程的,则Java和C#是不二之选。 当然,这这里我不讨论个人兴趣问题,学电子的对java有兴趣也没什么错。

    01

    快过C语言?!还有这种操作?!

    Python向来都是开发速度最快,运行速度最慢的编程语言,提升速度的办法我之前讲过几种,比如和C语言交互,使用多进程。仅仅靠这两个方法来提高Python性能可是远远不够的!如果和C语言交互,速度确实得到了提升,但是没办法快过C语言。这就好比一个人跑得快,一个人跑得慢,跑得慢的那个人希望自己跑快点,让那位跑得快的拉着他,这样就会出现这种情况,跑得快的人会比他自己一个人跑慢,跑得慢的那个人会比自己一个人跑快。所以和C语言交互这种方式对运行性能的提升十分有限。下面来简单分析一下多进程是不是完美无缺了呢?其实并不是,创建多个进程系统开销远大于一个进程,而且进程太多可能会出现资源不足的情况,严重可能出现系统崩溃!

    03

    程序的基本概念

    程序的基本概念 1.1. 程序和编程语言 程序(Program)告诉计算机应如何完成一个计算任务,这里的计算可以是数学运算,比如解方程,也可以是符号运算,比如查找和替换文档中的某个单词。从根本上说,计算机是由数字电路组成的运算机器,只能对数字做运算,程序之所以能做符号运算,是因为符号在计算机内部也是用数字表示的。此外,程序还可以处理声音和图像,声音和图像在计算机内部必然也是用数字表示的,这些数字经过专门的硬件设备转换成人可以听到、看到的声音和图像。 程序由一系列基本操作组成,基本操作有以下几类: 输入(Input) 从键盘、文件或者其他设备获取数据。

    02

    用了几年的C语言后你总结了哪些C语言的精髓,是否可以说下心得体会?

    作为从事嵌入式软件开发十几年的程序员,来尝试着回答这个问题,嵌入式开发最基本的编程语言当属于C语言了,这门编程语言最大的特点是灵活高效,现在大学开设相关的编程课程已经非常多样化了,在十几年前的大学几乎大家接触到第一门编程语言都是C语言,所以C语言在国内还是有着非常深厚的土壤,在当时C语言几乎被当成万能语言来使用,但是在一些场景上的确不是C语言擅长的,特别是一些应用需求变化比较大的场景,再后来随着编程行业的演变,越来越多的高级编程语言开始走上历史舞台了,翻看编程语言的历史很多编程语言其实已经诞生了很多年了,只不过在诞生的时候并没有引起很多人的重视,就是还没有等到风口出现。

    03

    linux下的C语言开发

    在很多人的眼里,C语言和linux常常是分不开的。这其中的原因很多,其中最重要的一部分我认为是linux本身就是C语言的杰出作品。当然,linux操作系统本身对C语言的支持也是相当到位的。作为一个真正的程序员来说,如果没有在linux下面用C语言编写过完整的程序,那么只能说他对C语言本身的理解还相关肤浅,对系统本身的认识也不够到位。作为程序员来说,linux系统为我们提供了很多理想的环境,这其中包括了下面几个方面, (1)完善的编译环境,包括gcc、as、ld等编译、链接工具 (2)强大的调试环境,主要是gdb工具 (3)丰富的自动编译工具,主要是make工具 (4)多样化的os选择,ubuntu、redflag等等 (5)浩瀚的开源代码库

    03
    领券