Archive:Contribute (zh TW): Difference between revisions

From KDE TechBase
(Created page with '{{Template:I18n/Language Navigation Bar|Contribute}} 這個頁面試圖提供KDE開發的不同方面,尤其是與程式設計有關的部分有一個總體的認識。'''KDE...')
 
m (AnneW moved page Contribute (zh TW) to Archive:Contribute (zh TW) without leaving a redirect: Obsolete)
 
(9 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Template:I18n/Language Navigation Bar|Contribute}}
{{Template:I18n/Language Navigation Bar_(zh_TW)|Contribute}}


這個頁面試圖提供KDE開發的不同方面,尤其是與程式設計有關的部分有一個總體的認識。'''KDE項目歡迎任何願意提供幫助的人'''。
這個頁面試圖提供KDE開發的不同方面,尤其是與程式設計有關的部分有一個總體的認識。'''KDE 計畫歡迎任何願意提供幫助的人'''。


{{note|有許多參與KDE開發的途徑,例如:
{{note_(zh_TW)|有許多參與KDE開發的途徑,例如:
:''文件撰寫、翻譯、開發、可用性、無障礙、美工、產品推廣
:''文件撰寫、翻譯、開發、可用性、無障礙、美工、產品推廣
'''Not a coder? See KDE's pages on [http://kde.org/getinvolved/ how to get involved] to see other ways you can help. Also see: [[Contribute/Bugsquad|Bugsquad]]!'''
'''不會寫程式?請見 KDE [http://kde.org/getinvolved/ 如何參與]頁面,了解其他您可以幫上忙的方法。另見:[[Contribute/Bugsquad|Bugsquad]]'''
}}
}}


Line 11: Line 11:
KDE項目的總體發展方向是由實際參與工作的人決定的——並沒有一個單獨的最高層的計劃指導KDE將來會變成什麼樣子。
KDE項目的總體發展方向是由實際參與工作的人決定的——並沒有一個單獨的最高層的計劃指導KDE將來會變成什麼樣子。


