‘壹’ 计算机语言谁发明
java—James Gosling
Java是最流行和最成功的编程语言之一, James Arthur Gosling博士因发明Java而被誉为Java之父,Java最初由Sun Microsystems开发和支持,在2010年1月Sun Microsystems被Oracle收购后转由Oracle继续开发支持。Java的使命是WORA,“Write Once Run Anywhere”(一次编译,到处运行),Java平台的独立性是其在企业领域取得成功的重要支柱之一,至今,它仍是最流行的应用程序编程语言之一
C—Dennis Ritchie
美国计算机科学家Dennis MacAlistair Ritchie于1967年至1973年间在AT&T贝尔实验室发明了C语言,至今C语言还是非常流行并广泛用于系统编程,它比Java的历史更久远,但它仍在编程语言中占据一席之地,另外,Dennis Ritchie还与他的老搭档Ken Thompson一起创建了举世闻名的UNIX操作系统,他的知名度虽远不及比尔·盖茨或史蒂夫·乔布斯,但其对软件世界的贡献几乎无人能及。
C++—Bjarne Stroustrup
Bjarne Stroustrup,1950年12月30日生于丹麦奥胡斯(Aarhus Denmark),是一名丹麦计算机科学家,因其发明了广泛使用的C++语言而闻名天下。顾名思义,C++是在C流行的时候作为C的下一代语言开发出来的。与偏重结构化的C语言不同,它的显着特性是面向对象,C++仍然是最流行的语言之一,并且在高频交易系统中有着广泛应用,因为它兼容本地系统并具有面向对象的特性。
Python—Guido van Rossum
Python由CWI的Guido van Rossum设计,是一种通用的高级编程语言,其设计理念强调代码可读性,据说它的语法清晰而且通俗易懂。在美国,Python在学术层面上几乎取代了Java,与上一代不同,如今的学生已经开始用Python而不是C或Java编写程序。Python广泛用于Web应用程序开发,软件开发和信息安全。谷歌、雅虎和Spotify等科技巨头已经广泛使用Python
5/5
JavaScript—Brendan Eich
如果你问我哪种语言是过去五到十年里的最大赢家,我会说那必须是JavaScript,它借助jQuery这样的库统治了客户端开发领域,现在正凭借NodeJS这样的库进军服务器端开发领域。JavaScript是由Brendan Eich设计,Netscape Communications Corporation开发的一种基于原型的脚本语言,具有动态弱类型的特点,其功能十分强大。JavaScript广泛用于客户端脚本编写,验证,动画,事件捕获,表单提交和其他常见任务。它在浏览器中运行,几乎各大网站都有所使用
‘贰’ 关于C加加和JAVA
C++之父评论C++与Java
http://soft.yesky.com/info/223/2414723.shtml
linux之父炮轰C++:
http://os.51cto.com/art/200709/55562.htm?1366380720
Java之父评价C语言之父:我用尽了形容词
http://www.csdn.net/article/2011-10-19/306010?1366380958
C++之父评论C++与Java
如果人们非要拿C++和Java来作比较,我建议他们去阅读TheDesignandEvolutionofC++,看看C++为什么是今天这个样子,用我在设计C++时遵从的原则来检验这两种语言。这些原则与SUN的Java开发小组所持的理念显然是不同的。除了表面语法的相似性之外,C++与Java是截然不同的语言。在很多方面,Java更像Smalltalk。(Sun的培训教材清楚地写道:Java在设计上采用了与C++相似的语法,与Smalltalk相似的语义。所以可以说Java与C++是貌合神离,与Smalltalk才是心有灵犀。)Java语言相对简单,这部分是一种错觉,部分是因为这种语言还不完整。随着时间的推移,Java在体积和复杂程度上都会大大增长。在体积上它会增长两到三倍,而且会出现一些实现相关的扩展或者库。这是一条每个成功的商业语言都必须走过的发展之路。随便分析一种你认为在很大范围内取得了成功的语言,我知道肯定是无有例外者,而且实际上这非常有道理。
上边这段话是在Java1.1推出之前写的。我确信Java需要类似模板的机制,并且需要增强对于固有类型的支持。简单地说,就是为了基本的完整性也应该做这些工作。另外还需要做很多小的改动,大部分是扩展。1998年秋,我从JamesGosling(Java语言的创始人)那里得到一份建议书,说是要在Java中增加固有类型、操作符重载以及数学计算支持。
还有一篇论文,是数学分析领域的世界级大师,伯克利大学的W.Kahan教授所写的HowJava'sFloating-PointHurtsEveryoneEverywhere(且看Java的浮点运算如何危害了普天下的芸芸众生),揭露了Java的一些秘密。我发现在电视和出版物中关于Java的鼓吹是不准确的,而且气势汹汹,让人讨厌。大肆叫嚣凡是非Java的代码都是垃圾,这是对程序员的侮辱;建议把所有的保留代码都用Java重写,这是丧心病狂,既不现实也不负责任。Sun和他的追随者似乎觉得为了对付微软罪恶的“帝国时代”,就必须如此自吹自擂。但是侮辱和欺诈只会把那些喜欢使用不同编程语言的程序员逼到微软阵营里去。
Java并非平台无关,它本身就是平台。跟Windows一样,它也是一个专有的商业平台。也就是说,你可以为Windows/Intel编写代码,也可以为Java/JVM编写代码,在任何一种情况下,你都是在为一个属于某个公司的平台写代码,这些代码都是与该公司的商业利益扯在一起的。当然你可以使用任何一种语言,结合操作系统的机制来编写可供JVM执行的程序,但是JVM之类的东西是强烈地偏向于Java语言的。它一点也不像是通用的、公平的、语言中立的VM/OS。私下里,我会坚持使用可移植的C++作大部分工作,用不同的语言作余下的工作。
“Javaisnotplatform-independent,itistheplatform”,B.S的这句评语对于C++用户有着很大的影响,有些C++高手甚至把这句话作为自己的签名档,以表明对Java的态度和誓死捍卫C++的决心。
Linux之父炮轰C++:
糟糕程序员的垃圾语言(1)2007-09-0913:33刘江刘江@图灵我要评论(14)字号:T|TLinux之父为Linux内核开发而专门打造的版本控制软件Git已经引起了业界的广泛关注。DmitryKakurin查看源代码之后,发现使用的是纯C而非C++,表示不可理解。引起了Linux之父炮轰C++:糟糕程序员的垃圾语言。AD:2013大数据全球技术峰会低价抢票中
Linux之父炮轰C++:糟糕程序员的垃圾语言Linux之父话糙理不糙不得不看的两次从C++回归C的高手评论C++C语言是否该扔进垃圾桶为什么每个程序员都应该学习C语言?每个程序员都应该学习C语言?我可不这么认为C语言已经死了,5个需要忘却它的理由用C设计用C++编码为什么使用C++C++0x:崭新的C++,还是另一个Java?编程语言的三大定理动态语言为何难堪重任动态语言面面观Linux之父LinusTorvalds为了Linux内核开发而专门打造的版本控制软件Git已经引起了业界的广泛关注。昨天,有一位DmitryKakurin老兄在查看了源代码之后,发现使用的是纯C而非C++,表示不可理解,他直言:“别拿可移植性说事儿,这是屁话(BS,bullshit)。“(此外,他还批评Git蛮力地直接操作文本,既啰嗦又易错,而且很难跟上高层代码逻辑。)”这个BS引起了Torvalds的强烈反应,他用“*YOU*arefullofbullshit.”(你才满嘴屁话呢)作为自己反驳的开场白。接着,他先转向了对C++的罕见的火药味十足的炮轰:“C++是一种糟糕的(horrible)语言。而且因为有大量不够标准的程序员在使用而使情况更糟,以至于极容易产生彻头彻尾的垃圾(totalanttercrap)。老实说,选择C就是为了把C++程序员踢出去。……我有这样的结论,任何喜欢用C++而不是C开发项目的程序员可能都是我希望踢出去的人,免得他们来搞乱我参与的项目。C++会导致非常非常糟糕的设计选择。你们这些C++程序员总是一上来就用语言的那些‘漂亮的’库特性比如STL、Boost和其他彻头彻尾的垃圾,这可能对你们的程序有所‘帮助’,但是却会导致:
——当库无法工作时无穷无尽的折磨(别跟我说什么STL尤其是Boost很稳定而且可移植性很好,那全是屁话,而且一点都不可笑)
——低效的抽象编程模型,可能在两年之后你会注意到有些抽象效果不怎么样,但是所有代码已经依赖于围绕它设计的‘漂亮’对象模型了,如果不重写应用程序,就无法改正。也就是说,使用优秀的、高效的、系统级的和可移植的C++的唯一方式,最终还是限于使用C本身具有的所有特性。项目限制只用C,意味着参与的人不会捣乱,也意味着会得到许多真正懂得底层问题,而不会折腾那些白痴‘对象模型’垃圾的程序员。
所以,我很抱歉,但是对于Git这样效率是主要目标的软件,C++的所谓优点只是巨大的错误。而我们将看不到这一点的人排除在外却成了一个巨大的附加优势。如果你想要用C++写的版本控制系统,去玩Monotone吧。他们确实使用了‘真格的数据库’,使用了‘漂亮的面向对象库’、使用了‘漂亮的C++抽象’。可是说老实话,所有这些对某些计算机专业人士而言富于吸引力的设计决定,其最终结果确是一堆可怕、难以维护的垃圾。”【070907更新】Torvalds和DmitryKakurin争论继续中。对Torvalds的回击,Dmitry反唇相讥:“随着只用C编程的恐龙们逐渐灭绝,你很快就会发现只剩下自己一个人在固执己见。用Git贡献者的数量是说明不了问题的。<显然C++开发者也能够贡献C代码。但是以为他们喜欢这种方式,那可就错了。
没有C的时候我用汇编编程。然后在C++诞生之前,我转向了C。现在我使用C++和C#,而且不再走回头路。差劲的程序员用任何语言都写不出好程序。但是为了将差劲的贡献者拒之门外这样一个没谱的理由而惩罚优秀的开发者,这简直是胡闹。”只过了10几分钟,Torvalds就回贴了:“和你不同的是,我实实在在地给出了不喜欢C++的原因,而且指出了它可能导致的各种问题的一些例子。而你呢,没有给出一条像样的使用C++的理由。事实上,Git比其他软件配置管理软件都要好,而好的品味(taste)和C正是原因之一。”
对上面的最后一句话,Torvalds后来又做了如下补充:
“说得更具体一些:
——简单和清晰的核心数据结构,非常精益(lean)且颇具雄心的暧昧管理着它们,将“简单胜于花哨”这一方法发挥到极致。
——有意识地不抽象数据结构和算法,因为它们恰恰是Git核心的全部要素(wholepoint)。 如果你想用更花哨的语言,C++绝对是最糟糕的选择。如果想要真正的高级特性,那就选择有垃圾回收或者好的系统集成的,而不是既缺乏C的简约(sparseness)又缺乏C的直接而且没有重要概念的高层绑定(high-)的东西。 一言以蔽之,C++正处在困境当中,它既无法帮助原型化或者简单的GUI编程足够简化从而真正可用,不是C那样积极地鼓励你使用简单和直接的语言构造的精益系统编程语言。” (另一位同学插了一句:这还没有提到很难找到两个C++编译器支持同样的特性。)“这与什么恐龙毫无关系。好的品味永远不会过时。将C与汇编语言相提并论,恰恰说明你对自己所讨论的问题缺乏起码的概念(don'thaveafrigginidea)。”
Java之父评价C语言之父:我用尽了形容词
摘要:Java之父JamesGosling在上周发布了关于讨论C语言之父DennisRitchie的简短博文称:C语言撑起了一切,他的影响巨大,并超越了科技世界。
Java之父詹姆斯·高斯林(JamesGosling)在上周发布了关于讨论C语言之父丹尼斯·里奇(DennisRitchie)的简短博文:丹尼斯·里奇辞世的新闻如五雷轰顶。过去几天已经有很多资讯报道此事。他的影响巨大,并超越了科技世界,虽然他的大多影响都不为人知,但完全可以感受到。C语言撑起了一切。我的整个职业生涯也是从C语言和Unix中发展而来。对当今的大多数工程师而言,很难理解我在20世纪70年代感受到的幸福愉快感。当一种编程语言最终出现,我(其他人也)可以从汇编语言提升到一种真正的编程语言。我们可以做任何一切,过去我们得编写所有低级位系统。在C语言之前,编程语言达不到任务:开销太大了。系统的复杂性是真的阻碍了用汇编语言编写大型软件。C语言就像代码的JATO。(编注:“JATO”是“Jet-fuelassistedtakeoff”的缩写,字面意思:“辅助起飞的喷气燃料”。这个系统通过小型火箭提供辅助动力,以帮助超载的飞机起飞升空。)下面是詹姆斯·高斯林此文的一些评论:TruelyJames.,.dentertaining.RIPRitchie!!!说的很对,詹姆斯!对于每个计算机专业人士,他们所接触的第一种编程语言就是C语言。(C语言)有着如此多的令人惊奇的地方,这也使得学习过程非常有趣。安息,里奇!!!Greatonesarefalling.IstillloveC.Sosimple.Sopowerful.一位巨星的陨落。我仍然爱着C语言。如此简单,如此强大。:.'tfound.Itwasagoodtime.我记得C语言就是程序员的冒险:有很多小坑,一不小心就陷进去。即便很多年过后,还有一些我没有发现的。那是个美好时刻。Theequationisquitesimple:RichieislikeEinstein,pureGenius.AlltheITisbuiltonK&Rworks.Thanksman,andRIP...等式非常简单:里奇就像爱因斯坦,纯粹的天才。IT业的所有都基于肯贝汉和里奇的成果。感谢,安息……文章出自:nighthacks译文来自:伯乐在线
‘叁’ java相关的图灵程序设计丛书 有哪些
[图灵程序设计丛书].数据结构与算法:JavaScript描述
链接:
https://pan..com/s/1yx4OMqQdlo-ebkMq9keN-w
通过本书的学习,读者将能自如地选择最合适的数据结构与算法,并在JavaScript开发中懂得权衡使用。此外,本书也概述了与数据结构与算法相关的JavaScript特性。
‘肆’ Java开发书籍推荐(200多本)
整理了一份关于Java开发的电子书资源,共约200本PDF版本,分享给需要的朋友们。
全部免费获取,无需添加QQ,无需关注公众号,直接使用网络网盘链接下载。
请在下载后给予我一个赞,顺便分享给还在寻找资源的兄弟们。
以下目录展示了部分书单内容,以供参考:
Java
- 21天学通Java
- Effective Java中文版(第2版)
- Head First Java 中文高清版
- EXPERT.ONE.ON.ONE.J2EE.DEVELOPMENT.WITHOUT.EJB-中文
- Java 程序员进阶之路(亮白版)
- Hibernate实战(第2版)
- Java 8 实战
- Java8函数式编程
- Java8中的炫酷特性和Java9中的新特性-杨晓峰
- JavaNIO(中文版)
- JAVA优化编程
- Java加密与解密的艺术 梁栋
- Java基础与案例开发详解
- Java学习路线图:Java必须知道的300个问题
- Java并发编程的艺术
- JVM
- Java虚拟机基础教程 高清中文版PDF
- Java虚拟机并发编程
- Java虚拟机规范(Java SE 8版)(带书签完整版)
- 实战JAVA虚拟机 JVM故障诊断与性能优化
- 揭秘Java虚拟机-JVM设计原理与实现
- 深入理解Java虚拟机JVM高级特性与最佳实践第3版(周志朋)
- 解析Java虚拟机器开发:权衡优化、高效和安全的最优方案
Kubernetes
- Kubernetes实战 ,吴龙辉 ,P272
- Kubernetes开源书
- Kubernetes指南(Kubernetes Handbook)
- Kubernetes权威指南第2版
- Kubernetes经典实例
- 【阿里云】深入浅出Kubernetes项目实战手册
- 基于Kubernetes的容器云平台实战
Linux
- linux常用命令大全
- Linux宝典
- Linux环境编程:从应用到内核
- LINUX防火墙(原书第3版)
- Linux高级程序设计中文第三版杨宗德--人电出版社
- [Linux命令详解词典].施威铭研究室.扫描版
- 深入Linux内核架构 (图灵程序设计丛书·LinuxUNIX系列)
- 鸟哥的LINUX私房菜_基础学习篇(第三版)
- 鸟哥的LINUX私房菜:服务器架设篇 (第二版)
MyBatis
- MyBatis从入门到精通
- Spring+MVC+MyBatis企业应用实战
- MyBatis技术内幕
- 深入浅出MyBatis技术原理与实战
- Spring+MyBatis企业应用实战
Netty
- Netty实战中文高清版
- Netty权威指南 第2版 带书签目录 完整版
- Netty进阶之路 跟着案例学Netty_完整版
Redis
- Redis入门指南 第2版
- Redis实战
- Redis开发与运维-付磊
- Redis深度历险:核心原理和应用实践
- redis设计与实现
- 深入理解Redis
Spring
- Spring Security实战 - 陈木鑫
- Spring.2.0核心技术与最佳实践.廖雪峰.扫描版
- Spring从入门到精通
- Spring5高级编程
- Spring实战(第4版文字版)
- Spring揭秘
- Spring源码深度解析
- spring高级程序设计
Spring Boot
- Spring Boot 2+Thymeleaf企业应用实战
- Spring技术内幕:深入解析Spring架构与设计原理
- 精通spring - Mastering Spring
- Spring Boot 2精髓(高清版)
- Spring Boot企业级应用开发实战
- Spring Boot+Vue全栈开发实战
- Spring Boot开发实战
- SpringBoot揭秘+快速构建微服务体系
- 微服务实战:Dubbox+Spring Boot+Docker
- 一步一步学Spring Boot 2微服务项目实战
- 微服务架构实战 基于Spring Boot Spring Cloud Docker
- 微服务架构基础(Spring Boot+Spring Cloud+Docker)
- 深入实践Spring Boot.陈韶健
Spring Cloud
- Spring Cloud 微服务架构进阶
- Spring Cloud与Docker高并发微服务架构设计实施
- Spring Cloud与Docker微服务架构实战
- Spring Cloud微服务全栈技术与案例解析
- Spring Cloud微服务实战
- Spring Cloud微服务架构开发实战
- 疯狂Spring Cloud微服务架构实战
- 重新定义Spring Cloud实战
Zookeeper
- Zookeeper 分布式过程
- 从Paxos到Zookeeper 分布式一致性原理与实践
其他
- tomcat内核设计剖析
- 大数据之路:阿里巴巴大数据实践
- Hadoop大数据分析与挖掘实战
- Git入门与实践完整版
- Hadoop权威指南(第2版)
- 构建工具
- Maven实战
- 架构
- App后台开发运维和架构实践
- 亿级流量网站架构核心技术
- 数据结构和算法
- Docker全攻略
- Elasticsearch大数据搜索引擎
- Git版本控制管理第2版(美)罗力格
- Hadoop技术内幕 深入解析HADOOP COMMON和HDFS架构设计与实现原理
- Hadoop技术内幕+深入理解MapRece架构设计与实现原理
- Hadoop技术内幕深入解析YARN架构设计与实现原理
- 大话数据结构
- 算法导论
- Git权威指南-目录完美-完整版
- 大话设计模式
- 设计模式
- 大厂笔试真题+答案
- 人件(高清中英文合并版)
- 代码整洁之道
- 多处理器编程的艺术
- 程序开发心理学(银年纪念版)
- 计算机程序设计艺术(第一卷)高清中文版
- 编程之美-完整版
- 计算机程序设计艺术(第三卷)高清中文版
- 计算机程序设计艺术(第二卷)高清中文版