ウェブサイト検索

初めてプログラミングを学んだときに知っておきたかった 5 つのこと


プログラミングの旅を始めるのは楽しいことですが、進歩を遅らせる罠に陥りやすいです。新しいプログラマーが犯すよくある間違いを理解することで、最初から成功に向けて準備を整えることができます。ここでは私が犯した 5 つの間違いを紹介しますので、そこから学ぶことができます。

1. 構文に注目せず、背後にあるロジックを確認する

プログラミングを学習するとき、構文を正しく理解するかどうかを心配するのは自然なことです。どの言語でも、記号、キーワード、構造は最初は怖く感じられるため、誤って構文を覚えることに重点を置いてしまう可能性があります。ただし、特に構文だけではコードがどのように機能するのか、なぜ機能するのかを理解するのに役立たないため、これは逆効果になる可能性があります。

プログラミングにおいて本当に重要なのはロジック、つまり問題をコンピューターが実行できるステップに分解するプロセスです。構文は、単にマシンが解釈できる方法でロジックを表現する方法です。古典的な初心者の問題 FizzBuzz を考えてみましょう。これを解決しようとすると、構文に重点を置いた初心者は、if ステートメントの構成方法に巻き込まれる可能性があります。

プログラミングに慣れたばかりの頃、私は構文、特に括弧、セミコロン、コード構造を学ぶことに集中しすぎました。その結果、問題を解決しようとすると困難に直面しました。もちろん、条件文とループの使用方法は知っていましたが、実際にそれらを使用してソリューションを実装することは私の範疇外でした。

代わりに、ソリューションの背後にあるロジックに焦点を当てた方が役に立ちました。このロジックを理解するということは、このソリューションを Python、JavaScript、またはその他の言語に適応できることを意味します。実際のプログラミングでは、経験豊富な開発者であっても、構文のニュアンスやライブラリ メソッドを調べることがよくあります。

2. 複数の言語を学ぶのではなく、まず 1 つの言語を上達させましょう

初心者の多くは、複数のプログラミング言語を知っていればより優れたプログラマーになれると考えています。しかし実際には、1 つの言語についての深い知識は、複数の言語についての浅い理解よりもはるかに価値があります。どの言語も習得せずに言語を切り替えると、混乱や非効率が生じる可能性があります。

単一の言語に焦点を当てると、変数、ループ、条件分岐、関数、オブジェクト指向プログラミングなどの重要なプログラミング概念の強力な基盤が構築されます。これらの概念はプログラミングの中核であり、一度深く理解すれば、比較的簡単にどの言語にも適用できます。

Python は初心者に優しく、Web 開発、データ サイエンス、自動化などの分野に幅広く適用できるため、Python から始めると想像してください。 Python だけに焦点を当てることで、核となるプログラミング原則に慣れ、これらの概念を強化するプロジェクトの構築を始めることができます。

私はプログラミングの旅を C から始めました。すぐに飽きて、Web プログラミングに移りました。その後、Python の人気を見て学習を始めました。結局、どれもきちんと学ぶことができませんでした。当時、いくつかの言語を知っていれば、必要なときにすべての言語を使用できると考えていました。しかし、実際にそれらを適用することになると、完全に失敗したか、かなりひどいコードを書いたかのどちらかでした。それは、どの言語の中級概念も上級概念も知らなかったからです。

3. チュートリアルに縛られないでください

プログラミングを学び始めると、上達していると思ってチュートリアルを次々と見るサイクルに引き込まれがちです。しかし、ただ見たり、真似したりするだけでは、独自のコードを書いたり、現実世界の問題を解決したりするために必要なスキルを身につけることはできません。これは一般に「チュートリアル地獄」と呼ばれるもので、情報を実際に適用せずに消費し続けることになります。

実際のところ、プログラミングは実践ベースのスキルです。他の人のプレーを見てサッカーを学ぶことができないのと同じように、実際にコーディングしなければプログラマーになることはできません。あなたが Python を学習していて、経費トラッカーの構築をガイドするチュートリアル シリーズを見つけたとします。インストラクターと一緒にコーディングを行うと、ビデオが終わるまでに、機能する電卓が完成します。進歩しているように感じます。

