網頁

2020/6/6

2020 Java Web程式開發筆電採購指南 Java Web Programmer Laptop Buying Guide

我的2020年寫Java Web程式的筆記型電腦採購策略如下。

本指南是以身為Java後端工程師的自己來考量,因此僅適用於後端網頁應用程式的開發人員(Java,Python,Node.js,RoR,PHP,Go..),不適用Windows桌面應用程式、IOS、Android手機開發人員。


2015年剛入行時,靠公司補助30,000元(實際上只有15,000,因為我做半年就閃了)買了一台工作用的筆電ASUS P2420LA-0051A5200U。當初買來是工作用,但實際上僅有兩份工作要自備電腦,其餘都是用公司的。

當時只買4GB的等級,很快不夠用,所以自己加了4GB總共8GB RAM,硬碟還是7200 RPM的傳統機械硬碟。這台筆電至今仍是我的"主力"電腦。

這台筆電用到現在完全沒故障過,狀況良好,但最近因為一些原因打算買新的筆電,原因包括作業系統舊,記憶體太少,硬碟不是SSD,需要Linux Core及bash指令介面,還有外接的USB port接觸不良。

舊電腦的作業系統是Windows 7專業版。之前也用過Windows 10,但我還是比較喜歡Windows 7的樸實。直到最近安裝Docker才發現不太方便,很需要原生的Linux Core及Bash環境。而Windows 7只能透過Virtual Box虛擬機安裝,而Windows 10用Hyper-V其實也是個虛擬機。

此外許多主流程式語言在Linux環境比較友善,如Node.js,Python,各前端框架工具等,Gradle及Maven指令操作上用bash也比較容易。

以及git的使用也是在Linux Bash比較方便。我習慣使用git命令,而在Windows上必須另外使用git bash,操作上並不直接,例如複製貼上就不是按Ctrl + CCtrl + V

而8GB的RAM在開發上工作上顯得很吃力了,例如同時跑前端Angular及後端Spring Boot,或Spring Cloud多開幾個Spring Boot實例,多開一個IDE,開MySQL Workbench或Oracle SQL Developer,開Postman,開Docker,開VM,加上一堆Chrome分頁根本不夠。

至於硬碟是否是SSD比較無感,即使在Windows 7用傳統硬碟我也沒感到什麼不舒服的慢,而且這台ASUS Windows筆電我也從不關機,當機次數也非常少。

所以新的筆電要有Linux Bash,這意思幾乎等同於買Mac。但買Mac要克服一個既簡單又困難的問題,也就是錢錢$$。MacBook價格超貴,買一台要存好幾個月,與同硬體規格的PC硬是多了10000-15000元的價差,而且還要另外加上Apple Care約10,000元的費用,總之就是貴,捨不得買。

所以又思考要不然買PC筆電裝Windows 10和Ubuntu雙系統,但這做法可能要搞定Ubuntu的安裝,Linux驅動安裝等問題,此外Linux也缺少很多強大商業軟體的支援,總之要用到上手有一段長路要走

而另個可能比較簡單的方案是使用Windows 10的WSL安裝Linux Ubuntu子系統,但子系統在環境變數,檔案目錄,系統配置,連接埠等是否和Windows 10有掛勾是另外個問題。


總之這陣子在網路上逛了一圈,結論還是只能買Mac了,因為問題最簡單,把錢砸下去就沒問題了。


衍伸出的下一個問題是,該買什麼樣的Mac?因為需求是macOS作業系統提供的Linux環境,有16GB的RAM,256GB的SSD,Core i5 CPU,而滿足這些要求的方案有以下選擇,一是2020年版本的MacBook Air,一是即將推出的2020年版本的MacBook Pro 13吋。

  • MacBook Air 10th Gen Core i5 16GB記憶體 512GB SSD,官網價格47,900元(41,900元 + 6,000元(+8GB RAM))。
  • MacBook Pro 8th Gen Core i5 16GB記憶體 256GB SSD,官網價格47,900元(41,900元 + 6,000元(+8GB RAM))。
  • MacBook Pro 8th Gen Core i5 16GB記憶體 512GB SSD,官網價格53,900元(47,900元 + 6,000元(+8GB RAM))。
  • MacBook Pro 10th Gen Core i5 16GB記憶體 512GB SSD,官網價格57,900元。

