摘要:华为云CodeArts IDE for C/C++正式上线,欢迎体验。

本文分享自华为云社区《“古老”编程语言的最新选择!华为云发布CodeArts IDE for C/C++》,作者:华为云头条 。

C语言是一种“古老”且应用至今的高级编程语言,它是多种流行编程语言的根源。C++进一步扩充和完善了C语言,是一种面向对象的程序设计语言,可运行于多种平台上。今天,C/C++语言仍然活跃在嵌入式软件、操作系统、高性能引擎、游戏、数据库等诸多业务领域。

高级语言开发离不开集成开发环境(IDE)的支持,从支持高级语言的编辑器、符号解析、编译器以及支持高质量编码的代码检查,再到支持运行测试的中间件和数据库,以及支持高效率研发的DevOps工具链,IDE工具将个人开发作业流中所需要的众多能力汇聚在一个工具中,让开发者无需切换工具即可完成日常开发工作。

华为云CodeArts IDE定位华为云开发者桌面,是华为云面向开发者提供的一款智能化桌面集成开发环境,它提供了开发语言和调试服务,支持从插件市场安装插件来扩展能力,帮助开发者获得更好的用云体验和更快捷的云应用开发能力。

近日,华为云发布CodeArts IDE for C/C++,将华为公司的C/C++语言服务集成于CodeArts IDE内核基座,并将良好的C/C++编码体验、方便的访问华为云资源、简单的引用华为云服务、快捷的使用华为云DevSecOps服务等众多能力汇聚于一身,实现C/C++开发者在个人研发作业体验和效率上的巨大提升。

开发工具的四条“秘籍”

华为公司自上世纪90年代起即投入软件研发,历经嵌入式软件开发、企业化软件开发、服务化应用开发和云服务开发等多种不同研发形态。

为支持研发效率提升,保证供应链安全,研发团队使用的开发工具从文本编辑器,到图形化的开发工具,再到支持多语言和可扩展的集成开发环境(IDE),并逐步进化成支持多语言框架、集成开发者作业流和支持横向能力扩展的Desktop IDE和Web IDE,满足了多业务平台的复杂开发要求。

在这个过程中,华为总结出开发工具的四条“秘籍”:

掌握技术内核探索新的工具形态满足业务需要

面对复杂业务场景中开发者对工具规模和执行效率的不同要求,将IDE内核优化成若干运行模式,比如对于相对简单的业务场景使用“精简模式”,而面向复杂的业务场景使用“全量模式”。同一个技术内核可以按照业务需要升级增配,而不需要维护多个代码分支,既降低了用户使用门槛,也节约了工具的维护成本。

吃透语言服务给开发者提供最佳的编码体验

针对C/C++语言,首先提升了超大项目(千万级代码工程)加载效率,开发者可以缩短加载等待时间;其次提升代码的构建速度,通过复用符号文件可以将大项目的解析时间缩短到5分钟以内;然后为开发者提供多种视图、多种主题配色方案、调用关系分析等能力,提升代码理解速度;同时还为开发者提供了基于语法的多种重构能力。多重能力组合之下,C/C++开发效率极大提升。

积极发展生态以扩展能力方式支持开发作业流

华为设立了与业界最大规模插件生态市场相兼容的插件标准,基于开发者作业流交付大量在IDE中使用的业务插件;同时成立了辅导团队开发者的官方组织,建立了内置于IDE内的独立插件市场。这些举措能够帮助开发者在一个IDE工具内即可流畅完成个人开发作业流,补齐组织内开发人员技能差异,提升开发者研发效率。

加速知识更新充分利用研发积累解决新的业务问题

开发者面对新的业务问题,需要大量编码及测试。传统C/C++开发者几乎和云计算没有交集,但IDE中集成的云平台能力可以帮助开发者将传统研发资产适配并迁移上云,也可以方便获取关于云开发的各类知识。

“古老”编程语言的最新选择

华为云CodeArts IDE for C/C++支持从精简模式一键升级为一个功能齐备、开箱即用、体验优质的开发平台,内置C/C++语言服务,支持不同配色切换和中英文显示,深度集成华为云各项能力,支持内置插件市场和更具兼容性的插件标准,支持基于插件的能力扩展和对接华为云软件开发生产线(DevSecOps平台)。

面对当前开发现代化应用的需要,华为云CodeArts IDE for C/C++产品提供了以下新特性:

特性一:先进架构从精简模式一键升级全模式

华为云CodeArts IDE支持精简模式,比如使用精简模式封装的RemoteShell,可以方便的浏览和访问华为云ECS和CCE资源,是云资源运维的好帮手。

开发者利用一键升级功能,可以把精简专用工具原地升级为全功能软件开发环境(IDE),升级后不但保留原有工具中的资源访问能力,还可从内置插件市场中安装插件实现开发语言支持和其他能力扩展,为应用开发者提供了更好体验的编码开发平台。

