安卓流行布局開源庫_如何使用流行度在開源庫之間進行選擇

安卓流行布局開源庫

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:

在開發技術產品時,我們可以做出的最關鍵的選擇之一是在競爭的庫和框架集之間進行選擇。 關鍵因素之一是相對受歡迎 ,原因如下:

  1. 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.

    最佳代理 。 尤其是在開源中,“市場”相當有效。 開發人員通常傾向于最好的技術,并用腳投票。

  2. 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.

    幫忙 。 盡管正式文檔至關重要,但堆棧溢出問題和中級教程有時甚至對提高學習曲線和調試更為有益。 練習者的代碼片段和技巧極大地提高了開發速度并產生了巨大的影響。

  3. 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.

    人才 庫越受歡迎,您越有可能找到知道如何使用它來幫助您構建產品的人。

  4. 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庫的流行程度:

  1. Stack Overflow questions

    堆棧溢出問題

  2. Github stars

    Github星星

  3. 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:

因此,在評估競爭性庫時,通常會經常查看這些統計數據隨時間變化的圖表。 有幾個應用程序可以使我們做到這一點:

  1. Stack Overflow Trends. Open source tool by Rob McDiarmid. Also directly from Stack Overflow.

    堆棧溢出趨勢 。 Rob McDiarmid的 開源工具。 也可以直接從Stack Overflow中獲取 。

  2. 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,這似乎非常不可靠且有錯誤。

  3. 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:

讓我們看看如何使用上面的方法對它們進行排名:

  1. 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歷史記錄跟蹤器,但它們對我都超時了。

  2. 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有所回升,但還有很長的路要走。

  3. 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/

安卓流行布局開源庫

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/392156.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/392156.shtml
英文地址,請注明出處:http://en.pswp.cn/news/392156.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

TCP/IP分析(一) 協議概述

各協議層分工明確 轉載于:https://www.cnblogs.com/HonkerYblogs/p/11247604.html

window 下分linux分區,如何在windows9x下訪問linux分區

1. 簡 介Linux 內 核 支 持 眾 多 的 文 件 系 統 類 型, 目 前 它 可 以 讀 寫( 至 少 是 讀) 大 部 分 的 文 件 系 統.Linux 經 常 與Microsoft Windows 共 存 于 一 個 系 統 或 者 硬 盤 中.Linux 對windows9x/NT 的 文 件 系 統 支 持 的 很 好, 反 之 你 想 在windows 下…

C# new關鍵字和對象類型轉換(雙括號、is操作符、as操作符)

一、new關鍵字 CLR要求所有的對象都通過new來創建,代碼如下: Object objnew Object(); 以下是new操作符做的事情 1、計算類型及其所有基類型(一直到System.Object,雖然它沒有定義自己的實例字段)中定義的所有實例字段需要的字節數.堆上每個對象都需要一些額外的成員,包括“類型…

JDBC01 利用JDBC連接數據庫【不使用數據庫連接池】

目錄: 1 什么是JDBC 2 JDBC主要接口 3 JDBC編程步驟【學渣版本】 5 JDBC編程步驟【學神版本】 6 JDBC編程步驟【學霸版本】 1 什么是JDBC JDBC是JAVA提供的一套標準連接數據庫的接口,規定了連接數據庫的步驟和功能;不同的數據庫提供商提供了一…

leetcode 778. 水位上升的泳池中游泳(并查集)

在一個 N x N 的坐標方格 grid 中,每一個方格的值 grid[i][j] 表示在位置 (i,j) 的平臺高度。 現在開始下雨了。當時間為 t 時,此時雨水導致水池中任意位置的水位為 t 。你可以從一個平臺游向四周相鄰的任意一個平臺,但是前提是此時水位必須…

2020年十大幣預測_2020年十大商業智能工具

2020年十大幣預測In the rapidly growing world of today, when technology is expanding at a rate like never before, there are plenty of tools and skills to explore, learn, and master. In this digital and data age, Business Information and Intelligence have cl…

如何使用MySQL和JPA使用Spring Boot構建Rest API

Hi Everyone! For the past year, I have been learning JavaScript for full-stack web development. For a change, I started to master Java — the powerful Object Oriented Language.嗨,大家好! 在過去的一年中,我一直在學習用于全棧W…

翻譯

令 $m>n>1$ 為正整數. 一個集合含有 $m$ 個給定的實數. 我們從中選取任意 $n$ 個數, 記作 $a_1$, $a_2$, $\dotsc$, $a_n$, 并提問: 是否 $a_1<a_2<\dotsb < a_n$ 正確? 證明: 我們可以最多問 $n!-n^22n-2m(n-1)(1\lfloor \log_{n} m \rfloor)-m$ 個問題&#…

