破除迷思系列:高手一定唔用Windows ?
2018-11-19
早一排有朋友想學寫程式,他忽然問我:「我要買一部Mac 機嗎?」,開始的時候我也不太理解原因,後來細問之下,才知道朋友覺得通常看Youtube時,片中的Programmer都愛用Mac,一些 Coding Bootcamp 甚至乎非Mac 不教。因此他認為一個高手必用Mac ,只有對電腦不熟的人才會用Windows。
http://blog.nerdalert.com/windows-10-vs-mac-os-sierra/
於初學者而言
要分析這個問題,我會用一個典型Node 開發者的開發工具作例:要開發Node 軟件,無非需要的是Node本身;一個好的文字編輯器如Visual Studio Code 或 Atom ;及一個最新版本的瀏覽器如Google Chrome 或 Mozilla Firefox。 有趣的是,以上三個都係支援跨平台的:也就是Windows、 Mac 、甚至乎 Linux也都會有良好支援。
如果你要開發的是手機程式,在Windows 、Mac、Linux 都可以開發 Android 手機程式,只要安裝Android Studio就可以開始開發。而iOS程式只能夠在Mac的環境 開發,因為iOS開發需要安裝 Xcode,而Xcode只能安裝在Mac 上。
https://medium.com/angelhack/to-develop-an-ios-or-android-app-that-is-the-question-98cee05280d0
「我要買一部Mac 機嗎?」,簡單的答案是:「如果你需要開發iOS app的話,你就需要一部Mac 了。」
於專業軟件工程師而言
如何你已寫程式多年,可能會說:「不是啊,Mac 是 Unix System,比起Windows 是一個更好的開發者平台。」
此話有其合理之處,Mac 一貫以來的優勢是繼承了多年來Unix 穩定的開發者環境,加上一個流𣈱秀麗的使用者界面。而由於Unix有bash,而bash本身支援很多有用的Command Line tools ,所以使用Mac的開發者亦很常使用bash 去解決問題。反之在Windows 10以前的 Windows,使用者能夠使用的原生 command line tools就只有 Command Prompt 和 Powershell,而很多開發者需要的工具都以command line為基礎:例如 Node、Ruby 、Python等等都是以Command Line 為主的工具。
https://www.techrepublic.com/article/windows-10-how-well-does-it-run-ubuntu-bash/
但這已經是Windows 8 或以前的問題了,自從 Microsoft 於Windows 10發行 Bash on Ubuntu on Windows,就扭轉了 Windows 一直以來的短板。因為Bash on Ubuntu 是一層 Compatibility Layer,也就是方便了開發者可以在Windows 直接運行一個 Ubuntu image,以後 Windows 既有其一貫的優勢,也就是有大量專業軟件支援,亦有 Unix開發者環境的優勢。與Mac比較之下亦毫不遜色。
「我要買一部Mac 機嗎?」,深奧的答案也是:「如果你需要開發iOS app的話,你就需要一部Mac 了。」
Comments
Read More
破除迷思系列:用Command Line 的都是Hacker?
2018-11-13
大家如果有Programmer 的朋友,你應該早就發現他們使用的軟件與平常電腦使用者很不同,其中最引人注目的就是一個黑底淺色字、無任何圖案的軟件,而你的Programmer 朋友在上面飛速打字,然後密密麻麻的文字就慢慢向上褪出螢幕,大家總會忍唔住補上一句:「嘩!好似Matrix啊!」 或者「你係Hacker嚟架?」
四個原因令Linux更適合作Server
2018-12-08
在Tecky Academy教學中,間中會有同學問:「點解唔用Microsoft Windows做Server?用Linux有咩好處?」 誠然,於消費者電腦(不計算智能電話) 市場中,Windows有七成市佔率,Mac佔了一成,Linux只有可憐的一個百分比。為何在伺服器的市場上,卻是反而Linux占有約六成,擁有最大的市場份額呢?