説明書を読まなくても使い方がわかるのが、iPhoneの魅力であり強みです。しかし、知っているつもりでも正しく理解していないことがあるはず。このコーナーでは、そんな「いまさら聞けないiPhoneのなぜ」をわかりやすく解説します。今回は、『Appleがときどき発表する「○○Kit」って何ですか?』という質問に答えます。
***
一般的に、ソフトウェアは多数の"パーツ"から構成されます。パーツは汎用品として練り上げられているため、いちから開発(プログラミング)するより不具合が少なく、なにより開発に要する期間を短縮できるメリットがあります。それらパーツの集合体は「ライブラリ」と呼ばれ、パソコンやスマートフォンでは基本ソフト(OS)と一体で配布されます。
Appleは、iPhoneやMacといったハードウェアだけでなく、ハードウェアに応じたOSやライブラリを創り出すソフトウェアのメーカーでもあります。iPhoneのシステム「iOS」はハードウェアの制御だけでなく、多数のライブラリを含んでおり、すべてではないもののアプリから呼び出す形で利用できます。サードパーティーから出ているアプリでも、ボタンなど画面を構成する要素がiOS標準装備のものと同じことがありますが、それはiOSに含まれるライブラリにアクセスすることで"パーツを再利用"しているからです。
その再利用形態のひとつが「○○Kit」です。○○Kitを利用してプログラミングすることにより、iOS向けにデザインされた機能をアプリに装備できます。機能的にはライブラリそのもので、Apple流に言い換えたものと考えていいでしょう。ボタンなどユーザインターフェイス(UI)の基礎機能を提供する「UIKit」、地図の表示や位置情報を扱う「MapKit」、医療や健康関連の情報にアクセスできる「ResearchKit」など、「○○Kit」の呼び名を持つiOS用ライブラリは多数存在します。
ただし、「○○Kit」だけがiOSのライブラリではありません。画像処理/加工を行う「CoreImage」、Bluetooth機器の制御に利用される「CoreBluetooth」のように、「Core○○」の体裁をとるライブラリも多数あります。ライブラリごとに機能や仕様はさまざまですから、あまり画一的にはとらえず、"アプリ開発を支える基盤機能群の呼称のひとつ"といった理解でいいでしょう。