API

記事数:(12)

ソフトウェア

API:ソフトウェア連携の要

異なる機械仕掛け同士が互いの働きを貸し借りする際に、繋ぎ合わせる役目を果たすのが「応用機械仕掛け連絡口」です。これは、略して「応機連口」と呼ばれます。 例として、料理屋で考えてみましょう。料理屋には注文を受ける場所があります。お客(利用機械仕掛け)は、掲示されている品書き(応機連口)を見て、食べたいものを選びます。注文を受けた調理場(別の機械仕掛け)は、品書きに従って料理を作り、お客に提供します。 お客は調理場の内部構造や、どのように料理が作られるかを知る必要はありません。品書きを通じて、食べたいものを注文するだけで、必要な料理が手に入ります。 同じように、応機連口を使うことで、開発者は他の機械仕掛けの内部構造を理解する必要なく、その働きを利用できます。例えば、地図の機械仕掛けを作る際に、別の会社が作った経路探索の働きを借りたいとします。この場合、経路探索の機械仕掛けの内部構造を全て理解し、自分の機械仕掛けに組み込むのは大変な作業です。しかし、応機連口を使えば、必要な情報だけを受け渡しすることで、簡単に経路探索の働きを利用できます。 このように、応機連口は異なる機械仕掛け同士を繋ぐ窓口の役割を果たし、開発の手間を省き、様々な機械仕掛けの連携を容易にする重要な仕組みです。複数の機械仕掛けが組み合わさって、より複雑で便利な働きを実現できるのも、応機連口のおかげと言えるでしょう。
WEBサービス

組み合わせで生まれる、新たな価値:マッシュアップ

様々な情報を組み合わせ、全く新しい利用方法を生み出す技術、それが組み合わせの技術です。まるで料理人が様々な材料を組み合わせて新しい料理を作るように、既存の情報提供の仕組みを組み合わせて、これまでにない価値を生み出すことができます。インターネット上には、数え切れないほどの情報提供の仕組みが存在しています。これらの仕組みは、単独で使うだけでなく、他の仕組みと組み合わせることで、より大きな価値を生み出す可能性を秘めています。組み合わせの技術は、まさにその秘めた力を引き出すための方法です。 例えば、地図情報と飲食店の情報を組み合わせることを考えてみましょう。地図上に飲食店の場所を表示することで、近くにある飲食店を簡単に見つけることができます。さらに、利用者の現在地情報と組み合わせれば、今いる場所から最も近い飲食店を瞬時に表示することも可能です。また、天気予報と交通情報を組み合わせれば、天候による交通機関への遅延や運転への影響を予測することができます。例えば、大雨の予報が出ている日に、電車の遅延情報がリアルタイムで表示されることで、利用者は事前に備えることができます。さらに、渋滞情報と組み合わせることで、雨による道路の混雑状況を予測し、よりスムーズな移動経路を提案することも可能になります。 このように、組み合わせの技術は私たちの生活をより便利で豊かにしてくれる力を持っています。既に存在する資源を有効に活用することで、新たな工夫を生み出す、まさに現代社会における魔法のような技術と言えるでしょう。この技術は、情報技術の発展とともにますます重要性を増しており、今後さらに多くの革新的な利用方法が生まれてくると期待されています。あらゆる情報を組み合わせることで、無限の可能性が広がっているのです。
規格

POSIX: 違う種類でも同じように使える

色々な種類の計算機システム、特に「ユニックス」と呼ばれる種類のシステムの間で、作ったプログラムが同じように動くようにするための共通の決まり事を「ポシックス」と言います。まるで、色々な会社が作ったテレビでも、電源を入れたり音量を変えたりする基本的な使い方が同じようにできるのと同じです。 例えば、ある会社が作った計算機で動いていたプログラムを、別の会社が作った計算機でも変更なしで動かしたいとします。もし、これらの計算機がポシックスに沿って作られていれば、プログラムを書き直すことなく、そのまま動かすことができる可能性が高くなります。これは、プログラムを作る人にとって大きな利点です。なぜなら、それぞれの計算機の細かい違いを気にせずにプログラムを作ることができるからです。 ポシックスは、計算機の「基本的な操作」を共通のやり方で使えるように定めています。例えば、ファイルの読み書きや、画面への表示、キーボードからの入力などです。これらの操作は、ほとんどのプログラムで必要となる基本的なものです。 ポシックスのおかげで、プログラムを作る人は、色々な種類の計算機で動くプログラムを、より簡単に作ることができます。また、作ったプログラムを別の種類の計算機に移植するのも容易になります。これは、ソフトウェア開発のコスト削減や時間の節約につながります。 テレビのリモコンの例で考えると、もし各メーカーが全く異なるボタン配置のリモコンを作っていたら、新しいテレビを買うたびに使い方を覚え直す必要があります。しかし、基本的なボタン操作が共通化されていれば、どのメーカーのテレビでもすぐに使うことができます。ポシックスも同様に、計算機システムの共通化を進めることで、ソフトウェア開発をよりスムーズにしています。
規格