特性二:语言服务优秀C++开发体验开箱即得

华为云CodeArts IDE内置的C++语言服务,支持一键加载CMake工程并自动解析,可创建基于CMake的C++工程框架代码;

提供两种专属语法配色,深色和浅色可以自主调配,深色更符合用眼舒适要求,浅色更贴近传统阅读习惯;

支持三种代码解析模式,Tag模式可以基于词法解析生效更快速,Compiler模式可以基于语义解析结果更准确,Hybrid模式则相当于自适应选择;

提供十九种代码重构功能,从常用的重命名、提取函数,到switch自动填充及代码快速修复,帮助开发者提高代码的可重用性和可维护性;

支持千万规模代码C/C++工程,面对超大规模项目加载和符号解析速度实现倍增;超大型项目代码符号解析精度高达99%,领先业界水平。

特性三:连接华为云快速完成基于API的应用开发

华为云CodeArts IDE内置华为云API开发套件,提供华为云200个服务和8000+服务API的搜索和引用。

在IDE中不但可以看到API的定义、参数、返回码等信息,还可以完成云上API的真实调用并查看输入输出信息。开发者在编码时可以通过关键字搜索到对应的云服务API,一键式补全调用API的样例代码,无需在多个工具和文档中反复切换,帮助开发者获得快捷、高效的华为云开发体验,缩短开发华为云应用的周期。

特性四:插件扩展利用插件市场扩充开发能力

华为云CodeArts IDE支持插件扩展,提供的开放插件标准兼容业界生态规模最大的IDE开放插件标准。插件开发者可以针对特定业务领域需要,在华为云CodeArts插件市场注册发布商,并将所开发的插件发布到插件市场,方便其他应用开发者在IDE中使用。

华为云CodeArts IDE内置对接华为云CodeArts插件市场,开发者也可以根据需要查找、浏览、安装或卸载插件,通过安装插件来扩充IDE所适配的业务场景,把华为云CodeArts IDE变成开发者的“个人桌面”。

目前,华为云CodeArts插件市场已经上架了华为的多款插件,覆盖华为云API使用、华为云资源访问、开发者技术支持、DevOps平台等多种能力,在不久的将来,会有更多插件与开发者见面。

华为云CodeArts IDE for C/C++在华为公司内部的华为云、终端消费者云、海思、数据通信、无线网络、智能汽车等众多业务部门得到广泛应用,超过15万开发者基于IDE完成日常开发工作,包括:工作项管理、代码导入、知识获取、编码调试、检视提交、流水线执行等,构建众多业务应用和行业解决方案。

在面向5000万规模代码工程的实际使用中,相对于竞品实现工程加载速度3倍提升,符号索引创建速度5倍提升,符号跳转精度和阅读体验均优于竞品。同时,对已有代码库和构建工具(CMake)的良好支持,让C/C++开发者在开发体验不降级的条件下,可以流畅的从原有开发工具切换到华为云CodeArts IDE for C/C++。

为开发者提供端云一体、极致体验、功能强大、生态开放的IDE开发工具是华为云CodeArts产品团队的一贯理念。未来,华为云将在开发工具领域持续创新,提供技术自主、功能更强、体验更好的IDE工具,持续为开发者提供优质服务。

点击关注,第一时间了解华为云新鲜技术~

