自分は現在、エンジニアとして働いており、現在は主にWIndowsのPCを使って開発を行なっているのですが、プログラミングスクール受講時はMacPCを使用してプログラミングの勉強を進めてきました。
先に結論から言うと、初学者がプログラミングを勉強するならまずはMacで学習を進めることをオススメします。
Contents
Macでプログラミングを勉強するメリット
Macはプログラミング言語が標準で搭載されている
プログラミング初学者が最初に手をつけやすい言語として、PHPやRubyといったものがあります。
Macではこれらの言語が元々の機能として、標準で搭載されています。
一方でWindowsではこれらの言語を使う場合、環境構築と呼ばれる開発を行うためのインストール作業を行わなければなりません。
Macでも本格的に開発を行う場合は環境構築が必要にはなってくるのですが、まずは簡単なプログラミングコード書く練習から開始するという意味ではMacの方が使いやすいです。
また、プログラミングではMacではターミナル、Windowsではコマンドプロンプト、あるいはPowershellと呼ばれるツールを使用しながら動かしていきます。
これらは簡単に言うと、PCに命令を送るためのリモコンのようなツールです。
例えば、デスクトップにファイルを作成したい場合もコマンドを打つことで作成することができます。
ただ、このリモコンの操作方法もMacとWindowsでそれぞれ異なり、初学者が操作に慣れるという観点でも、Macのターミナルをまずは使ってみることをオススメします。
エラー時の解決手段が少ない
プログラミング開発を行う上で避けて通れないのがエラーです。
このエラーは基本的には自分自身でネットの情報を参考にしながら、解決していく必要があるのですが、情報量に関してはMacの方が圧倒的に多いです。
さらにWindowsの場合、参考になる記事を見つける事ができたとしても、5年前ぐらいの情報であったりすることもよくあります。
プログラミングは情報の陳腐化が激しいので、そのような古い情報を参考にして修正してしまうと最悪、別のバグが発生してしまうこともあり、開発も非常にやりづらいです。
一方でMacではググったりQiitaというサイトで調べれば、ある程度解決出来ることも多いので初学者でも開発はやりやすいでしょう。
Webアプリケーションを開発しやすい
PHPやRubyは主にWebアプリケーションを開発するために用いられる言語です。
上記の補足として環境構築といった準備が簡単でエラー解決のための情報も豊富だと、Webアプリケーションを開発する作業も非常にスムーズです。
そもそも、Saasと呼ばれる自社開発系のWeb企業でWindowsを使用して、Webアプリケーションを開発している現場はほとんどなく、大半はMacPCで開発を行なっています。
そのため、iOSアプリやWebアプリケーション開発に将来的に携わりたいという場合はMacを選んだ方が良いでしょう。
作りたいサービスによってはWindowsも
WIndowsで開発するサービスは主に金融機関や役所、一般企業の販売管理や経理といった大規模な基幹業務システムに関わるアプリケーションを作ることが多いのです。
一般的に上記で挙げたような組織では大半がWIndowsを使っているため、開発環境もそれに合わせてWindowsを用いて作業をしなければならないのが大きな理由ですね。
また、これらの仕事はWeb系企業の領域ではなく、SIerと呼ばれるエンジニアが開発を行います。
そのため、SIerの詳しい仕事内容はここでは割愛しますが、もし上記のような業務アプリケーションを将来開発したいのであれば、Windowsを触ってみるのも良いでしょう。
ただし、選択する言語はPHPやRubyではなく、VBAやC#、.NETといったようなWindows環境下で扱いやすい言語を触ってみることをオススメします。
まとめ
冒頭でも述べたように、まず初学者がプログラミングを学習するのであれば必ずMacを選びましょう。
ただ、将来的に基幹システムのようなクライアント先がWindowswを使用しているといった環境に依存してしまうサービスを開発したいのであれば、1度Windowsも触ってみることをオススメします。
Warning: Trying to access array offset on value of type bool in /home/byksi/lifebyksi.com/public_html/wp-content/themes/jin/cta.php on line 8
Warning: Trying to access array offset on value of type bool in /home/byksi/lifebyksi.com/public_html/wp-content/themes/jin/cta.php on line 9