整理 | 梦依丹

出品 | CSDN(ID:CSDNnews)

CSDN开发者周刊:只为传递“有趣/有用”的开发者内容!

本周热门项目

0、Rust 升级成为微软一级项目

2015 年诞生的 Rust 是一款小众的现代系统编程语言,近几年间,接连受到了各大企业的青睐。并且连续 3 年被评为最受开发者欢迎的编程语言。

如今,Rust 正式升级成为微软第一梯队的编程语言,与 C++、C# 平级。

1、500 个值得学习的 AI 开源项目

  • https://codechina.csdn.net/mirrors/ashishpatel26/500-AI-Machine-learning-Deep-learning-Computer-vision-NLP-Projects-with-code

一名国外的 AI 研究员以文章的形式整理了 500 个值得学习的 AI 项目,覆盖机器学习、深度学习、计算机视觉、NLP 等领域。

2、IEEE 荣誉勋章授予数据压缩先驱 Jacob Ziv

  • https://spectrum.ieee.org/the-institute/ieee-member-news/ieee-medal-of-honor-goes-to-data-compression-pioneer-jacob-ziv 

近日,IEEE 终身 Fellow 授予以色列科学家 Jacob Ziv, 因其对信息论和数据压缩技术的重要贡献和杰出研究领导地位获得本年度的 IEEE 荣誉勋章。

LZ77 与 LZ78 是 Abraham Lempel 与 Jacob Ziv 在 1977 年以及 1978 年发表的论文中提出的两个无损数据压缩算法,二人脱离了 Huffman 及算术编码的设计思路,创造出了一系列比 Huffman 编码更有效,比算术编码更快捷的通用压缩算法。

IEEE 荣誉勋章奖项创立于 1917 年,是 IEEE 协会的最高奖项,也是全球电气电子工程学界的最高奖励,授予那些为电子电气领域做出特殊贡献的人物。

3、AWS 宣布创建 Elasticsearch 和 Kibana 分支

  • https://aws.amazon.com/cn/blogs/opensource/stepping-up-for-a-truly-open-source-elasticsearch/

日前 Elastic 公司宣布,将对旗下 Elasticsearch 和 Kibana 进行开源许可修改,从 Apache 2.0 许可的源代码移到服务器端公共许可(SSPL)和 Elastic许可的双重许可下,使用户可以选择要应用的许可。根据官方信息,从 7.11 版本开始,两个产品的所有维护分支,默认发行版将继续使用 Elastic 协议。

此举旨在禁止云服务商(aka AWS)使用它的软件作为一种服务提供给客户。但许可的更改也意味着 Elasticsearch 和 Kibana 不再是开源软件了。亚马逊 AWS 宣布它将创建和维护 Elasticsearch 和 Kibana 的一个分支,继续使用 ALv2 许可证。亚马逊称,它是在 ALv2 许可下提供 Elasticsearch 的软件即服务,而且它在 Elasticsearch 上的所有改进都递交到上游。

4、IntelliJ IDEA 20 周岁了!

  • https://www.jetbrains.com/lp/intellijidea-20-anniversary/

JetBrains 公司回顾 20 周年,在其创立之初,该公司只是布拉格一家名不见经传的小公司,当时只有三名员工,用一款产品为 800 个客户提供服务。时至今日,公司已在全球设立 9 个办事处,员工人数超过 1250 名,开发者工具达到 25 款,用户规模更是突破 800 万。

IntelliJ IDEA 五大核心功能:

  • Сode completion

  • Show Intention Actions

  • Run

  • Go to Declaration

  • Toggle Line Breakpoint

本周热闻

0、Visual Studio 将原生支持 WSL 2

  • https://devblogs.microsoft.com/cppblog/c-with-visual-studio-and-wsl2/

微软官方团队宣布,为对支持 C++进行原生支持,他们于 2019 年在 Visual Studio 中发布了基于的 Linux 的 Windows 子系统 WSL 。目前 Visual Studio将原生支持 WSL 2,这样,开发者就可以在 WSL2 上进行无缝构建和调试,无需添加 SSH 连接。


1、多个 Linux 发行版考虑移除 Chromium 软件包

