【云驻共创】华为云CodeArts IDE&鲲鹏DevKit插件联合升级新体验,全流程开发效率提升!

举报
kaliarch 发表于 2024/01/15 18:09:06 2024/01/15
【摘要】 华为云CodeArts IDE与鲲鹏DevKit插件的联合升级为开发者带来了全新的开发体验,通过优化开发工具、提供高效环境,全流程开发效率大幅提升。开发者能享受快速、智能的代码编辑、调试和部署,充分利用鲲鹏DevKit插件的适配能力,实现与鲲鹏服务器无缝集成。这升级不仅提高开发效率,也带来高质量项目交付,助力应对复杂开发挑战。

概述

华为云 CodeArts IDE&鲲鹏 DevKit 插件联合升级,华为云 CodeArts IDE 与鲲鹏 DevKit 插件的联合升级为开发者带来了全新的开发体验。通过优化和整合开发工具、提供高效的开发环境,全流程开发效率得到显著提升。开发者可以享受到更快速、智能化的代码编辑、调试和部署流程,同时充分利用鲲鹏 DevKit 插件的适配能力,实现与鲲鹏服务器的无缝集成,及轻松应对迁移场景。这一升级不仅提高了开发效率,还为开发者带来更高质量的项目交付,助力他们更好地应对日益复杂的开发挑战,新体验,全流程开发效率提升!

CodeArts IDE为研发赋能

CodeArts IDE 定位于华为云开发者桌面,是利用自主可控技术内核,面向华为云开发者提供的智能化可扩展桌面集成开发环境(IDE),结合华为云行业和产业开发套件,实现极致的一站式用云和开发体验。


华为云 IDE 是一款面向华为云开发者的智能化可扩展桌面集成开发环境,旨在实现一站式的云和开发体验。华为云 IDE 的发展历程可以分为三个阶段。

  1. 第一个阶段是效率提升。在这个阶段,华为云内部有大量的研发工作,代码量庞大,运行环境复杂,导致调试和验证困难。由于公司对研发过程质量的高要求以及集成各种 IT 系统的需求,对 IDE 提出了定制扩展的需求。在这个阶段,华为主要通过商业采购和开源软件来满足软件研发需求,各产品团队也根据自身业务特点开发了多款插件来满足研发需求。
  2. 第二个阶段是技术可控。由于专业采购和开源软件存在断供和无法控制安全等问题,华为开始自主研发 IDE 内核。在这个阶段,华为联合各个产品线,在统一内核基础上加入插件生态和语言服务扩展,建设了公司的 IDE 解决方案。
  3. 第三个阶段是探索创新。在解决自身生存问题的同时,华为也积极进行商业化的探索。经过多年持续的研发投入,华为云 IDE 从最初的云上软件开发平台逐渐成长为覆盖软件开发全生命周期的生产线,并在中国的 DevOps 平台市场中取得领先地位。

华为云 IDE 的发展经历了以上三个阶段,从提升效率到技术可控再到探索创新,不断满足华为研发的软件开发需求,并逐步发展为领先的开发工具和平台。



华为云 CodeArts IDE 在 2022 年 6 月发布,并具有以下四个主要特性:

  • 边界架构:该 IDE 内核支持多种开发模式,满足云上桌面和端云协同的需求。通过一键升级功能,可以将精简的专用工具升级为全功能的软件开发环境的 IDE。升级后,可以从内置的插件市场安装语言服务插件,为应用开发者提供更好的体验。
  • 高效且智能:该 IDE 提供高效的索引分析和智能化的编程辅助语言服务。开发团队汇聚了来自俄罗斯、以色列、加拿大、中国等国家的研发基地。该 IDE 提供全文搜索、智能代码补全、代码重构、调试运行等多项功能,并在大规模代码项目的加载和解析方面具有出色的性能。
  • 丰富的插件生态:该 IDE 具有广泛兼容和开放的插件市场。开发者可以根据自身需求安装不同的插件,构建适配其业务场景的 IDE。该 IDE 不仅支持华为云的插件市场,还支持 open VX 插件市场,覆盖华为云 API,通过云资源访问开发者,支持 DevOps 平台等,可为开发者定制个性化的编程工具。同时,欢迎开发者加入插件开发者的行列,一起丰富华为云 IDE 的插件生态。
  • 深度集成云后端:该 IDE 内部集成了华为云开放治理中心,为开发者提供了解、学习和集成华为云的一站式平台。目前已经集成了超过 200 个华为云服务和 8000 多个 API,开发者可以在工具界面内完成 API 的浏览、查找详情、编写代码和调试接口,使开发过程更高效流畅。

这些特性使得华为云 CodeArts IDE 成为开发者在华为云平台进行开发工作的桌面云平台的入口,并提供了卓越的开发体验和丰富的功能。


