我不是一个程序员,乱说一下:
就像前一段时间大家讨论的“Java将死”的结论一样,C、Java和脚本语言本来不存在谁替代谁的问题。 Java现在大行其道,但是C死了吗? 各有专长,各有自己的领域,只是说不同阶段,随着业务模式的转变和改进,人们关注的焦点在不断朝业务层前移。
在IT 化的初级阶段,要解决的问题是把基础工业的自动化控制、数据处理IT化,这个时候并不能因为IT化而影响原有工业层的效率和性能(如程控交换机、电信和银行的营帐系统、生产车间的自动化等)。所以对于程序语言的要求就是高效、稳定。所以这一时期语言的特点也是面向过程,面向工业逻辑。处于这一层次顶级语言应该就是C了吧。
当基础的IT化已经解决的差不多,而且已经发展到一定程度时,人们开始关注在这些基础的工业逻辑之上能否建立一定程度的业务逻辑,从而达到一定程度的生产管理、供应链管理等等,从而产生了ERP、CRM等(这一时期和WEB1.0,WEB2.0有一定对应关系)。这一时期有两大特点:第一是市场和客户需求不断推动业务逻辑和模型的改变,所以在开发时间上要求较高,而且大量的业务逻辑实现到最底层的相对简单工业控制之间,需要复杂的运算和规则判断;第二是各行业基础的IT化建设因为物理层的千差万别,所以基础IT化后的平台也是各有不同,要把这些不同的基础平台统一到一个业务逻辑之下,就需要一个无视平台差别的语言。在90年代当时满足这两点要求除去Java,没有别的语言可以匹敌。Java透明掉基础平台之间的差异,灵活而不失严谨的特点,导致其开发时间、开发成本远远低于C语言的同时,更适合大团队的开发协作。
而当基础的IT化和复杂的业务逻辑层都已经完成IT化工作之后,这个时候人们发现诸多不同的业务系统、业务逻辑之间组合后竟然可以诞生出新的商业模式,如携程、阿里巴巴等将传统行业和互联网结合的网站。同时消费者更希望在同一体系的服务之下,能够更便捷,更全面地享受到更多服务。这个时候不再是需要建立一个大而全的中间层的业务逻辑系统(成本因素),而是如何迅速(时间要求)地将各种不同的业务逻辑粘合在一起,对上层形成一个全新的服务界面。这个时候对于语言的要求不再是便于大团队之间的协作,不要求有很强的业务逻辑处理,而仅仅是能快速组合不同应用,形成新的产品。这一阶段的语言就是脚本语言,具体谁会在这一层次建立统治地位,现在看来还不是很明朗,也许是Ruby吧。
所以我将这三个阶段分成三个层次,从下往上依次是:工业控制层、业务逻辑层、服务层。三个层次分别有不同的语言家族。但并不是某个语言就不能做另一个层语言做的事情,只是和其他语言比起来,自己没有太多优势而已。 但我也发现了另个巧合,那就是这三个层次和互联网的发展阶段也有一定的契合关系,没有想清楚就不多说了。
分享到:
相关推荐
在Ruby中,可能存在一个名为`jmeter`的gem或者类似的工具,允许开发者通过Ruby代码调用JMeter的功能,如编写测试计划、执行测试、收集结果等,这样可以简化测试脚本的编写和集成到持续集成/持续部署(CI/CD)流程中。...
6. **编译工具**:Ruby是解释执行的语言,但其解释器(如MRI)可能是用C语言编写的,这里可能讨论了编译Ruby或相关Gem的工具和流程,例如GCC、make等。 7. **mixin**:在Ruby中,模块(Module)可以用来实现代码...
它允许程序员使用多种编程语言(如 Java, Python, C#, Ruby 等)编写测试脚本来模拟用户在浏览器中的行为。 描述中提到 "使用selenium搭建自动化环境需要的",意味着这个压缩包包含了构建基于 Selenium 的自动化...
一个Java的类库,用于异步输出记录的简单小框架用于高并发下数据输出使用。 Java转C++代码工具 J2C J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-...
它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。 [1] Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从...
一个Java的类库,用于异步输出记录的简单小框架用于高并发下数据输出使用。 Java转C++代码工具 J2C J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-...
与 C 等语言不同,Java 编译器可以根据源文件名自动生成同名的 `.class` 文件。 - **运行 Java 程序**:使用 `java` 命令执行编译好的字节码。 - **根据 CLASSPATH 环境变量定位类**:CLASSPATH 变量告诉 JVM 在...
一个Java的类库,用于异步输出记录的简单小框架用于高并发下数据输出使用。 Java转C++代码工具 J2C J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-...
一个Java的类库,用于异步输出记录的简单小框架用于高并发下数据输出使用。 Java转C++代码工具 J2C J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-...
一个Java的类库,用于异步输出记录的简单小框架用于高并发下数据输出使用。 Java转C++代码工具 J2C J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-...
一个Java的类库,用于异步输出记录的简单小框架用于高并发下数据输出使用。 Java转C++代码工具 J2C J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-...
一个Java的类库,用于异步输出记录的简单小框架用于高并发下数据输出使用。 Java转C++代码工具 J2C J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-...
一个Java的类库,用于异步输出记录的简单小框架用于高并发下数据输出使用。 Java转C++代码工具 J2C J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-...
一个Java的类库,用于异步输出记录的简单小框架用于高并发下数据输出使用。 Java转C++代码工具 J2C J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-...
一个Java的类库,用于异步输出记录的简单小框架用于高并发下数据输出使用。 Java转C++代码工具 J2C J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-...
### 敏捷Web开发与Ruby on Rails:深入解析与实践指南 #### 标题解析:“Agile Web Development With Ruby On Rails” 此标题明确指出本书的主题是利用Ruby on Rails框架进行敏捷Web开发。Ruby on Rails(简称...
数字证书:从文件中读取数字证书,生成文件输入流,输入文件为c:/mycert.cer,获取一个处理X.509证书的证书工厂…… Java+ajax写的登录实例 1个目标文件 内容索引:Java源码,初学实例,ajax,登录 一个Java+ajax写的...
1. **Ruby/DBI**:Ruby/DBI是Ruby的一个模块,提供了一个数据库无关的接口,类似于Java的JDBC或ODBC。它允许开发者使用相同的API来访问不同的数据库系统,简化了跨数据库平台的迁移工作。 2. **Ruby/OCI8**:Ruby/...
具备丰富的功能,如支持Java、C/C++、Ruby等多种编程语言开发,内置Tomcat和GlassFish Web服务器,简化了开发和测试流程。 - **数据库**:MySQL用于存储用户信息和交易记录等数据。 - **运行环境**:支持Windows 7...
一个Java的类库,用于异步输出记录的简单小框架用于高并发下数据输出使用。 Java转C++代码工具 J2C J2C 将 Java 代码转成 C++ 代码,这是源码级别的转换,输出的 C++ 代码是有效的代码。 OSGi 分布式通讯组件 R-...