国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区

掃一掃
關(guān)注微信公眾號

開源開發(fā)項目文檔應(yīng)該規(guī)避的十三處“硬傷”
2013-01-17   中國IT運(yùn)維網(wǎng)

大多數(shù)開源項目開發(fā)者只關(guān)注于軟件的質(zhì)量,而常常忘記編寫高品質(zhì)的文檔。但是,文檔的好壞對于一個項目的成功有著至關(guān)重要的作用,它可以幫助用戶快速了解這個項目,或在用戶的使用過程中提供一些幫助。然而,有很多開源項目的文檔令人失望,主要表現(xiàn)在以下幾個方面。

  1. 缺乏一個良好的README或介紹

  README可以使?jié)撛谟脩魧δ愕捻椖坑幸粋€初步、快速的了解,如果該項目在GitHub上,README文件會自動顯示在該項目的主頁。如果你想一下子吸引住用戶,并讓他們繼續(xù)探索你的項目,那么一個好的介紹必不可少。如果介紹很糟糕,這些用戶可能不會再回來了。

  README文件至少應(yīng)該包含:

  項目用途

  針對人群

  運(yùn)行的平臺或硬件

  重要依賴

  如何安裝,或更深層次的東西

  項目README必須要針對那些從來沒聽說過你的項目的人來寫。比如,項目中有一個計算Levenshtein距離的模塊,你不要想當(dāng)然地認(rèn)為每個正在讀README的人都知道Levenshtein是什么東西。你應(yīng)該說明一下,并加上相關(guān)詳細(xì)信息的鏈接,便于人們進(jìn)一步探索。

  在介紹一個新東西時,不要再引入其他的新東西,比如“NumberDoodle類似于BongoCalc,但更好”,人們或許壓根不知道BongoCalc。

  2. 沒有在線提供文檔

  項目的文檔必須能夠在谷歌中查找到,因此,要確保你的文檔在線可用。

  我之前發(fā)布了一個開源項目,令我惱火的是,用戶經(jīng)常給我發(fā)郵件問一些我已經(jīng)在FAQ中回答過的問題,后來我才發(fā)現(xiàn),我沒有將FAQ放在網(wǎng)站上。這是一個比較容易犯的錯誤,因為作者沒有站在用戶的角度考慮問題。

  3. 只提供在線文檔

  你不能不提供在線文檔,但同時也不能只提供在線文檔。有些項目最終版本中沒有附上文檔,或者包含了項目開發(fā)階段的不完整的文檔,而將最終文檔放在網(wǎng)上,這給無網(wǎng)絡(luò)的用戶,造成了一定的困擾。

  比如,Solr項目,有一個非常全面的Wiki(文檔),但是提供下載的卻是一個2200頁的自動生成的API Javadocs,其中針對最終用戶的唯一的文檔是一個單頁的教程。

  PHP語言包也沒有附帶任何文檔,如果你想要文檔,你必須到一個單獨(dú)的頁面。糟糕的是,只提供下載核心文檔,并且還沒有對用戶有幫助的注釋。

  開源項目不能想當(dāng)然地認(rèn)為用戶都能上網(wǎng)。你也不能讓用戶過分依賴于項目網(wǎng)站。在過去幾個月中,我已經(jīng)發(fā)現(xiàn)Solr wiki宕機(jī)至少兩次了,而我當(dāng)時正急需解決一個棘手的配置問題。

  這一方面做的比較好的是Perl和其CPAN模塊庫。每個模塊文檔都以一種易于閱讀的超鏈接格式提供在search.cpan.org和metacpan.org上。對于離線環(huán)境,每個模塊文檔嵌入在代碼本身上,當(dāng)用戶安裝模塊時,會自動創(chuàng)建本地文檔作為說明手冊。用戶也可以在Shell中使用perldoc Module::Name命令來獲取文檔。無論是在線或是離線,你都可以使用。

  4. 文檔沒有自動安裝

  這通常是安裝包創(chuàng)建者的錯。比如,在Ubuntu Linux中,Perl語言的文檔時一個獨(dú)立的、可選的包,用戶在安裝時可能會遺漏掉這個選項。盡管節(jié)省了幾MB的磁盤空間,但用戶在需要時無法及時找到。

  5. 缺少截圖

  有時候,一張圖片勝過千言萬語。

  一個屏幕截圖,可以幫助用戶直觀地比較操作結(jié)果,看是否正確地完成了各項任務(wù),或輕松地找出哪里出現(xiàn)了問題。

  現(xiàn)在,使用視頻來介紹項目也變得普遍,視頻可以顯示一個復(fù)雜過程的步驟。比如Plone項目,有一個專門網(wǎng)站來提供視頻教程。但是,視頻還無法取代屏幕截圖,因為用戶無法通過視頻快速找到某些內(nèi)容(需要一點(diǎn)一點(diǎn)看),且視頻無法被谷歌圖片搜索收錄,屏幕截圖可以。

  6. 缺乏現(xiàn)實例子

  對于基于代碼的項目,截圖固然不錯,但給出一個實例更實用。這些例子不應(yīng)該是抽象的,而是來自現(xiàn)實世界中的。開發(fā)者應(yīng)該花時間創(chuàng)建一個相關(guān)的例子,來向用戶展示該項目是如何解決問題的。

  正如Apache項目的Rich Bowen所說,“一個正確的、功能齊全的、經(jīng)過測試的、有注釋的例子,勝過一頁的乏味介紹。”

  7. 缺少鏈接和參考

  不要認(rèn)為你要解釋的內(nèi)容是文檔的一部分,或者用戶已經(jīng)在前面讀過,或者知道它們在哪里,就無需再使用超鏈接。比如,你的項目中有一部分代碼作用是操作frobbitz對象,你有必要解釋一下frobbitz對象,或鏈接到相關(guān)頁面。

  8. 不考慮新用戶

  編寫文檔的時候,不要認(rèn)為一些用戶已經(jīng)知道一些東西而不去詳細(xì)介紹。你應(yīng)該考慮到新用戶,并用一個單獨(dú)的頁面、最好的例子,來讓新用戶快速了解你的項目。

  9. 不聽用戶的反饋

  你應(yīng)該積極聽取使用你軟件的用戶的建議和需求,比如“如果有一個關(guān)于數(shù)據(jù)庫驅(qū)動程序安裝的介紹或鏈接就好了,這將幫助我安裝這個程序”。

  根據(jù)用戶的反饋,創(chuàng)建一個常見問題。并經(jīng)常關(guān)注其他一些網(wǎng)站或論壇,如StackOverflow,并創(chuàng)建一個Google Alert,來了解互聯(lián)網(wǎng)上針對你的項目的討論。

  10. 不接受用戶輸入

  如果你的項目有足夠大的用戶群,那么你可以考慮讓用戶能夠直接將意見寫到文檔中。我見過最好的例子是PHP,每一頁文檔都允許經(jīng)過身份驗證的用戶在頁面中進(jìn)行注釋,或添加非核心文檔例子。

  這些內(nèi)容需要維護(hù),因為隨著時間的推移,會出現(xiàn)一些過時的注釋,這些需要被淘汰。

  11. 必須安裝后才能了解項目的用途

  每個軟件項目都需要有一個功能列表和頁面截圖,如果是純粹的代碼項目,比如一個庫,也應(yīng)該有一個示例頁面。

  12. 依賴于文檔自動生成

  大多時候,軟件開發(fā)者會使用自動化的文檔生成系統(tǒng),來代替自己的工作。他們忘記了還需要手動寫其他部分。 最壞的情況是,changelog中除了一些提交信息外沒有任何內(nèi)容。changelog應(yīng)該列出新的功能、錯誤修復(fù)以及潛在的兼容性問題,它的目標(biāo)群體是最終用戶。而提交日志是給開發(fā)者看的。

  13. 以傲慢的態(tài)度對待小白用戶

  不要對用戶的問題都報以“RTFM(Read the Freaking Manual,去讀那些TMD手冊)”的態(tài)度,這可能會嚇走一批潛在的用戶。

  如果用戶的問題可以在文檔中找到,但他們沒有這樣做,不要認(rèn)為這是愚蠢的。有可能是因為你的文檔寫得糟糕,難以閱讀,或者不完整。你需要耐心地改善“入門”章節(jié),說明軟件的目的是什么,或者給用戶指明在哪里可以找到相關(guān)的信息。