开箱即用的多语言支持:登录华为云后即可激活语言支持服务,体验到从工程生成、代码编写和阅读,本地构建和调试,运行和测试的全过程。连接华为云:集成华为云帐号登录,支持购买和访问华为云资源,支持快速访问华为云200+云服务和9000+开放接口,显著提升华为云应用开发效率,开放生态能力:通过内置的插件市场,可以查找华为云CodeArts插件市场的原生插件,也可以安装来自OpenVSX的第三方插件,实现开发桌面能力扩展。


CodeArts IDE for Java 是一款功能强大的 Java 集成开发环境,它提供了智能辅助编码功能,支持基于 Spring 的代码工程创建,以及 Maven 和 Gradle 构建。此外,它还支持代码重构、快速查找、断点调试和热替换,为 Java 开发者提供卓越的编码体验。

如果你在华为云上购买了多台服务器,并且这些服务器位于不同的分区,那么平时进行运维管理可能需要记住每台虚机的 IP 地址和帐号,这可能会比较繁琐。不过,使用 CodeArts IDE for Remote Shell 可以帮助你在同一工具内快捷地完成对华为云主机的运维访问操作。

CodeArts IDE for Remote Shell 是一款功能强大的远程 shell 工具,它可以让你在同一界面内管理多个华为云主机,并且支持文件编辑等操作。通过使用这款工具,你可以更加高效地完成对华为云主机的运维管理工作。

  • 帐号支持:内置的华为云帐号支持,登录后即可浏览华为云上资源;
  • 主机列表:按照分区次序,列表华为云上绑定EIP的主机,无需切换查找;
  • 主机一键连接:无需记忆IP,双击列表上的主机即可登录,快速远程访问;
  • 远程文件系统:如同本地文件系统般,将远程主机上的文件系统在工具中展示,操作方便;
  • 跨主机文件操作:提供实用的跨越主机的文件操作,如复制、粘贴、剪切和文件内容对比等操作;
  • 会话管理:对已建立连接主机的多个会话集中管理,下次打开远程文件系统或执行命令时可以一键访问。

CodeArts IDE 在 DevOps 方面为企业管理者、项目经理、团队领导和开发者提供了全面的研发效能度量能力,涵盖交付质量、交付效率、交付能力、交付成本和交付价值等方面。同时,它集成了华为先进的方法论和优秀实践,帮助企业实现数字化转型和数据驱动的运营及治理,提升企业软件能力的可信度和研发效能。

CodeArts 在设计与体验上追求极致的用户体验,提供了常见的开发工具功能,如语法高亮、括号匹配、自动缩进、选择框和代码片段等,以帮助开发者高效地完成工作,提高开发体验和代码编写效率。此外,它还支持切换深色和浅色两种主题颜色以及中英文显示语言,以满足用户的个人喜好和需求。未来,CodeArts 将推出更多的自定义功能,使开发者能够根据自己的偏好和工作需求进行个性化的设置和定制,进一步提升用户体验和工作效率。流畅舒适的页面使用和令人愉悦的色彩也可以提升用户体验,让开发者在使用该 IDE 时感到更加舒适和愉快。

二 鲲鹏DevKit插件全新升级

鲲鹏开发套件 DevKit 是一个开发者中心的工具,涵盖了代码开发、编译调试、云端测试、性能分析和系统诊断等环节,旨在方便开发者快速开发与鲲鹏兼容的高性能软件,加速应用迁移和算力升级。它针对全研发作业流程进行优化,提升应用迁移和调优的效率,加速原生开发过程。鲲鹏开发套件 DevKit 以开发者为核心,旨在提升全流程开发效率,为开发者提供更好的开发工具和支持。


基于鲲鹏平台的原生开发,需要经过学习、编码、编译、调试、测试和性能调优等阶段,以实现与鲲鹏架构的无缝互动,确保代码在鲲鹏平台上正常运行并充分发挥性能优势。然而,在这个过程中,缺乏相关工具链的支持可能会导致各个阶段遇到困难,如缺乏架构学习指导、开发框架变动、缺乏开发 SDK 实践以及缺乏本地物理机测试环境等。为了解决这些问题,提供免费的评测环境和监控测试工具,以及系统性的性能分析采集工具,将极大地简化开发者的工作并提高开发效率。

软件迁移是将软件从一个平台或架构迁移到另一个平台或架构的过程。在没有工具链的情况下进行软件迁移可能会面临一些挑战,例如技术可行性评估、迁移工作、功能保证和性能调优等。

开发者需要评估目标平台的兼容性,并进行代码迁移和调整配置以适应目标平台。他们还需要确保软件在新平台上正常运行,并具备所需的功能。此外,还需要进行性能优化,以充分利用目标平台的性能优势。

在缺乏工具链的情况下,开发者需要具备相关的技术知识和经验,并进行充分的测试和验证,以确保迁移后的软件能够在目标平台上成功运行。

鲲鹏适配:DevKit 一站式迁移套件可以提高应用迁移的效率,DevKit 全面覆盖了开发、编译调试、测试、调优和诊断等环节,满足开发者端到端的极简开发需求。