“古老”编程语言的最新选择!华为云发布CodeArts IDE for C/C++的更多相关文章

  1. 产品质量管理利器,华为云发布CodeArts Defect缺陷管理服务

    摘要:近日,华为云CodeArts Defect缺陷管理服务正式上线,提供结构化缺陷跟踪流程和标准化的质量度量模型. 本文分享自华为云社区<产品质量管理利器,华为云发布CodeArts Defe ...

  2. 华为云发布冷启动加速解决方案:助力Serverless计算速度提升90%+

    摘要:本文介绍了华为云对冷启动优化这一业界难题的探索之路,创新提出了基于进程级快照的优化方案. 作者信息-- 子游:华为元戎高级工程师 平山:华为云中间件 Serverless 负责人 琪君:华为元戎 ...

  3. 华为云发布分布式编译构建系统CodeArts Build

    摘要:2月14日,华为云发布分布式编译构建系统CodeArts Build,旨在支撑企业实现高效的软件开发,缩短产品上市周期,帮助企业的软件产品快速形成关键竞争力. 本文分享自华为云社区<唯快不 ...

  4. 华为云发布桌面IDE-CodeArts

    摘要:华为伙伴暨开发者大会2022,发布华为云桌面IDE-CodeArts. 本文分享自华为云社区<华为云发布桌面IDE-CodeArts,让连接更简单.编码更智能>,作者: Huawei ...

  5. Forrester:华为云容器是容器混合云最佳选择

    近日,国际权威咨询机构Forrester发布<The Forrester New WaveTM: Public Cloud Enterprise Container Platforms, Q3 ...

  6. OpenCV图像识别初探-50行代码教机器玩2D游戏【华为云技术分享】

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...

  7. 华为云CodeArts Artifact,5大特性守护制品质量与安全

    摘要:2023年2月23日,华为云CodeArts Artifact制品仓库服务正式上线,目标进一步赋能企业伙伴与开发者,实现软件作业中可信制品生产与应用活动快速落地,提高软件交付效率与质量. 本文分 ...

  8. 不服跑个分:ARM鲲鹏云服务器实战评测——华为云鲲鹏KC1实例 vs. 阿里云G5实例【华为云技术分享】

    原文链接:https://m.ithome.com/html/444828.htm 今年一月份,华为正式发布了鲲鹏920数据中心高性能处理器,该处理器兼容ARM架构,采用7纳米制造,最高支持64核,主 ...

  9. 一图读懂基于鲲鹏处理器的全栈混合云华为云Stack6.5

    [摘要] 够料的全栈混合云干货信息,速戳! 近日,在2019华为云城市峰会广州站上,华为云发布基于鲲鹏处理器的全栈混合云解决方案HCS 6.5.x86+鲲鹏,双驱动开启云上新架构;云上+本地,双平台无 ...

  10. [转帖]华为鲲鹏云服务器实战:华为云鲲鹏KC1实例 vs. 阿里云G5实例

    鲲鹏云服务器实战:华为云鲲鹏KC1实例 vs. 阿里云G5实例 https://m.ithome.com/html/444828.htm 2019-09-12 15:25IT之家 (阿迷) 今年一月份 ...

随机推荐

  1. 对比 elasticsearch 和 mysql

    最近阅读了elasticsearch的官方文档,学习了它的很多特性,发现elasticsearch和mysql有很多地方类似,也有很多地方不同.这里做一个对比,帮助大家加深对elasticsearch ...

  2. CentOS7环境下数据库运维---主从复制、读写分离

    1.理解MySQL主从复制原理 主服务器开启binlog日志,从库生成log dump线程,将binlog日志传给从库I/O线程,从库生成俩个线程,一个是I/O线程,一个是SQL线程,I/O线程去请主 ...

  3. 分享一个修改了xml文件再也不用重启的项目mybatis-xmlreload

    自我18年使用 Mybaits 以来,开发环境中如果修改了 xml 文件后,只有重启项目才能生效,如果小项目重启还好,但是对于一个重启需要十几分钟的大型项目来说,这就非常耗时了.开发人员因为修改了xm ...

  4. go微服务框架kratos学习笔记三(构建单独的http或者grpc demo项目)

    go微服务框架kratos学习笔记三(构建单独的http或者grpc demo项目) 前面两篇跑通了demo项目,和大概了解了kratos demo整体结构,本篇分别构建一个http和一个grpc微服 ...

  5. [Linux]常用命令之【hostname】

    1: 个人的片面理解: hostname是主机名(的"昵称"),而非域名.一般设置hostname,来标识当前机器的主要用途.以区别与其它机器 2: hostname的严格定义: ...

  6. LeeCode 动态规划(三)

    完全背包问题 题目描述 有 n 件物品和容量为 w 的背包,给你两个数组 weights 和 values,分别表示第 i 件物品的重量和价值,每件物品可以放入多次,求解将哪些物品装入背包可使得物品价 ...

  7. Solon2 的通讯服务线程配置

    Solon 框架,关于通讯服务的所有配置 #服务端口(默认为8080) server.port: 8080 #服务主机(ip) server.host: "0.0.0.0" #服务 ...

  8. 使用laravel开发微信公众的一个大坑,适合新手学习的laravel接入微信接口

    最近使用laravel做微信公众号二次开发,发现网上能够参考的资料基本上很少,很多地方都讲的不够详细,致使许多新手采坑无数,所以这篇文章讲一下如何使用laravel接入微信接口,实现微信公众号二次开发 ...

  9. Solon2 常用注解之 @ProxyComponent 用法说明

    在 Solon 提倡"克制"的原则下,托管组件分为: 普通组件 代理组件(即 @ProxyComponent 注解的类).代理的细节可以看下<动态代理的本质> . 之所 ...

  10. ARM Cortex-M4|非常好用的一种串口收发方式

    在这里分享项目中我经常使用的一种串口收发方式:阻塞发送 + 接收中断 +空闲中断 + 环形队列 项目代码地址:www.baidu.com 一.简介 串口发送使用最简单的阻塞发送方式,一般来说都是接收的 ...