2009-06-26 138 views
3

我是一名學生,在這個假期我有很多空閒時間,所以我決定花點時間學習更多關於如何編寫好代碼的知識(現在我所知道的是C和一些C++)從開源代碼學習

我的問題是關於如何找到一些應用程序的源代碼? 假設我正在尋找一些使用特定庫的源代碼。如何找到關於我感興趣的使用該庫的開源項目。

我試過google代碼和sourceforge但沒有成功。我想我不知道如何搜索。你有任何建議/鏈接如何做到這一點?

回答

5

沒有找到開源代碼的一站式商店。

如果你想讀一些以及編寫的代碼GNU的薩凡納是GNU的東西(的Binutils,GCC工具鏈和大量的其他資源)的可瀏覽存儲庫。 GNU軟件,恕我直言,是任何地方最好的書面C語言。

您也可以結算MINIX這是一個開源的基於微內核的操作系統(也符合POSIX標準)。

Gnome項目有許多項目涵蓋從C到Python甚至C#(FSpot)的各種語言。

搜索爲一個項目,如果你知道名稱,谷歌應該幫助。如果沒有,請搜索谷歌上的庫,例如「libfoo」,或者查看您使用的包管理器(它經常有上游維護者的網站)的元數據

例如:

[[email protected] ~]$ ldd /bin/ls 
    ... 
    libcap.so.2 => /lib64/libcap.so.2 
    libacl.so.1 => /lib64/libacl.so.1 
    libc.so.6 => /lib64/libc.so.6 
    libpthread.so.0 => /lib64/libpthread.so.0 
    ... 

我可以谷歌「的libpthread」,發現它是的GNU C Library

一部分。如果你想涉足FOSS/C,那麼學會使用源控制系統如Gitsubversion,以及製作補丁的差異。與人交談,他們總是希望新鮮的開發人員分析錯誤並修復問題。但你可能會發現一個啄食順序和一個社會階梯。

祝你好運,玩得開心!

1

如果您知道某些特定方法包含在庫中,那麼您始終可以搜索這些方法。

另外,如果圖書館有irc頻道或新聞組設置,然後問那裏的問題。

3
+1

報價: 「我試過google代碼和sourceforge但沒有成功,我想我不知道如何搜索,你有什麼建議/鏈接怎麼做? – Pod 2009-06-26 11:34:24

1

看看「龍書」如果你能找到它。斯皮內利的Code Reading也不錯。兩者都會幫助你理解你正在閱讀的代碼。

0

Koders可能會對您有所幫助。它是源代碼的搜索引擎。

-1

四「易」的步驟:

  1. 選擇您喜歡使用
  2. 想想一個功能它缺乏
  3. 嘗試發現如何實現這一功能的免費應用程序
  4. 做吧

第1點和第2點將保留你的工作。

隨着第3點,您將學習如何下載源代碼,閱讀補丁程序並理解不同人的代碼。

並與第4點,你會練的編碼,如果你願意,你就可以開始與項目:)

0

訪問Launchpad.net正式合作,並與友好的Ubuntu社區取得聯繫。這是一個開始的好地方,因爲如果你問一個問題,他們並不那麼苛刻。