#编程#有在国外论坛看到一个问题:“C++本身很糟糕吗?还是说有人使用它写了糟糕的代码,使它名誉受损。”而在其中有个回答让我很感兴趣,虽然也是很早的事情了,但是因为在前面我也没过多去了解,然后看了下,想分享给大家。
C++附带的大多数不良声誉来自一个来源。当Sun决定向Java推销产品时,他们遇到了一个问题:尽管Java在某些方面是一个相当合理的设计,并且以过去没有广泛使用的几种方式融合了现有功能,但是营销将是一个痛苦的过程。
因此,Sun借用了斯大林的剧本:如果您没有什么新东西可提供,那就找个替罪羊,并将它们(或它)描绘成地球上所有邪恶的化身。
Java刚问世时,C++很流行。微软由于其垄断的商业行为而变得极为不受欢迎。开源是一个奇妙的新事物,它将治愈世界上的弊病。
在这种情况下,Sun竭尽全力发布了广告和白皮书,以将C++与Microsoft关联起来,并将其描绘成垄断者和罪犯的工具。他们声称Java是很棒的新的开源替代方案。他们中的许多人很公然地试图将使用C++的任何人描绘成年纪大,笨拙,无聊,垄断者,甚至可能是罪犯。
它是有效的:Java不仅抢占了很多市场份额,而且还设法使很多人相信C++实际上是魔鬼的工具。
从纯粹的技术角度来看,Java并不是一门糟糕的语言。甚至在某些应用程序上,它无疑至少比C++更好(它不如人们想象的那么多,并且在它具有优点的地方,它们的数量并不比要求的那么大),但是仍然有一些情况有一些优势。
同样,C++当然也不完美。尽管自从年代中期以来,它已经变得更好了,但是它肯定有很多缺点。更糟糕的是,当时的编译器在语言本身的缺陷之外还有很多缺陷。
尽管如此,用于“销售”Java的许多营销活动确实是邪恶的,并且它的许多贬斥C++并不是因为该语言存在任何真正的缺陷,而仅仅是因为这正是他们想要的巨大市场份额。
所以现在我们大概简单看下白皮书的内容:
1.假设您是一名软件应用程序开发人员。您选择的编程语言(或强加于您的语言)是C或C++。您从事此工作已经有一段时间了,您的工作似乎并没有变得越来越容易。在过去的几年中,您已经看到了多种不兼容的硬件体系结构的增长,每种体系结构都支持多种不兼容的操作系统,并且每个平台都使用一个或多个不兼容的图形用户界面进行操作。现在,您应该处理所有这些,并使您的应用程序在分布式客户端-服务器环境中工作。互联网,互联网和“电子商务”的发展为开发过程引入了新的复杂性。
2.现在有一种更好的方法-它是SunMicrosystems的Java编程语言环境(简称“Java”)。想象一下,如果您愿意用这个发展世界……
3.因为解释了Java,所以您的开发周期要快得多。