[DTK] 界面模版,对于代码编辑器IDE的重要作用,让开发者写代码更轻松
Tofloor
poster avatar
deepin
2023-04-08 02:47
Author

在上一篇贴子《deepin软件开发者,不要急于短时间内开发完整软件,界面模版先行》中,我针对deepin新出的控件库DtkDeclarative,提倡让前端开发者和设计者先做界面模版,以促进DtkDeclarative这个控件库在bug上的快速不断完善。

同时,控件库DtkDeclarative实现的优秀界面模版,也可以把重要的UI代码内容加入到新的代码编辑器IDE中,为开发者减少代码量。

软件IDE的现状

以安卓应用开发的代码编辑器Android studio和鸿蒙应用开发的代码编辑器DevEco Studio为例,它们在代码编辑器创建项目时,只是提供了最简陋的首页,但是现实很多APP的首页UI界面模版差不多,交互操作逻辑也大致相似。

6149da5e6f4392f08083eafb4b4b3146.jpg

image.png

我们再看一下国内一些常用APP的首页界面,都有底部的菜单dock栏,首页的操作基本一致。但是很多IDE在创建项目之后,这些菜单dock栏的实现都需要程序员去重新实现一遍,我就感觉比较浪费时间,还不如在创建项目之后,直接加载菜单dock栏内容。

image.png

从上图可以看到,移动应用开发的首页,其功能交互方式都一样,都有菜单dock栏,这也让代码编辑器在创建项目时其首页也必须要有像菜单dock栏的界面模版内容,让开发者可以减少这部分的代码量和重复工作。

deepin的代码编辑器IDE,也需要丰富的模版

针对移动应用开发的IDE现况,实际上电脑端桌面应用开发,也有相同类似情况。

就拿图片处理的Adobe全家桶之一photoshop和工程制图的AutoCad,它们的界面首页的UI布局也高度相似,我们可以看一下下面的图片。

image.png

image.png

对比下这两张图片信息,我们可以知道Photoshop和AutoCad,在首页都有顶部菜单栏顶部工具栏左侧工具集中间绘图区、右侧图层、底部其它设置等等,这种界面风格很适合设计软件开发。

当然,行业不同,软件界面的首页风格也会有所差异,但是软件界面再怎么变,我们熟悉易用的界面模版也是有限的,并不是繁杂且数量非常多。

结语

不管是C++还是QML开发项目,模版的案例提供肯定是非常有用的,它不止促进控件库的改善,也促进IDE的项目首页UI的成熟使用,界面模版也让程序员减少很多不必要的工作和重复开发。

Reply Favorite View the author
All Replies
把一切操作变成GUI
deepin
Backbone of ecological co-construction group
2023-04-08 06:42
#1

这个提议很好,加快了开发者的开发效率。

但是QML......

Reply View the author
DebuggerX
deepin
2023-04-08 06:48
#2

资深开发表示,正经开发谁用模板←_←

Reply View the author
deepin
2023-04-08 06:56
#3
把一切操作变成GUI

这个提议很好,加快了开发者的开发效率。

但是QML......

QML后期肯定会继续优化.模版的大量开发和设计,实际上也在直接促进QML的进一步优化。

Reply View the author
deepin
2023-04-08 06:58
#4
DebuggerX

资深开发表示,正经开发谁用模板←_←

joy

,国内程序员都是【C+V】程序员,别指望有更多创新,能帮他们节省工作量就节省工作量。

Reply View the author
DebuggerX
deepin
2023-04-08 07:16
#5

joy

,国内程序员都是【C+V】程序员,别指望有更多创新,能帮他们节省工作量就节省工作量。

CV更不会用模板,因为不知道怎么基于模板改成需要的样子。模板几乎只有初学者尝鲜会用用。

建议不要一知半解的情况下就提很多的建议,先多提升自己。

Reply View the author
deepin
2023-04-08 07:29
#6
DebuggerX

CV更不会用模板,因为不知道怎么基于模板改成需要的样子。模板几乎只有初学者尝鲜会用用。

建议不要一知半解的情况下就提很多的建议,先多提升自己。

CV用模版多的去了,你让其他程序员重写界面,完全是折腾。

Reply View the author
fuuko
deepin
2023-04-08 16:24
#7
把一切操作变成GUI

这个提议很好,加快了开发者的开发效率。

但是QML......

其实没有问题,他举的例子都是基于手机的,纯触摸屏设备用QML问题不大ok

但deepin是桌面OS啊,全面铺开QML只会变得更卡joy

Reply View the author
deepin
2023-04-08 19:32
#8
fuuko

其实没有问题,他举的例子都是基于手机的,纯触摸屏设备用QML问题不大ok

但deepin是桌面OS啊,全面铺开QML只会变得更卡joy

qml会不断进行优化。

Reply View the author
fuuko
deepin
2023-04-09 01:14
#9

qml会不断进行优化。

对对对,加油优化,赶在全论坛的坛友都跑路前优化好joy

Reply View the author
deepin
2023-04-11 19:44
#10

这不就是面向对象开发的逻辑嘛,比如VB类、国产的易语言都是这个逻辑,把常用的窗体、控件、动态链接库、系统api提前封装,需要时直接绘制或者调用就行了,开发门槛一下子降低一大半。

Reply View the author
deepin
2023-04-12 05:13
#11

这不就是面向对象开发的逻辑嘛,比如VB类、国产的易语言都是这个逻辑,把常用的窗体、控件、动态链接库、系统api提前封装,需要时直接绘制或者调用就行了,开发门槛一下子降低一大半。

软件开发的整体趋势都是这样,C/C++系统级编程语言相关的代码都会被封装为源码底层库。

Reply View the author