Exchanges
應該使用什麼程式語言來開發比特幣交易軟體?為什麼?
我只聽說 PHP 很糟糕(例如,在 Mt. Gox 的上下文中),更有效/更安全的語言對於匹配訂單和帳戶安全性更可取。哪種程式語言,由於什麼原因,會更好?
無法知道交易所使用了哪些技術。
金融和交易軟體行業通常使用 C++、C# 和 C,因為它們可以針對實時交易所需的低延遲/高頻行為進行優化。Java、F#、Python、VBA、Haskell 以及其他程式語言也被使用過,但這完全取決於個人喜好、您或您的團隊熟悉哪些技術、哪些開源(或非開源)模組是什麼那裡將阻止您重新發明輪子以及超出本論壇範圍的更多內容。
了解交易所使用的技術的另一種方法是監視其招聘廣告。儘管如此,你得到的可能並不准確,或者它可能指的是該交易所的另一個或新產品或服務,甚至是現有技術向其他技術的遷移,但你仍然會有所了解。
很多金融行業更喜歡Python。一些卓越的比特幣交易所,如 Bitstamp 和 LocalBitcoins 是建立在 Python 和Django網路框架之上的(儘管存在您可能想要使用的其他網路框架)。
選擇 Python 的原因包括
- 開源生態系統,有很多模組可供選擇,比如比特幣
- 它不僅是 Web 開發語言,而且在科學計算中擁有大量使用基礎,使其成為數據分析和數字運算的理想選擇(參見例如IPython、NumPy項目)。這使得 Python 與 Ruby 不同,後者更重於 Web。
- 與 PHP 應用程序相比,Python 應用程序具有非常好的安全記錄。要確認這一點,請參閱程式語言、相關框架(Python、PHP)的 CVE 條目
- 與更多的靜態語言(如 Java 和 C#)優化 CPU 綁定性能不同,Python 優化了開發時間,使其非常高效。如果您的服務越來越受歡迎並且您有錢可以花錢,您總是可以將您的程式碼移植到更重的平台上。如果您的項目不是由大公司支持,而是更面向創業公司,這一點尤其重要。