【現役プログラマが教える】プログラミングに適したパソコンは何か?

プログラミングにおすすめのパソコン

プログラミングに適したパソコンといっても、扱うプログラミング言語、記述するコードが大規模なものか、データ量は多いかなどによって異なり一概には言えない。

しかし最低限のスペック、コードを見る領域を広くとれるモニターなど、行うプログラミングの種類によらず話せることも多い。

そこでWeb系、AI学習、ゲームなどプログラミングの種類ごとに適切なパソコンの特徴を述べ、その後プログラミングを行う上で共通して必要な最低限のスペックや、プログラミングにおすすめのパソコンを紹介をしていく。

読み終えると、自分のやりたいことや予算に応じたパソコンを選べるようになるはずである。それでは始めていきたい。

現在のパソコンセール・お買い得情報+

この記事の目次
  1. プログラミングの種類による最適なOSとGPUの選択
    1. Web系プログラミング
    2. iOSプログラミング
    3. 科学技術計算
    4. AIプログラミング
    5. ゲームプログラミング
  2. プログラミングに必要な最低限のスペック
    1. メモリは8GB
    2. ストレージはSSD
    3. CPUはPassMarkで8000点
    4. 高度な3Dゲーム開発をする場合は高性能なGPUを搭載
  3. その他プログラミングに適したパソコンでプラスとなる要素
    1. CPUはIntelよりRyzenがおすすめである
    2. 縦長ディスプレイ
    3. Thunderbolt対応
    4. ノングレア液晶
  4. デスクトップかノートのどちらがおすすめか?
  5. プログラミングにおすすめのパソコン
    1. mouse X4-R5
    2. Macbook Air
    3. ASUS LOG Flow X13
    4. フロンティアデスクトップPC
    5. G-Tune E5シリーズ

プログラミングの種類による最適なOSとGPUの選択

プログラミングで何を作りたいか?あるいは何の解析を行いたいのかなどの目的により、使用するOSとGPU搭載をすべきか否かが異なってくる。

プログラミングの種類をパソコンの構成に影響を及ぼす観点から分別するとWebプログラミング、iOSプログラミング、科学技術計算、AIプログラミング、(高度な)3Dゲームプログラミングの5つに分けることができ、それは下記のようになる。

プログラミングの種類別おすすめパソコン
OSWindowsMac
GPUの有無GPU無GPU有N/A
Webプログラミング
iOSプログラミング××
科学技術計算
AIプログラミング
3Dゲームプログラミング
◎ 適している 〇 可能 △ 厳しい場合がある × 不可能

GPUはグラフィックボード、グラボとも言われ、3Dの描画を高速にする目的で発展してきたが、本質的には並列に大量の演算を可能とするプロセッサーであり、行列演算が多いAIの学習や、科学技術の計算を桁違いで高速化することが可能である。

次の節では、プログラミングの種類を具体例を踏まえてもう少し詳細に解説する他、何が適しているのか、何が厳しいのかなど表の理由を説明していく。

Web系プログラミング

WindowsとMacどちらで行っても大して差は無く、いずれも快適に開発できる。

WebプログラミングはJavaScript/HTML/CSSなどWebブラウザで動作可能な言語の他、PHPRubyPythonJavaNodejsなどサーバーサイドで動作する言語も含む。Webサービスを提供するためのプログラミング全般である。

2018年頃まではWindowsで作成したプログラムをLinuxのレンタルサーバーに置くと、互換性の問題で動かないことが多かったので、その煩わしさを回避する目的でMac一択であった。

しかし今はWindowsでWSL(Windows SubSystem Linux)というLinuxを動かす仕組みがサポートされ、WSL2ではLinuxの根幹に当たるLinux KernelをWindowsに取り込むことで、それまで課題であった動作速度も改善された。

これによりWindowsとMacどちらでも慣れた方を使えば良いという状況が今である。

個人的な見解で言うと、Macはノートパッドでの操作が優れており、ページの切り替えがスムーズかつ滑らかに行えるため、マウスの場所も惜しいなど、外出先で使うことが多い場合はMacをおすすめする。感覚としては7割以上は外で使う人はMacが良いと思われる。