TWAIN:つなぐ規格

「トゥエイン」。聞きなれない言葉に思われる方もいらっしゃるかもしれません。確かに、日常会話でこの言葉を耳にする機会は少ないでしょう。実はこれは、画像読み取り装置や写真機を計算機につなぐための決まりごと、そしてそのための接続手順を定めた言葉なのです。「面白い名前のない技術」という意味を持つ「Technology Without An Interesting Name」のそれぞれの単語の頭文字を取って「トゥエイン」と名付けられました。少し自虐的なこの名前ですが、その中身は画像を取り込む分野で重要な役割を担っています。 トゥエイン規格が登場する前は、各製造会社がそれぞれ独自の方法で機器と計算機をつないでいました。そのため、ある会社の画像読み取り装置に対応した処理手順が、別の会社の画像読み取り装置ではうまく動かないといった問題がしょっちゅう発生していました。例えば、ある会社の画像読み取り装置で写真をデータ化するために作った処理手順は、別の会社の画像読み取り装置では全く役に立たないといった具合です。これは、利用者にとって大きな負担となっていました。なぜなら、新しい画像読み取り装置を購入するたびに、それに対応した専用の処理手順を準備する必要があったからです。 トゥエインはこうした不便な状況を良くし、異なる製造会社の機器でも共通の手順でつなぎ合わせられるようにすることを目指して作られました。共通の決まりごとがあれば、処理手順を作る側はそれぞれの会社の機器に合わせて個別に手順を作る必要がなくなり、利用者はどの会社の機器を使っても同じように操作できるようになります。トゥエインのおかげで、私たちは異なる会社の画像読み取り装置や写真機を同じように扱うことができるようになり、より便利に画像データを利用できるようになったのです。まるで異なる言葉を話す人々の間に、共通の言語が生まれたように、トゥエインは機器と計算機の間の共通語として活躍しています。
WEBサービス

ウェブサービス:インターネットの新常識

今では、どこにいても世界中の人とつながり、たくさんの知識を共有できるようになりました。これは、インターネットのおかげです。インターネットは、私たちの暮らしになくてはならないものとなっています。その中で、近年特に注目されているのが「ウェブサービス」です。ウェブサービスとは、インターネット上にある色々な機能を、他の仕組みからも使えるようにする技術のことです。 違う仕組みや応用同士を連携させることで、より高度なサービス提供が可能になります。例えば、地図で場所を調べたり、知りたいことをキーワードで検索したり、写真や動画をみんなで見せ合ったり。私たちが毎日使っている多くのサービスは、このウェブサービスによって支えられています。 この技術をもう少し詳しく説明すると、インターネット上で公開されている機能を、部品のように組み合わせて使うことができます。それぞれの機能は独立した部品として作られているため、組み合わせ方次第で色々なサービスを生み出すことができます。まるで積み木のように、色々な部品を組み合わせて、家や車、ロボットなど、様々なものを作ることができるのと同じです。 ウェブサービスには様々な種類があります。例えば、ある場所の天気情報を提供するサービスや、商品の価格を比較するサービス、翻訳サービスなど、多岐にわたります。これらのサービスは、私たちの生活をより便利で豊かにしてくれます。例えば、旅行前に目的地の天気を調べたり、欲しい商品を一番安く買えるお店を探したり、外国語のウェブサイトを日本語で読んだりすることが簡単にできるようになります。 この記事では、これからウェブサービスの基本的な考え方や種類、そして私たちの生活への影響について、やさしく説明していきます。ウェブサービスがどのように私たちの生活を支え、より便利にしているのか、その仕組みを理解することで、インターネットをもっと有効活用できるようになるでしょう。
ソフトウェア

