(Created page with "==== 上下文帮助：这是什么 ====")
(Created page with "上下文帮助是与对话框和控件密不可分的，因为它们是上下文帮助的目标。实际上要编写上下文帮助，需要修改程序和编程工具。上...")
|Line 66:||Line 66:|
==== 上下文帮助：这是什么 ====
==== 上下文帮助：这是什么 ====
此页面简要介绍 KDE 开发的不同方面，特别是编程相关的问题，KDE 项目欢迎所有愿意提供帮助的人加入。
KDE项目的大方向是由实际工作者决定的 - KDE将变成什么样并没有一个统一的计划。
开始为 KDE 编程只需要找到一个需要修复地方，并改好它。您可能需要查看模块的概述，以找到需要的信息；修复了问题后，需要发送一个补丁。这样做了几次之后，可以申请 KDE 贡献帐户，之后就可以直接提交代码。
KDE大部分是用C++写成的。如果你不熟悉C++，你至少需要对它进行一些学习。有一些很好的关于C++的书，其中一本非常出色的教程叫做 Bruce Eckel的 "Thinking in C++"，你可以自由而免费地下载它，同样你也能将其打印成书面文档。在参与KDE之前，你不需要对它的所有东西都有个透彻的理解，但你至少需要懂得基本的语法和操作。
要想精通KDE编程，你应当对Qt toolkit有较好的理解。如果不熟悉Qt，应当学习Qt 参考文件中的相关指南。
上下文帮助是与对话框和控件密不可分的，因为它们是上下文帮助的目标。实际上要编写上下文帮助，需要修改程序和编程工具。上下文帮助是控件的一个属性。在面向对象的编程中，属性可以有多个值并根据不同的属性值表现出不同的行为。在 Qt/KDE 编程中，使用的属性是 "whatsthis"，数值是要显示的上下文帮助内容。
Here you can find a detailed guide for writing whatsthis using Qt Designer and working directly with the source code: WhatsThis Tutorial, by Aaron J. Seigo.
If you are interested in helping out with KDE, but don't know where to start, becoming a member of the KDE Quality Team might appeal to you - see the Quality Team website for more information. Note that you do not need any programming skills to become involved. In particular developers regularly publish so-called Junior Jobs to encourage new contributions.
Of course, you can become involved in bug hunting without being part of the KDE Quality Team - just create yourself an account on the KDE bug tracking system, and start searching / sorting through the bugs. Again, you don't have to have programming skills - it helps the programmers enormously just to have a procedure that allows a bug to be consistently reproduced.
The Bugsquad tries to keep track of bugs in KDE software and make sure that valid bugs are noticed by developers. You do not need any programming knowledge to be in the Bugsquad; in fact it is a great way to return something to the KDE community if you cannot program.
User interface is a very wide subject, and very subjective too, as something obvious to someone is absurd to others and vice versa. Therefore, don't assume, argue clearly, stating your logical steps. Your main tool discussing it are objective reasoning and good sense.
The KDE Usability Mailing List is very active and a good place for discussing your ideas, and their homepage is at http://techbase.kde.org/Projects/Usability. If you are already an usability expert, please check OpenUsability.org, a project that brings open source developers and usability experts together, and is collaborating closely with KDE.
- Read the Developer FAQ. Many common developer questions have been answered in the KDE Developer FAQ
- Search/browse KDE websites. A lot of questions can also be answered from the KDE websites, and the documentation included on it. You can search all the KDE websites on the homepage. In addition, you can browse the KDE TechBase website. And if possible, help edit it for clarity, and use the talk page if something is unclear.
- Search mailing lists. A lot of questions have already been answered on the KDE mailing lists, particular the lists kde-devel, kde2-porting, kde-core-devel, kde-games-devel, kfm-devel and koffice-devel. You can search these lists either at lists.kde.org. You should always search for your answer before asking questions on the mailing lists. When you ask a question on a mailing list you are emailing thousands of people -- please do this only if the answer is not available through a simple search.
- Search engines. Do not forget about your favorite search engine. One of the best search engines is Google. With Google you can also search the great bulk of Usenet news sites, which is also particularly helpful, especially for general programming and gcc-related questions.
- Read the source code. http://websvn.kde.org and https://projects.kde.org/ are available to help browse code. Read some commit logs and diffs for the code you might want to work with, It adds perspective.
- Ask on KDE mailing lists. If you still do not have an answer, try asking your question on one of the KDE mailing lists listed above.
- For questions relating to core development or third-party KDE development, unless you are particularly interested in Konqueror, KOffice, games or Java development, your main choice is kde-devel (subscribe).
- For questions relating to Konqueror development, your main choice is kfm-devel (subscribe)
- For questions relating to KOffice development, your main choice is koffice-devel (subscribe)
- For questions relating to games development, your main choice is kde-games-devel (subscribe)
- For questions relating to Qt development, please use the fine Qt mailing list.