安卓流行布局開源庫
by Ashish Singal
通過Ashish Singal
如何使用流行度在開源庫之間進行選擇 (How to choose between open source libraries using popularity)
Through my career as a product manager, I’ve worked closely with engineers to build many technology products (and even hacked some together myself).
在擔任產品經理的整個職業生涯中,我與工程師緊密合作,開發了許多技術產品(甚至自己也一起破解了一些產品)。
When developing technology products, one of the most critical choices we can make is between competing sets of libraries and frameworks. One key ingredient is relative popularity, for several reasons:
在開發技術產品時,我們可以做出的最關鍵的選擇之一是在競爭的庫和框架集之間進行選擇。 關鍵因素之一是相對受歡迎 ,原因如下:
Proxy for the Best. Especially in open source, the “market” is fairly efficient. Developers generally gravitate towards the best technologies and vote with their feet.
最佳代理 。 尤其是在開源中,“市場”相當有效。 開發人員通常傾向于最好的技術,并用腳投票。
Help. While formal documentation is critically important, Stack Overflow questions and Medium tutorials are sometimes even more beneficial to move up the learning curve and to debug. Code snippets and tips from practitioners boost development speed and impact tremendously.
幫忙 。 盡管正式文檔至關重要,但堆棧溢出問題和中級教程有時甚至對提高學習曲線和調試更為有益。 練習者的代碼片段和技巧極大地提高了開發速度并產生了巨大的影響。
Talent. The more popular a library is, the more likely you’ll be able to find people who know how to use it to help build your product.
人才 庫越受歡迎,您越有可能找到知道如何使用它來幫助您構建產品的人。
Future Enhancements. A vibrant user base and community ensures continued development on the project in the future, reducing the chance that it will become obsolete.
未來的改進 。 活躍的用戶群和社區確保了該項目在將來的持續開發,從而減少了該項目被淘汰的機會。
人氣代理 (Proxies for Popularity)
There are several ways to measure the popularity of OS libraries:
有幾種方法可以衡量OS庫的流行程度:
Stack Overflow questions
堆棧溢出問題
Github stars
Github星星
Google Trends
Google趨勢
StackShare should also get an honorable mention here as a good way to find popular tools.
StackShare在這里也應該得到榮譽獎,這是找到流行工具的好方法。
判斷動量 (Judging Momentum)
However, these measures need a time based component. Without taking into account metric momentum, the above measures are purely backward looking — they help inform what was the best technology, not what is or what will be.
但是,這些措施需要基于時間的組件。 在不考慮度量指標動量的情況下,上述措施純粹是向后看的-它們有助于告知什么是最好的技術,而不是什么是什么或將是什么。
Therefore, more often, when evaluating competing libraries, I’ll often look at charts of these statistics over time. There are several apps that allow us to do that:
因此,在評估競爭性庫時,通常會經常查看這些統計數據隨時間變化的圖表。 有幾個應用程序可以使我們做到這一點:
Stack Overflow Trends. Open source tool by Rob McDiarmid. Also directly from Stack Overflow.
堆棧溢出趨勢 。 Rob McDiarmid的 開源工具。 也可以直接從Stack Overflow中獲取 。
Github Star History. Similar tools include StarTrack, Stargraph, and this project. Unfortunately, most use the Github API for this which seems to be quite unreliable and buggy.
GitHub上的星史 。 類似的工具包括StarTrack , Stargraph和該項目 。 不幸的是,大多數人為此使用Github API,這似乎非常不可靠且有錯誤。
Google Trends, of course, works out of the box, but seems somewhat more spiky and less informative than the other two measures.
Google趨勢當然是開箱即用的,但與其他兩項指標相比,它顯得有些刺眼且信息量不足。
Google Cloud has also made both Stack Overflow and Github data available as part of their Public Datasets program. And here’s a post that digs into some insights from Stack Overflow.
Google Cloud還已將Stack Overflow和Github數據作為其公共數據集計劃的一部分提供。 這是一篇文章 ,探討了Stack Overflow的一些見解。
示例:Flask與Django (Example: Flask versus Django)
Flask and Django are two popular Python web application frameworks that I personally have a lot of experience with. Flask is lighter weight and more flexible, while Django has much more built in and is more feature rich.
Flask和Django是兩個流行的Python Web應用程序框架,我個人對此有很多經驗。 Flask的重量更輕且更靈活,而Django具有更多內置功能和更多功能。
Let’s see how these rank using our methodologies above:
讓我們看看如何使用上面的方法對它們進行排名:
Github Stars: Django currently has 40k stars on Github while Flask has 42k stars — they are neck and neck. I tried several of the Github history trackers, but they all timed out on me.
Github星星 : Django目前在Github上擁有4萬顆星星,而Flask有42k顆星星-它們并駕齊驅。 我嘗試了一些Github歷史記錄跟蹤器,但它們對我都超時了。
Stack Overflow: Django has 191k questions, while Flask has 26k questions. The trend shows Flask picking up, but still a long ways away.
堆棧溢出 : Django有191k個問題,而Flask有26k個問題。 趨勢表明Flask有所回升,但還有很長的路要走。
Google Trends: Django is currently about twice as popular as Flask, according to Google Trends.
Google趨勢:根據Google趨勢,Django當前的流行度是Flask的兩倍。
Note that of course, relative popularity is only one factor in choosing between libraries. Between Flask and Django, for example, I tend to choose Flask for quick prototyping as well as when I am developing a non traditional app and need a ton of flexibility. I tend to choose Django when I’d like out of the box functionality for things like user accounts, administration, and built in ORM.
請注意 ,當然,相對流行度只是在庫之間進行選擇的一個因素。 例如,在Flask和Django之間,我傾向于選擇Flask來進行快速原型制作以及在開發非傳統應用程序時需要大量靈活性。 當我想要開箱即用的功能(如用戶帳戶,管理和內置ORM)時,我傾向于選擇Django。
Hope this helps! Thanks for reading.
希望這可以幫助! 謝謝閱讀。
翻譯自: https://www.freecodecamp.org/news/how-to-choose-between-open-source-libraries-using-popularity-c71677785542/
安卓流行布局開源庫