`
chelsea
  • 浏览: 119396 次
  • 来自: ...
社区版块
存档分类
最新评论

Thinking in Current Programming Languages

    博客分类:
 
阅读更多

一、现状

  • 软件越来越庞大,细节越来越多---->难以改错,改进
  • 开发周期越来越长---->浪费金钱、生命

二、原因

  • 生产工具与任务之间的差距太大:要砍伐整片森林,手里只有斧子
  • 生产资料与产品之间的差距太大:要葱油鲤鱼,手里只有鱼籽葱籽
  • 要建立一个金融系统,手里只有C++Java编译器,UML“建模”工具
  • 要建立一个化学反应模拟系统,手里还是只有C++Java编译器,UML“建模”工具

三、其它领域的样例

  • 要创作一首曲子,只需写出它的五线谱,你几乎不可能用自然语言来描述
  • 要证明一个数学定理,只需用数学符号、现有的数学公式来推理、自然语言语焉不详,不够精确
  • 要表达一个化学反应过程:只需要写出分子式、每一步的化学方程式
  • 自然语言在这些领域碌碌无为,或者说在背后默默而为

四、曾经的成功样例

  • C语言代替汇编和机器语言来表示机器模型:在机器的领域中,C语言是问题域的建模语言,有直接的语法来表达寻址等概念,汇编才是解决域的算法实现语言;C语言已经是写操作系统/虚拟机较为理想的语言了,但它仍然没有直接提供进程、线程等概念,而是通过库来表达
  • DOS命令、Unix命令、甚至FTP命令等:都能直接完成意图,C/C++是背后的解决域的算法实现语言

五、现在的成功样例

  • HTML:Web静态表示领域的描述语言,有直接的术语来表达各种概念,C/C++是背后的解决域的算法实现语言
  • SQL:数据管理领域的描述语言,有直接的术语来表达各种概念,C/C++是背后的解决域的算法实现语言

六、推论

  • 通用的东西最终只在后台发挥作用,无论是理论还是工具

七、继续推论

  • UML将一事无成,直到它退居幕后,或演变成另外一个C++(所谓可执行的UML)
  • Java或C++会变得象今天的汇编,我们就是60年代的汇编程序员,或公元前修长城的民工、建金字塔的外国民工
  • DSL、LOP以各种面貌登上舞台
  • ...
分享到:
评论

相关推荐

    Thinking in C 录音版 part3

    Bruce Eckel是著名的计算机科学作家,其Thinking In系列是深受读者欢迎的经典著作,其中Thinking In C++/Java虽经一版再版,热度始终不减。除了Thinking In C++和Thinking In Java外,Bruce Eckel在大学授课时所将的...

    Thinking in Java 4th Edition Annotated Solutions Guide

    根据提供的文件信息,以下是对文件《Thinking in Java 4th Edition Annotated Solutions Guide》中所包含知识点的详细解释: 首先,文件标题《Thinking in Java 4th Edition Annotated Solutions Guide》指出了这是...

    Thinking in java和Thinking in c++中文版

    《Thinking in Java》和《Thinking in C++》是两本非常经典的编程教材,由Bruce Eckel撰写,分别针对Java和C++这两种强大的编程语言。这两本书深入浅出地讲解了各自语言的核心概念和编程思想,适合初学者入门,也对...

    Thinking in C++.pdf

    ### Thinking in C++:深入理解面向对象编程与C++特性 #### 一、书籍概述 《Thinking in C++》是一本由Bruce Eckel撰写的经典著作,被广泛认为是学习和掌握C++语言及其面向对象编程思想的重要参考资料之一。本书...

    Thinking in java .txt

    《Thinking in Java》第四版由布鲁斯·埃克尔(Bruce Eckel)撰写,他是MindView公司的总裁。这本书被广泛认为是学习Java编程语言的经典教材之一。从读者的反馈来看,《Thinking in Java》不仅覆盖了Java的核心概念...

    Thinking in C 录音版 part1

    Bruce Eckel是著名的计算机科学作家,其Thinking In系列是深受读者欢迎的经典著作,其中Thinking In C++/Java虽经一版再版,热度始终不减。除了Thinking In C++和Thinking In Java外,Bruce Eckel在大学授课时所将的...

    Thinking in java4(中文高清版)-java的'圣经'

    研讨课 Hands-on Java研讨课CD Thinking in Objects研讨课 Thinking in Enterprise Java Thinking in Patterns(with Java) Thinking in Patterns研讨课 设计咨询与复审 附录B 资源 软件 编辑器与IDE 书籍 分析与设计...

    《大象 Thinking in UML 第2版》PDF版本下载.txt

    《大象 Thinking in UML 第2版》PDF版本下载

    Thinking in C: Foundations for Java & C++

    Thinking in C: Foundations for Java & C++ by Chuck Allison produced by Bruce Eckel Chapter 1: Introduction and Getting Started40 MinutesStart Lecture Chapter 2: Fundamental Data Types41 ...

    大象:Thinking in UML 清晰完整版pdf

    学习UML的必备书籍 潭云杰著 大象:Thinking in UML。 将面向对象的分析设计思想巧妙地融入建模过程中,通过贯穿全书的实例将软件系统开发过程中方方面面的知识有机地结合在一起,用生动的语言和精彩的事例将复杂...

    Thinking in Patterns中文版

    <Thinking in C++><Thinking in Java>作者的又一力作。译得也很好,书中的代码Copy下来就可以直接运行。 这本书前一半是用JAVA语言来写的,后面一半用了多种语言合写的。 写得很通俗易懂,译得还是不错的。 Thinking...

    Thinking in C# Thinking in C#

    Thinking in C# Thinking in C# Thinking in C# Thinking in C#

    Thinking in C++习题答案

    《Thinking in C++》是一本深受程序员喜爱的C++学习指南,由Bruce Eckel编写,旨在帮助读者深入理解和掌握C++编程语言。该书分为两卷,第一卷主要介绍了C++的基础知识,包括面向对象编程的基本概念,而第二卷则更...

    Thinking in Enterprise Java

    Thinking in Enterprise Java

    大象-Thinking in UML.pdf

    作者在《大象-Thinking in UML》这本书中,试图通过浅显易懂的方式向读者展示UML及RUP的精髓,从而帮助读者克服学习障碍,真正理解并应用UML和RUP进行软件开发。这本书被认为是可遇而不可求的作品,作者自谦地将其...

    thinking in c++ src

    《Thinking in C++ Volume 2》是一本深受程序员喜爱的经典C++教程,由Bruce Eckel撰写,旨在深入探讨C++编程语言的高级特性和实践应用。这个压缩包包含的就是该书第二卷中的源代码示例。 C++是面向对象编程(OOP)...

    大象 Thinking in UML 高清完整版PDF-2

    大象 Thinking in UML 高清完整版PDF

    Thinking in Java 4 源码 导入IDEA可直接运行

    《Thinking in Java》是Bruce Eckel的经典之作,第四版(TIJ4)更是Java程序员必读的书籍之一。这本书深入浅出地介绍了Java语言的核心概念和技术,包括面向对象编程、集合框架、多线程、网络编程等众多主题。源码是...

    Thinking in C++(1,2卷)

    《Thinking in C++》是Bruce Eckel所著的一套经典的C++编程教程,分为两卷。这本书深入浅出地介绍了C++语言的核心概念和技术,旨在帮助程序员从思考的角度理解和掌握C++,而不仅仅是记住语法。 卷一主要涵盖基础,...

    Thinking in C++ 随书代码

    《Thinking in C++》是一本深受C++程序员喜爱的经典教程,由Bruce Eckel撰写,旨在帮助读者深入理解和掌握C++编程语言。这本书以其全面、深入的讲解和丰富的实例著称,是许多初学者和进阶者提升C++技能的重要参考...

Global site tag (gtag.js) - Google Analytics