自己受了点刺激 Java能够替代C语言吗?
我不知道这篇文章的作者是谁,但我知道,他对java有一种很深的理解,其实文章中并没有体现出作者对java技术深层理解,但是从文中的每一句话中,我感受到了一些东西。这是一篇很好的文章,也可以帮助很多人迷茫的人解决问题。带来和大家分享一下。
前不久CSDN刊登了一篇《C语言已经死了》的文章,引起了一些争论。其实那篇文章是从Ed Burnette的博客上转载来的,原文题目是“Die, C, die!”,直译过来应该是《去死吧,C!》,表达的是一种诅咒,而不是判断。翻译称《C语言已经死了》,显然是一种煽风点火的误读。CSDN网友对于其观点已经进行了批判,不过坦率地说,由于这些批判基于一个扭曲的翻译文本,所以不但没有什么新鲜的地方,而且也没有抓住原作者的重点。
实际情况是这样的,最近一段时间,在国外的技术社群里刮起了一股风,不少人在讨论Java做为C语言替代者而成为最主流的基础软件编程语言的可能性。从大部分人发表的观点来看,对于Java替代C的趋势还是支持的。
基础软件是指这样一类软件,其主要任务是把计算机的潜能充分发挥出来,面向上层应用软件提供一个高效、可靠的功能集。这些软件会被密集地调用,性能上的一点点滞后都会在实践中被成百上千倍的放大。所以对于基础软件来说,性能至少与可靠性一样重要。我们在一些基础软件的源代码里,常常看到一些丑陋的设计,看到一些变态的黑客技巧,在其他的领域里,这是不被鼓励的,但是在基础软件中,这就是合理的,可以接受的。
C语言目前仍在一些领域里坚挺,在操作系统、虚拟机和设备驱动程序开发方面,它可能是永远的王者。但是在其他的基础软件领域,比如数据库、网络服务器、图形图像处理等,C语言继续占据霸主地位的原因其实只有两个,一是快,二是熟悉的人多,而且经验丰富。
但是,前面说的这两点现在都遭到了挑战。
首先是速度。Java的执行速度在JDK1.4的时候达到了这样一个水平,就是对于一个一般水平的开发者来说,他写的C++程序已经不再比对等的Java程序跑得更快了。随后的JDK 5.0和6.0进一步提高了执行性能,由不同的组织举行的多项评测结果表明,Java与C语言的整体执行效率差距在一倍以内,也就是说,素以速度着称、并且为了速度放弃了很多东西的C语言,现在比装备齐全的Java只快不到一倍了。这还不算,如果考虑到新的计算环境,C语言的速度优势有可能仅仅是一个错觉。因为,世界上只有很少的人有能力在多CPU计算平台上用C语言写出又快又正确的大程序,在这些
相关文档:
Java串口通讯
串行通讯协议有很多种,像RS232,RS485,RS422,甚至现今流行的USB等都是串行通讯协议。而串行通讯技术的应用无处不在。可能大家见的最多就是电脑的串口与Modem的通讯。记得在PC机刚开始在中国流行起来时(大约是在90年代前五年),那时甚至有人用一条串行线进行两台电脑之间的 ......
JAVA中基本变量共包括:byte,short,int,long,float,double,char,boolean,在程序中用的最普遍,最多,但是它们的一些关键也经常被我们所忽略,我今天总结了一下,贴在这里。。。
1.
变量定义:
一个由标识符定义的数据项,包括类型、名称和值三个部分
2.
变量分类:
类 ......
今天开发,遇到了一个比较意外的问题。
1、问题描述:
String.split(”.”);//以点作为分隔符
结果得到的数组引用时,老报下标越界错误,后来测试也发现长度就是为零。
2、问题分析:
开始时,怀疑此 ......
/*
* 汉诺塔,从第1个柱子借助第2根柱子移动到第3根
*/
public class TowerOfHano {
private int totle;//总共盘子数目
public TowerOfHano(int totle){
this.totle=totle;
}
&nb ......
今年已经28岁了 突然发现已经很不习惯编写代码了,但是对程序中所有的错误和困难,都能很平静的去解决,当一个新的项目来的时候,总是喜欢去设计它分析它,可很难下第一笔去编写它,不知道是不是老了,想了几天了真不知道是不是到了转型时期了。 ......