[DTK] 软件生态想要快速建立,C/C++编程必须规范,逐渐消除指针的影子
Tofloor
poster avatar
deepin
2023-07-08 01:47
Author

前言

毋庸质疑,目前来看开发deepin/UOS中的高性能软件仍是C++编程语言,但是C++编程语言对于其他编程语言开发者(Java、pytho*)来讲学习确实挺耗时间,而且指针、动态内存分配等相关内容比较多、细节也比较多,开发的难度自然就会上升。

关于C++编程的使用和建议

1.Deepin/UOS官方,需要针对C++确定一个大多数人能够正常使用的版本,针对其版本去砍掉一些不是很重要的特性和内容,并提供相关C++开发文档

2.根据规范后的C++编程文档,在deepin/UOS系统中进行更多测试,让内存的调用情况在用户电脑上进行更多测试进行最终的调优;

3.测试稳定的C++代码,可进行库的重新封装,让Linux deepin的依赖也能完善;

4.通过C++源码库的重新封装成源码库,强制让deepin/UOS的开发者进行调用;

5.由于DTK开发套件是基于QT开发,而Qt的代码大量使用了C++面向对象的代码结构,我们需要减少软件开发者对指针变量的使用。比如C++11版就增加了智能指针uinque_ptrshared_ptrweak_ptr,这些指针都是类指针,减少了指针变量的使用。

6.除了使用智能指针、函数库等方式减少指针变量的使用外,IDE代码编辑器-Qt Creator也可以帮助代码中的指针符号的快捷自动生成实现。

比如代码中我们可以手动输入:

include 

int main(){
   //整型普通变量a
   int a = 3;
   //整型指针变量*b
   int *b = &a;
}

那么,在Qt Creator中其代码可自动补充、提示添加“*”和“&”这两种符号,并根据其函数作用域自动检测其指针使用的过程是否正确、合理,让C++程序员们能够逐渐忘掉指针的烦恼。

........

除了在软件领域对其C++语法的规范和简洁化外,硬件驱动程序也可引导其规范,让C++、QT的使用更加面向对象

Reply Favorite View the author
All Replies
2 / 2
To page
deepin
2023-07-08 19:38
#21
北冥夜未央

取其糟粕,去其精华?没有指针的C++,和咸鱼有什么区别

指针,对于国内很多程序员来讲,有点原始,是上一个时代的产物。

Reply View the author
deepin
2023-07-08 19:40
#22
乾豫恒益

面对对象,很好的功能,开发简便了许多,确实在快速建立生态系统时,做出巨大的贡献。

不过缺点也是非常明显的,(如果是随便的小开发玩玩,就不用讨论这个话题了):

1 底层逻辑更新时间长,甚至超过10年,一旦有小问题没处理,这个问题就会一直存在;本着能运行就不改的原则,后来的程序人员根本就不敢动。

2 基础的API越来越大,好多的功能已经不再使用了,但编译的时候,每次都要编进来,让最终的文件越来越大,好多时候,大的没有意义。

3 大量的重复对象封装,继承,修改,再继承,最后的局面是忘却了原来的对象是个什么样子。一旦无法运行了,查找与修改,那工作量,实在是酸爽。

个人感觉,指针是个好东西,可以让头脑清醒一些,不要无脑的相信现有API能够正确处理你遇上的所有情况。

可是,现在很多新出比较火的编程语言都不再强调指针的使用,反而强调数据结构和算法。

Reply View the author
乾豫恒益
deepin
2023-07-08 23:29
#23

可是,现在很多新出比较火的编程语言都不再强调指针的使用,反而强调数据结构和算法。

看看基础的数学算法,指针是必须的,而且还是比较简捷的。

算法越显得高级,离底层的操作越远,出了问题,越是无从下手。

大型工程项目,一旦出了问题,大多的解决方法是重写部分的代码或是API函数,甚至整个模块。

当然,我不排斥对象操作,理由简单:方便。

但同时也不爽对象模式,理由也简单:对象就是一个黑箱,有时不知道完成者都的是什么逻辑,因为见识过一些神逻辑。

这个世界啊,无奈又欣喜... ...

Reply View the author
deepin
2023-07-09 09:43
#24
乾豫恒益

看看基础的数学算法,指针是必须的,而且还是比较简捷的。

算法越显得高级,离底层的操作越远,出了问题,越是无从下手。

大型工程项目,一旦出了问题,大多的解决方法是重写部分的代码或是API函数,甚至整个模块。

当然,我不排斥对象操作,理由简单:方便。

但同时也不爽对象模式,理由也简单:对象就是一个黑箱,有时不知道完成者都的是什么逻辑,因为见识过一些神逻辑。

这个世界啊,无奈又欣喜... ...

现在C++指针,已经被一些不知所云的人搞出很多“莫须有”的概念,让入门者无从下手。

Reply View the author
2 / 2
To page