ウィンドウズを支える縁の下の力持ち:Win32

机の上で動く色々な道具は、実は直接机とやり取りしているわけではありません。間に机の表面を覆うシートがあるとしましょう。このシートは机を保護し、道具を使う際の様々な便宜を提供してくれます。そして、このシートと道具の間を取り持つ重要な役割を果たしているのが、シートに描かれた様々な模様だとします。この模様は、道具使いの指示をシートに伝えるための合図のようなものです。 例えば、道具で線を引く時、シートの模様に従って道具を動かせば、線がまっすぐ綺麗に引けます。あるいは、シートの特定の模様の上に道具を置けば、道具が滑り落ちるのを防ぐことができます。道具を使う色々な動作は、シートの模様を通してシートに働きかけることで実現されます。この模様は、いわば道具とシートの間で交わされる共通の合図のようなもので、これによって道具を使う人はシートの複雑な構造を理解する必要なく、様々な機能を簡単に利用できるようになります。 同じように、計算機上で動く色々な処理手順は、実は直接計算機とやり取りをしているわけではありません。間に立って仲介役を担っているのが、基本となる手順の集まり、つまり計算機の土台となる仕組みです。そして、この土台となる仕組みと処理手順の間を取り持つ重要な役割を果たしているのが、計算機の土台となる仕組みの一つである「ウィンドウズ32」と呼ばれるものです。これは、処理手順が計算機の土台の機能を使うための窓口のような役割を果たします。例えば、画面に文字を映したり、書類を開いたり、他の計算機と繋いだりといった、処理手順が実行する様々な動作は、「ウィンドウズ32」を通して計算機の土台に指示を出すことで実現されます。「ウィンドウズ32」は、いわば処理手順と計算機の土台の間で交わされる共通の言葉のようなもので、これによって処理手順を作る人は計算機の土台の複雑な内部構造を理解する必要なく、様々な機能を簡単に利用できるようになります。これは、机のシートの模様が道具使いを助けるのと同じように、処理手順を作る人の負担を減らし、より良い道具作りに集中できるようにするための工夫なのです。
ソフトウェア

高速画像処理の鍵、ビットブリット

皆さんが普段見ている電子計算機の画面表示は、まるで劇場の舞台装置が入れ替わる様子と似ています。劇場では、場面転換の際に、大きな背景の絵が舞台裏から運び出され、前の絵と素早く入れ替えられます。これと同じように、電子計算機の画面に映し出される映像も、表示したい絵の情報を記憶装置から取り出し、画面に相当する記憶場所に書き込むことで実現されます。 この画面表示専用の記憶場所は、まるで舞台裏の絵置き場のようなもので、よく「図形記憶装置」や「映像記憶装置」などと呼ばれます。表示したい絵の情報は、まず主要な記憶装置からこの図形記憶装置へと送られます。この情報の移動は、まるで舞台係が背景の絵を舞台裏から運び出す作業に似ています。この絵の移動作業を「点描転送」と呼びます。 点描転送は、絵の情報を正確に、そして素早く画面に表示するために欠かせない作業です。まるで、多くの観客が見ている前で、背景の絵をスムーズに入れ替える舞台係の熟練した技のようです。点描転送が速ければ速いほど、滑らかで自然な画面表示が可能になります。例えば、動画を滑らかに再生したり、複雑な図形を素早く表示したりするために、この点描転送の速度は非常に重要です。 さらに、最近の電子計算機では、この点描転送を専門に処理する部品が搭載されているものもあります。これは、舞台転換を専門に行う舞台係がいるようなものです。専門の部品を使うことで、より速く、より効率的に点描転送が行われ、高画質で滑らかな映像表示が可能になります。まるで、舞台装置の転換が一瞬で行われ、観客を驚かせる魔法のようなものです。 このように、電子計算機の画面表示は、舞台裏で行われる緻密な作業によって支えられています。私たちが目にする鮮やかな映像は、点描転送をはじめとする様々な技術の積み重ねによって実現されているのです。
WEBサービス

SOAPでつなぐ世界の情報

