本ポートフォリオでは自作の作品について紹介させていただきます。
今回紹介させていただく作品は以下の作品です。
- can_do_it(仮称)
利用者独自のテンプレートを作成してオリジナルレイアウトのメモを作ることができるスマートフォンアプリケーションです。
言語:JavaScript フレームワーク:React Native 主なライブラリ:react-native-elements,react-navigation,expo-sqlite
本作品は個人製作です。設計から開発まで全て自分で行い、テストはサークルの友人に協力してもらいました。
本作品は自由度の高いメモを作りたいという私の思いから開発した作品です。ユーザが写真やテキスト等のパーツを使ってオリジナリティのあるメモを作ることができます。
製作期間は2019年10月頃に発案,11月と12月でプロトタイプまで完成しました。機能面と動作面についてのブラッシュアップを経たのちにアプリストアで公開を予定しています。
本作品は以下の機能を備えています。
- テンプレートの作成
- テンプレート一覧の閲覧
- テンプレートから新規メモの作成
- 新規メモ一覧の閲覧
- 既存メモの編集
本作品を起動するとiPhone標準のメモアプリのようにメモ一覧が表示されます。それに加えて、本作品でメモを作成するためにはまずテンプレートを作る必要があります。
メモ一覧とテンプレート一覧
テンプレートを作るにはテンプレート一覧の画面から右上の+ボタンをタップします。遷移したテンプレート作成画面にて、パーツを追加する場所、パーツの種類とサイズを選択してオリジナルのテンプレートを作成します。
例)全面テキストの普通のメモを作る流れ(赤丸はタップ位置)
テンプレートを作成すると作成したテンプレートに沿った形でオリジナルメモが作成されます。後は自分好みに写真やテキストを入れることができます。
例)オリジナルメモの例
expoというサービスを使ってAndroidエミュレータと実機のiPhoneでレイアウトのチェックを行っていますので、両OSに対応しています。
本作品を製作するにあたって一番苦労した点はアプリ自体のテーマ決めです。
概要に本作品は10月に発案し11月から開発したものとありますが、実は12月初めにテーマと一度開発してきたコードをすべて破棄して生まれ変わったものです。(以下、元のアプリを旧can_do_itと呼称)
最初は物事を行うための ”行程” を視覚化し手順書をグローバルに共有するアプリを作っていました。その作品を作ろうと思ったきっかけは、自身のこれどうやるんだっけ?といううろ覚えを解消するためのものでした。
テーマ自体は悪くはなかったのですが、以下の理由からテーマを刷新することにしました。
- うろ覚えをする自分のような人間は手順書を作るほどマメな人間ではないこと
- ちょっとしたメモをグローバルに公開する必要はないと感じたこと
そして、個人開発したアプリが大コケしてるので失敗要因を分析してみた(aタグの新規タブで開くオプションが動作しないので新規タブで開いてください)という記事の
”自分でも使わないサービス(投稿しない)を作ったのが(失敗の)最大の要因”
という言葉を見て、自分が作りたいアプリを作るんだと意思を固めて本作品を製作しました。
テーマを練りぬいた後はスムーズなものでした。旧can_do_itの時点で画面遷移機能,SQL機能といった基本的なものは実装できていましたので、同期処理(async await)を勉強するくらいでアプリを作ることができました。
またアプリを作る際には、ユーザに使ってもらうことを第一として仕様を練っていこうと考えています。
これは開発者としての心構えとして当然のことではありますが、今回の経験で得た最も大きな知見です。
旧can_do_itのレイアウト(本作品のテンプレート作成後にメモを作る画面に相当)
本作品はアプリストアでの公開を予定していることからコードを公開していません。
この部分はどう実装しているの?ここのソースが見たいな。といった要望がございましたら、連絡していただければ別途まとめて送付いたしますのでお申し付けください。