Java 9、10、11,哪个才是 Java 程序员的本命?
时间:2025-11-05 09:35:19 出处:数据库阅读(143)
之前,程序我们在《Java 10无跳票发布,本命主推的新特性引争议》的文章中做了一个小的调查,主要是程序调查现在的Java程序员都在使用哪个版本的Java?根据调查结果,绝大部分的本命程序员都在使用Java 8。
无独有偶,程序国外的本命一家媒体也做了同样的调查,但奇妙的程序是双方调查结果大致相同,国外的本命Java程序员也是更多的在使用Java 8。现在Java 9和10都已经发布了,程序根据Oracle给出的本命半年一个版本的约定,没有多久Java 11也将和大家见面。程序那么问题来了,本命现在使用Java 8的程序程序员更愿意迁移到这三个版本的哪个版本呢?

Java 9
Java 9虽然是三个备选选项中发布最早的免费源码下载版本,并且OpenJDK董事会主席兼Oracle Java平台小组开发副总裁Georges Saab也亲自下场背书,本命“Java 9的程序增长速度虽然不如Java 8,但是与其他版本并无差异。”但是,程序员却止不住对迁移到Java 9的吐槽。点击查看Java9新特性实战。
有程序员表示,Java 9中模块系统的一个问题是一个包必须完全包含在一个模块中。虽然这听起来是个好主意,但实际上在客户端和服务端的代码中都会有相同的包,这打破了模块系统,需要程序员进行重大重构。同时也有程序员表示常用的库和工具没有完全支持Java 9。
Java 10
Java 10是一个刚刚发布的版本,现在要求使用这个版本的用户达到多少,确实还有些不到时候。关于Java 10的b2b信息网新功能,可以参考《Java 10无跳票发布,主推的新特性引争议》,关于Java 10是否值得迁移,可以参考《Java 10值得迁移吗?听听技术大牛的建议》。点击查看Java10新特性实战。
Java 11
Java 11虽然还没有发布,但是Java 11的路线图已被相关媒体透露出来。Java 11将会增加一些新功能,更重要的是它将移除一些功能。
据悉JDK 11 只设置了三个新功能,包括Epsilon 垃圾收集器被称为“no-op”收集器,将处理内存分配而不实施任何实际的内存回收机制; lambda 参数的局部变量语法,应该将隐式类型表达式中的形式参数声明的语法与局部变量声明的语法对齐; Java类文件格式将被扩展为支持一个新的常量池形式CONSTANT_Dynamic.点击查看Java11新特性详解。
那么Java 11将要摒弃哪些东西呢?Java EE 和 CORBA 模块在 Java SE 9 中已弃用,Java 11意图将它们删除。Oracle 表示在 Java SE 或 JDK 中不再需要借助第三方站点提供的独立版本的 Java EE 技术。云服务器
猜你喜欢
- 解决电脑开机问题之CMOS信息错误(排查和修复CMOS信息错误导致的无法开机故障)
- DLF +DDI 一站式数据湖构建与分析最佳实践
- 双维度剖析Flink整体架构
- Void在JS和TS中的区别
- 长虹手机电池表现如何?(长虹手机电池续航稳定可靠,用户评价俱佳)
- 算法:合并两个有序链表
- 在 ASP.NET Core 中使用 Serilog/Fluentd 将日志写入 Elasticsearch
- 聊一聊我在组内的Nacos
- 尽管Apache已经占据半片江山,但很多人仍然在寻找其他的方式去托管他们的站点,Apache不只是一个选择,其他很多优秀的服务器程序例如lighthttp和nginx也是不错的选择。本教程将要向您展现如何在Ubuntu操作系统上面安装,教程同样适用在Debian,尽管有一点点小差别,但并没有太大影响。怎么样,下面我们开始吧。0.开始注意为了完成教程中提到的操作,我们假设您已经安装了一个基本的Debian或者Ubuntu操作系统。怎么安装系统这是不同的教程了,这里就不再详细说明。本教程主要介绍如何简单获取Nginx+php的运行环境。1.安装Nginx第一步要做的就是从库中下载,这个操作是非常简单的。sudo apt-get install nginx更改默认的虚拟站点配置,文件在:sudo vim /etc/nginx/sites-available/default一个漂亮的关键配置是:server { listen 80; server_name localhost; access_log /var/log/nginx/localhost.access.log;## Default location location / { root /var/www; index index.php; }## Images and static content is treated different location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ { access_log off; expires 30d; root /var/www; }## Parse all .php file in the /var/www directory location ~ .php$ { fastcgi_split_path_info ^(.+.php)(.*)$; fastcgi_pass backend; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www$fastcgi_script_name; include fastcgi_params; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_intercept_errors on; fastcgi_ignore_client_abort off; fastcgi_connect_timeout 60; fastcgi_send_timeout 180; fastcgi_read_timeout 180; fastcgi_buffer_size 128k; fastcgi_buffers 4 256k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; }## Disable viewing .htaccess & .htpassword location ~ /.ht { deny all; }}upstream backend { server 127.0.0.1:9000;} 好了,我们完成到这里,下面我们需要安装PHP所需要的文件。2.安装PHP很多站点都使用PHP提供动态内容,他们可能是一个wiki一个博客,或者一个论坛什么的。假如你现在运行的是Ubuntu,我们首先需要解决两种不同的deb包,假如你运行的是amd64版本,那需要更改i386为amd64注意:假如是debian则不需要做这些cd /tmpwget http://us.archive.ubuntu.com/ubuntu/pool/main/k/krb5/libkrb53_1.6.dfsg.4~beta1-5ubuntu2_i386.debwget http://us.archive.ubuntu.com/ubuntu/pool/main/i/icu/libicu38_3.8-6ubuntu0.2_i386.debsudo dpkg -i *.deb再次说明,这个只需要在Ubuntu上面操作就可以了,假如是最新版本的12.04可以省略掉这个。下面剩余部分将在Ubuntu和Debian上面都通用。我们需要增加APT源来增加deb包,所以我们可以使用php5.3和php-fpmsudo echo deb http://php53.dotdeb.org stable all >>/etc/apt/sources.list更新apt:sudo apt-get update下面我们开始安装PHP(第一部分)sudo apt-get install php5-cli php5-common php5-suhosin我们需要安装命令行,不然接下来就会出现些小问题sudo apt-get install php5-fpm php5-cgi假如你打算使用数据库或者一些需要的模块(例如:mcrypt,ldap,snmp等)你同样可以安装他们。好了,我们现在已经安装完了nginx和php一个注意点:假如你使用php的短标记(< ),你需要在php.ini中开启(fpm和cli同样),假如你不改变这些,你将看到代码以文本的方式显示。3.完成重启nginx服务器sudo /etc/init.d/nginx restart配置完成php.ini后需要重启php5-fpm,使用命令sudo /etc/init.d/php5-fpm restart全部完成,你可以运行了。4.测试我们可以在/var/www中创建一个index.php的文件,内容如下:< php phpinfo(); >通过浏览器访问,你可以看到php的一个大致的信息,假如没有则说明一些配置错误,需要重新检查。5.问题和最终提示假如你没有看到phpinfo,可能会出现一些错误,那可以执行:sudo tail /var/log/nginx/error.log查看错误日志,另外每次当你修改了php.ini后,需要重启php5-fpm。无需重启nginx。在默认的配置中nginx是启用了fastcgi的错误日志的,假如看到一个严重的错误(例如出现cannot redeclare class xyz),nginx可以看到这个“漂亮的”错误页面,那可能是一些错误发生了。假如这样你可以关闭,假如php5-fpm不能运行,你的php文件将不会被解析,并且nginx会显示一个错误页面。好了,我猜你已经完成了,并且现在使用nginx作为你的web服务器,nginx是一个小巧、漂亮并且你可以配置很多东西的一个东东,假如你需要伪静态,注意nginx不会运行 .htaccess 文件,你需要伪静态更改vhost配置。假如对在Linux下感兴趣的朋友可以查看《Linux下的DedeCMS站点高级安全策略》翻译:天涯 原文:http://www.howtoforge.com/installing-php-5.3-nginx-and-php-fpm-on-ubuntu-debian