カフェマックはプログラミングに適しているが、カフェWindowsを行おうとは特に私は思わない。プログラマーがカフェでMacを使っているのは別にイキっている訳ではなく、マウスの代わりにコーヒーカップを置くことができるからである。

Windowsはマウスを使えば扱いやすく、ファイル操作は簡単でFinderというMacの使いにくいファイルエクスプローラーを使う必要は無い。特にデュアルディプレイにするとMacは操作がし辛いと感じる。

という事で、強いて言うならば外での使用が大部分で、スペースを有効活用したい人はMac、それ以外はWindowsが良いと思う。私の場合はカフェ作業ではMacを使い、家に帰るとWindows、書きかけのデータはGithubで共有という贅沢な使い方をしている。

iOSプログラミング

AppleのApp Storeへ向けてiOSのアプリケーションを開発するにはMacが必要となり、アップルの公式サポートでも極めて重要であると書かれている。

iOSアプリ開発用に開発されたプログラミング言語SwiftではもちろんMacが必要であるが、WebアプリケーションフレームワークのReactをBaseとしたReactNativeや、ゲームに特化したUnityなどクロスプラットフォーム環境で開発した場合でも最終的にアプリをリリースするためにはMacが必須となってくる。

クロスプラットフォーム開発のため、開発はWindowsでしたいが、リリースはMacという場合にはAmazon EC2 Macのインスタンスを用いてクラウド上で作業するという技もある。

ただ、価格が1時間当たり1.3ドル程度であったため、慣れないマックで作業してリリースのために3日かかったとすると1日8時間で39ドル、4300円程度掛かるということになる。まあ慣れないうちはあまりおすすめはしない

科学技術計算

分野にもよると思うが、プログラミング言語としてはC、C++、Fortran、Matlab当たりが良く使われている。

おおよそCPUだけで問題は無いが、流体力学で波の動きをシミュレーション、分子モデリング、災害予測など、3D表現や大量のデータを取り扱う場合には並列に多くの計算をこなす事ができるGPUの力を借りる機会も多い

CPUからGPUを呼び出す言語としてはCUDAというNvidiaのプログラミング言語が用いられるが、AppleはNvidiaと決別しているため、CUDAを扱うことはできない

また、科学技術計算に関して便利な機能を提供するフリーアプリがWindowsには複数存在するのに対してMacには存在しないことも多いため、これから使うソフトが何か分からない理工系の人はWindowsが無難である。

MacからWindowsを起動する方法もあるが、M1チップ搭載のMacでは互換性問題もあり、またOSが異なることで動作が遅くなるためおすすめはできない。

AIプログラミング

AIの基本は正解付きの大量のデータをコンピュータに学習させることで、未知のデータが来た時の予測を可能とするものである。

高い精度を得るためには、学習時にデータセットを少しずつ変更しながら何回も学習のループを繰り返す必要があるため、AIの学習はデータ数が大して多くない場合でも数分程度は普通にかかってくる

精度の高い学習済のモデルを作成するためには、学習のループを一定数回すこと以外、様々なアルゴリズムの選択や学習係数などパラメータをチューニング(ハイパーパラメータチューニングという)していく必要があるため、これらの計算を如何に速くできるかが効率化には重要となる。

ここでGPUの力を借りると、桁違いで学習時間を短縮できるため、無くても問題はないものの本格的にAIの開発を行いたい場合にはGPUは必須である。

やや余談ではあるが、AIの学習過程で計算精度はあまり要求されないことから、精度が悪い代わりに高速に計算できるTensorCoreというプロセッサがAI専用のGPUでは多く搭載される。

個人でもNvidia TitanなどAI専用のGPUは入手は可能であるが、値段が高いのであまり現実的ではない。研究室で予算が出るなら購入を検討するというぐらいだろう。

ゲームプログラミング

簡単な2Dゲームを作る程度であれば、どのような統合開発環境やプログラミングを使っても可能であるが、現在市場に出ているような複雑で高度なグラフィックのゲームを一から作るには膨大な時間が掛かる。