情報伝達の橋渡し役ともいえる情報網、それがまさしくインターネットです。世界中に張り巡らされた網の目を通して、様々な種類の計算機が繋がり、まるで人間のように情報をやり取りしています。この情報交換を可能にする技術の一つに、石鹸を意味する英語の略語から名付けられた通信方式があります。 この通信方式は、異なる計算機上で動く様々な機能を持つ部品が、互いに言葉を理解し合うための共通語のような役割を担っています。例えるなら、異なる会社の計算機が、商品の在庫数を共有したり、網上での買い物注文を受け付けたりする際に、この通信方式が活躍します。まるで異なる言葉を話す人々が、通訳を通して意思疎通を図るように、この通信方式は計算機間の情報交換を円滑に進めます。 この通信方式の特徴は、様々な種類の計算機や機能を持つ部品が、同じように情報を送受信できることです。例として、文字情報だけでなく、画像や音声などの様々な形式の情報も扱うことができます。また、安全に情報をやり取りするための仕組みも備わっています。これにより、個人情報や秘密の情報も安心して送受信できます。 この技術のおかげで、私たちは世界中の情報に容易にアクセスし、様々な役務を利用できるようになりました。網上での買い物や動画の視聴、知人との連絡など、私たちの日常生活に欠かせない多くのことが、この技術によって支えられています。今後もこの技術は進化し続け、私たちの生活をより豊かにしてくれることでしょう。
開発

アプリ連携の要:API入門

異なる機械仕掛けのやり取りを可能にするのが、応用機能組み合わせ口、つまりエーピーアイと呼ばれるものです。これは、様々な仕組みに共通の言葉や手順を決めておくことで、それぞれの仕組みがまるで一つの仕組みのように、協力して働くことを可能にします。 エーピーアイは、ある仕組みの一部を、他の仕組みから呼び出して使うための方法や、やり取りする情報の書式などを定めたものです。例えるなら、レストランで料理を注文する場面を考えてみましょう。お客さんがメニューを見て料理を選び、店員さんに注文を伝えます。この時、メニューがエーピーアイの役割を果たしています。メニューには、料理の名前や説明、価格などが記載されており、お客さんはメニューに従って注文することができます。店員さんは、注文された料理を厨房に伝え、料理が提供されます。このように、メニューがあることで、お客さんと厨房の間でスムーズなやり取りが可能になります。 エーピーアイも同様に、異なる仕組みの間で情報をやり取りするための共通の言葉を提供することで、円滑な連携を可能にしています。これにより、作り手は他の仕組みの機能を自分の仕組みに組み込むことが容易になり、作る手間や時間を省き、より良い仕組みを作ることができます。 エーピーアイは、今の世の中で広く使われており、様々な作業や道具で使われています。例えば、地図を見る道具で近くの飲食店を探すとき、飲食店の情報は、食べ物の案内をする場所のエーピーアイを使って得ていることがあります。また、仲間と繋がるための道具への書き込みを他の道具と共有する機能なども、エーピーアイによって実現されています。 エーピーアイを使うことで、作り手は全ての機能を一から作る必要がなくなり、作る時間を大幅に短縮できます。また、既に広く使われている機能を組み込むことで、仕組みの質を高めることにも繋がります。エーピーアイのおかげで、様々な作業や道具が繋がり、新しい価値を生み出すことが可能になります。これにより、使う人はより便利で様々な作業を利用できるようになります。エーピーアイは、今の社会の情報通信の発展に大きく貢献していると言えるでしょう。
ソフトウェア

ソフトの橋渡し:インターフェース解説

色々な種類の計算機仕掛けが、まるで一つのもののように、滞りなく一緒に動くためには、情報の手渡しの方法を決めておくことがとても大切です。この決め事を計算機仕掛けの境界面と呼びます。ちょうど、異なる言葉を話す人々が、通訳を通して話し合うように、この境界面は計算機仕掛け同士が情報をやり取りする時の橋渡し役をします。 それぞれの計算機仕掛けは、異なる考え方や作り方で作られているかもしれません。しかし、境界面が正しく動いていれば、まるで一つの計算機仕掛けのように、滑らかに連携して動くことができます。例えるなら、色々な形のピースを組み合わせるパズルのピースのように、異なる形の計算機仕掛けを境界面が繋ぎ合わせ、全体を一つのものとして動かすのです。 例えば、絵を描く計算機仕掛けと、文章を作る計算機仕掛けがあるとします。絵を描く計算機仕掛けは、色の情報や線の情報を扱います。文章を作る計算機仕掛けは、文字の情報や文章の構成を扱います。これらの計算機仕掛けが連携するためには、境界面が必要です。境界面を通して、絵を描く計算機仕掛けは、絵の情報を文章に変換するための指示を文章を作る計算機仕掛けに送ります。文章を作る計算機仕掛けは、受け取った指示に基づいて、絵の内容を説明する文章を作成します。このように、境界面は異なる種類の情報を扱う計算機仕掛け同士を繋ぎ、連携させる重要な役割を担っています。もし、境界面がないと、計算機仕掛け同士は情報を交換することができず、連携して動くことができません。 境界面には様々な種類があり、それぞれに得意なことがあります。あるものは、速く情報を伝えることに優れており、あるものは、複雑な情報を正確に伝えることに優れています。計算機仕掛けの種類や目的によって、適切な境界面を選択することが、計算機仕掛けを効率よく連携させる上で重要になります。
規格