在开发阶段,鲲鹏亲和开发框架通过提供工程管理向导、启发式编程和代码亲和检查等功能,大大提高了鲲鹏原生开发的效率。工程管理向导简化了依赖包的查找和评估过程,推荐了鲲鹏原生编译选项,并集成了鲲鹏亲和软件开发库,无需手动安装和配置。启发式编程功能推荐了鲲鹏原生加速函数,一键引入鲲鹏加速库,并智能提供相关的选项和参数。这些功能可以帮助开发者延续他们的习惯,快速上手,并快速识别和修复缺陷代码,从而更好地发挥鲲鹏架构的优势。

DevKit 提供了源码迁移功能,具有扫描快、检出全、指导精、构建易等特点。

DevKit 利用高效的扫描算法,能够快速扫描源代码,并识别出需要进行迁移的部分。它能够全面检出源代码中的迁移需求,包括平台相关的函数调用、特定编译选项和库的使用等。DevKit 提供准确且精细的迁移指导,以帮助开发者完成源代码的迁移工作。它可以识别潜在的问题和障碍,并给出具体的解决方案和建议。此外,DevKit 还提供了简化和自动化的构建工具和流程,为源代码迁移提供了方便。它能够自动生成构建脚本和配置文件,简化构建过程,减少迁移的复杂性。DevKit 还提供了软件包重构和专项软件迁移功能,以帮助开发者更好地进行软件迁移。软件包重构功能可以帮助开发者对源代码进行重构,以适应目标平台的要求。专项软件迁移功能则提供了针对特定场景和需求的迁移支持,例如跨操作系统迁移、跨编程语言迁移等。

最后,DevKit 提供了鲲鹏亲和分析功能,可以对迁移后的软件进行分析和评估,以确定其与鲲鹏架构的兼容性和性能优化的潜力。这有助于开发者进一步优化迁移后的软件,发挥鲲鹏架构的优势。DevKit 提供了丰富的功能和工具,支持源代码迁移、软件包重构和专项软件迁移,并提供鲲鹏亲和分析,帮助开发者顺利完成软件迁移工作。

利用迁移分析、应用迁移、测试于验证三个步骤完成软件迁移全流程。

编译型语言如C、C++和Go等,其代码需要经过编译器的编译过程,将源代码转换为目标平台的机器代码,然后才能在该平台上运行。当从一个处理器架构(如x86)迁移到另一个处理器架构(如鲲鹏)时,编译型语言开发的程序通常需要重新编译,以适应新的处理器架构。这是因为不同的处理器架构具有不同的指令集和硬件特性,因此生成的机器代码也是特定于处理器的。重新编译的过程会将源代码重新编译为适用于鲲鹏处理器的机器代码,以确保程序能够在新的处理器架构上正确运行。这样做可以充分利用新架构的优势和特性,并确保程序在新平台上的性能和功能与在原平台上的一致性。


在源码迁移场景中,支持汇编代码自动识别,一键替换迁移,一分钟完成汇编代码的迁移。x86汇编常用指令100%识别,1000+指令自动翻译,覆盖80%的常用应用场景。

python 代码迁移:含 C 模块或全 C 模块的迁,检查用户提供的软件安装包,识别依赖关系,并提供鲲鹏兼容版本的 SO 依赖库对应 rpm 的包 OS 发行版官方下载链接。检查用户在 x86 服务器上已安装的软件,识别依赖关系,并提供鲲鹏兼容版本的 SO 依赖库对应 rpm 的包 OS 发行版官方下载链接。


Porting advisor 工具实现了自动扫描,自动从鲲鹏 Maven 仓下载 jar 包,并自动打包,工具扫描 x86 RPM 识别 x86 依赖文件,编译、打包、验证完成软件包迁移全流程。

软件评估让开发者在迁移前就可以清楚工作量,以此合理的安排计划。源代码迁移支持了绝大多数的操作系统和编程语言。软件包重构可以一键重建 jar 包和 RPM 包。而专项迁移则可以对常见的开源软件一键编译构建,大大减少了工作量。提供用户源码分析、修改指导和软件包重构,以适应鲲鹏平台的需求和硬件依赖关系,确保源码能够在新平台上正确运行并最大程度地优化性能。

二进制动态指令翻译软件ExaGear,能够在运行时将x86应用的指令翻译成ARM指令,使得大部分Linux x86-64应用无需重新编译即可运行在ARM64服务器上,从而屏蔽底层平台差异,低成本解决应用的平滑迁移,释放鲲鹏平台澎湃算力。

三 总结

华为云CodeArts IDE与鲲鹏DevKit插件的联合升级为开发者带来了全新的开发体验,通过优化开发工具、提供高效环境,全流程开发效率大幅提升。开发者能享受快速、智能的代码编辑、调试和部署,充分利用鲲鹏DevKit插件的适配能力,实现与鲲鹏服务器无缝集成。这升级不仅提高开发效率,也带来高质量项目交付,助力应对复杂开发挑战。




本文参与华为云社区【内容共创】活动第25期

任务5:华为云CodeArts IDE&鲲鹏DevKit插件联合升级新体验,全流程开发效率提升!



【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。