Yahoo! JAPAN

プログラミング学習「最強の方法」とは? プログラマ歴10年のライターがたどり着いた結論

キャリコネニュース

画像はイメージ

ちかごろ人気の職業「プログラマー」ですが、実際仕事を始めると、たくさんのプログラミング言語を同時に操ることを要求されます。

たとえば、ウェブサイトひとつ作るにしても、HTML、CSS、JavaScriptと、3つの言語がほぼ必須です。加えてJavaやPHPなどのサーバサイド言語、スマホアプリを作るならSwiftやKotlinなど、数え上げればきりがありません。

筆者自身、日本と海外含めておよそ10年をIT業界で過ごす中で、ざっと10種類以上の言語やライブラリを習得してきました。その経験から「新しいプログラミング言語を習得する最強の学習方法」について、わたしの考えをお話しします!(文:はっしー)

結論はこれ!

サクッと結論から言うと、もっとも効率がいい学習方法は「自分が作りたいもの、作る必要があるものを、実際に作ること」です。結局、それが一番学びが早く、技術も定着すると私は考えます。

漠然と「HTMLやCSSを勉強しよう」と考えてもなかなか続きません。しかし、実際に手を動かしてサイトを作ろうとすれば、そこにはいろいろな「学び」があります。「段落分けにはpタグを使う」とか、「文字色の指定はcolor属性で」とかいう知識は、サイトを作る過程で自然と身につきます。

わたしがある程度使えるようになったプログラミング言語やライブラリは、すべて実際に何かを作りながら覚えました。なんとなく興味を持って文法だけ勉強した言語は、ほぼ全て忘れてしまいました。

「作りたいものがない」人へ

とはいえ、「何を作ればいいかわからない」という方も多いと思います。そこで、作りたいものの探し方についていくつか具体例を示していきましょう。

学習例その1:参考書に載っているものを作る

『○○で作るゲーム開発!』のような本では、最後に実践編で成果物を作るような仕立てになっているものが数多くあります。一人で作っているとどうしても「行き詰まる」ことが多いのですが、こうした参考書なら本の内容に沿って学習していけば、最後に一定の形には仕上げることができるので、初心者にもおすすめです。

こうした参考書は書店でも売られていますが、「技術書典」のような技術系同人誌のマーケットでも売られています。

わたし個人の例では、プログラミング言語「Python」を学ぶために、ディープラーニングで人工知能(AI)を作る参考書を買いました。

この参考書のおかげでPythonの基本と、AI技術の基礎を同時に学ぶことができました。その後も断続的にAIの学習を続け、簡単な映画のリコメンドシステムなら、Pythonで実装できるようになりました。

この学習法の落とし穴をあえて挙げると、書いてあることが理解できなくても、コードをコピペすればなんとなく動かせてしまうことでしょう。なぜ動くのかよくわからない部分は、しっかり解説を読み込んで復習することが大事です。

学習例その2: 「クローン」を作ってみる

すでに存在しているアプリのクローンを、新しい言語やライブラリで作ってみるのもおすすめの学習方法です。

オススメなのは自分なりの「ToDoリスト」を作ること。フロントエンドの表示に加えて、項目の追加・削除・更新・検索など、データベースを使った一通りの機能が求められるので、実務でも使えるスキルが身につきます。

一度作ってしまえば、同じアプリを違う言語で書き直すことで、どんどん新しい技術を学んでいけるでしょう。

ただし作るアプリの機能があまりに簡単だと、当然ながら簡単な技術しか身につきません。慣れてきたら「ログイン機能」「セキュリティ」など機能を追加していくと、さらなるレベルアップがのぞめます。

学習例その3: 仕事で使う

実践ハードルも高いですが、一番上達が早いのは「仕事で使う」ことだと思います。業務で求められるレベルの技術を毎日試行錯誤しながら習得していけるわけで、こんなに身になる学習方法はほかにありません。

たとえば、私はニュージーランドの会社にいたとき、開発に「C#」を使っていました。C#は入社前にはほとんど使ったことがなかったのですが、働いてみると意外となんとかなりました。以前使っていた別の言語と構造が似ていたこともあり、すぐに使いこなせるようになりました。

その後4年半勤務する間にも、新しい言語やライブラリを導入する機会が何度もあり、そのたびに自然とスキルが身についていきました。技術トレンドが頻繁に移り変わる職場に身を置くのも、芸の幅を広げるためには有効な方法ではないかと思います。

まあ、一言でいうと、「自分自身のために必要だったり、追い込まれたりしないと、勉強ってなかなかできないよね」という話でした。みなさん考え方をうまく切り替えて、楽しみながらスキルを身につけてください!

【関連記事】

おすすめの記事