![eyecatch](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4e9PEG8wBA0v6ICfPb37KyRbJz6zUEZYnK6Mh67QJPNICPJjLyGtIG5lMNVTla-eNoVTV4UMYmRUxKStnfJf36-egxAi5xKOab1-tIpXTjlHKhmhadgsDUGCxKYwwzCM2YY41ovcAvSUmYEq6P7K8XnolL-lf_-9OOfQs35uGUSKyCh_sJ4s4XTXe/s1600-rw/calendar-3675142_1280.jpg)
普段使っているiPhoneのカレンダーはGoogleカレンダーよりもインターフェイスが使いやすいと、改めて感じた、ユゲタです。
何故かって?
それは、Googleカレンダーは、まあまあ触った感じがもたつくからですね。
本日のIT謎掛け
「スマホのカレンダーアプリ」と、かけまして・・・
「リズミカルなダンスの種類」と、ときます。
そのココロは・・・
タップするだけです。
カレンダーのデータ登録は、まあまあ複雑
通常カレンダーのデータを考えると、日付(date)と、時間(time)があればいいと考えがちですが、時間が無い、1日中のデータも存在するし、時間がある場合は、開始時間と終了時間が必要な場合もあります。
また、日付をまたぐ場合があれば、日付にも開始と終了が必要になります。
そして、スマホのカレンダーを登録する場合などは、「繰り返し」の予定というのがあって、
毎日、毎週、毎月、毎年、というような繰り返しの他、
曜日指定や、毎月○日、毎月第○の曜日、という風に考えると、非常に煩雑な条件も存在します。
カレンダーデータの種類まとめ
とりあえず、データ方式を一覧にまとめてみると、
1. 1日継続するデータ
date
2. 1日の開始時間を記すデータ
date , time
3. 1日のうちの開始、終了時間のあるデータ
date , time1 , time2
4. 数日の開始、終了時間のあるデータ
date1 , time1 , date2 , time2
5. 繰り返し予定のデータ
※上記の予定に加えて、繰り返しフラグを付与。
※繰り返しデータには、開始日〜終了日のデータも追加
フラグ : 「毎日」「毎週○曜日」「毎月○日」「毎月第1○曜日」「定期月・・・」「毎年」「その他・・・」
データベースのスキーマは、いろいろな方法が考えられますが、上記の条件を満たす事を重要視しなければ、今どきのカレンダーシステムとしては、
機能が足りていないと考えられますね。
さらに必要なデータ共有思考
上記のデータ設計ができたら、それを、他人のデータや、何かしらの共通データと合わせて表示できるように、「データ共有」という仕組みが必要になります。
「何かしらのデータ」というのは、「国民の休日・祝日」といった、休日は、カレンダーのデフォルトで必要だし、
特定のコミュニティの内部で共通するカレンダーデータというのも、必ず必要になるので、上記カレンダーデータ設計の上位に、カレンダー使用者をまたぐデータ設定が必要になります。
さらに、共有することを前提に考えると、カレンダーデータそれぞれに、「外部の人に共有公開する、しない」というフラグも必要という風になりますね。
いや〜、カレンダーデータ、ナメてたな・・・
これらをUIで整えるというのも、まあまあな大きな開発になりそう・・・
でも、やってできないことはない。
データ設計ができたら、作ってみるとしよう。
0 件のコメント:
コメントを投稿