忍者ブログ

mshencity

コーディングを学ぶにはハイエンド PC が必要だと思いますか?もう一度考えてみましょう

コーディングを学ぶには高性能のマシンが必要だと思うかもしれませんが、現在のマシンや古いラップトップでも、始めるのに必要なものはすべてあるでしょう。その理由は次のとおりです。



















HTG ラッピング フル カレンダー - 2025 年のベスト製品

















HTG Wrapped: 2025 年のお気に入りのテクノロジー




お気に入りのハードウェア、ガジェット、テクノロジーを 24 日間お楽しみいただけます





























メモリやその他の PC ハードウェアが高価になっているため、しばらくは 8GB 以下のマシンを使用する人が増える可能性があります。これがハンディキャップになると思うかもしれませんが、メモリが少なくてもプログラミング ツールのインストールが妨げられるわけではありません。

コーディングを学習している場合は、Python などを使用することになるでしょう。たとえローエンドのマシンであっても、基本的な Python のインストールだけで十分です。 Python は非常に小さいため、グラフ電卓の BASIC に置き換わります。現在のマシンで実行するには標準ライブラリで十分です。






















ターミナルを使用して Numpy を使用して Python で大規模な線形システムを解きます。




実験として、より高度だと思われるタスクを試してみました。 NumPy ライブラリを使用して 1000 x 1000 の正方行列を生成し、大規模な線形システムを解きました。これは 8GB の RAM しか搭載していないラップトップ上で行われました。私はこのシステムを瞬時に解決できました。時間を計る必要性を感じたことは一度もありませんでした。人が手で解くよりもずっと速かったです。これは、NumPy がシステム リソースを効率的に使用できるように書かれているためです。おそらくそれが科学計算にとって非常に重要な理由です。 「ジャガイモ」と思われるコンピューターでも科学計算ツールを実行できます。



初めてのプログラミング プロジェクトには高度なハードウェアは必要ありません






















Python の編集 "こんにちは世界!" Linux ターミナル ウィンドウで Vim のプログラムを実行します。




強力な PC は、プログラミングの入門タスクには過剰になる可能性があります。最初のプログラミング プロジェクトは、古典的な「Hello, world!」のようなものです。プログラム。画面上にテキストを印刷するのに大量のメモリや処理能力は明らかに必要ありません。これは、コンピューターが存在する限り、コンピューターで実行できてきたことです。

そこから、if/then ステートメントやループなどの制御フローや算術演算などに進みます。繰り返しになりますが、基本的なコンピュータでも、これらの操作には十分すぎるはずです。現在のマシンを使用することも、しばらく使用していない古いコンピューターを掘り出すこともできます。あるいは、Raspberry Pi などのシングルボード コンピューターを試してみるのもいいでしょう。これは、子供たちが自分のコンピューターを実験できるようにするために後者が設計されたものの 1 つです。

ミニコンピューターとワークステーションの両方である Unix マシンは、多くの新進プログラマーが学ぶ対象でした。本格的なコーディングにはマルチタスクとマルチユーザー機能が必要であり、70 年代と 80 年代のマイクロコンピューターは適していなかったからだ。現在、購入できる最も安価なコンピューターでもメモリ保護があり、マルチタスク システムが実行されています。それさえも必要以上の電力が必要になる可能性があります。



ハードウェアの制約がより良い習慣につながる可能性がある

ローエンドのハードウェアでコーディングを学習している場合、より強力なマシンに移行したとしても、習慣が定着してしまう可能性があります。より小さく単純なプログラムを設計する必要があるでしょう。最近のソフトウェアの多くは複雑で、理解するのが困難です。

よりシンプルなプログラム、つまり十分に文書化されコーディングされたプログラムを設計し、絶対に必要な場合以外は機能を追加しない習慣を身につけるとよいでしょう。おそらく、それほど強力ではないマシンでコーディングを学ぶことは、後でプログラマーとしての人格を築くのに役立つでしょう。



概念を理解することは最新のハードウェアよりも優れています

コーディングを学習しているだけの場合は、ハードウェアに依存するだけではなく、プログラミングが実際に何を意味するのかを学ぶことがより重要です。アルゴリズム、入力、出力、フロー制御などの基本概念の多くはハードウェアから独立しています。プログラミングにどれだけこだわり続けるか、あるいはプログラミングがどれだけ好きかさえわからない場合は、新しいハードウェアにお金をかけたくないと思うかもしれません。

特に Linux ターミナルで作業している場合、根本的に異なる方法でコンピュータと対話する方法を学ぶことになります。 IDE を使用することも、エディター、コンパイラー、インタープリター、さらにはデバッガーの使用方法を学ぶこともできます。前述したように、これらはローエンドのハードウェアでも問題なく動作します。

高度なゲーム開発や AI など、パフォーマンスが重要な分野に携わる場合は、安価でシンプルなハードウェアで基本をすでにマスターしていることになります。



必要に応じて、低レベルのプログラミングを試して、マシンをさらに活用できます。






















gcc プログラムからの詳細な出力には、環境に関する多くの診断が含まれています。




Python などのインタープリタ型プログラミング言語であっても、パフォーマンスの制約に遭遇した場合は、C または C++ を試してみることができることがよくあります。 70 年代と 80 年代の多くのプログラマーは、機械語またはアセンブリ言語に移行したでしょう。 GCC などのツールは、特に Linux システムで広く利用できます。 C および C++ は Python よりも学習が困難ですが、パフォーマンスが重要な部分を書き直す前に、インタープリター言語でプログラムの基本的なアイデアを練ることができます。これは「プロトタイピング」として知られています。







低レベルのプログラミングの欠点は、何かを動作させるのに多くの時間を費やす可能性があることです。単に Python のようなものに固執するのではなく、CPU 時間やメモリ使用量の削減によるわずかな利益に価値があるかどうかを判断する必要があります。コンピューターが実際にどのように動作するかをさらに詳しく知りたい場合は、毎日使用しない場合でも、C またはアセンブリ言語は興味深い教育経験となる可能性があります。


コーディング作業を始めるのに豪華なハードウェアは必要ありません。プログラミングに本格的に取り組むには、低スペックのコンピューターでは必要以上の負荷がかかる可能性があります。

PR

コメント

プロフィール

HN:
No Name Ninja
性別:
非公開

P R