带你读《2022技术人的百宝黑皮书》——19条跨端cpp开发有效经验总结(5)

简介: 带你读《2022技术人的百宝黑皮书》——19条跨端cpp开发有效经验总结(5)

带你读《2022技术人的百宝黑皮书》——19条跨端cpp开发有效经验总结(4)https://developer.aliyun.com/article/1340926?groupCode=taobaotech


关于编译器

 

跨端开发势必要了解多种平台下的编译器,这里面主要代表是clang、ms(也成vs)、gcc等等,编译器的主要区 别,这里不做主要的介绍了,可以去google下clang的前世今生,以及几种编译器的区别,和对应的使用平台。

 

clang作为一款飞速发展的编译器,除了编译速度有飞速的提升外,错误提示也非常明确,这里强烈建议跨端开发者,如果有可能优先进行clang作为主要的默认编译器进行开发,良好的错误提示将提高极大的效率,同时clang的代码检查将更为严格和规范,这也利于代码进行跨平台编译。

 

 

 

这里再再插一句,之前在知乎上看过一篇文章对比各种编译器,在比较clang与gcc时,排在第一次位的不是我们通常说的编译速度和错误提示以及更小的编译产物(这些都是普遍知道的),是   license,gcc的GPL的限制让BSD 许可下的以LLVM为代表的飞速发展,如果不是这个限制相信今天以LLVM为代表的的一系列编译器都是属于gcc。

 

所以“做技术的同学不要以为技术牛就可以打天下,精准的市场地位有时候可以解决很多问题”, 这句话说的还挺好的,与君共勉。

 

关于转换层

 

如果做跨模块开发,请坚守一个原则,转换层不要做任何业务代码逻辑以及特殊定向代码逻辑。

 

转换层也成语言胶水层,是c++到oc, c++到java,以及其他,彼此相互语言转换的代码层。

 

通常wrapper坚守原则后,维护性会得到大幅度提升,专注于c++代码的即可,对于语言转换层,业界也有不少自动化转译的工具,诸如Djinni。

 

结束

 

在通往跨端开发的路上,我渐渐的从一个小白到逐渐羽翼丰满,除了要感谢团队给的机会外,非常感谢这一路上很多同学、特别是跨部们的同学帮助,感谢,比心~

 

另外团队目前也在搞基于跨桌面端的研发框架支撑相关工作,也会很快出炉,敬请期待。

 

最后回归主题,跨端cpp开发闭坑指南远不止这些,欢迎一起补充添加。鸣谢。

 

团队介绍

 

我们是淘系技术部终端体验平台跨终端团队,业务上负责为千万级商家打造最高效的一站式工作台千牛,为淘宝上亿商家和消费者提供稳定高效的端到端消息IM服务;技术上深耕C++跨终端及PC桌面端技术(Win - dows&Mac),为商家,消费者提供稳定,可靠,高效的客户端产品。欢迎志同道合的小伙伴,毛遂自荐,团队欢  迎你,简历投递邮箱:wdw159603@alibaba-inc.com

相关文章
|
Linux
一个进程最多可以创建多少个线程基本分析
一个进程最多可以创建多少个线程基本分析
877 1
|
Kotlin
kotlin协程withContext的使用
kotlin协程withContext的使用
601 0
|
9月前
|
设计模式 Prometheus 监控
并发设计模式实战系列(20):扇出/扇入模式(Fan-Out/Fan-In)(完结篇)
🌟 大家好,我是摘星!🌟今天为大家带来的是并发设计模式实战系列,第二十章,废话不多说直接开始~
313 0
|
数据可视化 项目管理 UED
如何进行有效的优先级管理:6大模型解析
优先级管理看似简单,但要真正做到高效、精准,却需要方法和技巧的支撑。3分钟了解6种优先级管理方法。
1082 0
如何进行有效的优先级管理:6大模型解析
|
网络协议 算法 Linux
深度解密 TCP 三次握手与四次挥手
深度解密 TCP 三次握手与四次挥手
573 9
|
安全 调度 C++
互斥锁 vs 自旋锁:底层机制详细解析
互斥锁 vs 自旋锁:底层机制详细解析
538 1
|
机器学习/深度学习 数据采集 算法
Python实现Catboost分类模型(CatBoostClassifier算法)项目实战
Python实现Catboost分类模型(CatBoostClassifier算法)项目实战
|
存储 机器学习/深度学习 缓存
万字详解C++内存池:提高内存分配效率的利器(上)
万字详解C++内存池:提高内存分配效率的利器
万字详解C++内存池:提高内存分配效率的利器(上)
|
编译器 C++
【C++11保姆级教程】delete和default关键字
【C++11保姆级教程】delete和default关键字
850 0
|
应用服务中间件 nginx
Nginx源码阅读:nginx_shmtx共享互斥锁(进程锁)
Nginx源码阅读:nginx_shmtx共享互斥锁(进程锁)
317 0