熱詞搜索:

上一篇:超詳細(xì)以太網(wǎng)交換機(jī)性能測試需要關(guān)注的細(xì)節(jié)
下一篇:簡化多供應(yīng)商環(huán)境 打造良好的WAN和云服務(wù)管理

分享到: 收藏
国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区
欧美日韩一区二区三区在线观看免 | 欧美激情久久久| 亚洲激情电影中文字幕| 91久久精品国产| 99精品视频一区| 国产亚洲欧洲997久久综合| 欧美国产成人精品| 久久精品免费观看| 亚洲网站啪啪| 亚洲黄色视屏| 激情欧美国产欧美| 国产精品美女久久久久久久 | 欧美大片一区| 久久精品二区| 亚洲免费在线电影| 亚洲精品在线视频观看| 国产欧美一区二区三区久久| 欧美日韩精品系列| 国产一区二区三区在线观看免费视频 | 亚洲欧美资源在线| 一本久久综合| 亚洲九九九在线观看| 国内精品久久久| 国产综合精品| 国产综合视频在线观看| 国产精品高潮久久| 国产精品乱码一区二区三区| 欧美人交a欧美精品| 你懂的国产精品永久在线| 久久精品视频导航| 久久国产福利国产秒拍| 久久久av水蜜桃| 欧美在线看片| 欧美在线一级视频| 久久青草久久| 久久嫩草精品久久久久| 久久国产色av| 国产精品青草久久| 亚洲午夜激情网页| 先锋影音网一区二区| 欧美一区视频在线| 国产精品乱子久久久久| 国产偷国产偷亚洲高清97cao | 亚洲精品免费在线| 嫩草成人www欧美| 欧美色视频一区| 国产日韩欧美在线观看| 欧美有码在线视频| 欧美大香线蕉线伊人久久国产精品| 极品少妇一区二区三区| 毛片基地黄久久久久久天堂| 国产精品国产三级国产专播品爱网 | 午夜亚洲视频| 国外成人免费视频| 在线视频亚洲| 久久国产主播| 在线不卡视频| 午夜视频一区| 国产午夜久久| 亚洲欧美久久| 美女主播视频一区| 国产精品―色哟哟| 亚洲高清在线观看一区| 亚洲视频二区| 欧美激情国产日韩| 国产一区二区三区黄视频| 久久视频在线免费观看| 亚洲美女色禁图| 国产精品视频久久| 宅男精品视频| 国产一区二区三区在线观看精品| 欧美xx视频| 午夜免费久久久久| 欧美日韩中文精品| 狠狠色综合色区| 亚洲一二三区精品| 欧美高清自拍一区| 亚洲欧美日韩久久精品 | 狠狠久久亚洲欧美专区| 午夜久久99| 亚洲国产精品久久久久婷婷884 | 国产三级欧美三级| 欧美剧在线观看| 久久精品国产99国产精品| 一本久道久久综合婷婷鲸鱼| 欧美1区免费| 在线观看视频免费一区二区三区| 亚洲欧美另类中文字幕| 91久久国产自产拍夜夜嗨| 国产免费一区二区三区香蕉精| 亚洲图片欧洲图片日韩av| 尤物yw午夜国产精品视频明星| 欧美尤物一区| 亚洲视频你懂的| 亚洲精品中文字幕在线观看| 欧美日韩亚洲免费| 蜜臀av性久久久久蜜臀aⅴ| 在线日韩av片| 国产亚洲毛片| 国产麻豆视频精品| 久久久久国内| 狠狠色伊人亚洲综合成人| 国产精品vvv| 欧美涩涩视频| 欧美一区永久视频免费观看| 国产欧美日韩在线观看| 欧美剧在线免费观看网站| 宅男噜噜噜66一区二区| 欧美特黄视频| 欧美日韩久久不卡| 欧美日韩一区二区在线| 亚洲欧美日韩在线不卡| 亚洲无吗在线| 午夜精品久久久久久久白皮肤| 亚洲一区亚洲| 激情一区二区三区| 国产在线精品成人一区二区三区 | 国产精品国产三级国产aⅴ9色| 欧美日韩成人一区| 欧美一区二区啪啪| 亚洲欧美日韩在线观看a三区| 国产一区二区剧情av在线| 国产欧美日本一区视频| 老司机精品福利视频| 久久综合九色欧美综合狠狠| 99精品热视频| 在线成人av| 国产欧美日本一区视频| 韩国av一区二区三区| 亚洲国产91色在线| 99精品国产在热久久婷婷| 午夜精品影院在线观看| 蜜桃精品久久久久久久免费影院| 欧美久久在线| 国产一区二区三区无遮挡| 亚洲精品国产系列| 国内久久精品视频| 亚洲激情网站免费观看| 亚洲一区二区毛片| 亚洲日本va午夜在线电影| 国产日韩欧美三级| 欧美午夜理伦三级在线观看| 国产精品婷婷| 亚洲精选成人| 久久综合九色综合欧美就去吻 | 欧美日本不卡视频| 欧美不卡视频一区发布| 欧美视频在线观看免费| 有码中文亚洲精品| 午夜精品福利视频| 欧美日韩在线免费| 亚洲激情婷婷| 亚洲福利视频在线| 很黄很黄激情成人| 亚洲视频在线二区| 免费在线观看成人av| 国产欧美日本| 亚洲在线观看视频网站| 亚洲欧美精品在线观看| 欧美国产视频在线观看| 国产香蕉久久精品综合网| 亚洲天堂激情| 欧美日韩免费高清| 国产精品日韩欧美一区| 亚洲黄色三级| 久久婷婷av| 久久夜色精品国产亚洲aⅴ | 国内精品福利| 亚洲午夜激情在线| 欧美日韩理论| 99riav国产精品| 欧美人与性动交α欧美精品济南到 | 亚洲电影在线看| 亚洲国产精品女人久久久| 欧美一区二区大片| 久久久999成人| 久久久久一区| 美女国产一区| 黄色免费成人| 久久久久综合一区二区三区| 国产欧美一区二区三区视频| 一区二区三区在线高清| 久久精品观看| 伊人久久综合| 米奇777在线欧美播放| 亚洲经典在线| 欧美日韩国产色站一区二区三区| 国产精品二区在线| 国产精品99久久久久久久vr| 欧美日韩成人一区| 亚洲一区区二区| 欧美成人中文字幕在线| 国产精品久久777777毛茸茸| 亚洲一区二区三区免费视频| 国产欧美日韩视频一区二区| 久久精品人人做人人综合| 永久555www成人免费| 欧美伦理91| 欧美一区二区三区免费看 | 噜噜噜91成人网|