当前位置: 首页 > news >正文

成都网站开发环球中心五 网站开发总体进度安排

成都网站开发环球中心,五 网站开发总体进度安排,音乐分享网站开发,网站规划的步骤Java 变得越来越像 Rust 介绍 随着编程的增强和复杂性越来越流行#xff0c;许多编程语言也相互效仿。 Java 也不例外。 尽管社区内部存在问题#xff0c;Rust 仍逐年赢得了开发人员的喜爱。并且有充分的理由#xff1a;由于编译器#xff0c;Rust 使开发人员能够避免整…Java 变得越来越像 Rust 介绍 随着编程的增强和复杂性越来越流行许多编程语言也相互效仿。 Java 也不例外。 尽管社区内部存在问题Rust 仍逐年赢得了开发人员的喜爱。并且有充分的理由由于编译器Rust 使开发人员能够避免整个类别的问题。编译器要求正确性以至于一些开发人员开始遇到一些不安全感。 我想展示 Rust 的两个特性这些特性是 Rust 优秀的一部分然后将它们与 Java 的最新创新进行比较。 免责声明我绝不声称这些 Rust 功能导致其对应功能出现在 Java 中。如果 Kotlin 和或 Scala 在实现这一点方面更具影响力我不会感到惊讶。但我很高兴看到 Rust 功能也可以在某种程度上在 Java 中找到 不可变数据(Immutable Data) 在 Rust 中数据默认是不可变的。 struct User {// struct members are immutable name: static str,age: i32 }fn main() { // user and members are immutablelet user User { name: Bob, age: 42 }; } 如果我们希望数据是可变的则必须显式声明它是可变的。 fn main() {let mut user User { name: Bob, age: 42 };user.name Jim; } 现在一个普通的 Java 对象又名 POJO通常是默认可变而且相当冗长。 Java 8 中的代码如下 public class User { private String name;private int age; public User(String name, int age) { this.name name; this.age age; }public String getName() { return this.name;}public int getAge() {return this.age;}public void setName(String name) { this.name name;}public void setAge(int age) { this.age age;}public static void main(String[] args) { User user new User(Bob, 42);user.setName(Jim);System.out.println(user.getName());}// not to mention equals(), toString() and friends! } 然而多亏了现代 Javarecord 类在考虑到不变性的情况下简化了这一点并且我们的代码远没有那么冗长。以下是启用了预览的有效 Java 21 代码。 record User(String name, int age) {} void main() { final var user new User(Bob, 42); } 代数数据类型(Algebraic Data Types) 在这段 YouTube 视频中我们看到 Rust 如何利用代数类型来帮助使无效状态变得不可表示并强有力地保证防止错误行为。在 Rust 中这是使用枚举完成的 enum RealCat { Alive { is_hungry: bool },Dead } fn main() {let real_cat: RealCat RealCat::Alive { is_hungry: true };match real_cat {RealCat::Alive { is_hungry } {if is_hungry {println!(The cat demands a sacrifice.);} else {println!(The cat is bored.);}},RealCat::Dead println!(Oh no!!!)} }直到最近这还无法在 Java 中优雅地实现。然而从 Java 21 及更高版本开始您可以使用包含记录的密封接口并使用详尽的 switch 语法在 Java 中优雅地实现此功能 RealCat.java public sealed interface RealCat permits RealCat.Alive, RealCat.Dead {record Alive(boolean isHungry) implements RealCat {}record Dead() implements RealCat {}static void check(RealCat realCat) {switch (realCat) {case Alive aliveCat - {if (aliveCat.isHungry()) {System.out.println(The cat demands a sacrifice.);} else {System.out.println(The cat is bored.);}}case Dead _ - System.out.println(Oh no!!!);}} }RealCatApplication.java void main() {final var hungryCat new RealCat.Alive(true);RealCat.check(hungryCat); }结论 有无数充分的理由表明 Java 永远不会成为 Rust但我很高兴看到 Rust 的一些强大功能进入了 Java。这将巩固 Java 作为商业世界首选编程语言之一的长期地位。 Java 在过去 28 年中一直拥有重要的市场份额并且由于 OpenJDK 项目致力于提高开发人员的生产力因此在未来 28 年中即使不能重新获得重要的市场份额也有望保持这一市场份额。
http://www.hkea.cn/news/14555406/

相关文章:

  • 网站建设到上线的步骤过程软件开发专业专科学校
  • 网站数据丢失了做数据恢复需多久成都海鸥手表网站
  • 成都门户网站建设中铁建设集团有限公司电话
  • 河北涿州网站建设装修网站有哪些
  • 微网站建设市场分析业务宣传网站建设
  • 公司是做网站建设的怎么开票制作app界面
  • 专门做运动装备的网站网站模板编辑
  • 做网站网页的公司dede 网站模板
  • 电商网站商品详情页网站引导页是什么
  • 网站如何链接备案系统濮阳 网站建设
  • 温州网站建设价格不备案的网站能上去吗
  • wordpress 增删改查seo实战密码第三版pdf
  • 免费微信网站制作平台怎么看网站开发的技术
  • 老年公寓网站模板淘宝客做的好的几个网站
  • 石大远程网页设计与网站建设答案济南环保行业网站开发
  • 微表单网站做公众号推广的公司
  • 网站推广合作学院网站建设流程
  • 麻将棋牌网站开发广告推广软文案例
  • 做网站找哪家公司网站右下角弹出广告代码
  • 用多说的网站wordpress凌风教程
  • 成都展示型网站开发造价人才网
  • 手机版素材网站网站域名过期怎么做
  • 使用阿里云建网站建材做网站好吗
  • 无锡市网站搭建seo推广有哪些公司
  • dz网站模板重庆神态网站建设
  • 宁波网站建设信任荣盛网络湖南常德米粉
  • 沧州网站建设网海申罗湖网站建设58
  • 企业做网站还是做平台好网站建设后如何修改
  • 营销型网站平台建设女人与马做受网站
  • 北京东城做网站建筑公司招聘信息