下面則是Geekbench Browser各Mac型號CPU的效能跑分


效能最好的MacBook Pro 10th Gen Core i5與MacBook Air 10th Gen Core i5價差為10,000元。


MacBook Air 2020 10th Gen Core i5的多核效能其實相當於iMac 27吋 2013(Intel Core i5-4570),甚至還勝過MacBook Pro 15吋 2013(Intel Core i7-3635QM),且僅略低於MacBook Pro 2015 Retina(Intel Core i7-3720QM)。此外就算在我這台只有Intel Core i5-5200U 2 core的ASUS 2015年舊筆電上開發Java程式也是夠用。


另外查資料時發現目前工作公司配的是MacBook Pro 13吋 2017 Core i5-7360U(單核853,多核2022),雖然比2020年 MacBook Air Core i5 i5-1030NG7差一點,但每天在Java Web程式開發的工作中用起來仍很順暢,沒有卡頓的感覺。

綜合在私人及工作開發Java Web應用程式的經驗及MacBook及Intel CPU的產品週期來看,預期MacBook Pro 10th Gen Core i5 最多用7年;MacBook Air 10th Gen Core i5 最多用5年。

MacBook Pro 10th Gen Core i5 加上AppleCare約67,900元,則以7年來算每年使用成本為9,700元。從PTT MacShop來看MacBook Pro 2013 Core i5 16GB RAM 的二手價約15,000元,代表MacBook Pro 2020 Core i5 16GB RAM保存良好則成本為52,900元(67,900 - 15,000),每年使用成本為7,557元。

MacBook Air 10th Gen Core i5 加上AppleCare約57,900元,則以5年來算每年使用成本為11,580元。從PTT MacShop來看MacBook Air 2013 Core i5 8GB RAM 128GB SSD的二手價約11,000元,代表MacBook Air 2020 Core i5 16GB RAM保存良好則成本為44,900元(57,900 - 12,000),每年使用成本為8,980元。

算下來買MacBook Pro 10th Gen Core i5比較划算,效能較好且成本較低,如果預算允許乾脆把RAM加到32GB吧。


以下回答我自己原先的問題:

  • Q:買Mac還是PC?
    A:Mac,你最重要的原始需求是Linux bash環境。
  • Q:買PC裝Ubuntu不行嗎?
    A:你時間很多嗎?你要專注在程式開發上而不是搞底層硬體驅動的問題。
  • Q:MacBook Air可以用在Java Web程式開發上嗎?
    A:可以,但CPU要Core i5以上,RAM加到16GB。
  • Q:買MacBook Air還是MacBook Pro?
    A:有錢買MacBook Pro,且要買Intel 10th Gen Core i5版本。
  • Q:買MacBook Pro 10th Gen i5還是買MacBook Pro 8th Gen i5?
    A:10th Gen i5,不過預算真的不夠的話MacBook Pro 8th Gen 256GB SDD的版本也可,RAM加到16GB。
  • Q:那打遊戲呢?
    A:醒醒吧你根本沒時間玩遊戲,這幾年你有在玩遊戲嗎?要玩遊戲去買PS4 PS5。
  • Q:哪來那麼多錢呢?
    A:在省吃儉用的情況下保守四個月應該可以存夠,還有你可以選擇信用卡12期分期一個月約5000元。
  • Q:何不貼一點直上MacBook Pro 16吋?
    A:Web開發其實不用那麼好的CPU,只有在編譯時才會用到CPU,而且通常只用單核,還不如把RAM加大。除非你要當Youtuber剪影片﹔要大螢幕就外接螢幕就好。

最後我買了MacBook Pro 13吋 Gen 10 Core i5

沒有留言:

張貼留言