偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

開(kāi)發(fā)者:如何選擇合適的開(kāi)源庫(kù)?

開(kāi)源
對(duì)于現(xiàn)在的開(kāi)發(fā)者而言,互聯(lián)網(wǎng)上豐富的開(kāi)源資源無(wú)疑提供了很大的便利。如此海量的資源,開(kāi)發(fā)者應(yīng)如何選擇合適的開(kāi)源庫(kù)?本文探討了選擇開(kāi)源庫(kù)所需要考慮的八個(gè)方面,為開(kāi)發(fā)者們提供一些指導(dǎo)。

豐富的開(kāi)源資源為開(kāi)發(fā)者提供了便利,但如何在這么多的資源中找到適用自己項(xiàng)目的呢?國(guó)外開(kāi)發(fā)者Daniel Marbach(他的介紹)在其博客中詳細(xì)介紹了相關(guān)技巧。

Daniel Marbach認(rèn)為利用開(kāi)源庫(kù)可以大大提高開(kāi)發(fā)速度,他經(jīng)常鼓勵(lì)自己的團(tuán)隊(duì)成員在開(kāi)發(fā)中選用開(kāi)源項(xiàng)目。他總結(jié)選用開(kāi)源庫(kù)的技巧如下:

1. 首先根據(jù)自己的項(xiàng)目性質(zhì)選擇合適的開(kāi)源許可證。

對(duì)你所開(kāi)發(fā)軟件的顧客和應(yīng)用對(duì)象來(lái)說(shuō),許可證是否適用非常重要。例如,在受監(jiān)管的環(huán)境下,通常只有Apache2可用。

2. 定義你要解決的問(wèn)題類(lèi)型。

例如需要解決的是軟件的分發(fā)、緩存、持久性還是松散耦合?

3. 提煉出問(wèn)題的mate標(biāo)簽和描述性短語(yǔ)。

例如,如果你需要解決的問(wèn)題是關(guān)于在多個(gè)機(jī)器中的***路徑,你的標(biāo)簽或短語(yǔ)可能會(huì)是遺傳算法、job-Shop Scheduling、規(guī)劃圖、優(yōu)化調(diào)度算法、最短路徑等。

4. 瀏覽codeplex, google code or sourceforge (github.com 也是個(gè)很有價(jià)值的網(wǎng)站) ,并列出初步篩選到的項(xiàng)目。

例如:在IoC/DI列表里,可以找到ninject, structuremap, autofac, windsor等開(kāi)源項(xiàng)目。

5. 找到這些項(xiàng)目的主頁(yè),分別查看項(xiàng)目的***進(jìn)展,標(biāo)出那些很久沒(méi)有更新或者已經(jīng)停止開(kāi)發(fā)的項(xiàng)目。

注意主頁(yè)上的新聞、發(fā)布通告、提交記錄、網(wǎng)站更新等。我一般會(huì)從列表中刪除掉那些超過(guò)6個(gè)月沒(méi)有做更新的項(xiàng)目。

6. 到代碼庫(kù)頁(yè)找到相關(guān)測(cè)試組件。

建議你將沒(méi)有單元測(cè)試組件的項(xiàng)目從列表中刪去,也許你覺(jué)得這個(gè)要求過(guò)于苛刻了,但如果沒(méi)有單元測(cè)試,如何能保證這個(gè)項(xiàng)目的質(zhì)量呢?

7. 在項(xiàng)目主頁(yè)中確認(rèn)有相關(guān)文檔。

從選好的項(xiàng)目列表中刪去那些沒(méi)有文檔、代碼示例或適用指南的項(xiàng)目。畢竟學(xué)習(xí)一個(gè)全新的工具或框架我們需要付出一定的精力,一個(gè)全面細(xì)致的文檔是非常必要的。

8. 檢查項(xiàng)目源代碼是否指定了版本控制系統(tǒng),并查看是否有擴(kuò)展點(diǎn)(extension points)。

理想的開(kāi)源軟件庫(kù)或框架并不限制你使用特定的日志框架或依賴(lài)注入容器(DI container)。而多種擴(kuò)展點(diǎn)可以為你提供定制化日志系統(tǒng)、容器等的可能性。

還有其他一些篩選原則,你可以根據(jù)所作項(xiàng)目的需求進(jìn)行考查:

1. 是否附有構(gòu)建腳本(build script)

2. 該開(kāi)源項(xiàng)目小組是否持續(xù)使用同一集成開(kāi)發(fā)環(huán)境。

3. 該開(kāi)源項(xiàng)目是否有清晰的road map。

4. 該項(xiàng)目是否設(shè)有問(wèn)題跟蹤器(issue tracker)?

5. 是否很快就有社區(qū)補(bǔ)丁推出?

6. 在社區(qū)中,關(guān)于該項(xiàng)目的問(wèn)題反饋是否迅速?

7. 其他的開(kāi)發(fā)者是否樂(lè)于使用該開(kāi)源項(xiàng)目,在社區(qū)中關(guān)于該項(xiàng)目的知識(shí)技巧是否很快傳播。

8. 有多少活躍的項(xiàng)目貢獻(xiàn)者?

9. 版本號(hào)管理是否清晰?

10. 對(duì)于來(lái)自社區(qū)的具體需求,該項(xiàng)目的改進(jìn)和集成情況?

外文出處:http://www.planetgeek.ch/2010/06/20/how-to-select-open-source-libraries/

【編輯推薦】

  1. 打不贏(yíng)的戰(zhàn)爭(zhēng) 開(kāi)源Linux玩不起數(shù)字游戲
  2. 有關(guān)開(kāi)源內(nèi)部應(yīng)用程序的爭(zhēng)論
  3. 企業(yè)選擇開(kāi)源CRM不得不說(shuō)的十個(gè)好處
責(zé)任編輯:yangsai 來(lái)源: csdn
相關(guān)推薦

2022-07-25 09:46:25

React數(shù)據(jù)庫(kù)

2018-07-25 15:43:27

機(jī)器學(xué)習(xí)框架開(kāi)發(fā)

2018-10-25 08:00:00

數(shù)據(jù)庫(kù)開(kāi)源數(shù)據(jù)庫(kù)開(kāi)源技術(shù)

2021-01-10 15:29:53

開(kāi)源數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)

2010-06-25 17:42:08

EclipseEclipse 3.6Java

2009-04-01 09:05:34

Java云計(jì)算亞馬遜EC2

2012-01-16 11:05:22

紅帽PaaS 開(kāi)源

2018-01-04 22:17:05

Python開(kāi)源工具

2012-06-13 01:23:30

開(kāi)發(fā)者程序員

2018-01-03 09:48:51

Python開(kāi)源庫(kù)工具

2017-06-19 16:20:09

數(shù)據(jù)庫(kù)性能工具

2016-10-08 18:13:55

數(shù)據(jù)庫(kù)性能工具數(shù)據(jù)庫(kù)管理系統(tǒng)

2020-06-17 15:01:30

物聯(lián)網(wǎng)數(shù)據(jù)庫(kù)物聯(lián)網(wǎng)數(shù)據(jù)庫(kù)

2017-04-01 18:00:08

開(kāi)發(fā)者數(shù)據(jù)庫(kù)

2023-04-03 08:00:00

數(shù)據(jù)庫(kù)NoSQL

2009-03-20 11:50:44

LinuxSunCommunityOn

2017-11-23 15:06:14

前端數(shù)據(jù)庫(kù)開(kāi)發(fā)

2015-10-19 11:06:42

CoreDate開(kāi)源庫(kù)

2015-09-02 09:40:21

core data工具開(kāi)源庫(kù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)