このため様々な場面で共通して使用できる処理を再利用可能な形に整えたゲームエンジンを用いて効率的な開発が行われる。UnityUnrealが多くのゲームで採用されており、両方ともクロスプラットフォーム開発が可能である。

Unityは2005年にMac OS向けに制作されたゲームエンジンであり、スマホの2Dゲームから比較的高度なゲームを簡単に作成できることから人気を得ており、パズドラ、FGO、ウマ娘など日本のスマホ向けゲームの多くはUnityで作られている。

一方でUnreal Engineはフォートナイトで有名なEpic Gamesが開発しているゲームエンジンであり、FF VIIのリメイク、テイルズの最新作等はUnreal Engineを採用しているほかドラクエXIIでも採用される。

PCスペックとしては、スマホ向けゲームをUnityで作成したいというのならばGPU無でも問題は無いが、PCやPlayStation/Xboxなどのコンソールに向けて高度な描画を行いたいならば、ゲーミングパソコンに搭載されるような相応のGPUを搭載することが求められる

また、WindowsかMacでは、Windowsをおすすめする。NvidiaのGPUが安価で調達できる他、Windowsが業界標準となっているため情報量も豊富であり、エディタもVisualStudioが使いやすい。iOS向けのアプリケーションを作りたい以外はWindowsが良いだろう。

プログラミングに必要な最低限のスペック

プログラミングの初学者が、C言語を勉強しようとGCCコンパイラをWindowsパソコンに入れて、Hello World!と出力するプログラミングを作成する。これならば数世代前のCeleronで問題ない。

同様に大学の初学者向けプログラミング授業、あるいは基本情報技術者試験などを目指し基本のプログラミングをを学ぶというのならばどのようなパソコンでも問題は無い。純粋にこれらのプログラミングだけを行うためにパソコンを購入するならば4万円のパソコンでも十分である。

しかし、実際にWebの開発であれ、WindowsやiOSアプリの開発であれプロダクトレベルの開発を行っていこうとするとフレームワークを使用しての開発がメインとなるので、ある程度パソコンのスペックが求められるようになる。まずはこの最低限のスペックを定義したい。

メモリは8GB

プログラミングはエディタでの編集を行い、結果をコンソールやブラウザなどで確認する。また分からない箇所があればグーグルで検索をして調査を行う必要がある。すなわち3画面、4画面は当たり前のように開いている状態となるのが普通である。

これらの状態を保持するためには多くのメモリを必要とする。メモリが足りていないとメモリの代わりにストレージを使用するスラッシングが多発して低速化するか、メモリ不足のエラー(Out of Memory Error)が表示されてアプリケーションが終了するかのいずれかである。

ということで最低8GBは快適なプログラミングのためには必要であろう。4GBだと不要なWindowをちまちまと消して、メモリ状態を常に意識しながらコードを書いていく必要があるため面倒である。

大量のデータを扱う場合はOut of Memory(メモリー不足)のエラーが発生しやすいため、ビッグデータの解析や数千件以上データがあるデータベースを操作する場合には16GB積んでも良いだろう。

ストレージはSSD

ストレージは高速で高価なSSDと低速で大容量のHDDの2つがパソコン用として使われている。SSDでないとアプリケーションの起動やファイルの読み取り速度が若干遅くなるので、快適に操作をするならばSSD搭載の機種を選ぶべきである。

もっとも最近のノートパソコンもデスクトップパソコンもSSDが主流となっているので知らずに選んでもSSDが搭載されている可能性の方が高いだろう。

容量は256GBあれば十分だと思うが、ゲーム開発を考えている人と、余裕を持ちたい人は512GB以上がおすすめである。

ただ、プログラミングだけのためにパソコンを買うわけではないと思うので、下記の記事を参考にして欲しい。

【256GB,512GB,1TB】SSDの容量のおすすめは何か?
ストレージの容量を決めかねている場合に参考になる情報を網羅

CPUはPassMarkで8000点

Webのアプリケーションであれ、C++のWindowsアプリケーションであれ、書いたプログラミングコードはビルドされて最終的なアプリケーションで実行可能な形式となる。 (※ビルドは最終成果物を生成するための一連の作業、プログラムコードをCPUが理解できる機械語に置き換えるコンパイルもビルドプロセスの一つ。)

