分类 科技前沿 下的文章

4 月 3 日电据人社部网站消息,人社部、市场监管总局、统计局联合发布新职业信息,包括人工智能工程技术人员、物联网工程技术人员、大数据工程技术人员、云计算工程技术人员、数字化管理师、建筑信息模型技术员、电子竞技运营师、电子竞技员、无人机驾驶员、农业经理人、物联网安装调试员、工业机器人系统操作员、工业机器人系统运维员等 13 个新职业。

98758-salfv7fbj1g.png

  2019 年 4 月 1 日,人社部、市场监管总局、统计局正式向社会发布了人工智能工程技术人员、物联网工程技术人员、大数据工程技术人员、云计算工程技术人员、数字化管理师、建筑信息模型技术员、电子竞技运营师、电子竞技员、无人机驾驶员、农业经理人、物联网安装调试员、工业机器人系统操作员、工业机器人系统运维员等 13 个新职业信息。这是自 2015 年版国家职业分类大典颁布以来发布的首批新职业。人社部组织职业分类专家,严格按照新职业评审标准和程序,从有关申报单位提交的新职业建议中评选出来,经公示广泛征求社会各界意见后确定的。首批新职业主要集中在高新技术领域,具有以下几个特点:

  产业结构的升级催生高端专业技术类新职业。当前,我国经济已由高速增长阶段转向高质量发展阶段,这对劳动者的科学文化素质和能力水平提出新的要求。近几年,随着我国人工智能、物联网、大数据和云计算的广泛运用,与此相关的高新技术产业成为我国经济新的增长点。对从业人员的需求大幅增长,形成相对稳定的从业人群。人工智能工程技术人员、物联网工程技术人员、大数据工程技术人员和云计算工程技术人员等 4 个专业技术类新职业应运而生。这些新职业属高新技术产业,以较高的专业技术知识和能力为支撑,从业人员普遍具有较高学历。

  科技提升引发传统职业变迁。随着新兴技术的采用,传统的第一、第二产业越来越智能化。工业机器人替代生产流水线上简单劳动力的做法在部分地区得到推广,与机器人相关的生产、服务和培训企业蓬勃发展。工业机器人的大量使用,对工业机器人系统操作员和系统运维员的需求剧增,使其成为现代工业生产一线的新兴职业。随着无人机技术的成熟,利用无人机完成一些人类难以完成的高难险和有毒有害工作成为可能,通过无人机可以进行植保、测绘、摄影、高压线缆和农林巡视,无人机在物流等领域也拥有广阔的应用空间。大量无人机的使用,使无人机驾驶员成为名副其实的新兴职业。

  信息化的广泛应用衍生新职业。信息化如同催化剂,使传统职业的职业活动内容发生变革,从而衍生出新职业,如:数字化管理师、建筑信息模型技术员。随着物联网在办公、住宅等领域得到广泛应用,信息化与现代制造业深度结合,物联网安装调试从业人员需求量激增。近几年,在国际赛事的推动下,基于计算机的竞技项目发展迅猛,电子竞技已成为巨大的新兴产业,电子竞技运营师和电子竞技员职业化势在必行。在农业领域,农民专业合作社等农业经济合作组织发展迅猛,从事农业生产组织、设备作业、技术支持、产品加工与销售等管理服务的人员需求旺盛,农业经理人应运而生。

自 2 月 7 日开始,Java/JDK 12 就进入了 RC 阶段。按照发布周期,美国当地时间 3 月 19 日,也就是今天 Java 12 正式发布了!

△ JDK 12 GA 发布

Java 12 带来了一系列新特性:

189 Shenandoah: A Low-Pause-Time Garbage Collector (Experimental) 低暂停时间的 GC
230 Microbenchmark Suite 微基准测试套件
325 Switch Expressions (Preview) Switch 表达式
334 JVM Constants API JVM 常量 API
340 One AArch64 Port, Not Two 只保留一个 AArch64 实现
341 Default CDS Archives 默认类数据共享归档文件
344 Abortable Mixed Collections for G1 可中止的 G1 Mixed GC
346 Promptly Return Unused Committed Memory from G1 G1 及时返回未使用的已分配内存
下边分别来看看:

Shenandoah: A Low-Pause-Time Garbage Collector (Experimental)

Shenandoah:低暂停时间的 GC(实验性功能)

