重新使用Java的七个理由
译者注:此文系作者于2011年7月11发表于OnJava
O’Reily正在庆祝Java7的发布,以及7月25日到27日即将在波兰开展的 OSCON Java 大会。
Java宣告回归了,同胞们。当然了,我们中很多人一直在开发中首选Java(也可能是被迫的),但是对于新兴公司、web开发者等拥有平台选择权利的人来说,过去的10年中很多非常规的平台提供了更加敏捷和令人印象深刻的效果,像PHP、Ruby on Rails等平台都让开发者体会到了什么叫事半功倍。
时代在变,16年过去了,Java已经不再是那个古老的Java了,这里给出7个理由让你重新关注她。
1. 你能雇佣真正的工程师
当你的Node.js忍者和Rails摇滚明星被资金雄厚的新公司猎走时没必要嗤之以鼻,因为你能雇佣到真正的工程师。
2. 优秀的IDE带走伤痛
Eclipse和NetBeans是非常强大的工具,它们能封装隐藏Java
API中让人退而却步的繁文缛节。我们完全可以承认自己不是万能的,忘掉繁琐的细节,在强大的自动化IDE轮船上顺流而下,追求更高更快的价值。
3. 强大的语言支持
使用Java不一定要写Java代码。你能在Rbuy、Python等自己熟悉的环境里天马行书,同时还享受便携JVM运行时带来的各种好处,也许还能比纯写Java更快。更别提像Scala、Groovy这些最新的、引领编程潮流的新潮语言了。
4. Android
谁能抵抗这个绿色小机器人(Android的logo)?Google选择Java来构建这个占有支配地位的移动电话平台是一个非常明智的选择,即使Oracle因此要打10亿美元的官司,但是Java都成为新老开发者的宠儿,移动市场已经成为客户端软件的未来。
5. 人多力量大
Java的生态系统简直就是个金矿。每当你想做个什么事情,总是有一个类库可以支持,事实上这个类库很可能还是Apache的工程。通常情况下使用Java API已经成为与全世界协作的最畅通无阻的渠道了。
6. 没那么善变
我们正在庆祝Java 7的发布,它一共开发了2年时间,但是老实说,对大多数人来说她并没怎么变。如果你1个小时不更新Hacker News的页面,任何存活1年以上的软件都会陷入痛苦的维护泥沼,因为底层平台一直日新月异的变化着。是的,说的就是你,Rails。
7. 你迟早要用她的
你终归是需要性能、可预测性、以及方便招到工程师。Java擅长的就是可伸缩性、云端部署和编程,Twitter认识到了这一点,而且将会在OSCON Java大会上和大家讨论。
英文原文:Edd
Dumbill,编译:ImportNew -储晓颖
译文链接: http://www.importnew.com/664.html
重新使用Java的七个理由的更多相关文章
- Java基础七-正则表达式
Java基础七-正则表达式 一.定义: 特定的符号的组合 二.作用: 用于操作字符串数据 三.优缺点 简化代码,但是阅读性差 四.引入 4.1 问题 判断一个号码是否是QQ号? 不是零开头 6-15位 ...
- 20165210 Java第七周学习总结
20165210 Java第七周学习总结 教材内容学习 第十一章学习总结 连接数据库: 1. 下载JDBC-MySQL数据库驱动 2. 加载JDBC-MySQL数据库驱动 3. 连接数据库 4. 注意 ...
- “全栈2019”Java第七十九章:类中可以嵌套接口吗?
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第七十八章:内部类可以继承其他类吗?
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第七十七章:抽象内部类与抽象静态内部类详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第七十六章:静态、非静态内部类访问权限
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第七十五章:内部类持有外部类对象
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第七十四章:内部类与静态内部类相互嵌套
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第七十三章:外部类里多个静态非静态内部类详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- “全栈2019”Java第七十二章:静态内部类访问外部类成员
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
随机推荐
- 阿里云 ACK Pod重启:pod was OOM killed
原因为:limits和requests的值设定为一样的了, pod request达到了limit限制,kubelet会统计到request+缓存就超限,然后触发自动重启 resources: lim ...
- CLion 2022.2.4破解教程详细图解mac,windows,linux均适用
下载与安装 此教程为CLion 2022.2.4 破解教程,且此教程以及下面提供的破解补丁适用与2022.2以后的新版本. 2022年11月10日亲测有效,mac与windows均测试完美破解 CLi ...
- .NET 压缩/解压文件
本文为大家介绍下.NET解压/压缩zip文件.虽然解压缩不是啥核心技术,但压缩性能以及进度处理还是需要关注下,针对使用较多的zip开源组件验证,给大家提供技术选型 目前了解到的常用技术方案有Syste ...
- KernelWarehouse:英特尔开源轻量级涨点神器,动态卷积核突破100+ | ICML 2024
动态卷积学习n个静态卷积核的线性混合,加权使用它们输入相关的注意力,表现出比普通卷积更优越的性能.然而,它将卷积参数的数量增加了n倍,因此并不是参数高效的.这导致不能探索n>100的设置(比典型 ...
- C++11新初始化方法 使用{}初始化变量
列表初始化 在C++11及以后的版本中,使用{}来初始化变量是一种新的初始化方法,称为列表初始化(List Initialization).这种初始化方法可以用来初始化内置类型.自定义类型以及聚合类型 ...
- Spring —— 初识
简介 Spring 家族 Spring Framework 系统架构
- ConcurrentLinkedQueue详解(图文并茂)
前言 ConcurrentLinkedQueue是基于链接节点的无界线程安全队列.此队列按照FIFO(先进先出)原则对元素进行排序.队列的头部是队列中存在时间最长的元素,而队列的尾部则是最近添加的元素 ...
- Ai大模型推理-未完善
环境 安装Conda 最低要求 CUDA 版本为 11.3 #获取安装脚本 wget -c 'https://repo.anaconda.com/archive/Anaconda3-2024.06-1 ...
- push_back和 emplace_back背后的逻辑
push_back 与 emplace_back 的区别 push_back: 功能:将一个对象(或其副本)添加到 vector 的末尾. 参数:接受一个对象(或其副本)的引用. 过程: 如果传入的是 ...
- flops, params = profile(model, inputs=(x,))计算
计算量:FLOPs,FLOP时指浮点运算次数,s是指秒,即每秒浮点运算次数的意思,考量一个网络模型的计算量的标准.参数量:Params,是指网络模型中需要训练的参数总数. flops(G) = flo ...