《开源思索集》一Java社群该向Ruby on Rails学习些什么?

简介:

本节书摘来异步社区《开源思索集》一书中的第1章,作者: 庄表伟 责编: 杨海玲, 更多章节内容可以访问云栖社区“异步社区”公众号查看。

Java社群该向Ruby on Rails学习些什么?

开源思索集
软件开发者是分社群的,大多数时候都是按照语言来划分大的派别,门派不同的人,很少相互交流——“跟那种用XXX的有什么好说的”。越是这门语言足够的自给自足,越是懒得看别的语言的东西。作为一个次新兴语言,Java社群已经足够封闭了。自己内部热闹非凡,新技术、新名词、新战争、新领袖层出不穷,哪里有空去理会Java以外的世界?

可是最近的事情有点奇怪了,Java社群在非常热烈的讨论另外一个语言的项目“Ruby on Rails”!这是什么东西?

CSDN的Java频道出了一篇文章:《最美的MVC,ORM方案原来在别处–Ruby on Rails》!

是不是很令人惊讶?这么长他人志气自己灭自己威风的事情,咱们Java社群的人可是从来没干过的。

我当时也看了这篇文章,第一反应就是无动于衷,我还跟同事讲:“现在年纪大了,早就没有学新语言的冲动了 。 ”

后来呢?偶然的机会我下载了一份PDF,下载地址是:

Ruby on Rails实践

然后就看起来了。

多好的介绍啊!简单,清晰,准确,有诱惑力!于是我下载了Ruby,One-Click就安装完成了,然后在DOS窗口下输入了一条命令:

gem install rails –remote

就安装了Ruby on Rails。

再输入一条命令:

rails mybook

就建立我的第一个Web应用项目。

再输入一条命令:

ruby mybookscriptserver

就启动了WEB Server。在浏览器里,就看到了初始的Welcome页面!

再说两个数字:
一个Web Server需要8行代码。
一个CRUD需要1行代码。

我的浅尝到此为止,但是留下的印象确实无比深刻!

为什么Java社群里那么多开源项目,“成百上千的Framework”,没有一个有这么方便?注意,我只说方便!

方便才是硬道理!这个道理,Java社群里也有人懂的,比如Hibernate的作者Gavin King就说:“10分钟之内把Hibernate跑起来”。Good,但是,一个包含Hibernate的Web应用要跑起来,需要多少时间?

一个流行的架构“WebWork+Spring+Hibernate”,加在一起的一个最简单demo,需要多少时间才能跑起来?等等,还没有选定WebServer呢!

再有,为什么不是iBaits呢?为什么不是Pico呢?为什么不是Velocity呢?为什么不是……

有人也许会说:“ruby社群只是发展得比java晚,所以现在只有这么一个拿得出手的东西,咱们java的好东西太多了,所以选起来累一些。”

但是,问题在于,Java社群里的那么多好东西,怎么就没有一个有RoR那么方便呢?

java社群必须认真反思了!我们究竟在追求什么?
“美感”
“架构”
“灵活性”
“健壮性”
“先进性”
“规范性”
“设计模式”

那么“易学性”和“易用性”呢?难道我们开发新的框架,不是为了减少程序员的劳动吗?

看到人家做出来的东西,总感觉有不足之处,然后呢?
自己另外做一个。然后呢?还有人又做了第三个,第四个。。。。

其实我们不需要那么多“富有创意”的项目,只要有几个能用的,顺手的就好了。如何才能改变Java社群的这种现状呢?

思考中……

相关文章
|
1月前
|
SQL 监控 数据可视化
完全开源!国内首个完全开源JAVA企业级低代码平台
JeeLowCode 是一款专为企业打造的 Java 企业级低代码开发平台,通过五大核心引擎(SQL、功能、模板、图表、切面)和四大服务体系(开发、设计、图表、模版),简化开发流程,降低技术门槛,提高研发效率。平台支持多端适配、国际化、事件绑定与动态交互等功能,广泛适用于 OA、ERP、IoT 等多种管理信息系统,帮助企业加速数字化转型。
|
2月前
|
XML Java 编译器
Java学习十六—掌握注解:让编程更简单
Java 注解(Annotation)是一种特殊的语法结构,可以在代码中嵌入元数据。它们不直接影响代码的运行,但可以通过工具和框架提供额外的信息,帮助在编译、部署或运行时进行处理。
95 43
Java学习十六—掌握注解:让编程更简单
|
29天前
|
Java 大数据 API
14天Java基础学习——第1天:Java入门和环境搭建
本文介绍了Java的基础知识,包括Java的简介、历史和应用领域。详细讲解了如何安装JDK并配置环境变量,以及如何使用IntelliJ IDEA创建和运行Java项目。通过示例代码“HelloWorld.java”,展示了从编写到运行的全过程。适合初学者快速入门Java编程。
|
2月前
|
存储 SQL 小程序
JVM知识体系学习五:Java Runtime Data Area and JVM Instruction (java运行时数据区域和java指令(大约200多条,这里就将一些简单的指令和学习))
这篇文章详细介绍了Java虚拟机(JVM)的运行时数据区域和JVM指令集,包括程序计数器、虚拟机栈、本地方法栈、直接内存、方法区和堆,以及栈帧的组成部分和执行流程。
36 2
JVM知识体系学习五:Java Runtime Data Area and JVM Instruction (java运行时数据区域和java指令(大约200多条,这里就将一些简单的指令和学习))
|
1月前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
1月前
|
SQL 监控 数据可视化
完全开源!国内首个完全开源JAVA企业级低代码平台
JeeLowCode 是一款专为企业打造的 Java 企业级低代码开发平台,通过五大核心引擎(SQL、功能、模板、图表、切面)和四大服务体系(开发、设计、图表、模版),简化开发流程,降低技术门槛,提高研发效率。平台支持多端适配、国际化、事件绑定与动态交互等功能,广泛适用于 OA、ERP、IoT 等多种管理信息系统,帮助企业加速数字化转型。
完全开源!国内首个完全开源JAVA企业级低代码平台
|
2月前
|
小程序 Oracle Java
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
这篇文章是关于JVM基础知识的介绍,包括JVM的跨平台和跨语言特性、Class文件格式的详细解析,以及如何使用javap和jclasslib工具来分析Class文件。
52 0
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
|
2月前
|
前端开发 Java 应用服务中间件
Javaweb学习
【10月更文挑战第1天】Javaweb学习
33 2
|
2月前
|
存储 安全 Java
【用Java学习数据结构系列】探索顺序表和链表的无尽秘密(附带练习唔)pro
【用Java学习数据结构系列】探索顺序表和链表的无尽秘密(附带练习唔)pro
26 3
|
2月前
|
存储 安全 Java
【用Java学习数据结构系列】探索栈和队列的无尽秘密
【用Java学习数据结构系列】探索栈和队列的无尽秘密
33 2