WebサイトならばHTMLファイルをブラウザで読み込めば終わりではないか?と思うかもしれないがそうではない。ECMA6以上のJavaScriptで書かれた文法をBabelというトランスコンパイラでECMA5相当に変換し、JSやCSSファイルの結合、Minify化を行い、などと多くのことをWebサイトとして配信する前に行う。

これにはそれなりにCPUパワーが必要となってきて、特にマルチスレッド能力が高いものがビルド時間が短くなる。このビルド時間の短縮がプログラミング作業の生産性に大きな影響を与える

ソースコードのビルド

上記は当サイトをビルドしている様子であり、13秒ほどかかっているが、遅いCPUを積むと1分程度は掛かってしまう。一方でより高速なCPUを使うと5秒程で終了できるだろう。

またJava言語ならばEclipse、C++の開発ならばVisualStudio、Webの開発ならばVS Codeなど幾つかスタンダードとなるエディタはそれなりに重厚な作りをしており、CPUが低速だと起動時や操作時にもっさりとしてしまう。

これらの理由から目安として、総合的なCPUの性能を計るベンチマークテストであるPassMarkで8000点程度は欲しい所である。PassMarkの得点は下記を参考にして欲しい。

CPU性能比較表
400を超えるCPUから高機能フィルタにより世代間/ベンチマーク/TDP/コスパ等の絞りこみが行えます。

高度な3Dゲーム開発をする場合は高性能なGPUを搭載

上記の8GB、256GB、PassMark 8000点以上のCPUでほぼ困ることは無いが、高度な3Dゲームの開発をする時はメモリ16GB、数万円のミドルレンジグラフィックボードの搭載は必須と考えた方が良いだろう。

また、AI、科学技術計算にはCPUだけで事足りる場合も多いが、規模が大きい計算となるとGPUで並列演算を行い計算の高速化しないと待ち時間が多くなり試行錯誤を繰り返す余裕が無くなってしまう。研究や仕事で使うような場合は特にGPUは搭載した方が良いだろう。

その他プログラミングに適したパソコンでプラスとなる要素

以上で基本は抑えたが、プログラミングに適したパソコンとして加点となる要素を述べていく。かなりマニアックな部分とはなるので、いいモデルが無ければ別に無視してくれても構わない。

CPUはIntelよりRyzenがおすすめである

プログラミングで待ちが発生する時間はBuildを待つ時間であり、この時間を縮めていくことは生産性の改善につながる。

Buildにはマルチコアの能力が多分に活かされるため、一般的にコア数の多いCPUの方がBuild時間が短くて済む

AMDのRyzenはIntelのCore iシリーズと比べてマルチコア能力が高いものが多いため、プログラミング作業では有利に働くことが多い。

Ryzenが良いというよりはマルチコア性能が高ければよいので、例えばIntelでもノート向けHシリーズはマルチコアが強いものもありおすすめできる。

先に紹介したCPU比較表ではPassMarkとCineBenchのマルチの値が高いものを中心に探せば良いであろう。

IntelはChromeやAdobe、Officeなど有名なソフトを最適化しているため、ベンチマークの結果と比べてパフォーマンスが得やすい特徴があるが、プログラミングに関しては当然ながら最適化のメリットは受けられない。

縦長ディスプレイ

プログラミングの行数が増えてくると、全体のソースコードを見渡せるように縦の解像度が欲しくなる。頭の中で表示領域にないコードを念頭に入れつつ書いていくのは脳の負荷が若干上がるため好ましくは無い。

現在はFullHD(1920x1080)解像度のものが主流だが、プログラミング用として考えるとWUXGA(1920x1200)解像度の方が好ましい。 MacBookやSurfaceの一部のモデルはより縦が長い3:2のアスペクト比を採用しており同様にプログラミング向けと言えるだろう。

デスクトップの場合も同様に1920x1200がプログラミングに適したモニターであるが、種類が少ない上に高額な商品が多いため購入はしていない。値段次第と言えるだろう。購入するならDellのWUXGAモニタがコスパが高くおすすめである。

Thunderbolt対応

映像出力、充電、USBハブとしての役割を1本のType Cケーブルで担うことができる規格がThunderboltである。

