百度程序员常用开发工具

Posted 百度开发者中心

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了百度程序员常用开发工具相关的知识,希望对你有一定的参考价值。

工欲善其事必先利其器,一个优秀的程序员除了代码写得好,善于利用各种开发工具同样可以事半功倍。 本文涉及工具大部分为开源项目,大家可以按需选用。   

主打C++平台下的高性能RPC框架baidu-rpc
baidu-rpc (简称 brpc) 是一款主打 C++ 平台下的高性能 RPC 框架,它上手简单,扩展性上限又很高,同时还具备完善的运维和调试接口。目的是构建一套百度内统一的 RPC 框架,那么灵活的扩展性就是最基础的需求。Baidu-rpc 在实现过程中非常注重机制与策略分离,支持了百度内使用的大部分 RPC 协议,方便无缝迁移业务到 baidu-rpc。除了协议之外,将名字服务、负载均衡和认证也采用了具体 policy 实现,比如 bns 名字服务、rr 负载均衡。
使用场景:
  • 搭建能被百度内所有协议访问的服务,包括但不限于:标准协议,hulu-pbrpc,sofa-pbrpc,nova-pbrpc,public-pbrpc,ubrpc 和所有使用 nshead 的协议,http 和 https, 其中 json 可自动转化为 protobuf 消息;

  • 访问百度内所有的服务,包括但不限于:标准协议,hulu-pbrpc,sofa-pbrpc,nova-pbrpc,public-pbrpc,ubrpc(包括 idl 或裸用 mcpack/compack),http(baidu::rpc::Channel 可以代替 curl);

  • 通过 HTTP 调试服务,或用 pprof 在线采样服务的性能;

  • 获得更好的延时和吞吐。

开源地址:
https://github.com/apache/incubator-brpc


高度个性化定制的数据可视化图表Echarts
ECharts 是一个纯 javascript 的图表库,兼容当前绝大部分浏览器(IE6/7/8/9/10/11,chrome,firefox,Safari 等),底层依赖轻量级的 Canvas 类库 ZRender ,提供直观生动、可交互、可高度个性化定制的数据可视化图表。从而增强用户对数据进行挖掘和整合的能力,揭示出隐藏在数据背后的价值。
使用场景:
  • 使用 Canvas 或者 SVG 渲染;

  • 在图表中支持无障碍访问;

  • 使用 ECharts GL 实现基础的三维可视化;

  • 在微信小程序中使用 ECharts;

  • 多种数据格式无需转换直接使用。

官网地址:
https://echarts.apache.org
开源地址:
https://github.com/apache/incubator-echarts


深度学习平台飞桨(PaddlePaddle)
飞桨(PaddlePaddle)是百度自主研发、集深度学习训练和预测框架、模型库、工具组件、服务平台等为一体的开源深度学习平台。目前 PaddlePaddle 开源了 60 多个经过真实业务场景验证的官方模型,涵盖视觉、NLP、语音和推荐等 AI 核心技术领域。
使用场景:
  • 研究新的 AI 算法等深度学习技术;

  • 利用深度学习技术解决业务问题,例如百度地图的精准时间预估,百度 Feed 的视频完全自动分类,中国科学院遥感与数字地球研究所的基于遥感影像的目标地物检测,领邦智能的快速完成不同零件质检的业务落地,北京林业大学的 AI 识虫达到专业人士识别准确率且检测周期从两周缩短至一个小时等等;

  • 学习提升。

使用指南:
http://paddlepaddle.org/documentation/docs/zh/1.4/user_guides/index_cn.html?from=paddlenav
API 文档:
http://paddlepaddle.org/documentation/docs/zh/1.4/api_cn/index_cn.html?from=paddlenav
开源地址:
https://github.com/PaddlePaddle


