より手続き型らしく書き、Appを利用する形にした