これに対応することにより、図のようにケーブルを一本挿すだけでノートパソコンをデスクトップ環境に早変わりさせることが可能である。

TypeCを利用したデスクトップ環境の構築

Thunderboltに対応していなくともPowerDelivery(給電)機能とオルタネートモードという映像出力機能にパソコン側のUSB TypeC端子が対応していれば問題ない。ハイエンドのノートパソコンには間違えなくこの機能は備わっているであろう。

図に関して、ノートパソコンは3枚目のモニタとして使用しても、閉じてデュアルディスプレイ環境としても良いだろう。

ただ、この機能を実現するために、Thunderboltに対応したパソコンやキーボード、マウスの他、USB TypeC対応のモニタ、Thunderboltに対応したケーブル等を買い揃える必要があり、合わせて7万円程度はコスト増になる

割に合わない投資となる可能性はあるが、家での生産性を引き上げることが可能である。

ノングレア液晶

光沢のある液晶を使っていると映像視聴には適しているものの、長時間のプログラミングには目が疲れる場合がある。よって光沢液晶と書いてある場合は注意しよう。

デスクトップかノートのどちらがおすすめか?

まずそれぞれのメリットを語ると、デスクトップパソコンの方が馬力のあるCPUを積むことができるため、それだけビルド時間を短縮して快適に作業を行うことができる

また、同サイズのモニターを2つおいてデュアルディスプレイ環境を構築しやすく、好きなキーボードを使用できるなど開発環境でも圧倒的にノートパソコンに優る

一方で勉強会やハッカソンのような大会に出る、プログラミングのスクールに通うというような人は当然ノートパソコンでないとこのような事は不可能である。

デスクトップとノートを組み合わせる場合もあるので、選択肢としては以下のようになる。

デスクトップとノートの組み合わせ方
デバイス処理速度開発環境携帯性データ管理コスト
デスクトップのみ×
ノートパソコン with Thunderbolt
ノートパソコン + デスクトップ×
ノートパソコンのみ

コストをかけたくない場合は、携帯性を犠牲にするか処理速度を犠牲にするかを秤にかける必要がある。

次にコストをかけて良い場合はデスクトップPCとモバイルノートを購入し、家ではデスクトップ、出先ではモバイルノートを活用し、データはGithubなどで共有すると良いだろう。

ただ、この方法でもデータのやり取りがやや煩雑になり、またソフトウェアの開発環境をノートとデスクトップの両方で準備しなくてはならず手間である。

この問題を解決する手段として、先にも述べたがThunderbolt(またはPowerDelivery + オルタネートモード)対応のパソコンとTypeC入力ができるモニターを購入してノートパソコンをデスクトップのようにして使う方法もある。

コストが掛かり、処理速度もデスクトップに劣るが、快適な環境でプログラミングに打ち込むことができる。まずはThunderbolt対応のノートパソコンを将来を考えて購入しておくのも一つの手である。

プログラミングにおすすめのパソコン

それでは最後におすすめのパソコンを紹介しておく。プログラミングの種類により、求められるスペックが異なるため、それに応じたパソコンを選択した。

価格が手頃かつ、それぞれのプログラミングを行うのに十分なスペックを持ったパソコンを選んでいるので参考にして欲しい。リンク先は独自にプログラミングに適したスペックへフィルタをかけている。

プログラミングにおすすめのパソコン製品
プログラミングの種類おすすめモデル
Webプログラミングmouse X4-R5
iOSプログラミングMacbook Air
科学技術計算ASUS ROG Flow X13
AIプログラミング
3Dゲームプログラミングフロンティア デスクトップ/G-Tune E5シリーズ

mouse X4-R5

ナローベゼルの14インチ、長時間作業に向くノングレア液晶、そこそこのバッテリー、Ryzenプロセッサー搭載で1.20kgという軽量性を備えたパソコン。

テレワーク用として売り出しているのが不思議なほどプログラミング向けのスペックを備えており、マーケティングには失敗している模様。

