ブロック ブロック

Blog

卒業生インタビュー

Hope for the best, but expect the worst.

無料PHPスクール①~授業方針

   

「これからプログラミング技術を習得して行こう!」と考えている、 意欲ある皆さんに、いきなり、変な質問ですが、 「なぜ、世の中には、プログラミング嫌いが多い」のでしょうか? 食わず嫌いの方もいるもかもしれませんが、それは、世のITスクールが 「関数や用語の説明がやたら多い、授業をしている」からだと我々は 考えています。 「どうやったら、この機能を有するシステム開発ができるのか?」 あまり解説されていないと感じています。 言葉や用語の意味が分からなくても、実際に使って見る(「慣れる」)ことで、 楽しいと感じ、プログラミングに対して興味が湧いてくると思います。 その機能を開発(実装)するために、最大限に解説すべきで、関数や用語の 説明に時間を費やすべきではないと、我々は考えています。 (もちろん、最低限の関数や用語の説明は行いますので、ご安心くださいね。)   ●「構文や処理の仕方を学ぶ意図が分からない」「これがどういう風に使われるのか分からない」 プログラミングを勉強していますと、数多くの「構文」や「文法ルール」「処理」がでてきます。多くの参考書や授業では基本的なことから順をおって説明しますので 「網羅性」や「分かりやすさ」を重視する反面、「この処理が何に使われるのか分からない」「どんなことに役立ち、これができるとどういうふうに楽しいのかがイメージできない」と思われる方は多いと思います。 私も今でこそ、プログラマーとして仕事をしていますが、学習しはじめは同じように思っていました。大学時代、C言語の授業を受けましたが、やはり、各処理の意味が分からず、ほとんど興味を持てませんでした。 では、こういった教え方が問題なのかと言うと、そうではありません。面白くなくともやはり、プログラミングを学ぶにはこのように基礎から積み上げていくしかありません。 なぜかと言うと、各構文の意義や学ぶ意図というのは、それ単独で取り出してもわからず、実際の成果物・ソースを作っていく過程ではっきり見えてくるものだからです。 1つ1つの構文と言うのは、「家を作る」ことにたとえますと、1つ1つの柱や釘のようなものだと思います。柱や釘は、それ単独で取り出しても、あまり存在意義はハッキリしませんし、興味も惹かれないでしょう。 それが、意義や役割を発揮するのは「家全体」を見た時だと思います。家全体を見た時に、柱の設計や釘の打ち方のなど細部の意義が見えてくるのだと思います。 (私は、建築に詳しいわけではないので、あくまでイメージが伝われば幸いです。) プログラミングも同じで、成果物を作らずに、どんなに「使われ方」「意義」「楽しさ」の説明を受けても、抽象的な理解だけに、とどまってしまい、実感が湧きません。 例えば、「オブジェクト指向」がまさにそうなのですが、オブジェクト指向を一言で説明すると以下のようになります。「纏まった変数や関数を1つの纏まりとして扱うことで、プログラムを部品のようにして扱うことができる。これを使うことで、プログラムを部品ごとにわけることができ、使いまわすこともできるため、成果物を作るスピードが圧倒的に上がる」 これがオブジェクト指向を学ぶ「意義」や「楽しさ」なのですが、これを聞かされても「部品」というのがどういうものか、オブジェクト指向がどう便利なのか、部品にわけることにどんな意義があるのかはソースを自分で書き、成果物を作り上げていかないと分かりません。             PHPは学習してから、楽しさや意義が分かるまで、比較的短いと思いますが、それでも最低2年は学習し続けないと、各処理の意図は分からないと思います。 「無料PHPスクール」で、皆さんに「成果物の作成」をお願いしているのは、就職活動上、有利というのもありますが、プログラミング技術を身につけるためには、「成果物をつくることが、各処理や文法の意味を理解する上で最適」だから、というのが私の本当の意図です。どんな成果物でも作る上で、必ず各処理の意義が「見えて」きます。  

 - 学習アドバイス

  関連記事

  おすすめ記事