この記事を書いた人
しば
# GAFAM現役社員(技術職)| ITキャリア20年+
# 2流文系卒 | 底辺からのGAFAM転職成功者
# 年収1800万円+
# 転職のコツ教えます
プログラミングを始めてHello Worldやってみました。文字が表示されてうれしかったんですけど、ここからどうやって世の中の役に立つものを作っていくのかわかりません。
教えてください。
あなたの言葉の中で素晴らしい点が2つあります。
- Hello Wolrdを実際にやった
- 世の中の役に立つものを作りたい
実際に手を動かしてHello Worldをやった方は、プロのプログラマーになる可能性を秘めています。0のままでは道は拓けないからです。そして、世の中の役に立つものを作るという視点。この視点があれば、なんでも成功します。SNSでもそうですし、仕事でもそうです。人の困っている事を解決してあげることで世の中のお金は動きます。そして、その手段の1つが、アプリケーションやシステムです。
ここでは、実際にアプリケーション(略してアプリ)を作ってプログラマーとしての自信をつけることにフォーカスしていきます。
アプリを作ろう
もしHello Worldこれからって方はこちらの記事も参考になります。
そもそもアプリケーション(アプリ)とは?
アプリケーション、略してアプリといいますが、これは簡単に言うと「みんなが使える便利な道具」のようなものです。スマホやパソコンで操作して何かを助けてくれるものを想像してみてください。例えば、計算を手伝ってくれるアプリや、好きな音楽を聴けるアプリがその一例です。今の時代、アプリはみんなの生活の中で欠かせない存在になっています。
アプリのいいところは、使い方がわかりやすくて生活の中の困りごとを解決してくれるところです。だからこそ、プログラミング初心者でも自分の身近な問題を解決するようなアプリを作ることで、自信をつけることができます。「自分が作ったもので人の役に立つんだ」と実感できるのは、とても素敵な体験です。
アプリケーションの簡単な例10選
アプリのアイデアはたくさんあります。自分が欲しいな、誰かがあると便利だなと思えるものを作るのがポイントです。以下、簡単な例をいくつか紹介します。
- BMIを計算するアプリ:身長と体重を入力するだけで、体の健康度を表す数字(BMI)を教えてくれる。
- 目覚まし時計アプリ:自分が好きな音楽で毎朝起きられるようにする。
- 貯金目標アプリ:目標金額を設定して毎日どれだけ貯金できたか記録する。
- 簡単なクイズアプリ:友達とクイズで遊べるようにする。
- 猫の写真を集めるアプリ:いろいろな猫の写真を集めてみんなでシェアする。
- 天気予報を見るアプリ:住んでいる場所の天気を手軽に確認できる。
- 買い物リストアプリ:忘れないように買いたいものをリストにして管理する。
- 勉強時間を測るタイマーアプリ:勉強の時間を計って集中できるようにする。
- 歩数計アプリ:どれだけ歩いたかを記録して、健康管理に役立てる。
- 料理レシピを保存するアプリ:好きなレシピを簡単に見返せるようにする。
みなさんも日々使っているアプリもあるはずです。ただ、今の時点ではプログラミングを修得することが目的なので、今の世の中の課題を洗い出して、そこからアプリを作ろうなどと考える必要はありません。簡単なものから始めるのが一番です。次は、BMIを計算するアプリを作っていきます。
BMIを計算するサンプルコード(Python)
では、具体的にBMIを計算するアプリを作ってみましょう。Pythonというプログラミング言語を使えば、以下のような簡単なコードでBMIを計算できます。
# BMIを計算するアプリケーション部分
def calculate_bmi(weight, height):
# BMIの計算部分
# height(cm)を100で割ってメートルに単位を変更し、その値を2乗
# その2乗した値で体重を割る
bmi = weight / ((height/100) ** 2)
# bmiの値を小数第3位を四捨五入し、小数点以下2桁まで表示
return round(bmi, 2)
# アプリケーションの実行部分
# 例として、体重60kg、身長170cmの場合のBMIを計算
your_weight = 60 # kg
your_height = 170 # cm
bmi = calculate_bmi(your_weight, your_height)
print(f"あなたのBMIは {bmi} です。")
このコードでは、BMIを計算するアプリケーション部分と、アプリケーションを実行する部分は同じプログラミングコードとして記述されていますので、本来は分離してあげる必要がありますが、身長と体重を入力するとBMIが計算され、結果が表示されます。
この行が複雑ですね。
bmi = weight / ((height/100) ** 2)
確かに慣れないとわかりにくいですね。この行は下記のように分割できます。BMIの計算のためにheight_in_meters、height_squaredという2つの変数を使っています。
# 身長をメートルに変換する(身長がcm単位の場合)
height_in_meters = height / 100
# 身長の2乗を計算する
height_squared = height_in_meters ** 2
# 体重を身長の2乗で割ってBMIを計算する
bmi = weight / height_squared
これらの変数はbmiを計算するためだけに使われている変数なので、計算は1行で書くとこれらの変数を使わずに済みます。
変数、変数と言っていますが、変数はプログラミングを習得するうえで大変重要ですが、初心者にはやや理解しにくいところがあります。こちらの記事も参考になると思います。
BMIの計算を頭の中で行うのは少し面倒ですよね
BMIの計算をする場合、身長を2乗して、体重を割る必要があったり、数値が細かくなったりします。そこで、自動で計算してくれるアプリがあれば、この面倒くささを一気に解消できます。
簡単なアプリケーション開発ですが、自分で作ると「これがアプリのはじめの一歩だ!」という達成感がありますよね。
画面を作ってみるところまでやってみましょう。
画面を作る方法は色々ありますが、今回はColab上で実行するので下記のようなコードを準備しました。
import ipywidgets as widgets
from IPython.display import display
# 体重
weight_int = widgets.IntText(
description="体重(kg):",
placeholder="体重を入力してください"
)
# 身長
height_int = widgets.IntText(
description="身長(cm):",
placeholder="身長を入力してください"
)
# ボタン
button = widgets.Button(description="BMIを計算")
# 出力の表示
output = widgets.Output()
# ボタンがクリックされたときのイベントハンドラ
def on_button_clicked(b):
with output:
output.clear_output() # 前の出力をクリア
print(f"体重(kg): {weight_int.value}")
print(f"身長(cm): {height_int.value}")
bmi = calculate_bmi(weight_int.value, height_int.value)
print(f"BMI: {bmi}")
button.on_click(on_button_clicked)
# 表示
display(weight_int, height_int, button, output)
実行するとこのような画面が表示されます。
プログラムの実行環境がない方は、こちらの記事を参考にGoogleのColabを動かしてみてください。
Colabで実行のサンプル画像
実行環境によってはipywidgetsのライブラリを実行環境でインストールする必要があります。Colabを使う場合は不要です。難しくなるので詳細は説明は省きます。
!pip install ipywidgets
また、BMIを計算するというアプリの案はこちらの書籍を参考にしています。非常にわかりやすい書籍なので興味があれば読んでみてください。
BMIの計算アプリをWebアプリとして公開できたらどうなる?
もし、このBMI計算アプリをインターネット上に公開できたらどうなるでしょうか?例えば、自分で作ったアプリをWebページとして公開し、いろいろな人に使ってもらうことができれば、それだけで人々の役に立てることになります。
さらに、公開するアプリがたくさんの人に使われるようになると、広告を表示することで収益を得ることも可能です。また、毎日体重や身長を入力してもらえるようにすることで、ユーザーに健康管理に役立つ様々な有益な情報を提供することもできます。AIを使ってデータを分析し、個々のユーザーに合わせたアドバイスを提示することで、より多くの人に役立つアプリとなるでしょう。
また、自分の作ったアプリが有名になれば、それがきっかけで仕事のチャンスが広がることもあります。プログラマーは、他の職業と比較して、収入が上振れする可能性を秘めている職業です。まずは一歩を踏み出して、自分の可能性を広げましょう。