WebプログラミングやAndroidアプリの本格的な開発、軽いプログラミングの勉強用途等、様々なシーンで役に立ってくれるであろう。またGPUこそ無いもののAIや科学技術計算もRyzenの馬力でそれなりのパフォーマンスが出せるはずである。

Macbook Air

iOSアプリケーションの開発をしたい場合はMacBook一択であるが、ノートパッドの使いまわしが優れているため、自習室やカフェなどでプログラミングをしたい場合も非常に適したパソコンである。

値段は安くはなく、Airという割には重量がある、Windowsに慣れている場合は使いづらい、USB Type-A端子が無いなど様々な問題もあるが、動作は安定しており当然ながら筐体の質感は良い。

まあ金持ちは処理速度の観点でMacbook Proの所有者が多いが、MacBook Airでも十分にパワフルなパソコンなので、特別な理由がなければMacbook Airの一番安いモデルで問題は無いだろう。

ASUS LOG Flow X13

ASUSの最強ノートパソコン、1.35kgとほぼMacBook Airと同等の重量にも関わらず、NvidiaのミドルレンジのGPUも備えるという携帯性抜群のパソコン

GPU能力が高く、またNvidia搭載でCudaも使える事からAIの学習や科学技術計算を高速で行うことができる。

またCPUもRyzenのハイエンドモデルを搭載しているためWebプログラミングやその他のプログラミング用途に使う場合もBuildを超速で行うことができる。

本格的なゲーム開発という観点では一歩物足りないが、その他はiOSアプリの開発を除き全て快適に行うことができるであろう。

欠点として光沢液晶が難ありといえば難ありだがハーフグレアであるため映り込みは少なく、長時間のプログラミングも問題がないレベルである。

フロンティアデスクトップPC

本格的なゲームプログラミングを行いたい。超高速なBuild環境を構築して時間効率を徹底的に上げていきたい場合にはRyzen 5900Xなどの重厚なCPUとGPUを搭載したデスクトップマシンを用意しよう。

重めのAI学習、数値計算処理など何であれ高速にこなしてくれる。

フロンティアのセール品がコスパが高いので、一度見てみる事をおすすめする。

G-Tune E5シリーズ

基本的に本格的なゲームプログラミングは要求されるスペックが高いため、デスクトップがおすすめである。しかし、携帯する必要があるならば15.6インチのゲーミングノートが良いだろう。

13.3インチのゲーミングノートは発熱の関係から高度なグラフィックボードを搭載する事が不可能である他、そもそもゲーム制作には複数の情報を同時に見る事が多くなるため、13.3インチでは小さすぎて作業がやりづらい。

15.6インチであっても1.7kg程度と何とか持って歩けるレベルのパソコンをマウスコンピューターは出してきているので、場所を問わず使うならばこのE5シリーズで決まりであろう。

ちなみにゲーム系専門学校でもこのモデルがおすすめのモデルとして指定されていた。特にRyzen搭載の下記はプログラミングを行うならば最強である。

トップページヘ行きパソコン購入の推薦を受ける

おすすめランキング
直販店人気ランキング
  • マウスコンピューター
  • デル
  • パソコン工房
  • Lenovo
  • フロンティア
  • 富士通
  • NEC
  • HP
  • 東芝
  • マイクロソフト
この記事の目次
  1. プログラミングの種類による最適なOSとGPUの選択
    1. Web系プログラミング
    2. iOSプログラミング
    3. 科学技術計算
    4. AIプログラミング
    5. ゲームプログラミング
  2. プログラミングに必要な最低限のスペック
    1. メモリは8GB
    2. ストレージはSSD
    3. CPUはPassMarkで8000点
    4. 高度な3Dゲーム開発をする場合は高性能なGPUを搭載
  3. その他プログラミングに適したパソコンでプラスとなる要素
    1. CPUはIntelよりRyzenがおすすめである
    2. 縦長ディスプレイ
    3. Thunderbolt対応
    4. ノングレア液晶
  4. デスクトップかノートのどちらがおすすめか?
  5. プログラミングにおすすめのパソコン
    1. mouse X4-R5
    2. Macbook Air
    3. ASUS LOG Flow X13
    4. フロンティアデスクトップPC
    5. G-Tune E5シリーズ
Topic
Ranking
Top