「プログラミングを勉強しているけど、作るものが思い浮かばない…」
「プログラミング初心者のステップアップに最適な題材を教えてほしい!」
本記事をご覧の皆さんはプログラミングの勉強に励みながら、上記のような疑問に悩まされていませんか?ここではそんな真剣な疑問に、具体的な事例を交えて解説します。
1. PC・スマホアプリケーション
作るものについてとくにこだわりがない場合や、試作実験を経てプログラミングの感覚をつかみたい方には、PCアプリやスマホアプリの制作がおすすめです。
PCアプリの場合、Microsoft社製のエディットツール「Visual Studio」の無償版をダウンロードすれば、すぐにでもWindowsデスクトップアプリを作成することができます。
実際にはソースコードを編集してアプリの動作を実装しつつ、ボタンや入力フォーム、文字などのUIを配置してアプリケーションを作っていくことになります。使いやすさを考慮して設計していくため、プログラミングだけでなく、UIデザインの勉強にもなるでしょう。
とはいえいきなり複雑なものを作ろうとすると挫折のもとになるので、最初は実装が簡単な「四則演算限定の電卓」や、「日付曜日表示のみのカレンダーアプリ」の制作などから始めてみるといいかもしれませんね。
ちなみにスマホアプリ制作の場合、個人の環境にもよりますが、iOSよりもAndroidのアプリを作るのがおすすめです。iOSアプリは基本的にMacがないと作ることができないのに対し、Androidアプリは「Android Studio」という無償のアプリがあればプラットフォームによらず作ることができます。
個人開発でヒットを記録した事例として、ファイルアーカイバアプリ「7-zip」や、歩数計アプリ「歩数計Maipo - 毎日歩こうダイエット!」などがあります。
世間の需要に合わせた高品質なアプリケーションを作ることができれば、商業展開も夢ではありません。
2. PCゲーム
スマートフォンやゲーム機を持っていて、ゲームに興味がある方にはとくにゲーム制作がおすすめです。
初心者にとって、SwitchやPlayStationといった据え置き機向けのゲームを作るのは敷居が高いものの、PC向けのゲームであれば意外にも簡単に作ることができます。
「Scratch(スクラッチ)」という無料のビジュアルプログラミングツールを紹介します。ドラッグ&ドロップで配置することができ、直感的にゲーム制作を行うことが可能です。主に初等教育の分野で利用されていますが、大人のプログラミング初心者にもおすすめできる内容になっています。
初心者でも作りやすいシューティングゲームやノベルゲーム作りから始め、ゲーム制作に慣れてきたらご自身の好きなジャンルのゲーム制作に挑戦していくとよいでしょう。
また、より発展的なゲームを作りたいと思ったときは、「Unity」や「Unreal Engine」などのゲームエンジンを利用するのがおすすめです。
これらのツールには物理演算機能や高品質なエフェクト集が実装されているため、より見栄えのよいゲームを作ることができます(作ったゲームを収益化する場合、利益の総額によってロイヤリティの支払いが必要になることがある点に注意してください)。
国内発のインディーズゲームで商業化に成功した事例として、「片道勇者」や「東方原作シリーズ」などがあります。自分で楽しむだけでなく、ほかの人にもプレーしてもらえるとなれば夢が広がりますね!
3. Webサイト
日ごろからPCに触れる機会がある方にとっては、Webサイト制作が最も身近かもしれません。ブラウザゲームやWebアプリなど、多方面の創作の土台にもなるため、将来的に役に立つスキルを身につけたい方にとくにおすすめです。
Webサイトは直接的にはプログラミングと関係はありませんが、JavaScriptやPHPといったWeb対応のプログラミング言語を使うことで、その要素を組み込むことができます。
「画像にカーソルが乗ったときに拡大する」「アクセスした時間帯によって表示を変える」など、Webサイトにメリハリのある動きをつけたい場合にプログラミングを用いるとよいでしょう。
反面Webサイトは昨今ありふれたものであるため、上記2つ以上に「コンセプト」が大事になってきます。
・誰に(読者)
・どうやって(動画、画像、文字などの伝達手段)
・何を伝えるか(題材)
これら3つを意識して設計することを心がけましょう。
前述のアプリ制作と併せて製品の紹介に使ったり、Web広告の導入で収益化に繋げられること、人目に触れやすく反響を得やすいのもメリットです。
4. 電池駆動型ロボット
「アプリなどよりも、実際に形を持った動くものを作りたい!」という方には、電池駆動型のロボットがおすすめです。
近年情操教育や個人の電子工作、産業分野における試作品の開発目的で、小型のシングルボードコンピュータが注目を集めています。「Raspberry Pi(ラズベリーパイ、以下ラズパイ)」はその代表格といってもいいでしょう。
ラズパイはマイコンとも呼ばれ、ブレッドボード(基板)上に抵抗ピンやジャンパーワイヤーなどの部品を配置して制作を進めていきます。ミスしてもやり直しが利く上、はんだ付けなどの繊細な作業なしで完結するので、電子工作初心者でもとっつきやすいことが人気を呼んでいます。
コンピュータは電子部品だけでなくプログラムによって動作するため、ラズパイを使った制作でもプログラミングは欠かせません。効率よく要点を理解するためにも、ネット上の多数の文献に適宜あたりながら学びを進めていくとよいでしょう。
ちなみに、ラズパイは手元に来た段階ではOSも入っていないまっさらな状態であるため、やや複雑な初期設定が必要になります。有志の方によって導入手順がまとめられていますのでご参照ください。
また別の有志エンジニアの方によって、「スマホで操作できるラジコンカー制作」についての手引きがまとめられていますのでこちらも併せてご参照ください。
今回はプログラミングで作れるものについて解説しました。本記事が皆さんの制作の助けになれば幸いです。最近はお子様向けのプログラミング教室なんかも流行ってますのでこれからプログラミングを始められる方は親子ではじめてみても面白いかもしれませんね。皆さんの制作を心より応援しています!