If you want to find out what is currently happening, then there are a number of sources you might like to consider:
如果你想獲知現在正發生著什麼,那麼你可能會關心這些消息來源:
; [http://www.kde.org/mailinglists/ Mailing Lists]
; [http://www.kde.org/mailinglists/ 郵件列表]
: Probably the best way to find out what's going on in KDE development. Archives are available [http://lists.kde.org here]
: 可能這是最好的獲知 KDE 正在開發著什麼的途徑。相關的文件可以在[http://lists.kde.org 這裡]獲得。


; [http://commitfilter.kde.org/ CommitFilter]
; [http://commitfilter.kde.org/ 過濾後的討論]
: Receive notification of [http://en.wikipedia.org/wiki/Subversion SVN] commits in areas that interest you.
: 在你所感興趣的區域內收取 SVN 討論的通知。


; [http://commit-digest.org/ KDE Commit-Digest]
; [http://commit-digest.org/ KDE Commit-Digest]
: Weekly summary of SVN commits.
: 每週的 SVN 討論概述。


; [http://dot.kde.org/ The Dot]
; [http://dot.kde.org/ The Dot]
: The KDE news site.
: KDE新聞網站。


== 開始程式設計 ==
== 開始程式設計 ==
Getting started at coding for KDE is a matter of finding something to fix, and fixing it. You may want to consult the module overview to help find what you are looking for; once you have fixed something, you will want to send in a patch. If you do that a few times, you may want to apply for an SVN account so you can fix things directly.
開始為 KDE 寫程式,是取決於找到需要修補的東西,並想要修補它。你可能想查閱相關模塊的概述來幫助找到你在尋找的東西;一旦你修復了某些東西,你需要提交一個補丁。如果你多次地這麼做,你可能需要申請一個SVN賬戶,那麼你將可以直接地修補相關的東西。
* [[Contribute/List of KDE Modules|Module overview]]
* [[Contribute/List of KDE Modules|模塊的概述]]
* [[Contribute/Send Patches|Sending patches]]
* [[Contribute/Send Patches|提交補丁]]
* [[Contribute/Get a SVN Account|Applying for a KDE SVN Account]]
* [[Contribute/Get a SVN Account|申請一個 KDE SVN 賬戶]]
* [[Contribute/First Steps with your KDE SVN Account|First steps with your new SVN account]]
* [[Contribute/First Steps with your KDE SVN Account|  
 
使用你新的 SVN 賬戶的第一步]]
At the moment, there are two choices for development within KDE - you can work on KDE3, or KDE4. KDE3 is a good choice for bug fixing, however the main development work effort (and all new features) is on KDE4. This document mainly focuses on work in support of KDE4.


=== C++ ===
=== C++ ===
Line 37: Line 36:


=== Qt ===
=== Qt ===
要想精通KDE程式設計,你應當了解Qt。如果你不熟悉Qt,你工作時應當參考包括[http://doc.qt.nokia.com/latest/ Qt Reference Documentation]在內的Qt相關指南。
要想精通 KDE 程式設計,你應當了解 Qt。如果你不熟悉 Qt,你工作時應當參考包括 [http://doc.qt.nokia.com/4.6 Qt 參考文件] 在內的 Qt 相關指南。


If you are more into multimedia and videos for a start you might want to spend two amazing minutes on watching [http://www.trolltech.com/trolltech/products/qt/learnmore/video/demos/browser Building a Simple Help Documentation Browser with Qt4 Designer]. If that got your attention you might also want to watch the video introduction [http://www.trolltechvideo.com/video/day1/room_a/a_1_1/video.html Hello Qt] by Mark Summerfield which is part of the [http://www.trolltech.com/company/newsroom/events/allevents/devdays2006/videolinks Trolltech Developer Days 2006 presentations].
如果你需要一個更有魅力的 Qt 介紹,或者希望瞭解一個不同角度的觀點,那麼你可能願意閱讀這份[http://qt4.digitalfanatics.org/tiqt/ 獨立 Qt 教學](當前離線閱讀需要book contract)。


If you need a gentler introduction to Qt, or would just like an alternative view, then you may wish to look at the [http://qt4.digitalfanatics.org/tiqt/ The Independent Qt Tutorial] (Currently offline due to book contract).
如果您偏好閱讀傳統書籍來學習 Qt,可以看看[http://qt.nokia.com/developer/books/ Qt 相關的書籍]。更多熟悉 Qt4 的建議可參考[http://doc.qt.nokia.com/4.6/how-to-learn-qt.html 如何學習 Qt]
 
If you prefer to learn Qt by reading a traditional book, take a look at Trolltechs [http://trolltech.com/developer/documentation/books book page]. More suggestions on becoming familiar with Qt4 are [http://doc.trolltech.com/latest/how-to-learn-qt.html available here as well].


對英文苦手嗎?在[http://www.qteverywhere.com/learnqt Qt 學習專區]和 [http://www.cuteqt.com/ CuteQt] 中有大量中文 Qt 教學提供您閱讀學習。
=== KDE ===
=== KDE ===
一系列關於KDE技術的資訊可以在[[Development/Tutorials|指南]]中查閱。
一系列關於 KDE 技術的資訊可以在[[Development/Tutorials_(zh_TW)|教學]]中查閱。


你同樣可以在[[Development/FAQs|FAQs]]中找到關於KDE程式設計的有用資訊。 這些資訊對KDE4來說可能同樣是有點過時了,然而其中的許多內容仍在被廣泛地應用著,甚至是在KDE之外。
你同樣可以在[[Development/FAQs_(zh_TW)|FAQs]]中找到關於KDE程式設計的有用資訊。這些資訊對KDE 4 來說可能同樣是有點過時了,然而其中的許多內容仍在被廣泛地應用著,甚至是在 KDE 之外。


你同樣可以閱讀[[Development/Further Information#Books|KDE程式設計書籍]] 。
你同樣可以閱讀[[Development/Further Information#Books|KDE 程式設計書籍]] 。


最後,但絕不是次要的,KDE與大量的類別(Application Programmer Interface,API)文件一起發布。 這些,同樣包括許多關於如何編寫與更新類別文件(the class documentation)的有用鏈接都在[[Development/Tutorials/API Documentation|KDE API參考手冊]]中呈現。你同樣能在自己擁有的機器上生成這些,或者使用一個經常更新的在線版本—— [http://www.englishbreakfastnetwork.org/apidocs/apidox-kde-4.x/kdelibs-apidocs/ The English Breakfast Network]。
最後,但絕不是次要的,KDE 與大量的類別(Application Programmer Interface,API)文件一起發布。 這些,同樣包括許多關於如何編寫與更新類別文件(the class documentation)的有用鏈接都在[[Development/Tutorials/API Documentation|KDE API 參考手冊]]中呈現。你同樣能在自己擁有的機器上生成這些,或者使用一個經常更新的在線版本—— [http://www.englishbreakfastnetwork.org/apidocs/apidox-kde-4.x/kdelibs-apidocs/ The English Breakfast Network]。


關於以上步驟的更詳細的描述請參看我們的[http://quality.kde.org/develop/howto/howtohack.php 程式設計指導] 。
關於以上步驟的更詳細的描述請參看我們的[http://quality.kde.org/develop/howto/howtohack.php 程式設計指導] 。
Line 60: Line 58:
KDE中包含有許多應用程式,但並非每個程式都有一個維護者致力於管理漏洞和從總體上幫忙將相互關聯且可用的代碼轉換為精緻的程式。
KDE中包含有許多應用程式,但並非每個程式都有一個維護者致力於管理漏洞和從總體上幫忙將相互關聯且可用的代碼轉換為精緻的程式。


如果你有興趣幫助KDE解決問題,但又不知從何處著手,成為一個KDE品質保障小組(the KDE Quality Team)的一員可能正是你所期望的——更多信息請查看[http://quality.kde.org 品質保障小組的網站]。注意,你不需要任何程式設計技能就可以參與進來。In particular develpers regurarly publish so-called [[Contribute/Junior Jobs|Junior Jobs]] to encourage new contributions.
如果你有興趣幫助KDE解決問題,但又不知從何處著手,成為一個 KDE 品質保障小組(the KDE Quality Team)的一員可能正是你所期望的——更多資訊請查看[http://quality.kde.org 品質保障小組的網站]。注意,你不需要任何程式設計技術就可以參與。特別是 developers regularly 推動的[http://community.kde.org/KDE/Junior_Jobs Junior Jobs],鼓勵新的貢獻。


當然,你能在不成為KDE品質保障小組成員的情況下參與除錯——只需要在KDE[http://bugs.kde.org 漏洞跟踪系統]上創建一個你自己的賬戶,並且開始搜索和整理這些漏洞。 再次強調,你並不必須擁有編程技能——那隻是幫助程式設計師用一貫的手法在程式中複製漏洞而已。
當然,你能在不成為 KDE 品質保障小組成員的情況下參與除錯 —— 只需要在 KDE[http://bugs.kde.org 漏洞跟踪系統]上創建一個你自己的賬戶,並且開始搜索和整理這些漏洞。再次強調,你並不必須擁有程式設計技術 —— 那隻是幫助程式設計師用一貫的手法在程式中複製漏洞而已。


[[Contribute/Bugsquad|Bugsquad]]嘗試跟踪KDE軟體中的漏洞,並且確保被確認的漏洞被開發者們注意到。在Bugsquad中你不需要任何的編程知識;事實上,如果你不會編程,這是一種回饋某些東西給KDE社群的良好方法。
[[Contribute/Bugsquad|Bugsquad]]嘗試跟踪 KDE 軟體中的漏洞,並且確保被確認的漏洞被開發者們注意到。在 Bugsquad 中你不需要任何的程式設計知識;事實上,如果你不會程式設計,這是一種回饋 KDE 社群的良好方法。


==Getting Answers to Your Questions==
==得到問題的答案==
If your question concerns KDE development, your options are pretty much the same general user ones, with some modifications:
If your question concerns KDE development, your options are pretty much the same general user ones, with some modifications:
::* '''Read the Developer FAQ'''. Many common developer questions have been answered in the [http://developer.kde.org/documentation/other/developer-faq.html KDE Developer FAQ]
::* '''閱讀開發者 FAQ'''. Many common developer questions have been answered in the [[Development/FAQs_(zh_TW)|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 [http://developer.kde.org/ KDE developer website].
::* '''搜尋或瀏覽 KDE 網站'''. 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 [http://techbase.kde.org/Welcome_to_KDE_TechBase_(zh_TW) KDE TechBase website].
::* '''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 [http://lists.kde.org/ 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.
::* '''搜尋郵件列表'''. 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 [http://lists.kde.org/ 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 [http://groups.google.com/ search] the great bulk of Usenet news sites, which is also particularly helpful, especially for general programming and gcc-related questions.
::* '''搜尋引擎'''. Do not forget about your favorite search engine. One of the best search engines is Google. With Google you can also [http://groups.google.com/ search] the great bulk of Usenet news sites, which is also particularly helpful, especially for general programming and gcc-related questions.
::* '''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.
::* '''KDE 郵件列表提問'''. 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 [http://konqueror.kde.org/ Konqueror], KOffice, games or Java development, your main choice is [mailto:[email protected] kde-devel] [mailto:[email protected]?subject=subscribe (subscribe)].
::::* For questions relating to core development or third-party KDE development, unless you are particularly interested in [http://konqueror.kde.org/ Konqueror], [http://www.koffice.org/ KOffice], games or Java development, your main choice is [mailto:[email protected] kde-devel] [mailto:[email protected]?subject=subscribe (subscribe)].
::::* For questions relating to Konqueror development, your main choice is [mailto:[email protected] kfm-devel] [mailto:[email protected]?subject=subscribe (subscribe)]
::::* For questions relating to Konqueror development, your main choice is [mailto:[email protected] kfm-devel] [mailto:[email protected]?subject=subscribe (subscribe)]
::::* For questions relating to KOffice development, your main choice is [mailto:[email protected] koffice-devel] [mailto:[email protected]?subject=subscribe (subscribe)]
::::* For questions relating to KOffice development, your main choice is [mailto:[email protected] koffice-devel] [mailto:[email protected]?subject=subscribe (subscribe)]
Line 80: Line 78:
::::* For questions relating to [http://qt.nokia.com/ Qt development], please use the fine [http://lists.trolltech.com/qt-interest/ Qt mailing list].
::::* For questions relating to [http://qt.nokia.com/ Qt development], please use the fine [http://lists.trolltech.com/qt-interest/ Qt mailing list].
A full list of KDE mailing lists is available [http://www.kde.org/mailinglists/ here] and [http://mail.kde.org/mailman/listinfo here].
A full list of KDE mailing lists is available [http://www.kde.org/mailinglists/ here] and [http://mail.kde.org/mailman/listinfo here].


== Historical Sources ==
== Historical Sources ==

Latest revision as of 13:18, 23 June 2013

Template:I18n/Language Navigation Bar (zh TW)

這個頁面試圖提供KDE開發的不同方面,尤其是與程式設計有關的部分有一個總體的認識。KDE 計畫歡迎任何願意提供幫助的人

Template:Note (zh TW)

新聞和郵件資源

KDE項目的總體發展方向是由實際參與工作的人決定的——並沒有一個單獨的最高層的計劃指導KDE將來會變成什麼樣子。

如果你想獲知現在正發生著什麼,那麼你可能會關心這些消息來源:

郵件列表
可能這是最好的獲知 KDE 正在開發著什麼的途徑。相關的文件可以在這裡獲得。
過濾後的討論
在你所感興趣的區域內收取 SVN 討論的通知。
KDE Commit-Digest
每週的 SVN 討論概述。
The Dot
KDE新聞網站。

開始程式設計

開始為 KDE 寫程式,是取決於找到需要修補的東西,並想要修補它。你可能想查閱相關模塊的概述來幫助找到你在尋找的東西;一旦你修復了某些東西,你需要提交一個補丁。如果你多次地這麼做,你可能需要申請一個SVN賬戶,那麼你將可以直接地修補相關的東西。

C++

KDE大部分是用C++寫成的。如果你不熟悉C++,你至少需要對它進行一些學習。有一些很好的關於C++的書,其中一本非常出色的教學叫做Bruce Eckel's "Thinking in C++",你可以自由而免費地下載它,同樣你也能將其打印成書面文件。在參與KDE之前,你不需要對它的所有東西都有個透徹的理解,但你至少需要懂得基本的語法和操作。

Qt

要想精通 KDE 程式設計,你應當了解 Qt。如果你不熟悉 Qt,你工作時應當參考包括 Qt 參考文件 在內的 Qt 相關指南。

如果你需要一個更有魅力的 Qt 介紹,或者希望瞭解一個不同角度的觀點,那麼你可能願意閱讀這份獨立 Qt 教學(當前離線閱讀需要book contract)。

如果您偏好閱讀傳統書籍來學習 Qt,可以看看Qt 相關的書籍。更多熟悉 Qt4 的建議可參考如何學習 Qt

對英文苦手嗎?在Qt 學習專區CuteQt 中有大量中文 Qt 教學提供您閱讀學習。

KDE

一系列關於 KDE 技術的資訊可以在教學中查閱。

你同樣可以在FAQs中找到關於KDE程式設計的有用資訊。這些資訊對KDE 4 來說可能同樣是有點過時了,然而其中的許多內容仍在被廣泛地應用著,甚至是在 KDE 之外。

你同樣可以閱讀KDE 程式設計書籍

最後,但絕不是次要的,KDE 與大量的類別(Application Programmer Interface,API)文件一起發布。 這些,同樣包括許多關於如何編寫與更新類別文件(the class documentation)的有用鏈接都在KDE API 參考手冊中呈現。你同樣能在自己擁有的機器上生成這些,或者使用一個經常更新的在線版本—— The English Breakfast Network

關於以上步驟的更詳細的描述請參看我們的程式設計指導

參與除錯和品質保障

KDE中包含有許多應用程式,但並非每個程式都有一個維護者致力於管理漏洞和從總體上幫忙將相互關聯且可用的代碼轉換為精緻的程式。

如果你有興趣幫助KDE解決問題,但又不知從何處著手,成為一個 KDE 品質保障小組(the KDE Quality Team)的一員可能正是你所期望的——更多資訊請查看品質保障小組的網站。注意,你不需要任何程式設計技術就可以參與。特別是 developers regularly 推動的Junior Jobs,鼓勵新的貢獻。

當然,你能在不成為 KDE 品質保障小組成員的情況下參與除錯 —— 只需要在 KDE漏洞跟踪系統上創建一個你自己的賬戶,並且開始搜索和整理這些漏洞。再次強調,你並不必須擁有程式設計技術 —— 那隻是幫助程式設計師用一貫的手法在程式中複製漏洞而已。

Bugsquad嘗試跟踪 KDE 軟體中的漏洞,並且確保被確認的漏洞被開發者們注意到。在 Bugsquad 中你不需要任何的程式設計知識;事實上,如果你不會程式設計,這是一種回饋 KDE 社群的良好方法。

得到問題的答案

If your question concerns KDE development, your options are pretty much the same general user ones, with some modifications:

  • 閱讀開發者 FAQ. Many common developer questions have been answered in the KDE Developer FAQ
  • 搜尋或瀏覽 KDE 網站. 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.
  • 搜尋郵件列表. 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.
  • 搜尋引擎. 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.
  • 在 KDE 郵件列表提問. If you still do not have an answer, try asking your question on one of the KDE mailing lists listed above.

A full list of KDE mailing lists is available here and here.

Historical Sources

KDE Traffic
Summary of the development mailing lists. KDE Traffic ran for 76 issues, from 10 March 2001 until 16 April 2004. The KDE Commit-Digest (described above) is its logical successor.