基于json生成MIS页面的前端工具amis
amis 是百度 2019 年 4 月开源的一款基于 json 生成 MIS 页面的前端工具,目前已用于内部 amis 平台,结合可视化工具及后端服务,大大缩减了各类管理系统的开发成本,目前平台内部已累计创建了 1.4w+ 页面,每天有 2700 人在使用。
使用场景:
  • 可快速生成各种增删改查页面,直接配置接口和需要展示的字段信息即可;

  • 要做复杂的表单验证?直接配置规则就可以;

  • 当然还集成图表功能,用来做带管理功能的报表系统也很适合。

使用教程:
https://baidu.github.io/amis/docs/getting-started
开源地址:
https://github.com/baidu/amis


MVVM的组件框架San
San 是一个 MVVM 的组件框架,它体积小巧(15K)、兼容性好(IE6)、性能卓越、使用灵活。 组件是 San 的基本单位,是独立的数据、逻辑、视图的封装单元。 从页面角度看,组件是 HTML 元素的扩展; 从功能模式角度看,组件是一个 ViewModel。 San 组件提供了完整的生命周期,与 WebComponent 的生命周期相符合。 组件间是可嵌套的树形关系,完整的支持了组件层级、组件间的通信,方便组件间的数据流转。 San 的组件机制,可以有效支撑业务开发上的组件化需求,对各种类型的 Web 应用场景都有较强的适应性。
使用场景:
  • 传统 Web 页面,部分区域需要在当前页面中响应用户操作;

  • 单页 Web 应用;

  • 基于 Node.js 的服务端渲染;

  • 同构 Web 应用。

使用教程:
https://baidu.github.io/san/tutorial/start/
开源地址:
https://github.com/baidu/san


Python语言基础库——Cup
CUP 基础库是百度开源的 Python 语言基础库,致力将业务开发从涉及底层操作、Util 操作类解放出来,进而更关注构建上层业务逻辑。 目前 CUP 已涵盖从零构建一个服务底层支持的各个方面。
使用场景:
  • 使用 CUP 辅助从 0 到 1 构建一个 Service,特别是底层结构;

  • 使用 CUP 作为 Utils 底层库协助业务代码开发。

使用教程:
http://cup.iobusy.com/
开源地址:
https://github.com/baidu/CUP


一站式DevOps解决方案百度效率云
百度效率云是由百度工程效能部自主研发的一站式 DevOps 解决方案,在百度内部每天服务 10000+ 工程师、产品经理的研发协作; 每天执行 70000+ 次的构建、30000+ 次的持续集成; 每周清扫 3000+ 的代码高危漏洞。
百度效率云包括四大平台: 专注产品和项目管理的 icafe 平台,专注代码托管和协同开发的 icode 平台,专注 CI/CD 的 ipipe 平台以及构建产物管理平台 iRepo。
使用场景:
  • 企业内部的软件研发管理,企业间项目协同;

  • 高校实验室,教学场景;

  • 云原生应用开发;

  • AI 服务应用开发;

  • 代码安全扫描、漏斗扫描。

使用教程:
文档:
https://cloud.baidu.com/doc/XLY/index.html
视频:
http://abcxueyuan.cloud.baidu.com/#/course_detail?id=14927&courseId=14927
工具地址:
https://cloud.baidu.com/product/xly.html


活动邀请


尊敬的开发者,您好,邀请您参加9月26日百度技术沙龙;请您于活动当天13:30-14:00到达武汉市东湖高新区光谷大道现代世贸中心B座12层参会~





本文作者InfoQ编辑部
点击这里阅读原文

以上是关于百度程序员常用开发工具的主要内容,如果未能解决你的问题,请参考以下文章

小程序开发,关于小程序

常用URL schemes ✨支付宝 微信腾讯百度网易银行 社交 音频 工具大集合

Qt+百度AI文字识别OCR小工具

VSTO之PowerPoint(PPT)插件开发常用API汇总

Z平台-常用JAVA工具类介绍

Z平台-常用JAVA工具类介绍