JetBrains大力推廣Kotlin為哪般?

weixin_33766168發表於2017-12-25

在之前一篇備受關注的文章“Kotlin與Java之爭”中,Vasiliy Zukanov講述了發生在Kotlin與Java之間的一場沒有硝煙的戰爭,並認為企業從Java轉向Kotlin可能需要付出更大的代價。最近,Vasiliy繼續發文,對JetBrains大力推廣Kotlin背後的原因進行了深入分析。

\\

外部一致認為,JetBrains大力推廣Kotlin主要是出於開發效率方面的考慮。他們認為Java在某些方面存在“不足”,所以他們要發明一門新的語言,提升開發效率。否則的話,JetBrains為什麼要費這麼大勁開發Kotlin,並把它用在自己的專案當中?

\\

但事實果真如此嗎?作為開發人員,他們通常只能看到專案的區域性,無法從全域性看到整個專案的成本情況,他們認為花幾年時間使用一門全新的語言來提升開發效率是理所當然的事。而JetBrains作為一家非常成功的公司,如果說它在推出Kotlin之前沒有給投資人帶來任何回報那是不可能的。開發軟體產品需要花費鉅額資金,薪水、市場推廣等方面的費用動不動就是上百萬甚至上千萬美金。如果說要靠開發一門新語言提升生產力來獲得更多回報,那可能這家公司早就不復存在了。更何況,並沒有實際證據表明Kotlin給他們帶來生產力的提升。但不管怎樣,JetBrains作為一家成功的商業軟體公司是不爭的事實。JetBrains之所以要大力推廣Kotlin,跟它背後的商業策略不無關係。

\\

JetBrains的主要業務是開發和銷售軟體開發工具,IDE是他們最主要的產品線。而程式語言對IDE來說至關重要,這就是為什麼JetBrains要極力將Kotlin商業化。但程式語言的商業化太難做,因為切換程式語言對於企業來說代價巨大,所以很難說服企業改用其他程式語言。從IDE廠商的角度來看,他們需要為支援的每一種語言開發工具。現在的開發語言這麼多,每個開發者和企業又都有自己的偏好,所以IDE廠商必須憋足了勁開發一大堆工具。對於JetBrains來說,最重要的是想辦法把開發者籠絡到同一門易於維護的語言上,而最好維護的語言莫過於自家開發的語言了。

\\

反過來說,IDE對於程式語言來說也是至關重要的。程式語言難以商業化,那麼IDE呢?不同的IDE有不同的功能特性和外觀,開發者也會有自己的喜好,所以IDE也是難以互相替代的。不過相比程式語言,要切換IDE還是比較容易的。那些不願意掏錢為個人專案購買IntelliJ許可的開發者完全可以使用開源的IDE代替,比如Eclipse、Atom等等。所以說,JetBrains可能面臨流失使用者的風險,因為他們有太多可替代的IDE。不僅如此,如果出現了一門新語言,大家蜂擁而上,那麼JetBrains能夠分到的市場份額可能更小了。所以,JetBrains要想在IDE大戰中保持市場份額,最重要的是不要讓開發者有機會切換到其他IDE,那怎樣才能做到這一點呢?答案就是把開發者固定在自己開發的語言上。

\\

除了以上兩點,推廣Kotlin對JetBrains來說還有第三個好處,那就是順便提升他們的非IDE工具的市場份額。除了IDE產品,JetBrains還推出了持續整合伺服器產品TeamCity和問題跟蹤系統YouTrack等。一般來說,使用了Kotlin和IntelliJ的使用者也很有可能會使用他們家的其他產品。

\\

綜上所述,從長遠來看,自家語言加上一整套開發工具棧,極有可能讓JetBrains步微軟.NET生態系統的後塵。如果這是他們的終極目標,那麼JetBrains極有可能會取得成功。

相關文章