私が犯した大きな間違いは、さまざまなビデオ チュートリアル、コース、ブログ、その他のリソースを収集し、それらを大量に読み始めたことです。私はビデオを次から次へと見て、プレイリストを次々と完成させ、途中でコードをコピーするだけでした。私はただ従うだけだったので、アプリや小さなプロジェクトをゼロから構築するように頼まれたときは苦労しました。

自分で意思決定をしたり、課題に直面したりする必要がない場合、プロジェクトの背後にあるロジックを内面化することはできません。代わりに、チュートリアルの最初の部分を見た後、一時停止して、プロジェクトのより単純なバージョンをビルドしてみてください。直接的な指示なしの簡略版でも取り組むことで、自分自身で問題を構成し解決する方法を理解するのに役立ちます。

4. 実践して学ぶ

プログラミングに関しては、「実践しながら学ぶ」に勝るものはありません。理論的な知識と受動的な学習によって基礎的な理解を得ることができますが、実践的な経験のみがその知識を確固たるものにし、自信を持ったプログラマーになるのに役立ちます。積極的に作成して構築するプロジェクトベースの学習は、現実世界のプログラミング スキルの開発に役立ちます。

プロジェクトは、ToDo リスト アプリ、クイズ アプリ、または単純なゲームのような小さなものにすることができます。プロジェクトに挑戦するたびに新しい課題が発生し、特定の構文を調べたり、その場で問題を解決したりする必要があります。プロジェクトに集中することで、現実世界の問題を解決する自信が得られ、単なるチュートリアルの追随者ではなく、独立したプログラマーとして自分自身を認識し始めます。

一度実験をしたことがあります。 PHP Laravelを学びたいと思っていました。チュートリアルを参照する代わりに、最初からプロジェクトに取り組むことにしました。私はオープンソース プロジェクトをダウンロードし、そのコードを読み始め、あちこちを微調整して変更を確認しました。それは人々が言語を学ぶ通常の方法とは異なるアプローチでした。興味深いことに、私は短期間でかなり多くのことを学びました。すぐに、PHP コードを記述して、実際のプロジェクトで新しい機能を作成できるようになりました。

5. すべてが大丈夫かどうかは分からない

初めてプログラミングを始めるときは、すべてを知る必要があると感じがちです。あらゆる言語機能、あらゆるフレームワーク、あらゆるツール。しかし、すべてを最初に学ぼうとするのは圧倒的で非現実的です。最も経験豊富な開発者であっても、すべてを知っているわけではありませんが、それはまったく問題ありません。プログラミングは常に進化している分野であり、学ぶべきことは常にあります。この事実を受け入れると、肩の荷が大きく下がり、一度にすべてをマスターしようとするのではなく、着実に進歩することに集中できるようになります。

プログラミングには、構文、アルゴリズム、データ構造、フレームワーク、デバッグ手法、ライブラリなど、幅広いスキルが必要です。一度にすべてをカバーしようとすると、集中力が薄れてしまい、1 つの領域について深く学ぶことができなくなります。この深みの欠如により、プロジェクトを構築したり、実際の問題を解決したりすることが困難になります。どのトピックも完全に理解せずに、ある新しいトピックから別のトピックに常に飛び移ることになるからです。

私の場合、燃え尽きてしまうまでプログラミング言語のすべてのトピックを精査しようとして自分自身を圧倒することがよくありました。学ぼうとすればするほど、自分は何も知らないと感じました。より良いアプローチは、いくつかのコアスキルに焦点を当て、経験を積むにつれて徐々に知識を広げることです。基本的な概念から始めます。慣れてきたら、もう少し高度な概念に進みます。プロジェクトを構築すると、当然新しいことを学ぶことになりますが、それらは役立つコンテキストで得られます。


プログラミングを学ぶことは課題に満ちた旅であり、間違いを犯すことは単なるプロセスの一部です。これらの挫折を成長の機会として受け入れ、すべての専門家もかつては初心者だったということを忘れないでください。コードを 1 行書くごとに、なりたいプログラマーに近づくことができるということを忘れないでください。

関連記事: