これからプログラミングを始めようとすると、Macをおすすめされることが多いかと思います。
プログラミングスクールによっては、「使うOSはMac限定」と指定がされていたりもします。
とはいえ、今までWindowsしか使ってこなかった人も多くいらっしゃるかと思います。この記事を書いている私自身も、プログラミングの世界に触れるまではWindowsしか使ってきませんでした。
本記事では、なぜプログラミングを学ぶのにMacがおすすめされるのかを解説していきたいと思います。
Contents
WebプログラミングはLinuxサーバー前提で話が進むことが多い
Webプログラミングを学ぶにあたって、Webサーバーの理解は必須です。
このWebサーバーですが、OSのシェアでみるとLinuxが圧倒的に多いのです。
WindowsのWebサーバー「Windows Server」も、大規模な業務システム構築案件で使用されることがありますが少数派です。
なので、必然的にLinuxの基本的な操作方法を覚えることになります。
Macのコマンドライン(黒い画面)は、UNIXをベースに作られているため、Linuxで使えるコマンドをほぼそのまま使用することができます。
開発環境では自分のPCにサーバーを作って操作しますが、本番用のWebサーバと全然違う操作方法だと混乱してしまうので、なるべく本番環境と類似した環境で学習をするようにするのです。
慣れてくると開発PCにそのままサーバープロセスを立てるのではなく、Dockerなどの仮想化環境技術を用いてMacの下にLinuxサーバを立てて開発するようなプロセスを取ることになります。
最初からRubyやPythonが標準でインストールされている
MacにはRubyやPythonが購入当初からインストールされています。
ですので、RubyやPythonを動かすだけなら買っていきなりコーディングを始めることができます。
実は環境構築というのは、職業エンジニアでも苦労することがあるほど難易度の高い作業です。
「とりあえず買ってコードを書けば動かすことができる」というのはMacを利用する大きなメリットとなります。
MacにインストールされているRubyやPythonはバージョンが古い可能性もあるので、最新バージョンを使いたいときは適宜環境構築をする必要があります。
Windowsだとプログラミングの環境構築で躓くことも
Windowsの黒い画面は、MacやLinuxと見た目は似ていますが、「MS-DOS」というMicrosoft独自のコマンド体系を持っていて、Linuxで使用できるコマンドが使用できないことがあります。
例えば、カレントディレクトリのUNIX系だと「ls」コマンドですが、MS-DOSだと「dir」コマンドです。
インターネットの情報はLinux前提の情報が圧倒的多数のため、Windowsに対応した情報は少なく、学習途中で挫折するリスクが高くなります。
また、Linuxベースで作成されたツールなどはWindowsに対応していなかったり、思わぬバグを引き起こすことがあります。特に仮想化環境はWindowsに完全対応しているとは言いづらい状況にあります。
どの機種を買っても、プログラミングに必要なスペックは十分満たしている
コーディング作業中はたくさんのソフトウェアを同時起動した状態になることが多いです。
エディタとしてVisual Studio Codeを立ち上げ、Google Chromeで大量のタブを開いてインターネットで調べ作業、裏ではDockerなどの仮想化技術を使用してOSの中にもう一つOSを立ち上げる…といった状況は頻繁に発生します。
なので、開発に使用するPCは一定以上のスペックを持ったPCを使うことが推奨されます。
一昔前の「ネットブック」と呼ばれるインターネットのブラウジングに特化したWindowsPCなどではスペックが耐えられないこともあります。
Macは多少値が張りますが、どの機種を買ってもプログラミングに最低限必要なスペックは満たしています。
【2018年10月追記】先日、Macの新型の発売がAppleから公式発表されました。これにより既存モデルの価格が値下がりすることが予想されますので、2016~2017モデルを中心に調べていくと、より安く購入することができるかもしれません。
新品ではなく、「整備済製品」を利用すると、定価より安くMacを購入することができます。
【豆知識】Apple製品が安く買える!整備済調整品のメリットとデメリットとは? | カミアプ
多少値が張る投資となりますが、プログラミングスキルを身につけると元は十分に取れるので、ぜひ購入を検討してみてください。