新增了一个名为 Shenandoah 的 GC 算法,通过与正在运行的 Java 线程同时进行 evacuation 工作来减少 GC 暂停时间。使用 Shenandoah 的暂停时间与堆大小无关,这意味着无论堆是 200 MB 还是 200 GB,都将具有相同的暂停时间。

Microbenchmark Suite

微基准测试套件

JDK 源码中新增了一套微基准测试套件,使开发人员可以轻松运行现有的微基准测试并创建新的基准测试。

Switch Expressions (Preview)

Switch 表达式(预览功能)

扩展了 switch 语句,使其不仅可以作为语句(statement),还可以作为表达式(expression),并且两种写法都可以使用传统的 switch 语法,或者使用简化的“case L ->”模式匹配语法作用于不同范围并控制执行流。这些更改将简化日常编码工作,并为 switch 中的模式匹配(JEP 305)做好准备。

JVM Constants API

JVM 常量 API

引入 API 对关键类文件和运行时工件建模,特别是可从常量池加载的常量。在新的 java.lang.invoke.constant 包中定义了一系列基于值的符号引用(JVMS 5.1)类型,它们能够描述每种可加载常量。符号引用以纯 nominal 形式描述可加载常量,与类加载或可访问性上下文区分开。有些类可以作为自己的符号引用(例如 String),而对于可链接常量,定义了一系列符号引用类型(ClassDesc、MethodTypeDesc、MethodHandleDesc 和 DynamicConstantDesc),它们包含描述这些常量的 nominal 信息。

One AArch64 Port, Not Two

只保留一个 AArch64 实现

删除了与 arm64 相关的所有源,同时保留 32 位 ARM 实现和 64 位 aarch64。

JDK 中存在两套 64 位 ARM 实现,主要存在于 src/hotspot/cpu/arm 和 open/src/hotspot/cpu/aarch64 目录。两者都实现了 aarch64,现在将只保留后者,删除由 Oracle 提供的 arm64。这将使贡献者将他们的精力集中在单个 64 位 ARM 实现上,并消除维护两套实现所需的重复工作。

Default CDS Archives

默认类数据共享归档文件

针对 64 位平台,使用默认类列表增强 JDK 构建过程以生成类数据共享(class data-sharing,CDS)档。

Abortable Mixed Collections for G1

可中止的 G1 Mixed GC

如果 G1 Mixed GC 存在超出暂停目标的可能性,则使其可中止。

Promptly Return Unused Committed Memory from G1

G1 及时返回未使用的已分配内存

增强 G1 GC,在空闲时自动将 Java 堆内存返回给操作系统。为了实现向操作系统返回最大内存量的目标,G1 将在应用程序不活动期间定期执行或触发并发周期以确定整体 Java 堆使用情况。这将导致它自动将 Java 堆的未使用部分返回给操作系统。而在用户控制下,可以可选地执行完整的 GC,以使返回的内存量最大化。

上述每一个新特性都有详细的说明文档,可以点击相应链接查看。

观望 JDK 13

根据 JDK 13 的迭代计划,预计将于 2019 年 9 月发布 —— Java 现在采取“半年发布一次版本”的模式。

可访问 http://openjdk.java.net/projects/jdk/13/ 查看 JDK 13 的相关信息。

讨论

留意到不少开发者对 Raw String Literals 特性情有独钟,该特性类似于 JavaScript ES6 语法中的模板字符串,使用它基本可以告别丑陋的字符串拼接。特性详见 http://openjdk.java.net/jeps/326

该特性原计划于 JDK 12 发布,可惜最后还是被取消了,详见:
http://mail.openjdk.java.net/pipermail/jdk-dev/2018-December/002402.html

可能是因为业界呼声太高,最近委员会又把这个特性拿出来重新讨论了:
https://mail.openjdk.java.net/pipermail/amber-spec-experts/2019-January/000931.html

你最想要的 JDK 特性是什么?在留言区和大家分享吧!~

设备位置:

让用户能够控制应用程序何时可以获得位置信息,包括应用程序何时不使用位置信息。用户可以设置应用程序无法使用位置信息,可以选择只有应用程序在运行或者在后台运行时才能使用其位置信息。

存储:

