Quality checks (again)
Andras Mantia
amantia at kde.org
Mon Mar 20 15:34:32 GMT 2006
On Monday 20 March 2006 17:17, David Jarvie wrote:
> On Monday 20 Mar 2006 11:21, Andras Mantia wrote:
> >So hereby I propose some items that should be checked for KDE4
> >(libraries and applications). Naturally some of them are library
> >specific, others are application specific, but the implementation
> > can deal with this problems.
>
> The list should state which checks apply to applications and which
> apply to libraries, so that there is no room for doubt.
Here is some extra information about the checks:
1. Ported to Qt4:
Maybe call ported to Qt/KDE4. Means that all the code is completely
ported to Qt/KDE4, without using Qt3Support or KDE3Support classes.
Valid for both applications and libraries.
2. Doxygen documentation exists
Public classes and their methods are fully documented with doxygen tags.
Valid for installed libraries, but recommended for applications as
well.
3. Regression test suite exists
Automatic tests (previously make test) are written.
Valid for libraries, might be useful for some kind of applications (eg.
those having a parser).
4. Follows the coding conventions
If the module (like in case of KDE libraries) or the application has a
fixed coding convention, it should be verified that this convention is
indeed followed.
Valid for both libraries and applications.
5. Uses KIO for file access (network transparency)
If an application deals with files, it should use the KIO methods to
access them instead of QFile or system calls. There are of course
exceptions as there is no need for network transparency for a lilo
config editor.
Valid for applications.
6. Uses KConfigXT
The configuration system is based on KConfigXT instead of simple using
KConfig. This means that the possible options are described in an XML
file and there is a preprocessor tool which creates C++ code from this
XML file. It makes possible to document your options and as I
understood, your application will be automatically KIOSK aware.
Valid for applications.
7. KIOSK aware (merge with 6?)
The settings of your applications can be locked down with the help of
KIOSK methods ([$i] in the config file). Means that if the global
config file (or in a config file from a profile matching the user) has
an entry with [$i] after it, the setting cannot be changed by the user,
and if he/she changes in the local config file, it will be ignored.
Valid for applications.
8. Uptodate handbook
There is a handbook for your application and it is valid for the current
version (screenshots are uptodate, all functions are described, there
is no reference to menu items that do not exist anymore and so on).
Valid for applications.
9. Uses .ui files
The user interface (the dialogs) inside the application are created with
Qt Designer.
Valid for applications.
10. Uses XMLGUI
The main user interface is described with the help of XMLGUI. I know
there are some discussions about XMLGUI's future (but I already
suggested there to keep for KDE4...).
Valid for applications having a mainwindow.
11. No icon issues (uses the standard icons or provides icons and
installs to the right place)
See also Olaf's mail.
Valid for both libraries and applications.
And to make it clear: most of the checks cannot be automated, it is up
to the maintainer or somebody from the project to check if the
application complies or not to the requirements.
Once the final checklist is approved, I will change the website and
include the detailed descriptions with link to howto/tutorial pages if
they exist.
Andras
--
Quanta Plus developer - http://quanta.kdewebdev.org
K Desktop Environment - http://www.kde.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20060320/b8997484/attachment.sig>
More information about the kde-core-devel
mailing list