やっとこさ「酷暑」から「普通に暑い」くらいのときも出てきたような日々ですが、皆様いかがお過ごしでしょうか?
話題沸騰なFileMaker Goは、いままでもご紹介しているとおり、おもに業務アプリを素早く開発する点でとても有利。分類としては、いわゆるRAD(Rapid Application Development:素早いアプリ開発)ツールに属する。
FileMakerシリーズが、業務アプリの高速開発にどう有利かを本当に実感している人の割合は実は少なく、PHP+MySQLなどと同列で比較し、ソフトウェアのコストがかかるからとFileMakerを回避したという事例もたまに聞く。このことは、FileMaker自体の強みが周知されきれていない点が大きく、僕としても正確な情報をもっと発信してゆかねばと考えている。
知名度や普及度という点では、確かにFileMakerは若干弱い。パソコン用データベースソフトとしての販売本数シェアはマイクロソフト社55.1%/ファイルメーカー社43.5%と拮抗しているし、FileMakerの活かし方を知る人は増えているが、まだまだ誤解も残っていて、特にITの専門家ほど誤解している傾向は現実にある。
そんな中で発表されたFileMaker Goは、業務システムにiOSデバイスを絡めたいという現場需要にマッチし、「それならFileMakerを使ってみようか」という気にさせるという効果も生じさせている。
業務アプリやデータベースの設計にはそれなりのノウハウが必要で、これは開発言語の難易度とは無関係に存在している。だからFileMakerが比較的簡単であっても、よいデータベースを作るのが簡単というわけでは決してない。
とはいえ、FileMakerなら自分でやってみようと思う人は多いだろう。そんな方に向けて、FileMaker Go活用のためのFileMaker学習ポイントをご紹介したいと思う。
話題沸騰なFileMaker Goは、いままでもご紹介しているとおり、おもに業務アプリを素早く開発する点でとても有利。分類としては、いわゆるRAD(Rapid Application Development:素早いアプリ開発)ツールに属する。
FileMakerシリーズが、業務アプリの高速開発にどう有利かを本当に実感している人の割合は実は少なく、PHP+MySQLなどと同列で比較し、ソフトウェアのコストがかかるからとFileMakerを回避したという事例もたまに聞く。このことは、FileMaker自体の強みが周知されきれていない点が大きく、僕としても正確な情報をもっと発信してゆかねばと考えている。
知名度や普及度という点では、確かにFileMakerは若干弱い。パソコン用データベースソフトとしての販売本数シェアはマイクロソフト社55.1%/ファイルメーカー社43.5%と拮抗しているし、FileMakerの活かし方を知る人は増えているが、まだまだ誤解も残っていて、特にITの専門家ほど誤解している傾向は現実にある。
そんな中で発表されたFileMaker Goは、業務システムにiOSデバイスを絡めたいという現場需要にマッチし、「それならFileMakerを使ってみようか」という気にさせるという効果も生じさせている。
業務アプリやデータベースの設計にはそれなりのノウハウが必要で、これは開発言語の難易度とは無関係に存在している。だからFileMakerが比較的簡単であっても、よいデータベースを作るのが簡単というわけでは決してない。
とはいえ、FileMakerなら自分でやってみようと思う人は多いだろう。そんな方に向けて、FileMaker Go活用のためのFileMaker学習ポイントをご紹介したいと思う。
●リレーション不要のシステムならかなり簡単
FileMakerは、データを蓄える「データベース」の機能と、そのデータを自動操縦するための業務アプリ開発機能の両方を備えている。この2つの役割をしっかり意識することが、ものごとの出発点としてとても重要だ。
実は「業務アプリ開発機能」という部分は、あんまり難しくない。FileMakerというソフト自体を学んでゆけばなんとかなる。ここを必死に勉強すればとりあえず動くものは作れるし、FileMaker認定デベロッパ資格も取得できる。
ここに「リレーション」という概念がからむと話がややこしい。FileMakerのお作法を学ぶ必要があり、さらにデータモデリングの概念も知る必要がある。
では、リレーションが不要なデータベースとはどういうものだろうか?
FileMakerに限らずデータベースにおいては、データを収めるための「テーブル」というものをまず設定する。ここではデータを収める「フィールド」としてどういうものが必要かを定め、これらについての設定をする必要がある。
こうして用意されたフィールドにデータを入れてゆくわけだが、この1件のデータのことを「レコード」と呼ぶ。たとえば住所録なら1名の住所=1レコードだし、商品データベースなら1商品=1レコードになる。
「テーブル」とは表のことなので、フィールド=列、レコード=行と理解するとよりわかりやすい。
ここで大事なのが、あるテーブルの中では1レコードがもつ意味合いは1種類だけ、という点。1行目は住所氏名だけど、2行目は購入した商品が入力されている、という形のデータの持たせ方はダメで、これはすでにデータベースではないのだ。
つまり、1レコードのもつ意味がシステム全体で1種類だけで済むようなもの、つまり個人用の年賀状住所録のようなものを作るなら、話はとっても簡単で、入門書を見つつ数日FileMakerを使ってみれば、誰でもマスターできてしまう。
こういう使い方もFileMakerのひとつの魅力ではあるし、実用性は十分あるのだが、FileMakerの持つ能力の1割しか使ってないと考えてほしい。
●リレーションがからむ場合はお作法の厳守が必要
現実の業務処理においては、1レコードの持つ意味が1種類だけということはまずあり得ない。たとえば販売管理なら、顧客および商品をまず登録しておき、さらに何月何日にどの商品を誰が注文したといった記録を取るということで、ここですでに3つのテーブルが相互にリレーションを取る形となる。
ここに、さらに所属企業名だの商品カテゴリだの、受注確認メール送付確認だのという要素が入ってきて、話が複雑になってくる。しかし、これらの関係性をしっかり管理できると、業務処理の効率化に大きく寄与するのだ。
こうしたリレーションをFileMakerでしっかり実現するには、一定のお作法を守ることが必須。
このお作法について語るとかなり長くなってしまうので、用語だけご紹介すると、リレーションモデルを構築するためのPK/FKの約束事、そしてリレーションシップグラフにおけるTOG(ティーオージー)の概念といったあたりを理解することが必須。
FileMakerの関数やスクリプトの挙動、レイアウトの作り方などはヘルプを読みつつ慣れてゆけば誰でもマスターできるが、リレーションのお作法だけはできれば講習を受けて学んでおくべき。これを知っておくかどうかで、FileMakerの使い方がまったく違ってくるから。
このあたりを学びつつパソコンで開発したデータベースは、iOSデバイスに転送して使うことも、ネットワーク上で共有することもできる。この共有の概念も初心者は間違って捉えがちなので気をつけよう。
先日某質問サイトで、データベースの共有と単なるファイル転送とを混用した回答を発見してしまったのだが、この手の「あーそれは違うんだけどな」というたぐいの情報がたくさん見られてしまうのもFileMakerの特徴だから、ぜひとも気をつけてほしい。
というところが概要だが、次回以降より細部の解説に入っていく。
【しげた・かつのり】FileMaker公認トレーナー/FileMaker11認定デベロッパー。システム開発およびコンサルティングが主な仕事だが、企画やIT系ライターもやってるので最近は「ITジャーナリスト」の肩書きも加えることにしている。株式会社レクレアル代表取締役。FileMaker Goでのアンケートシステムや営業日報入力ツールなどの問い合わせ、そしてもちろんFileMakerのコンサルティングご要望など、ぜひともお待ちしております。
Twitter (個人用)< http://twitter.com/shigezo
>
※FileMaker情報メルマガ配信中!登録は以下で
< http://www.recrear.jp/
>