近日,Google Chrome Team 通过邮件的形式告知 Linux 发行版开发者。为改善 Google 用户数据安全体验,从 2021 年 3 月 15 日开始,在构建配置上使用 google_default_client_id 和 google_default_client_secret 的 Chromium 和 Chromium OS 衍生产品的终端用户将无法登录其 Google 帐户。

2、“熊孩子”乱敲键盘攻破 Linux 桌面

  • https://github.com/linuxmint/cinnamon-screensaver/issues/354

近日,一位昵称叫 robo2bobo 的程序员爸爸在 Github 上汇报了一个 Bug,而 Bug 的起因竟是由他两个熊孩子引起的。robo2bobo 写道:“几周前,我的孩子想入侵我的Linux桌面,当时我就站在他们的身后,他们在各处打字单击,最终导致 Linux Mint 屏幕保护程序崩溃,从而使两个人都可以访问桌面“。

根据错误报告,两个孩子在物理键盘和屏幕键盘上同时按下了随机键。而 robo2bobo 让孩子们再次复现该问题,竟然成功了。随后,他在 Linux Mint 的 GitHub 页面上反馈了这一 bug。而有一位大神表示,他早在17年前就警告过Cinnamon 和 GNOME 官方。

目前,Linux Mint 已发布了相关补丁,解决该 bug。

3、GCC 11 进入最后开发阶段, 62 个高优先级回归

  • https://gcc.gnu.org/gcc-11/changes.html

近日,GCC 11官方宣布,GCC 11 已处于第四阶段的开发中,截至其宣布时,仍有 62 个P1 优先级的回归需要处理。另外,P2 优先级的为 334 个,P3 优先级的为35个,P4 优先级的为 190 个,P5 优先级的为 24 个。

部分更新如下:

  • C++ 的默认模式由 -std=gnu++14 更改为 -std=gnu++17

  • 构建 GCC 时,主机编译器必须支持 C++11,而不是 C++98

  • 支持  Linux Kernel Concurrency Sanitizer (KCSAN)

  • 优化列号的计算方法

  • 引入 AddressSanitizer 硬件辅助支持

  • 实现了部分 C++20 特性,比如支持 consteval virtual 函数

  • 修复了一些 C++ 缺陷报告,比如可变模板的默认模板参数问题

  • C 和 C++ 新的警告类型

  • 优化了对 C++17 和 C++2a 的支持

4、英特尔返聘退休 3 年的 CPU 架构师 Glenn Hinton

  • https://www.anandtech.com/show/16438/new-intel-ceo-making-waves-rehiring-retired-cpu-architects

上周,英特尔宣布老将帕特·基辛格(Pat Gelsinger)担任 CEO 一职,并于 2 月 15 日生效。新官上任三把火,目前,帕特·基辛格的”第一把火“便是聘请有“酷睿i7之父”的称号Glenn Hinton 回归。

CSDN 社区精选

0、让 Flutter 在鸿蒙系统上跑起来

  • https://blog.csdn.net/MeituanTech/article/details/112975700

鸿蒙系统 (HarmonyOS)是华为推出的一款面向未来、面向全场景的分布式操作系统。在传统单设备系统能力的基础上,鸿蒙提出了基于同一套系统能力、适配多种终端形态的分布式理念。自 2020 年 9 月 HarmonyOS 2.0 发布以来,华为加快了鸿蒙系统大规模落地的步伐,预计 2021 年底,鸿蒙系统会覆盖包括手机、平板、智能穿戴、智慧屏、车机在内的数亿台终端设备。对移动应用而言,新的系统理念、新的交互形式,也意味着新的机遇。如果能够利用好鸿蒙的开发生态及其特性能力,可以让应用覆盖更多的交互场景和设备类型,从而带来新的增长点。

在现有的众多跨端框架当中,Flutter 以其自渲染能力带来的多端高度一致性,在新系统的适配上有着突出的优势。虽然Flutter 官方并没有适配鸿蒙的计划,但经过一段时间的探索和实践,美团外卖 MTFlutter 团队成功实现了 Flutter 对于鸿蒙系统的原生支持。

这里也要提前说明一下,因为鸿蒙系统目前还处于Beta版本,所以这套适配方案还没有在实际业务中上线,属于技术层面比较前期的探索。接下来本文会通过原理和部分实现细节的介绍,分享我们在移植和开发过程中的一些经验。希望能对大家有所启发或者帮助。