Android Q 开发者预览版提供对共享文件访问的更多控制。用户将能够通过权限控制应用程序对照片、视频和音频集的访问。应用程序必须使用系统文件选择器进行数据下载,这能够让用户决定应用程序可以访问哪些下载文件。开发人员还必须改变应用程序在外部存储上使用共享区域的方式。

后台运行:

减少应用程序意外跳出并占据屏幕等干扰。应用程序将被禁止在后台启动 Activity 组件。应用程序开发人员可以通过高优先级通知或全屏图快速吸引用户的注意力,比如来电或警报应用。

用户数据 ID:

Android Q 开发者预览版限制对不可重置设备标识符的访问,其中包括设备 IMEI、序列号和类似标识符。默认情况下,当连接到不同的 Wi-Fi 网络时,Android Q 也会随机分配设备的 MAC 地址。

对可折叠屏幕的支持:

应用程序将能够更好地适配可折叠屏幕和其他大屏幕设备。

共享快捷方式:

在全新操作系统下,应用程序能够与其他应用更快共享快捷方式,用户直接跳转到另一个应用共享内容的速度会变得更快。

设置面板:

能够在应用程序上下方直接显示关键系统设置。新的设置面板 API 使用 Android 9 Pie 中引入的 slice 功能,为用户提供一个带有相关系统设置(如 Wi-Fi、飞机模式、移动数据、NFC 和音频音量)的浮动 UI。用户无需离开应用程序进行系统设置。

连接权限、隐私和安全性:

对于蓝牙、蜂窝网络和 Wi-Fi 连接,需要 FINE 位置权限,从而提高设备连接家庭、工作网络以及开放网络的安全性。

改进的点对点(peer-to-peer)和互联网连接:

对 Wi-Fi 堆栈进行了重构,以改善隐私、性能以及管理物联网设备和建议互联网连接等常见用例。Android Q 将自行处理 Wi-Fi 扫描,在 Wi-Fi 选择列表中显示匹配网络,并在这些网络的范围内根据历史记录进行连接。

Wi-Fi 性能模式:

高性能和低延迟模式允许开发人员调用相应函数请求自适应 Wi-Fi。谷歌希望这些功能有助于实时游戏、活动语音呼叫等类似用例。

支持动态深度图像:

应用程序可以请求动态深度图像,该图像包含一个 JPEG、与深度相关的 XMP 元数据,以及嵌入在同一文件中的深度和置信度图。这使得开发人员可以支持 3D 图像和 AR 摄影等用例。动态深度将是 Android 生态系统中的一种开放图像格式。

全新的音频视频编码解码器:

支持开源视频编解码器 AV1,音频编码 Opus 以及 HDR10+。

原生 MIDI API:

这个 API 允许在 C++ 环境中执行音频处理的应用程序通过 NDK 与 MIDI 设备通信。它允许使用非阻塞读取在音频回调中检索 MIDI 数据,从而支持对 MIDI 消息(示例应用程序源代码)进行低延迟处理。

支持 Vulkan 原生渲染引擎 ANGLE:

对渲染引擎 ANGLE 的支持使得应用 OpenGL ES 的应用程序和游戏将能够利用 Vulkan 的性能和稳定性,自由度和开放度都非常高。

Vulkan 扩展:

谷歌正在与设备制造商合作伙伴合作,使所有运行 Android Q 或更高版本 64 位设备能够兼容 Vulkan 1.1。因此,Vulkan 将成为应用程序和游戏所使用的统一高性能图形 API。

神经网络 API 1.2:

其中包括 60 个新项目,包括 ARGMAX, ARGMIN,量化 LSTM,以及一系列性能优化。谷歌正在与硬件供应商和诸如 TensorFlow 等主流机器学习框架合作,优化对 NNAPI 1.2 的支持。

ART 性能:

继续改进应用运行模式,帮助应用程序启动更快,消耗更少的内存,并帮助应用程序在低端设备上运行得更好。

所有 TLS 连接都默认添加并启用了对 TLS 1.3 支持。

谷歌表示,其基准测试表明,与 TLS 1.2 相比,使用 TLS 1.3 可以更快建立安全连接,速度高达 40%。

通过公共 API 实现更多兼容性:

谷歌限制了对更多非 SDK 接口的访问,并要求开发人员使用公共接口。

免责声明
本博客部分内容来自于互联网,不代表作者的观点和立场,如若侵犯到您的权益,请联系[email protected]。我们会在24小时内进行删除。