本文來源於阿里巴巴資深技術專家無相在內網的分享,阿里巴巴中間件授權發佈。html
最近由於工做的關係,要將 Eclipse 的插件升級爲 IDEA 插件。升級過程當中,對 IDEA 插件作了些學習和研究,但願經過本文,對「爲何收費的 InteliJ IDEA 會比免費的 Eclipse有着更好的用戶口碑「這一現象,提供些我的的思考。java
經過這篇文章,您將瞭解到心流與人體工效的重要性,並使本身變得更強大,文章將從如下幾點展開:程序員
InteliJ IDEA 當前的市場狀況與表現;
IntelliJ IDEA 成功的緣由;
IntelliJ IDEA 在 IDE 設計器領域勝出的兩個關鍵點;
IntelliJ IDEA 對現實工做的啓示;
充分利用 IntelliJ IDEA 插件,使本身變得更強大;
InteliJ IDEA 的市場狀況與表現是如何?
2012年開始,IntelliJ IDEA 便迅速崛起,到了2016年,就佔領了開發者市場的 46% 分額。直至2018的最新結果:IntelliJ IDEA 的市場份額增加到了 55.4%,顯然贏得了18年 Java 領域的 IDE 王者之戰,甚至還有重構的大師 Martin Fowler 在他著名的blog上,對 IntelliJ IDEA 讚譽有加。並且根據 IDEA 的產品滿意度調查,其滿意度竟高達 98%。編程
從外國學者角度,分析 IntelliJ IDEA 爲什麼成功
不少國外學者也研究了 IDEA,它的成功之處歸結起來有如下兩點:架構
代碼的智能提示: IDEA 自主開發語言解釋器,作了深度的靜態分析,讓編程更加智能與高效,這是一項殺手級的特點功能;
沒有保存按鈕:每個你想使用功能,都有快捷鍵;
性能很是好,用戶的體驗及其流暢;
IDEA 不只對核心插件進行維護, 還提供了優秀的工具集,給予用戶一致的UX範式體驗;ide
以產品爲核心和根本,以 "更好用" 的設計理念和原則戰勝了不少競爭者;
IDEA 沒有銷售團隊,可是霸氣的營銷口號體現了其內容營銷的核心邏輯:」Try it. Test it. If you feel its better, use it「 ,沒有多餘的營銷,真正作到用產品說話;
相信大部分程序員,對 IDEA 的特性已經很是熟悉了。 接下來,咱們將分析其真正強大的緣由。工具
在 IDE 設計器領域裏,IntelliJ IDEA 爲什麼能勝出?
IDEA 的風靡與崛起,在於它聽從了兩個關鍵的設計哲學:性能
Every aspect of IntelliJ IDEA is designed with ergonomics in mind. IntelliJ IDEA is built around the idea that every minute a developer spends in the flow) is a good minute, and things that break developers out of flow are bad things. Every design and implementation decision considers the possibility of interrupting developer’s flow and seeks to eliminate or minimize it.學習
(這句話美得我不想翻譯。)測試
「Creative Flow」 or just 「Flow」 is a state of mind where you feel evenly attuned, and focused on the task at hand.
創造心流是一種思考狀態,是你感受平和或專一於手頭的任務的時刻,通俗的理解就是當你沉浸一件事時,有一種忘記時間與空間的感受。心流會讓你處於你最佳的意識狀態,McKinsey 在2010年的研究代表,當你處於心流狀態,你的工做效率比非心流狀態下的工做效率提升 500%。
經過這種設計理念的學習,不由暢想:若是愈來愈多的阿里產品,像IntelliJ IDEA的的產品體驗同樣,讓人處於心流,高效完成任務,總體的生產效率將會成倍提高。
IntelliJ IDEA 宣稱用人體工效學來設計IDEA, 即 」The capable and ergonomic IDE for JVM「。
咱們簡要地科普一下人體工效學:這是一門專一研究人體溫馨,經過產品設計減小疲勞、不溫馨的科學。在家居設計和人體工程學上,都會重點考慮這種設計理念,讓人們在使用時感覺到更溫馨、更高效率與更少的壓力。
接下來例舉兩我的體工效學的經典例子:
若是沒有佩戴式耳機的出現,客服同窗估計會瘋掉。
一撕得的包裝紙質量、膠水質量、人體工效學的拉鍊式設計,這三種要素在紙箱界都是業界第一。
人體工效學對軟件設計的提示:
統一的UX風格設計;
將複雜任務變成簡單任務;
將長任務分解成短任務;
由於人類的有記憶力的限制,因此要適當提供提醒,提供關鍵的輔助給用戶,讓他們徹底沉浸在覈心工做中,不被打斷。
(更多提示,能夠看參加文獻的第5篇文章。)
若是想體驗一下人體工程學的設計,IDEA的快捷鍵與無保存按鈕,你馬上就會明白。
對咱們現實工做有哪些啓示?
通過團隊的討論,咱們認爲 IDEA 的增加飛輪在於:優秀的設計理念,卓越的產品體驗,InteliJ IDEA 開放的社區,免費與專業收費並行的商業模式。IDEA 不斷更新迭代的路徑就是用更好的產品體驗,吸引到更多的用戶,用戶貢獻了更多的利潤,用來吸取更多的優秀人才,一塊兒開發更好的產品。這給予咱們現實工做的指導意義,產品要回歸至以人爲中心的設計理念:
心流的提示:羅列出用戶的任務,讓用戶儘量處於心流狀態,消滅致使任務低效的因素;
人體工效學提示:咱們在設計產品時,要充分考慮用戶使用產品的場景,這是一個一體化的設計,就像星環產品設計。寫代碼只是軟件研發的一環,需求創意提出、需求研發上線、業務商業分析這些總體環節都要考慮,讓用戶溫馨地完成任務;
智能提示:採用人工智能來提高任務的完成效率。IntelliJ IDEA的智能代碼提示,是一個經典的案例;
最後:我我的會將心流與人體工效學的設計思想,融入至技術產品設計過程當中,期待咱們團隊的實踐篇。
小編推薦兩款創造心流的 IDE 插件:
一款熱部署插件,幫助開發者在項目處於運行狀態下任意修改 Java 文件並動態反饋到運行的項目中。點擊瞭解更多
幫助開發者更高效地開發、測試、診斷並部署應用,利用此插件,可以方便地將本地應用一鍵部署到任意機器(瞭解更多:體驗連接)。
參考文獻
https://www.javaworld.com/art...
https://www.youtube.com/watch...
http://catalyticcolor.com/sci...
https://en.wikipedia.org/wiki...
http://ergo.human.cornell.edu...
本文做者:
無相,阿里巴巴資深技術專家,多年擔任匯金平臺的架構師,是阿里tbbpm工做流引擎的做者。曾在阿里雲負責過雲產品 0 至 1 的商業化,最近幾年在負責阿里的店鋪&詳情等系統的中臺建設。