720 智能硬件與 LeanCloud 云端的默契協作

【 玩轉 LeanCloud 】開發者經驗分享&#xff1a; 作者&#xff1a;謝子超 720技術負責人&#xff0c;從業十余年&#xff0c;一直負責軟件開發工作。 我們的產品是與監控和改善室內空氣質量相關的智能硬件&#xff0c;我們使用 LeanCloud 平臺已經有 2 年多了&#xff0c;借此…

linux cifs windows 慢,windows上使用dockerIO特別慢有沒有更優的解決方案?

復制一個大佬的回答Docker for Windows是在Hyper-V虛擬機上跑Linux&#xff0c;文件掛載是通過SMB協議從Windows掛載到Linux&#xff0c;文件讀寫都經過網絡&#xff0c;遇到Laravel這種每次啟動就要加載幾百個文件的框架&#xff0c;文件性能問題就尤其明顯。最好的驗證方法就…

編譯原理—詞法分析器(Java)

1.當運行程序時&#xff0c;程序會讀取項目下的program.txt文件 2. 程序將會逐行讀取program.txt中的源程序&#xff0c;進行詞法分析&#xff0c;并將分析的結果輸出。 3. 如果發現錯誤&#xff0c;程序將會中止讀取文件進行分析&#xff0c;并輸出錯誤提示 所用單詞的構詞規…

【BZOJ4653】[Noi2016]區間 雙指針法+線段樹

【BZOJ4653】[Noi2016]區間 Description 在數軸上有 n個閉區間 [l1,r1],[l2,r2],...,[ln,rn]。現在要從中選出 m 個區間&#xff0c;使得這 m個區間共同包含至少一個位置。換句話說&#xff0c;就是使得存在一個 x&#xff0c;使得對于每一個被選中的區間 [li,ri]&#xff0c;都…

為什么我們需要使用Pandas新字符串Dtype代替文本數據對象

We have to represent every bit of data in numerical values to be processed and analyzed by machine learning and deep learning models. However, strings do not usually come in a nice and clean format and require a lot preprocessing.我們必須以數值表示數據的每…

遞歸方程組解的漸進階的求法——代入法

遞歸方程組解的漸進階的求法——代入法 用這個辦法既可估計上界也可估計下界。如前面所指出&#xff0c;方法的關鍵步驟在于預先對解答作出推測&#xff0c;然后用數學歸納法證明推測的正確性。 例如&#xff0c;我們要估計T(n)的上界&#xff0c;T(n)滿足遞歸方程&#xff1a;…

【轉載】C# 理解泛型

術語表 generics&#xff1a;泛型type-safe&#xff1a;類型安全collection: 集合compiler&#xff1a;編譯器run time&#xff1a;程序運行時object: 對象.NET library&#xff1a;.Net類庫value type: 值類型box: 裝箱unbox: 拆箱implicity: 隱式explicity: 顯式linked list:…

javascript 作用_JavaScript承諾如何從內到外真正發揮作用

javascript 作用One of the most important questions I faced in interviews was how promises are implemented. Since async/await is becoming more popular, you need to understand promises.我在采訪中面臨的最重要的問題之一是如何實現承諾。 由于異步/等待變得越來越流…

linux 文件理解,對linux中文件系統的理解

首先在linux系統當中一個可被掛在的數據為一個文件系統1.在安裝linux過程中我們要進行磁盤分區&#xff0c;可以分根目錄/,‘/home‘&#xff0c;‘/boot’,swap等等這些分區&#xff0c;每一個分區(’/(根目錄)‘&#xff0c;’/home‘...)就是一個文件系統。2.文件系統分配完…

編譯原理—語法分析器(Java)

遞歸下降語法分析 1. 語法成分說明 <語句塊> :: begin<語句串> end <語句串> :: <語句>{&#xff1b;<語句>} <語句> :: <賦值語句> | <循環語句> | <條件語句> <關系運算符> :: < | < | > | > | |…

老筆記整理四:字符串的完美度

今天在寵果網上發現一道題目&#xff0c;求一個字符串的完美度http://hero.pongo.cn/home/index覺得這道題很有趣就挑戰了一下&#xff0c;結果沒有在規定的1小時里面寫完&#xff08;笑&#xff09;&#xff0c;多花了10分鐘終于做出來了。題目是這樣的&#xff1a;我們要給每…

nlp構建_使用NLP構建自殺性推文分類器

nlp構建Over the years, suicide has been one of the major causes of death worldwide, According to Wikipedia, Suicide resulted in 828,000 global deaths in 2015, an increase from 712,000 deaths in 1990. This makes suicide the 10th leading cause of death world…