1、章文嵩将离职,曾是阿里开源“赶集人”,投身开源 20 年

近日,据晚点 LatePost 报道,滴滴内部发公告称将成立技术委员会,其中 CTO 张博担任技术委员会主席,橙心优选 CTO 赖春波、国际化 CTO 卜峥担任副主席。技术委员会将在稳定性保障和中后台降本增效进行持续投入。

同时,还有个重磅消息:滴滴高级副总裁章文嵩将于近期离职,他所负责的基础平台工作,将由智能中台负责人杨毅接任。

2、Oracle 2021年度安全警报:Critical Patch Update 发布8个数据库警告

  • https://blog.csdn.net/enmotech/article/details/112975376

Oracle公司于2021年1月19日,发布了第一个年度安全预警。关于 Oracle 数据库部分,共 8个 安全警告,通过应用最新的 CPU 补丁可以修复这个安全漏洞。

此重要补丁更新包含8个新的安全补丁,以及针对Oracle数据库产品的其他补丁修正。这8个安全漏洞中:

  • CVE-2021-2018 漏洞无需身份验证即可远程利用,即入侵者可以通过网络利用这些漏洞而无需用户凭据。这个漏洞的安全风险较高,风险评分 8.3分,但是攻击复杂度高,影响Oracle 18c 和 19c,但是只影响 Windows 平台。

  • CVE-2021-2035 是通过数据库的 Scheduler 定时组件进行攻击,需要 Export Full Database 权限,管控这个权限可以降低风险,这个漏洞实现复杂度低,风险评分高达 8.8 分,建议梳理数据库的权限,或者应用补丁修复。

  • CVE-2021-2054 和 Sharding 组件相关,相信大多数用户没有用到,如果没用分布式组件可以忽略。

  • CVE-2021-2116 和 CVE-2021-2117 和 Oracle Apex 相关,通过 http 协议攻击,但是需要有效的用户帐号,做好账户管理,风险不大。

  • CVE-2021-1993 和 Java VM相关,是之前一系列反序列化的漏洞延续,可以通过 Package 的权限限制防范,或者补丁修复。

  • CVE-2021-2045 和 Text 组件相关,多数用户同样应该未使用这个选项,可以忽略(数据库安装时,这些用不到的选件,最好不要安装)。

  • CVE-2021-2000 是 Unified Audit - 统一审计管理特性相关的漏洞,需要 SYS帐号,对于权限要求极高,所以风险最低,安全分是 2.4 分。

以上的 8个 风险漏洞中,其中两个(CVE-2021-2035, CVE-2021-2054)来自北京安华金和的专家 Eddie Zhu 提报。

3、18个编写 JavaScript 好习惯!

  • https://blog.csdn.net/qq449245884/article/details/112915420

在我多年的编程生涯中,我会优先考虑编写代码的方式,不仅是为了让代码更简洁,还因为它有助于提高编码效率,使编写代码的速度更快。

写1000行代码和写300行代码是不一样的,这对我们正在做的程序或脚本有很大的帮助。编程时必须非常小心,因为在大型项目中,脏代码可能是一个严重的问题。

许多程序员批评 JS 语言没有像Java或c++那样的标准工作方式,但事实是JavaScript是目前使用的最好的语言之一,其中一些是Facebook和Netflix。像React这样的库提高了前端性能,至于后端,nextJs用于提高速度,这些组合让当今的程序员抓狂。

**ECMAScript v6(缩写为ES6或ES2015)**是JavaScript自2015年6月以来一直遵循的标准。

通过学习以下技巧,我们能够改善编写代码的方式。花点时间在控制台上练习,学习好。

程序员如何避免陷入“内卷”、选择什么技术最有前景,中国开发者现状与技术趋势究竟是什么样?快来参与「2020 中国开发者大调查」,更有丰富奖品送不停!

 

Logo

20年前,《新程序员》创刊时,我们的心愿是全面关注程序员成长,中国将拥有新一代世界级的程序员。20年后的今天,我们有了新的使命:助力中国IT技术人成长,成就一亿技术人!

更多推荐