ODBC:様々なデータベースへの橋渡し

会社を支える上で、情報を蓄積し管理する仕組みであるデータベースは欠かせないものとなっています。顧客の情報や売上の記録、商品の在庫状況など、様々な情報がデータベースに保管され、日々の業務で活用されています。しかしながら、データベースには様々な種類があり、それぞれ繋がる方法や動かす方法が異なります。そのため、複数の種類のデータベースを扱う際、開発者はそれぞれのデータベースに合わせた手順書を作らなければなりませんでした。これは、開発の手間を増やし、作業の効率を悪くする一因となっていました。 このような問題を解決するために登場したのが「開放型データベース接続」(ODBC)です。ODBCは、異なる種類のデータベースに繋がるための共通の窓口を提供することで、開発者がデータベースの種類を気にすることなく手順書を作成できるようにします。例えるなら、様々な国の言葉を話す人々が集まる場で、共通語として通訳を介することで円滑に意思疎通ができるように、ODBCはデータベースと手順書の間の通訳の役割を果たします。これにより、開発者はデータベースへの繋がる方法や動かす方法の違いを気にせず、情報の取得や更新といった本来の作業に集中できます。 ODBCを使うことで、開発の効率が上がり、手順書の管理も容易になります。変更があった場合も、ODBCの部分だけを修正すれば、全てのデータベースに対応できるため、修正の手間が大幅に削減されます。また、ODBCは異なる種類のデータベース間の連携も容易にします。例えば、ある仕組みでは「オラクル」というデータベースを、別の仕組みでは「マイクロソフト SQLサーバー」というデータベースを使っている場合でも、ODBCを通して異なるデータベース間で円滑に情報のやり取りを行うことができます。これにより、複数のデータベースを効率的に活用し、より高度な情報管理が可能になります。
規格

情報技術を支える橋渡し:インターフェース

様々な機械や道具、あるいは人と機械の間を取り持つ大切な役目を担うのが接点です。情報の世界では、この接点は仕組同士が情報をやり取りしたり、人が機械を動かしたりする際に橋渡しとして働きます。接点は、ちょうど異なる言葉を話す人同士に通訳が必要なように、異なる仕組み同士が正しく情報をやり取りするために欠かせない存在です。 例えば、計算機に機器をつなぐための差し込み口、画面上に映し出される情報を見るための窓、指で画面に触れて操作するための板などは、全て接点の一種です。これらの接点があるおかげで、私たちは複雑な仕組みを深く理解しなくても、簡単に情報技術の恩恵を受けることができます。接点は、まさに情報技術の世界を支える縁の下の力持ちと言えるでしょう。 異なる仕組みがまるで一つの仕組みのように繋がって動けるのも、接点がそれぞれの仕組みの特徴を理解し、適切な形に情報を伝え直しているおかげです。この情報の伝達役を担うことで、接点は情報技術の進歩に大きく貢献しています。もし接点がなかったらどうなるか、想像してみてください。私たちはあらゆる機器や道具の内部構造を理解し、複雑な操作をこなさなければならなくなるでしょう。例えば、計算機を使うだけでも、複雑な命令を直接打ち込まなければならなくなるかもしれません。 接点は私たちと情報技術の世界をつなぐ、なくてはならない存在です。普段は意識することなく使っているかもしれませんが、情報技術を快適に利用できるのは、様々な接点のおかげなのです。この接点の働きを理解することで、情報技術への理解もより深まるでしょう。