Google PlayストアでUnionpediaアプリを復元するために作業中です
出ていきます入ってきます
🌟ナビゲーションを改善するためにデザインを簡素化しました!
Instagram Facebook X LinkedIn
あなたのロゴとドメインを持つ独自のユニオンペディア、月額9.99 USDから
私のユニオンペディアを作成する

アプリケーションプログラミングインタフェース

索引 アプリケーションプログラミングインタフェース

アプリケーションプログラミングインタフェース(、)「インターフェイス」「インターフェース」と表記されることもあるが、本記事では「インタフェース」で統一する。とは、広義ではソフトウェアコンポーネント同士が互いに情報をやりとりするのに使用するインタフェースの仕様である。 APIには、サブルーチン、データ構造、オブジェクトクラス、変数などの仕様が含まれる。APIには様々な形態があり、POSIXのような国際標準規格、マイクロソフトのWindows APIのようなベンダーによる文書、プログラミング言語の標準ライブラリ(例えば、C++のStandard Template Libraryやなど)がある。 商業的に使われる狭義では、各種システムやサービス(ハードウェア、OS、ミドルウェアおよびWebサービス等)を利用するアプリケーションソフトウェア (Application) を開発・プログラミング (Programming) するためのインタフェース (Interface) である。こちらの意味では、システムやサービスから直接提供されないもの、例えば言語の標準ライブラリは含まない。

目次

  1. 131 関係: Advanced SCSI Programming InterfaceAndroid (オペレーティングシステム)Androidのバージョン履歴名前修飾合衆国最高裁判所変数 (プログラミング)互換性ミドルウェアマッシュアップ (Webプログラミング)マイクロソフトメソッド (計算機科学)ライブラリライセンスリバースエンジニアリングリフレクション (情報工学)プラットフォーム (コンピューティング)プラグインプログラミング言語プロシージャデバイスドライバデータ構造フリースタンディング環境ファームウェアフェアユースドメイン固有言語ダイナミックリンクライブラリ制御の反転呼出規約アプリケーションバイナリインタフェースアプリケーションソフトウェアインタフェース (情報技術)オペレーティングシステムオラクル (企業)カプセル化クラス (コンピュータ)クロスプラットフォームコンパイラコンソールシステムコールソースコードソフトウェアフレームワークソフトウェアコンポーネントソフトウェア開発キットソニーサブルーチン共有メモリBerkeley Software DistributionC SharpC++Carbon (API)... インデックスを展開 (81 もっと) »

  2. アプリについてアプリケーションプログラミングインタフェース

Advanced SCSI Programming Interface

ASPI (Advanced SCSI Programming Interface) とは、アダプテックが提唱した以下の仕様の総称である。

見る アプリケーションプログラミングインタフェースとAdvanced SCSI Programming Interface

Android (オペレーティングシステム)

Android(アンドロイド)は、Googleが開発した汎用モバイルオペレーティングシステムである。Linuxカーネルやオープンソースソフトウェアがベースで、主にスマートフォンやタブレットなどのタッチスクリーンモバイルデバイス向けにデザインされている。PC用にはAndroid-x86、テレビ用にはAndroid TV、自動車用にはAndroid Auto、ウェアラブルデバイス用にはWear OS(旧:Android Wear)がある。世界で最もよく使われているオペレーティングシステムであり、2021年5月時点で30億台を超えるアクティブデバイスがある。 iPhoneと区別する為に、Androidスマートフォンをさす呼称としても使われる。。

見る アプリケーションプログラミングインタフェースとAndroid (オペレーティングシステム)

Androidのバージョン履歴

この項目ではGoogleが開発した、スマートフォンやタブレットに代表されるモバイル機器向けのオペレーティングシステムであるAndroidのバージョンおよびリリース履歴について扱う。 一部の例外を除き、やGoogleから発表されている標準のAndroidについて記述する。サードパーティー(メーカーまたはキャリア)が独自に追加・改変した機能は含まない。 歴代のコードネームのうち、1.5 Cupcakeから9 Pieまでは頭文字がバージョンの発表順にCからのアルファベット順で始まる菓子の名前が付けられており、マスコットのAndroidロボットが各コードネームの菓子に扮していた。また、コードネームがエンドユーザー向けの製品別名として使われることもあった。Android 10からはこのようなコードネームが廃止され、また色覚障害者にも見やすいようにロゴの変更とマスコットの色味の変更が行われた。ただし開発者向けのプレビュー期間中は、依然としてQやRなどのアルファベット1文字によるコードネームが使われており、またGoogle社内ではQuince TartやRed Velvet Cakeのようなコードネームが使われていた。Android 13以降では、Tiramisuのようなコードネームが開発者向けにも再び公開されるようになっている。Android SDKおよびAndroid NDKには、コードネームに対応したAPIレベルのエイリアス定数も用意されている。

見る アプリケーションプログラミングインタフェースとAndroidのバージョン履歴

名前修飾

名前修飾(なまえしゅうしょく、name mangling)は、現代的なコンピュータプログラミング言語処理系で用いられている手法で、サブルーチン(関数)名などに対する内部名を、その表層的な名前のみならず、関数であればその引数の型や返戻値の型などといった意味的な情報を含めて修飾した(manglingした)名前とするものである。コンパイラからリンカ、さらには実行時のデバッガなども含んだシステム全体が、高度な型に関する情報などをサポートするように再実装するには多くの難しさがあるが、この手法であれば、システムの多くの部分ではわずかな修正(たとえば、名前に '$' という文字が含まれることを許すようにする、など)で済む。特に、多重定義(オーバーロード)を許す言語では、同一の表層名に対して許される多重定義や、その同定について上手に修飾を設計すれば、扱いが単純になる。また、そのままではエラーメッセージ等が読み辛いものとなるが、「解読」ルーチンを呼ぶように修正するだけで、型の情報などが付加された、むしろわかりやすいメッセージが出力されるようになる。

見る アプリケーションプログラミングインタフェースと名前修飾

合衆国最高裁判所

アメリカ合衆国最高裁判所(アメリカがっしゅうこくさいこうさいばんしょ、Supreme Court of the United States、略称: SCOTUS)は、アメリカ合衆国連邦政府の司法府(連邦裁判所)を統括する、アメリカ合衆国における最上級の連邦裁判所。 合衆国憲法第3条第1節の規定に基づき設置されている唯一の裁判所である(他の連邦の下級裁判所は連邦法に従って設置されている)。 日本では連邦最高裁判所と呼ぶことも多い。

見る アプリケーションプログラミングインタフェースと合衆国最高裁判所

変数 (プログラミング)

プログラミングにおける変数(へんすう、variable)とは、高水準言語のプログラムのソースコードにおいて、扱うデータを読み書きする記憶域 (storage) のことであり、固有の名前(識別子)によって識別される。変数を用いることで、データを一定期間記憶し必要なときに利用することができる。高水準言語において、変数は記憶装置(メモリ)を抽象化する役割を果たす。 一人一人の人間が異なる名前によって区別されるように、変数も個々の名前によって区別される。これにより、プログラム上で複数のデータを容易に識別・管理することができる。変数の識別子 (identifier) のことを変数名 (variable name) という。一般に、変数が表すデータをその変数の値(あたい、value)という。

見る アプリケーションプログラミングインタフェースと変数 (プログラミング)

互換性

互換性(ごかんせい、)とは、ある部品やコンポーネント(構成要素)などを置き換えても同様に動作させることができる性質のこと。 特に工業製品では、互換性を確保することで新たなシステムを用意する必要がなくなり、設計や部品の再利用性が高まることでコストカットを見込めることや、過去の製品からの買い替えなどを進めることができたりする。ただし、古に縛られてしまうために技術革新の妨げとなるという側面もある。互換性を確保するために余計なコストがかかる場合は軽視されることがあるほか、メーカー間の互換性はベンダーロックインを狙うため、あえて削ぐものもある。

見る アプリケーションプログラミングインタフェースと互換性

ミドルウェア

ミドルウェア(Middleware)は、コンピュータの分野で、コンピュータの基本的な制御を行うオペレーティングシステム(OS)と、各業務処理を行うアプリケーションソフトウェアとの中間に入るソフトウェアのこと。 通常はオペレーティングシステムの機能の拡張、あるいはアプリケーションソフトウェアの汎用的(共通的)な機能を集めたものである。アプリケーションソフトウェアはミドルウェアに要求を出すと、ミドルウェアがオペレーティングシステムに必要な要求を出し、結果をアプリケーションソフトウェアに返す。あるいはミドルウェア自体が各アプリケーションソフトウェアの起動・停止・監視などを含めた制御を行う。 代表的なミドルウェアには、データベース管理システム(DBMS)やトランザクションモニターなどがある。

見る アプリケーションプログラミングインタフェースとミドルウェア

マッシュアップ (Webプログラミング)

マッシュアップ(Mashup)とは、ウェブ上に公開されている情報を加工、編集することで新たなサービスとすること。 マッシュアップの語源は、異なる音源からトラックの一部をそれぞれ取り出してミックスし、一つの曲にする音楽の手法である。ウェブにおけるマッシュアップも同様に複数の情報源からの情報から関連のあるものだけを取り出して加工し、一つのウェブサービスとして仕立てあげる。 マッシュアップが注目されるようになったのはさまざまな企業や団体が所有するデータベースを公開するWebAPIを整備するようになったためである。これにより情報技術に対する深い造詣がなくとも新たなサービスを立ち上げることができるようになった。

見る アプリケーションプログラミングインタフェースとマッシュアップ (Webプログラミング)

マイクロソフト

マイクロソフト()は、アメリカ合衆国ワシントン州に本社を置く、ソフトウェアを開発、販売する会社である。1975年にビル・ゲイツとポール・アレンによって創業された。1985年にパソコン用OSのWindowsを開発。1990年にWindows向けのオフィスソフトとしてMicrosoft Officeを販売。1995年にウェブブラウザのInternet Explorerをリリース。2001年に家庭用ゲーム機のXboxを販売。2009年に検索エンジンのBingを設立。2010年にクラウドサービスとしてAzureを開始。2015年7月15日Microsoft Edgeを開発、そして展開。2024年2月時点での時価総額が世界1位。

見る アプリケーションプログラミングインタフェースとマイクロソフト

メソッド (計算機科学)

メソッド あるいは メンバー関数 (-かんすう) とはオブジェクト指向プログラミング言語において、あるクラスまたはオブジェクトに所属するサブルーチンを指す。

見る アプリケーションプログラミングインタフェースとメソッド (計算機科学)

ライブラリ

ライブラリ()は、汎用性の高い複数のプログラムを再利用可能な形でひとまとまりにしたものである。ライブラリと呼ぶときは、それ単体ではプログラムとして動作させることはできない、つまり実行ファイルではない場合がある。ライブラリは他のプログラムに何らかの機能を提供するコードの集まりと言える。ソースコードの場合と、オブジェクトコード、あるいは専用の形式を用いる場合とがある。たとえば、UNIXのライブラリはオブジェクトコードをarと呼ばれるアーカイブツール(アーカイバ)でひとまとめにして利用する。図書館()と同様にプログラム(算譜)の書庫であるので、索引方法が重要である。 また、ソフトウェア以外の再利用可能なものの集合について使われることもある(音声データなど)。

見る アプリケーションプログラミングインタフェースとライブラリ

ライセンス

ライセンス(license、licence)は、それが存在しなければ違法となる行為をすることを許可すること、あるいはその許可を証する書面のことをいう。訳語は免許、認可、許可、鑑札など。 ライセンスを与える者をライセンサー、ライセンスを受ける者をライセンシーと呼ぶ。 知的財産権の側面におけるライセンスは、権利者が独占する権利の実行を他者に許諾するものであるため、当該権利を保有する人材や企業の確保は国益に重大な影響を及ぼす。そこで欧米ではこの分野を国際的な政治戦略として高い位置づけでとらえ、各種ライセンスの積極的な保護育成に力を注いでいる。

見る アプリケーションプログラミングインタフェースとライセンス

リバースエンジニアリング

リバースエンジニアリング(reverse engineering)とは、機械を分解したり、製品の動作を観察したり、ソフトウェアの動作を解析するなどして、製品の構造を分析し、そこから製造方法や動作原理、設計図などの仕様やソースコードなどを調査することを指す。 直訳すれば「逆算作業」といったものになるが、計算機科学の分野では「反転工学」と翻訳されることが多い。

見る アプリケーションプログラミングインタフェースとリバースエンジニアリング

リフレクション (情報工学)

情報工学においてリフレクション (reflection) とは、プログラムの実行過程でプログラム自身の構造を読み取ったり書き換えたりする技術のことを指す。

見る アプリケーションプログラミングインタフェースとリフレクション (情報工学)

プラットフォーム (コンピューティング)

コンピュータにおけるプラットフォーム (platform) とは、主に、オペレーティングシステム (OS) やハードウェアといった基礎部分を指す。コンピューティングプラットフォーム (computing platform) と呼ばれることもある。

見る アプリケーションプログラミングインタフェースとプラットフォーム (コンピューティング)

プラグイン

プラグイン (plug-in)。

見る アプリケーションプログラミングインタフェースとプラグイン

プログラミング言語

プログラミング言語(プログラミングげんご、)とは、プログラムを記述するための人工言語。コンピュータプログラムを書くために考案された、正確に定義された記号と規則のしくみ。以前は、しばしばプログラム言語と表記された。

見る アプリケーションプログラミングインタフェースとプログラミング言語

プロシージャ

プロシージャ(procedure)とは、コンピュータプログラミングにおいて複数の処理をひとつの単位にまとめておき、呼び出し可能にしたものをいう。日本語では手続きとするのが定訳である。一連の処理を意味を持ったひとまとまりにすることで、再利用性が高まり、プログラム中に繰り返して現れる処理を1ヶ所で記述でき、プログラムの保守、管理を容易にする。 繰り返し利用されることから、ルーチン(routine)ともいう。呼び出し関係は通常階層構造をなし、その最上位にある、プログラム全体のエントリーポイントを含むルーチンをメインルーチン(メインプログラム)、呼び出されるものをサブルーチン(サブプログラム)という。また、プログラミング言語によっては関数(function)と呼ばれることもある。

見る アプリケーションプログラミングインタフェースとプロシージャ

デバイスドライバ

デバイスドライバ()とは、コンピュータのデバイス(ハードウェア類。たとえばディスプレイ、プリンター、イーサネットボード、拡張カード、その他周辺機器など)をオペレーティングシステム (OS) が制御するためのソフトウェアである。しばしば略してドライバあるいはドライバーと呼ばれる。

見る アプリケーションプログラミングインタフェースとデバイスドライバ

データ構造

データ構造(データこうぞう、data structure)とは、コンピュータプログラミングでの、データの集まりの形式化された構成である。格納された各データの参照や修正といった管理を容易にするための構成である。一定の関係性を持たせたデータ型のコレクションであり、データ値に適用するための関数や手続きも格納されることがある。データの代数的構造とも言われる。

見る アプリケーションプログラミングインタフェースとデータ構造

フリースタンディング環境

フリースタンディング環境(フリースタンディングかんきょう、freestanding environment)はC言語およびC++のプログラム実行環境の一種である。対義語はホスト環境(hosted environment)。

見る アプリケーションプログラミングインタフェースとフリースタンディング環境

ファームウェア

ファームウェア()とは、電子機器に組み込まれたコンピュータシステム(ハードウェア)を制御するためのソフトウェアで、ソフトウェアをROM等の集積回路にあらかじめ書き込まれた状態で、機器に組み込んだもの。また、ソフトウェアではなく、プログラマブルロジックデバイスで利用する回路情報も広義のファームウェアと呼ぶことがある。

見る アプリケーションプログラミングインタフェースとファームウェア

フェアユース

フェアユース(英語:、公正利用とも訳される)とは、アメリカ合衆国の著作権法などが認める著作権侵害の主張に対する抗弁事由の一つである。同国の著作権法107条(、)によれば、著作権者の許諾なく著作物を利用しても、その利用が4つの判断基準のもとで公正な利用(フェアユース)に該当するものと評価されれば、その利用行為は著作権の侵害にあたらない。このことを「フェアユースの法理」とよぶことがある。 米国におけるフェアユースの大きな特徴の一つは、著作権者の許諾なしに著作物を利用できる場合(言い換えれば著作権が制限される場合)について、欧州連合や日本の著作権法のように具体的な類型を列挙する(限定的使用のための複製や引用、裁判手続等における複製など。

見る アプリケーションプログラミングインタフェースとフェアユース

ドメイン固有言語

ドメイン固有言語(ドメインこゆうげんご)またはドメイン特化言語(ドメインとっかげんご、、DSL)は、特定のタスク向けに設計されたコンピュータ言語である。 DSL は一種類のタスクをうまく記述することに集中したプログラミング言語であり、古くから存在した。何らかのプログラミング言語それ自体の構文と処理系を利用する internal DSL(あるいは embedded DSL)と、独立した構文と処理系を持つ external DSL に大別されるが、そのいずれにしても近年の、自由度と機能が高いプログラミング言語により手軽に扱えるようになったことから広まっている。ドメイン固有モデリングの支持者によれば、ドメイン固有モデリングの発達と共にDSLという用語も広く知られるようになってきた、とされる。実際にはドメイン固有言語はモデリングとは特別な関係が何もあるわけでもなく(ドメイン固有モデリングのためのドメイン固有言語、といったものはあるが)、モデリング以外にもあらゆる分野のための言語がある。

見る アプリケーションプログラミングインタフェースとドメイン固有言語

ダイナミックリンクライブラリ

ダイナミックリンクライブラリ (Dynamic Link Library: DLL、動的リンクライブラリ) は、ソフトウェアバイナリ形態の一種。動的リンクを使ったライブラリのこと。あるいは、Windowsで使用されるファイル形式を特に意図して、この語が用いられる場合もある。 複数のプログラムから共通に利用できるように種々の機能をプログラムとは分離させた、シェアードライブラリ(共有ライブラリ)でもあることが多い。

見る アプリケーションプログラミングインタフェースとダイナミックリンクライブラリ

制御の反転

コンピュータプログラミングの用語で制御の反転(Inversion of Control、IoC)とは、なんらかの種類のプログラムにおいて、プロシージャを「呼び出す側」と「呼び出される側」が、従来のプログラムとは逆になるようにする、ということである。たとえば従来の、シェルのコマンドで実行される古典的なアプリケーションではメインループが最上位で動いており、そこからライブラリなどのAPIを呼ぶのに対し、ウェブブラウザ中で実行されるJavaScriptアプリケーションでは、各種のハンドラがブラウザから呼ばれてアプリケーションが動く、というのも大きく見ればそのような「反転」の一種と言える。これが使われる一例としては、プログラムのモジュール化を促進して、その拡張性を高めるために用いられている。用語として Inversion of Control を略した IoC を広めたのはロバート・マーティンとマーティン・ファウラーらである。IoC は彼らの「依存性反転原則」とは関係しているが異なるものである。依存性反転原則は、共有された抽象化を通じて、高次と低次の抽象化レイヤー間の結合度を下げることを示している。従来からのプログラミングでは、フローはコードの中核部分で制御されている。IoCを使うと、これが全く変わってくる。呼び出し側は応答を得るが、いつどのようにして応答を得るかは呼び出し側が制御できない。逆に呼び出された側がいつどのようにして応えるかを決定する。

見る アプリケーションプログラミングインタフェースと制御の反転

呼出規約

呼出規約(よびだしきやく)ないし呼出慣例(よびだしかんれい)(calling convention)は、コンピュータの命令セットアーキテクチャごとに取り決められるABIの一部で、サブルーチンが呼出される際に従わねばならない制限などの標準である。名前修飾について、データを渡す「実引数」、戻るべきアドレスである「リターンアドレス」、データを戻す「返戻値」などを、スタックなどに対してどのように格納するのか、また各レジスタを、呼び出し側とサブルーチンのどちらの側が保存するか、等といった取決めの集まりである。言語が同じでも、分割コンパイルされリンカでリンクされる相互のプロシージャ間では、呼出し呼出されるならば同一の呼出規約に従っていなければならない。一方で、違う言語の間でも、同一の呼出規約を経由して相互にプロシージャを呼出すこともできる。

見る アプリケーションプログラミングインタフェースと呼出規約

アプリケーションバイナリインタフェース

アプリケーションバイナリインタフェース(ABI, Application Binary Interface)とは、アプリケーション(ユーザ)プログラムとシステム(オペレーティングシステムやライブラリ)との間の、バイナリレベルのインタフェースである。また、アプリケーション相互間や、それらの部品(プラグイン等)とのバイナリインタフェースもある。 ABIはアプリケーションプログラミングインタフェース (API) とは異なる。APIはソースコードとライブラリ間のインタフェースを定義したものであり、同じAPIをサポートしたシステム間では同じソースコードをコンパイルして利用できる。一方、ABIはオブジェクトコードレベルのインタフェースであり、互換ABIをサポートするシステム間では同じ実行ファイルを変更無しで動作させることができる。

見る アプリケーションプログラミングインタフェースとアプリケーションバイナリインタフェース

アプリケーションソフトウェア

アプリケーションソフトウェア(application software)あるいはアプリケーションソフト(最近は英語では極端に略すとapp(s)アップ)は、ある特定の機能や目的のために開発・使用されるソフトウェアIT用語辞典 e-words、「」の説明 - 2023年7月12日閲覧。で、コンピュータの操作自体のためのものではないもの。たとえば、ワープロソフト、表計算ソフト、イラスト作成(お絵かき)用ソフトウェア、写真加工用ソフトウェアなど。アプリケーションプログラム(応用プログラム)ともいい、コンピュータ・プログラムの一種である。 アプリケーションと(2番目の語を省略して)も呼ばれ。「アプリケーション」は「応用」という意味なので日本語では「応用ソフト」とも呼ぶ(が、最近は「応用ソフト」と呼ばれることは減った)。日本語ではアプリとも略される。「アプリ」という略称の用例は1980年代から存在する。

見る アプリケーションプログラミングインタフェースとアプリケーションソフトウェア

インタフェース (情報技術)

情報技術において、インタフェース(interface)は、情報の授受を行うシステム間のプロトコル、または、その接続を行う部分をいう。コンピュータシステムの各部、あるいはシステム間の接続や、人間と機械の間の入出力部(ヒューマンマシンインタフェース)などがある。インターフェイスあるいはインターフェースなどと表記することもある。

見る アプリケーションプログラミングインタフェースとインタフェース (情報技術)

オペレーティングシステム

オペレーティングシステム(operating system、略称:OS、オーエス)とは、コンピュータのオペレーション(操作・運用・運転)を司るシステムソフトウェアである。

見る アプリケーションプログラミングインタフェースとオペレーティングシステム

オラクル (企業)

オラクル()は、アメリカ合衆国カリフォルニア州創業、テキサス州に本拠を置く、民間法人や公的機関を対象とするビジネス用途に特化したソフトウェア会社である。日本法人は日本オラクル。 2007年には世界で第3位のソフトウェア会社となる。

見る アプリケーションプログラミングインタフェースとオラクル (企業)

カプセル化

カプセル化(カプセルか、encapsulation)は、コンピュータプログラミングで用いられる概念で互いに関連するデータとロジックなどを1つのモジュールとしてまとめることである。また、より広い意味ではまとめたモジュールの内側の詳細を外側から隠蔽することをも含む。この隠蔽は計算機科学者デビッド・パーナスが提唱したと同義である。 カプセル化はオブジェクト指向での使用が最も有名であり、そこではフィールドとそれを操作するメソッドをまとめたオブジェクトの内部要素への直接アクセスを制限するためのアクセスコントロールを設けている。内部隠蔽されたフィールドを操作または閲覧するためのメソッドは、と呼ばれ、これはセッター/ゲッターの俗称でも知られている。フィールドとメソッドの一体化には、フィールド展開用のメモリ基底アドレスを表現にしたThis参照の機構が用いられている。これらカプセル化のコンセプトの定義と実装の書式は、オブジェクトの設計図に例えられているクラスに投影されている。

見る アプリケーションプログラミングインタフェースとカプセル化

クラス (コンピュータ)

オブジェクト指向プログラミングにおけるクラス(class)英語の class は、本来「分類」「種類」といった意味を持っている。は、オブジェクトを生成するための設計図あるいはひな形に相当するものである。抽象データ型の一つ。クラスから生成したオブジェクトの実体のことをインスタンスという。 クラスには、クラス自身またはクラスのインスタンスが保持するデータと、データに関連したオブジェクトの振る舞いを記述できる。プログラミング言語によっては、それぞれにを指定できる。統一モデリング言語 (UML) のクラス図では、データのことを「属性」、振る舞いのことを「操作」と呼ぶ。Javaなどでは、データのことを「フィールド」、振る舞いのことを「メソッド」と呼ぶ。

見る アプリケーションプログラミングインタフェースとクラス (コンピュータ)

クロスプラットフォーム

クロスプラットフォーム(cross-platform)とは、異なるプラットフォーム(例えばPC/AT互換機とMacintosh、あるいはWindows・macOS・FreeBSD・Linuxなどのように、仕様が全く異なる機械(ハードウェア)またはオペレーティングシステム)上で、同じ仕様のものを動かすことが出来るプログラム(ソフトウェア)のことを言う。同様の呼称にマルチプラットフォームmulti-platformがある。 また、家庭用ゲームにおいては「クロスプラットフォーム」と「マルチプラットフォーム」で意味が異なる場合がある。本項ではこのケースについても後述する。

見る アプリケーションプログラミングインタフェースとクロスプラットフォーム

コンパイラ

コンパイラ(compiler)は、高水準言語で書かれたコンピュータプログラムを、 コンピュータが実行や解釈できる形式に、一括して(※(※)コンパイラの定義文にわざわざ「一括して」という言葉を含めることが多いのは、インタプリタと対比するためである。「一括して」を入れないとインタプリタまで含んでしまい、定義文としては落第点ものとなる。Merriam Websterの英文の定義文でも、やはり「translates an entire set of instructions」と、「命令群(の一部分ではなく)全部を」と明記している。 )変換するソフトウェア。

見る アプリケーションプログラミングインタフェースとコンパイラ

コンソール

コンソール()とは制御卓、制御盤、操作卓などの意味を持つ英単語で、大型機械や電子機器などの操作や監視のための装置を一か所に集めた盤状あるいは卓状の装置のことだが、派生的な意味として、コンピュータの入出力装置や、文字の入出力による対話的な操作システム、オペレーティングシステム(OS)を操作・制御する画面などを表す。

見る アプリケーションプログラミングインタフェースとコンソール

システムコール

システムコール(system call、accessdate)とは、オペレーティングシステム (OS)(より明確に言えばOSのカーネル)の機能を呼び出すために使用される機構のこと。実際のプログラミングにおいては、OSの機能は関数 (API) 呼び出しによって実現されるので、OSの備える関数 (API) のことを指すこともある。なお、μITRONではサービスコールと呼ばれる。また、OSのことをスーパーバイザとも呼ぶため、スーパーバイザコールともいう。 例えば、C言語で使用できるfopen()やmalloc()などのライブラリ関数は、その関数内においてシステムコール(例えばPOSIX準拠のOSであればopen()やsbrk()など)を呼び出す。

見る アプリケーションプログラミングインタフェースとシステムコール

ソースコード

■) で示されているのが有効なコードである。 ソースコード(source code)は、プログラミング言語で書かれた、コンピュータプログラムを表現する文字列(テキストまたはテキストファイル)である。

見る アプリケーションプログラミングインタフェースとソースコード

ソフトウェアフレームワーク

ソフトウェアフレームワーク(software framework)とは、プログラミングにおいて、アプリケーションソフトウェア等の実装に必要となる一般的な機能や定型コードを、ライブラリとしてあらかじめ用意したものである。例えば、Javaなどのオブジェクト指向言語向けのクラスライブラリとして実装されている場合は、再利用可能なソフトウェア部品(ソフトウェアコンポーネント)として用意されているクラスのインスタンスを自由に組み合わせたり、基本的な機能を持つ基底クラスを継承した派生クラスをユーザープログラマーが定義し、仮想メソッドによって公開されているカスタマイズポイントを選択的に上書きしたり特化させたりする。言語によってはコールバック関数やデリゲートを利用するなど、他にもさまざまな形態がある。文脈から明確な場合は単に「フレームワーク」としたり、特にアプリケーションソフトウェア開発向けであることを明確にした「アプリケーションフレームワーク」など、前後に別の語をつなげた複合語を使ったりすることもある。

見る アプリケーションプログラミングインタフェースとソフトウェアフレームワーク

ソフトウェアコンポーネント

UML 2.0 のコンポーネント図で、2つのコンポーネントを表現した例。CheckoutコンポーネントはCardProcessingコンポーネントを使用している。 ソフトウェアコンポーネント(software component / software componentry)は、ソフトウェアシステムの様々な機能を関心の分離によって分割したものである。システムを独立した結合の弱い再利用可能なコンポーネント(部品)群で構成する設計技法は Component-Based Software Engineering (CBSE) と呼ばれ、ソフトウェア工学の一分野となっている。 コンポーネントの考え方は、サービス指向の起点となっている。例えば、Webサービスやサービス指向アーキテクチャ (SOA) ではソフトウェアコンポーネントの考え方を発展させサービスをコンポーネント化するという考え方をする。

見る アプリケーションプログラミングインタフェースとソフトウェアコンポーネント

ソフトウェア開発キット

ソフトウェア開発キット(ソフトウェアかいはつキット、Software Development Kit、SDK)は一般に、特定のソフトウェアパッケージ、ソフトウェアフレームワーク、ハードウェアプラットフォーム、コンピュータシステム、オペレーティングシステム、ゲーム機などのためのアプリケーションを作成するためにソフトウェア技術者が使用する開発ツールのセットを意味する。

見る アプリケーションプログラミングインタフェースとソフトウェア開発キット

ソニー

ソニー株式会社()は、日本の総合電機メーカーであり、テレビ・デジタルカメラ・スマホ開発事業、ネットワークサービス事業、映像制作ソリューション事業、ライフサイエンス事業を展開するエンタテインメント・テクノロジー&サービス(ET&S)事業を担うソニーグループの企業である。 2021年4月1日のグループ再編以前の法人(旧:東京通信工業株式会社、現:ソニーグループ株式会社)と、以降の法人は別の法人格であるが、商号・営業上は連続しているため、以下では特記しない限り、「ソニー」を名乗った法人について連続して扱う。

見る アプリケーションプログラミングインタフェースとソニー

サブルーチン

プログラミングにおけるサブルーチン(subroutine)は、プログラム中で意味や内容がまとまっている作業をひとつにまとめたものである。サブプログラムあるいは副プログラム(subprogram)大滝みや子『2020年版 基本情報技術者 標準教科書』オーム社、2019年。pp.95-96「手続きと関数」「再帰呼び出し」の章とも呼ばれ、単に「ルーチン」(routine)と呼ばれることもある。プログラミング言語によっては、関数(function)やプロシージャあるいは手続き(procedure)とも呼ばれる。

見る アプリケーションプログラミングインタフェースとサブルーチン

共有メモリ

情報処理において共有メモリ(きょうゆうメモリ)とは、複数のプログラムが同時並行的にアクセスするメモリである。

見る アプリケーションプログラミングインタフェースと共有メモリ

Berkeley Software Distribution

Berkeley Software Distributionは、1977年から1995年までカリフォルニア大学バークレー校 (University of California, Berkeley, UCB) の Computer Systems Research Group (CSRG) が開発・配布したソフトウェア群、およびUNIXオペレーティングシステム (OS) を言う。略称はBSD(ビーエスディー)。なお、今日「BSD」という名称は同OSを元に開発されたBSDの子孫の総称として使われることもあるが、この項では主に前述のUCBによるソフトウェア群およびOSについて述べる。 元となったコードベースと設計はAT&TのUNIXと共通であるため、歴史的にはBSDはUNIXの支流 "BSD UNIX" とみなされてきた。1980年代、ワークステーションクラスのシステムベンダーがプロプライエタリなUNIXとしてBSDを広く採用していた。例えば、DECのUltrix、サン・マイクロシステムズのSunOSなどである。これは、ライセンス条件の容易だったためと、当時の多くの技術系企業の創業者がBSDを熟知していたためである。

見る アプリケーションプログラミングインタフェースとBerkeley Software Distribution

C Sharp

C#(シーシャープ)は、マイクロソフトが開発した、汎用のマルチパラダイムプログラミング言語である。C#は、Javaに似た構文を持ち、C++に比べて扱いやすく、プログラムの記述量も少なくて済む。また、C#は、Windowsの.NET Framework上で動作することを前提として開発された言語であるが、2023年現在はクロスプラットフォームな.NETランタイム上で動作する。 デスクトップ・モバイルを含むアプリケーション開発や、ASP.NETをはじめとするWebサービスの開発フレームワーク、ゲームエンジンのUnityでの採用事例などもある。 マルチパラダイムをサポートする汎用高レベルプログラミング言語で、静的型付け、タイプセーフ、スコープ、命令型、宣言型、関数型、汎用型、オブジェクト指向(クラスベース)、コンポーネント指向のプログラミング分野を含んでいる。

見る アプリケーションプログラミングインタフェースとC Sharp

C++

C++(シープラスプラス)は、汎用プログラミング言語のひとつである。派生元であるC言語の機能や特徴を継承しつつ、表現力と効率性の向上のために、手続き型プログラミング・データ抽象・オブジェクト指向プログラミング・ジェネリックプログラミングといった複数のプログラミングパラダイムが組み合わされている。C言語のようにハードウェアを直接扱うような下位層向けの低水準言語としても、複雑なアプリケーションソフトウェアを開発するための上位層向け高水準言語としても使用可能である。アセンブリ言語以外の低水準言語を必要としないこと、使わない機能に時間的・空間的コストを必要としないことが、言語設計の重要な原則となっている。

見る アプリケーションプログラミングインタフェースとC++

Carbon (API)

Carbon(カーボン)は、かつてMac OS Xで提供されていた、二つあったC言語ベースの主要なアプリケーションプログラミングインターフェース(API)のうちの一つ。もう一つのAPIであるCocoaがMac OS Xの技術的前身であるNeXTSTEP (OPENSTEP) に由来するのに対し、Carbonは先代OSであるClassic Mac OSのToolbox API (Application Programming Interface) をMac OS X用に整理・移植したものであり、Classic Mac OS用アプリケーションをMac OS X向けに移植しやすくするために開発された。

見る アプリケーションプログラミングインタフェースとCarbon (API)

C言語

C言語(シーげんご、C programming language)は、1972年にAT&Tベル研究所のデニス・リッチーが主体となって開発した汎用プログラミング言語である。英語圏では「C language」または単に「C」と呼ばれることが多い。日本でも文書や文脈によっては同様に「C」と呼ぶことがある。制御構文などに高水準言語の特徴を持ちながら、ハードウェア寄りの記述も可能な低水準言語の特徴も併せ持つ。基幹系システムや、動作環境の資源制約が厳しい、あるいは実行速度性能が要求されるソフトウェアの開発に用いられることが多い。後発のC++やJava、C#など、「C系」と呼ばれる派生言語の始祖でもある。 ANSI、ISO、またJISにより言語仕様が標準規格化されている。

見る アプリケーションプログラミングインタフェースとC言語

Cocoa (API)

Cocoaは、macOS用のアプリケーションを構築するためのフレームワーク (API) であり、macOSのアプリケーション開発環境の中で主要なものの一つ。 NeXTSTEP (OPENSTEP) のAPIをベースとしており、macOS向けのネイティブ・アプリケーションを構築するのに適している。逆に、これまでのClassic Mac OS(Mac OS 9.xまでのMac OS)向けのアプリケーションを構築する目的で使用することはできない。 一般に、Cocoaを利用したアプリケーションを構築する場合、Appleから提供される統合開発環境であるXcode(Project Builderの後継)およびInterface Builderを使用する。なお、iOSの主要フレームワークであるCocoa Touchは、タッチインターフェイスを前提にCocoaを再設計したもので、開発環境もほぼ同様のものを用いる。

見る アプリケーションプログラミングインタフェースとCocoa (API)

Common Object Request Broker Architecture

Common Object Request Broker Architecture(コモン オブジェクト リクエスト ブローカー アーキテクチャー、略称CORBA(コルバ))とは、Object Management Group (OMG) が定義した標準規格であり、様々なコンピュータ上で様々なプログラミング言語で書かれたソフトウェアコンポーネントの相互利用を可能にする(分散オブジェクト技術)ものである。

見る アプリケーションプログラミングインタフェースとCommon Object Request Broker Architecture

特許

特許(とっきょ、Patent)とは、法令の定める手続により、国が発明者またはその承継人に対し、特許権を付与する行政行為である国家(または君主)が法人または個人に対して特権を付与する特許状(charter)とは意味が異なる。特許と特許状の意味の違いに注意。吉藤幸朔著、熊谷健一補訂『特許法概説第13版』。 日本では他の意味でも特許という言葉が使われるので、この意味を明示するためにカタカナ語として「パテント」と呼ぶ場合もある。

見る アプリケーションプログラミングインタフェースと特許

Dalvik仮想マシン

Dalvik仮想マシン(ダルビックかそうマシン)は、Androidプラットフォームで採用されていたレジスタベースの仮想マシン。およびGoogle社のエンジニアによって設計・開発されていた。Android 5.0よりAndroid Runtime(ART)に置き換えられた。

見る アプリケーションプログラミングインタフェースとDalvik仮想マシン

Darwin (オペレーティングシステム)

Darwin(ダーウィン)は、Appleが開発するオペレーティングシステム (OS) で、macOSやiOS、iPadOS、さらにはwatchOSとtvOS、bridgeOSの基礎となる部分でもある。

見る アプリケーションプログラミングインタフェースとDarwin (オペレーティングシステム)

Document Object Model

Document Object Model(DOM、ドキュメントオブジェクトモデル)は、マークアップがなされたリソース(Document)をリソース要素(Object)の木構造(Model)で表現し操作可能にする仕組み、またそのモデルである。 DOMは、HTML文書やXML文書(あるいはより単純なマークアップされた文章など)をオブジェクトの木構造モデルで表現することで、ドキュメントをプログラムから操作・利用することを可能にする仕組みである。Documentの種類、操作に用いるプログラミング言語の種類に依存しない仕様である。 WHATWGがLiving Standardとして定義している。WHATWG以前はW3Cが仕様を策定しており、Level 1からLevel 4まで勧告している。

見る アプリケーションプログラミングインタフェースとDocument Object Model

Extensible Markup Language

は、基本的な構文規則を共通とすることで、任意の用途向けの言語に拡張することを容易としたことが特徴のマークアップ言語の総称である。一般的にXML(エックスエムエル)と略称で呼ばれる。JISによる訳語は「拡張可能なマーク付け言語」と定義している。XML文書のフォーマットを予め統一することで、異種プラットフォーム間での情報交換も可能となる。 SGMLからの移行を目的として開発された。文法はSGMLの構文解析器と互換性を保つようにSGMLのサブセットに定められシンプルになり、機能はSGMLに無いものが追加されている。 XML の仕様は、World Wide Web Consortium (W3C) により策定・勧告されている。1998年2月に XML 1.0 が勧告された。2010年4月現在、XML 1.0 と XML 1.1 の2つのバージョンが勧告されている(#バージョン)。

見る アプリケーションプログラミングインタフェースとExtensible Markup Language

高水準言語

高水準言語(こうすいじゅんげんご、high-level programming language、高級言語とも)とは、記述の抽象度が高いプログラミング言語のことである。対義語は機械語やアセンブリ言語を指す「低水準言語」である。「高級言語」の対は「低級言語」である。

見る アプリケーションプログラミングインタフェースと高水準言語

著作権法

著作権法(ちょさくけんほう、昭和45年5月6日法律第48号)は、知的財産権の一つである著作権の範囲と内容について定める日本の法律である。 文部科学省外局の文化庁著作権課が所管し、総務省情報流通行政局情報通信作品振興課をはじめ他省庁と連携して執行にあたる。

見る アプリケーションプログラミングインタフェースと著作権法

通信プロトコル

手旗信号は、プロトコルに従って旗を動かす通信方式である。 通信プロトコル(つうしんプロトコル、Communication protocol)は、通信に関する規格のことである。「通信規約」や「通信手順」ともいうTransactions: The Best Papers of 1987, Simulation of Factory Communication Protocols, in Proc.

見る アプリケーションプログラミングインタフェースと通信プロトコル

Facebook

Facebook(フェイスブック)は、オンライン・ソーシャルメディアおよびソーシャル・ネットワーキング・サービスであり、アメリカ合衆国カリフォルニア州メンローパークに本拠地を置くMeta(旧: Facebook, Inc.)の旗艦サービスである。 Facebookという名前は、アメリカの一部の大学が学生間の交流を促すために入学した年に提供している本の通称である「フェイスブック」(face book)に由来している。

見る アプリケーションプログラミングインタフェースとFacebook

Flickr

Flickr(フリッカー)は、写真の共有を目的としたコミュニティウェブサイトである。

見る アプリケーションプログラミングインタフェースとFlickr

Foreign function interface

Foreign function interface(フォーリン・ファンクション・インターフェイス、FFI)とは、あるプログラミング言語から他のプログラミング言語で定義された関数などを利用するための機構。主に高水準言語からC/C++などの関数やメソッドを呼び出し、OS固有の機能などを利用するために使用されることが多い。 FFIという用語はCommon Lispにおける仕様に由来し、Haskellでも同様にFFIという用語が使われている。Adaなどでは言語間バインディング(または単にバインディング, language binding)と呼ばれている。 FFIという用語自体に「関数(Function)」という言葉が含まれているが、多くのFFIでは単に他言語で書かれた関数が呼び出せるだけではなく、オブジェクトのメソッドを呼び出したり、その返り値を取得し、データ型やクラスを言語間で相互変換することができる。

見る アプリケーションプログラミングインタフェースとForeign function interface

Fortran

1956年に発行された最初のFortran解説書『The Fortran Automatic Coding System for the IBM 704』 Fortran(フォートラン)は科学技術計算に向いた手続き型プログラミング言語。1954年にIBMのジョン・バッカスが考案したコンピュータ用で世界最初の高水準言語であり、その後も改訂されて使用されている。

見る アプリケーションプログラミングインタフェースとFortran

Fwrite

fwriteは、C言語の標準入出力ヘッダー <stdio.h> で宣言されている関数である。 主に、バイナリ形式のファイル出力に使われる。

見る アプリケーションプログラミングインタフェースとFwrite

GIOP

GIOP(General Inter-ORB Protocol)とは、分散コンピューティングにおけるObject Request Broker(ORB)間の抽象プロトコルである。このプロトコルに関する標準規格はObject Management Group(OMG)が管理している。 IIOP(Internet Inter-ORB Protocol)とは、TCP/IP上の GIOP の実装である。つまり、抽象プロトコルである GIOP を具現化したプロトコルである。

見る アプリケーションプログラミングインタフェースとGIOP

Google

Google LLC(グーグル)は、インターネット関連のサービスと製品に特化したアメリカ合衆国の企業 (LLC) である。持株会社であるAlphabetの子会社。 世界最大の検索エンジン、オンライン広告、クラウドコンピューティング、ソフトウェア、ハードウェア関連の事業がある。アメリカ合衆国の主要なIT企業で、 ビッグ・テックの一つ。

見る アプリケーションプログラミングインタフェースとGoogle

GraphQL

GraphQL(グラフQL)はAPI向けに作られたクエリ言語およびランタイムである。 ベンダーフリーな GraphQL財団の支援を受け、開発が進められている。 ウェブAPIの開発に、RESTやその他のWebサービスと比較して、効率的で堅牢、かつ柔軟なアプローチを提供する。GraphQLでは、クライアントが必要なデータの構造を定義することができ、サーバーからは定義したのと同じ構造のデータが返される。したがって、必要以上に大きなデータが返されるのを防ぐことができクエリの効率が良い。また、柔軟性と豊かな表現が可能なクエリ言語は複雑さを加えるため、シンプルなAPIには適さない可能性もある。GraphQLは、型システム、クエリ言語、実行セマンティクス、静的な検証、型チェックから構成される。

見る アプリケーションプログラミングインタフェースとGraphQL

HyperText Markup Language

HTMLHTMLという名前は従来はHyperText Markup Languageの略称だったが、2023年4月現在最新の規格であるWHATWGのHTML Living Standardには「HyperText Markup Language」という名前の記載はなく、単にそのままHTMLと呼ばれている。またはHyperText Markup Language(ハイパーテキスト マークアップ ランゲージ)廃止された従来の規格(HTML5.2まで)で使われていた呼称。現在でもISO/IEC 15445:2000で使用されている。は、ハイパーテキストを記述するためのマークアップ言語の1つで、プログラミング言語ではない。主にWorld Wide Web(WWW)において、ウェブページを表現するために用いられる。

見る アプリケーションプログラミングインタフェースとHyperText Markup Language

Hypertext Transfer Protocol

Hypertext Transfer Protocol(ハイパーテキスト・トランスファー・プロトコル、HTTP)はアプリ間コネクション上のリクエスト/レスポンス型・ステートレス・メッセージ指向通信プロトコルである"The Hypertext Transfer Protocol (HTTP) is a family of stateless, application-level, request/response protocols...

見る アプリケーションプログラミングインタフェースとHypertext Transfer Protocol

IBM J9

IBM J9は、IBMによって開発されたJava仮想マシン。同社のWebSphere製品や、DB2製品の標準VMとして利用されている。IBMは元々Java2対応のJDKを提供しており、チューニングされたclassic VMを同梱していたが、Java 5準拠のJDKを提供するにあたって新たにVMを開発し、IBM J9 VMと命名した。 IBMはJavaOne 2016でJ9をオープンソース化する計画を発表し、その後J9はEclipse Foundationに寄贈され、Eclipse OpenJ9に改称して公開された。

見る アプリケーションプログラミングインタフェースとIBM J9

Iconv

iconv(アイコンブ)は異なる文字コード間の相互変換を行う標準API。または、そのAPIに付属する文字コード変換ユーティリティプログラム。名前は「International Codeset Conversion Library」に由来する。GNUによる実装が有名で、変換ライブラリ libiconv のライセンスはLGPL、変換プログラム iconv のライセンスはGPLである。

見る アプリケーションプログラミングインタフェースとIconv

IOS

WWDC 2008の基調講演で、iPhoneの新しいOSの対応言語を紹介するスティーブ・ジョブズ とは、Appleが開発および提供する、iPhoneとiPod touch向けのモバイルオペレーティングシステム(組み込みプラットフォーム)であり、BSD系UNIXから開発されたNeXTのOPENSTEPを起源とするMacintosh専用のmacOSをモバイル機器用途に改変したものである。2023年9月時点で、最も新しいバージョンであるiOS 17は、iPhone SE(第2世代)やiPhone XS/XS Max/XRとそれ以降に発売されたiPhoneに対応している。 バージョンのアップデートは無料で行えるが、アップデート後に古いバージョンへ戻す行為(いわゆるダウングレード)を行うことはできないことには多くの批判がある。なお、Appleの公式サポートページには、「ソフトウェアを常に最新の状態にしておくことは、Apple製品を安全に使うための最も重要な方策の一つ」との記載がされている。

見る アプリケーションプログラミングインタフェースとIOS

Java

Java(ジャバ、ジャヴァ)は、汎用プログラミング言語とソフトウェアプラットフォームの双方を指している総称ブランドである。オラクルおよびその関連会社の登録商標である。1996年にサン・マイクロシステムズによって市場リリースされ、2010年に同社がオラクルに吸収合併された事によりJavaの版権もそちらに移行した。 プログラミング言語Javaは、C++に類似の構文、クラスベースのオブジェクト指向、マルチスレッド、ガベージコレクション、コンポーネントベース、分散コンピューティングといった特徴を持ち、平易性重視のプログラム書式による堅牢性と、仮想マシン上での実行によるセキュリティ性およびプラットフォーム非依存性が理念とされている。

見る アプリケーションプログラミングインタフェースとJava

Java Remote Method Invocation

Java Remote Method Invocation API (Java RMI) は、Javaで書かれたプログラム間のORB(オブジェクトリクエストブローカー) であり、RPCのオブジェクトに相当する機能を果たすためのJavaアプリケーションプログラミングインタフェース。

見る アプリケーションプログラミングインタフェースとJava Remote Method Invocation

JavaScript Object Notation

JavaScript Object Notation(JSON、ジェイソン)はデータ記述言語の1つである。軽量なテキストベースのデータ交換用フォーマットでありプログラミング言語を問わず利用できる。名称と構文はJavaScriptにおけるオブジェクトの表記法に由来する。

見る アプリケーションプログラミングインタフェースとJavaScript Object Notation

Linda

Linda は、並列プログラミング言語であり、Prolog、C言語、Javaなどの他の(逐次的)言語上に拡張として実装される。

見る アプリケーションプログラミングインタフェースとLinda

LinkedIn

LinkedIn(日本語:リンクトイン)は、世界最大級のビジネス特化型SNS、および同サービスを提供するシリコンバレーの企業。 ウェブサイトやモバイルアプリを介し利用することが可能である。2003年5月5日のサービス開始後、アメリカ合衆国を始め、世界各国で普及し、2023年5月現在、登録メンバーは9億人を超す。主に専門的なネットワーキングとキャリア開発に利用され、求職者は履歴書(CV;Curriculum Vitae)を投稿し、雇用主は仕事を投稿することができる。現CEOは。 2016年12月、米国マイクロソフト社によって262億ドルで買収された。

見る アプリケーションプログラミングインタフェースとLinkedIn

Linux

Linux(リナックス、他の読みは#「Linux」の読み方で後述)とは、狭義にはUnix系オペレーティングシステムカーネルであるLinuxカーネルを指し、広義にはそれをカーネルとして周辺を整備したシステム全体のことをいう(GNU/Linuxも参照)。

見る アプリケーションプログラミングインタフェースとLinux

Linux Standard Base

Linux Standard Base (LSB) は、複数のLinuxディストリビューションの共同プロジェクトであり、Linux Foundationを活動母体としてLinux系オペレーティングシステムの内部構造の標準化を行うものである。LSBはPOSIX仕様、Single UNIX Specification、その他いくつかのオープン標準に基づいて、特定の分野についてそれらを拡張している。 LSBの目標は次の通りである。 LSB準拠製品の認証手続きが定められている。認証はThe Open GroupがLinux Foundationの協力の下に行う。なお、Linux FoundationはFree Standards GroupとOpen Source Development Labsが合併して誕生した。

見る アプリケーションプログラミングインタフェースとLinux Standard Base

Mac OS

Mac OSは、Appleが開発・販売する、Macのオペレーティングシステムである。 Appleのブランド戦略の変更に伴い、名前が何度か変更されている。また、バージョン10においてアーキテクチャが大きく変更された。

見る アプリケーションプログラミングインタフェースとMac OS

MacOS

macOS(マックオーエス)は、Appleが開発・販売するMacのオペレーティングシステムである。当初の名称はMac OS X(マックオーエステン)で、のちにOS X(オーエステン)に改められていた(後述)。 技術的には直系ではないが、Classic Mac OS(Mac OS、System)の後継として、新たにBSD系UNIXをベースに開発された。

見る アプリケーションプログラミングインタフェースとMacOS

Microsoft DirectX

Microsoft DirectX(ダイレクトエックス)は、マイクロソフトが開発したゲーム・マルチメディア処理用のAPIの集合である。オーバーヘッドを少なくしたデバイスの仮想化・抽象化を提供する。Windows・Xbox・Xbox 360・Xbox Oneなど、マイクロソフト製のプラットフォームおよびデバイスにおいて広く利用されている。APIの一部はハードウェアアクセラレーションに対応しており、DirectX互換のハードウェアとデバイスドライバーが搭載されたコンピュータ上では、CPUの負担を低減しつつ高速処理することができる。グラフィックスに関しては、DirectX (Direct3D) 互換のGPU(ビデオカードやオンボードグラフィックスなど)を利用することにより、高品質の2次元・3次元コンピュータグラフィックスを高速にレンダリングできる。

見る アプリケーションプログラミングインタフェースとMicrosoft DirectX

Microsoft Visual C++

Visual C++ (マイクロソフト ビジュアル シープラスプラス;マイクロソフト ヴィジュアル シープラスプラス)とはマイクロソフト製のC、C++、C++/CLI用統合開発環境 (IDE) であり、コンパイラやデバッガを含む。通称VCあるいはVC++、MSVCなど。前身はMicrosoft C/C++などがある。

見る アプリケーションプログラミングインタフェースとMicrosoft Visual C++

Microsoft Windows

Microsoft Windows(マイクロソフト ウィンドウズ)は、マイクロソフトが開発・販売するオペレーティングシステム (OS) の製品群である。グラフィカルユーザインタフェース (GUI) を採用している。Windows発売以前では高価なワークステーション(ハイエンドパソコンを上回る性能のデスクトップコンピュータ)でしか実現されていなかったマルチタスクやGUIを中心とした使い勝手の良さを、一般消費者が入手しやすい標準的な規格のパソコンに順次取り込んで行き、一般向けOSのシェアのほとんどを占めるに至り、今や大きな知名度を持つ。

見る アプリケーションプログラミングインタフェースとMicrosoft Windows

Microsoft Windows SDK

Microsoft Windows SDK(マイクロソフト ウィンドウズ エスディーケー)とは、Microsoft Windowsで動作するアプリケーションソフトウェアを作成するためにマイクロソフトが無料で公開しているソフトウェア開発キット (SDK) である。Windows APIやWindowsランタイムAPIを利用するために必要なヘッダファイル、ライブラリ、ツール、サンプルを含んでいる。 Windows Vistaリリース前はMicrosoft Platform SDKという名称であったが、Platform SDKと.NET Framework SDKを統合し、Windows SDKとなった。

見る アプリケーションプログラミングインタフェースとMicrosoft Windows SDK

Microsoft Windows XP

Microsoft Windows XP(マイクロソフト ウィンドウズ エックスピー)は、マイクロソフトが2001年に発表したWindowsシリーズに属するオペレーティングシステム (OS) である。

見る アプリケーションプログラミングインタフェースとMicrosoft Windows XP

Myspace

Myspace(マイスペース)は、世界中に会員が存在する音楽・エンターテインメントを中心としたソーシャル・ネットワーキング・サービスである。会員に対し、個々のプロフィールページ、ブログ、共通の話題を持つユーザと交流するグループ、音声ファイルや画像ファイルの公開、会員間でのメールの送受信など会員同士の親交を広げるサービスを提供している。運営側の会社はアメリカ合衆国のカリフォルニア州ビバリーヒルズにあり、親会社本社とバックアップサーバはニューヨークに置かれている。

見る アプリケーションプログラミングインタフェースとMyspace

Open Database Connectivity

Open Database Connectivity (ODBC) は、関係データベース管理システム (RDBMS) にアクセスするための共通インタフェース (API)である。 データへのアクセスを統一化することを目的としており、たとえばクライアント/サーバ型ではないMicrosoft Accessの管理するデータベースファイル (MDB) や、そもそもRDBMSではないCSVファイルへのアクセスなども、それに対応するODBCドライバがあれば、他の一般的なデータベースへのアクセスするのと同様な方法で利用することが可能になる。 ODBCは、主にWindows上で利用されることが多いが、Linux、UNIXなどで利用されるケースもある。

見る アプリケーションプログラミングインタフェースとOpen Database Connectivity

OpenAL

OpenAL (Open Audio Library) はクロスプラットフォームのオーディオAPIであるフリーソフト。マルチチャンネル3次元定位オーディオを効率よく表現するように設計された。APIのスタイルと慣習は意図的にOpenGLと似せてある。

見る アプリケーションプログラミングインタフェースとOpenAL

OpenCL

OpenCL(オープンシーエル、)は、マルチコアCPUやGPU、Cellプロセッサ、DSPなどによる異種混在の計算資源(ヘテロジニアス環境、ヘテロジニアス・コンピューティング、)を利用した並列コンピューティングのためのクロスプラットフォームなAPIである。主な用途は科学技術計算や画像処理に代表される高性能計算のためのアプリケーションソフトウェアの高速化(ハードウェアアクセラレーション)であり、シミュレーション可視化に用いるリアルタイム3次元コンピュータグラフィックスAPIとの連携も拡張機能として標準化されている。スーパーコンピュータやサーバ、ワークステーションやパーソナルコンピュータのほか、携帯機器などでの利用も想定されており、組み込みシステム向けに必要条件を下げたOpenCL Embedded Profileが存在する。

見る アプリケーションプログラミングインタフェースとOpenCL

OpenGL

は、クロノス・グループ (Khronos Group) が策定している、グラフィックスハードウェア向けの2次元/3次元コンピュータグラフィックスライブラリである。SGI社内で自社のCGワークステーション向けにクローズドに策定されたAPI仕様が改良されて公開され、後に大きなシェアを持つに至った。現在は多様な描画デバイスを包括するグラフィックスAPIのオープン標準規格として策定が行なわれている。

見る アプリケーションプログラミングインタフェースとOpenGL

OpenJDK

OpenJDK (Open Java Development Kit) は、プログラミング言語Javaのフリーかつオープンソースの実装である。2006年、サン・マイクロシステムズが始めたもので、GPLリンク例外つきの GNU General Public License (GNU GPL) でライセンスされている。リンク例外つきとしたのは、Javaクラスライブラリのライブラリとしての使用をGPLライセンスの適用外とするためである。OpenJDKはJava SE 7以降の公式リファレンス実装とされている。

見る アプリケーションプログラミングインタフェースとOpenJDK

OpenMP

OpenMP(オープンエムピー)は、並列計算機環境において共有メモリ・マルチスレッド型の並列アプリケーションソフトウェア開発をサポートするために標準化されたAPIである。「OpenMP」は「open multiprocessing」の略である。 同様に並列コンピューティングに利用されるMPIでは、メッセージの交換をプログラム中に明示的に記述しなければならないが、OpenMPではディレクティブ(指令)を挿入することによって並列化を行う。OpenMPが使用できない環境では、このディレクティブは無視されるため、並列環境と非並列環境でほぼ同一のソースコードを使用できるという利点がある。また、プラットフォーム固有のスレッドAPIを使わず、コンパイラによって暗黙的に生成されたスレッドを利用してタスクを振り分けることになるため、並列プログラムを簡潔に記述できるだけでなく、複数の環境に移植しやすくなる。

見る アプリケーションプログラミングインタフェースとOpenMP

OpenSocial

OpenSocial は、ウェブベースのソーシャルネットワークアプリケーションのための共通のアプリケーションプログラミングインタフェース(API)群。Google によって開発され、2007年11月1日にリリースされた。 OpenSocial API を実装しているアプリケーション群は、それらをサポートするソーシャルネットワークシステムと相互運用性を持つ。 Myspace、Friendster 、mixi などのサイトが賛同している。 2010年4月現在、日本では以下のようなサイトでOpenSocialベースのAPIが提供されている(提供予定も含む)。

見る アプリケーションプログラミングインタフェースとOpenSocial

Pharo

Pharoは、Smalltalkのオープンソース実装の一つで、プログラミング言語および統合開発環境を含む。オブジェクトの即時操作、ライブアップデート、高速な再コンパイルといった強力な機能を中心に提供している。

見る アプリケーションプログラミングインタフェースとPharo

Photobucket

Photobucket(フォトバケット)は、アメリカ合衆国の画像管理・動画共有サービスのオンラインコミュニティである。 1億人以上の登録利用者から100億枚の画像を共有しており、毎日400万の画像及び動画を新たに登録している。 本部はデンバー、支部はニューヨーク、サンフランシスコ、ロサンゼルスにある。 2003年にTrinity Venturesの出資を受けアレックス・ウェルチ(Alex Welch)とダレン・クリスタル(Darren Crystal)により開設され、2007年にニューズ・コープ傘下のフォックス・インタラクティブ・メディアに買収された。 2009年12月に親会社がモバイル用画像アプリベンチャー企業のOntelaに売却し、社名をPhotobucket Incに変更した。

見る アプリケーションプログラミングインタフェースとPhotobucket

PlayStation (ゲーム機)

PlayStation(プレイステーション、略称: PS, PS1)は、ソニー・コンピュータエンタテインメント(略: SCE)が1994年12月3日に発売した家庭用ゲーム機。

見る アプリケーションプログラミングインタフェースとPlayStation (ゲーム機)

POSIX

POSIX(ポジックス、Portable Operating System Interface)は、オペレーティングシステム (OS) の標準的なインタフェースおよび環境を定義するIEEE規格であるIEEE公式サイト。。ソースコードレベルでの移植性の高いアプリケーションソフトウェアの開発を容易にすることを目的として、主にUNIX系のOSに関して、各OSが共通して持つべきコマンドラインインタプリタ(シェル)、共通のユーティリティプログラム、およびアプリケーションプログラミングインタフェース (API) について定めている。POSIX仕様に準拠したソースコードは、POSIX準拠OSであればどれでも動作させることができる。アプリケーション開発者とシステム実装者の両方から利用されることを意図している。

見る アプリケーションプログラミングインタフェースとPOSIX

Proxy パターン

UMLで表した Proxy パターン Proxy パターンは、プログラミングにおけるデザインパターンの一種。Proxy(プロキシ、代理人)とは、大まかに言えば、別物のインタフェースとして機能するクラスである。その「別物」は何でもよく、ネットワーク接続だったり、メモリ上の大きなオブジェクトだったり、複製がコスト高あるいは不可能な何らかのリソースなどである。 Proxy パターンのよく知られている例として、参照カウント付きポインタオブジェクトがある。 複雑なオブジェクトの複数のコピーが必須となる状況では、Proxy パターンに Flyweight パターンを加えることでメモリ使用量を抑えることができる。通常、複雑なオブジェクトのインスタンスは1つだけ生成し、プロキシオブジェクトを複数生成する。それらプロキシオブジェクトは唯一の複雑なオブジェクトへの参照を含む。プロキシへの操作は、オリジナルのオブジェクトにフォワードされる。プロキシオブジェクトが全て破棄されると、参照されていた複雑なオブジェクトの使用していたメモリも解放される。

見る アプリケーションプログラミングインタフェースとProxy パターン

Python

Python(パイソン)はインタープリタ型の高水準汎用プログラミング言語である。

見る アプリケーションプログラミングインタフェースとPython

QuickTime

QuickTime(クイックタイム)は、かつてAppleが開発していたマルチメディア技術である。音楽、動画、画像、テキストデータなどを取り扱うことができる。 なお、Mac OS X v10.6に搭載されているQuickTime XはiOSのマルチメディア技術をベースに作られたもので、従来のQuickTimeとは基本的に別物のシステムである。詳細はQuickTime Xを参照。 後継技術は、AVFoundationである。

見る アプリケーションプログラミングインタフェースとQuickTime

Representational State Transfer

Representational State Transfer (REST、レスト) は、(ウェブアプリケーションプログラミングインタフェース)の定義に使用されるアーキテクチャスタイル(共通仕様)であり、同時にウェブのような分散ハイパーメディアシステムのためのソフトウェアアーキテクチャのスタイルのひとつでもある。この語はHTTPプロトコル規格の主要著者の一人であるがウェブについて書いた2000年の博士論文で初めて現れ、ネットワーキングコミュニティの中ですぐに広く使われることになった。 RESTは、初めはアーキテクチャの原則と制約の集まり(後述)を指していたが、次第に、XMLやHTTPを使った簡易なウェブベースのインタフェースのうち、WebサービスのSOAPプロトコルのようなMEP(Message Exchange Pattern; SOAPノード相互のメッセージ交換のパターンを確立するための雛型)ベースの特別な抽象化をしないもののことを、大まかに意味する用語として使われるようになった。RESTは次に述べるように2つのやや異なる意味で使われている。

見る アプリケーションプログラミングインタフェースとRepresentational State Transfer

RMI-IIOP

RMI-IIOP(RMI オーバー IIOP)とは、CORBAシステム上のJava RMIインタフェースを指す。

見る アプリケーションプログラミングインタフェースとRMI-IIOP

SDL

SDLの構造 SDL (Simple DirectMedia Layer) は、C言語で書かれたクロスプラットフォームのマルチメディアライブラリである。グラフィックの描画やサウンドの再生などのAPIを提供する。オーディオ、キーボード、マウス、ジョイスティック、そしてOpenGLおよびDirect3Dを経由したグラフィックスハードウェアへのローレベルなアクセスを提供するよう設計されている。Windows、macOS、Linux、iOS、Androidを公式にサポートしている。SDLそのものはOS間の違いを吸収するための最低限の抽象化しか提供しないが、SDLで使えるフォントやネットワーク、スプライトなどの多数の補助ライブラリ(後述)が公開されている。

見る アプリケーションプログラミングインタフェースとSDL

Single UNIX Specification

Single UNIX Specification(SUS、唯一のUNIX仕様)は、"UNIX"を名乗ることができるコンピュータのオペレーティングシステム (OS) の標準規格全体を総称したものである。SUSは、IEEEと The Open Group の標準化作業の結果に基づくもので、Austin Group が開発および保守を行っている。

見る アプリケーションプログラミングインタフェースとSingle UNIX Specification

Small Computer System Interface

(スモールコンピュータシステムインタフェース、小型計算機システムインタフェース)、略して (スカジー)は、主に周辺機器とコンピュータなどのハードウェア間のデータのやりとりを行うインタフェース規格の一つである。SCSIを使用可能にするインタフェース装置をSCSIインタフェースと呼ぶ。ANSI(米国規格協会)によって規格化されている。

見る アプリケーションプログラミングインタフェースとSmall Computer System Interface

Smalltalk

Smalltalk(スモールトーク)は、Simula のオブジェクト(およびクラス)、LISPの徹底した動的性、LOGO のタートル操作や描画機能に、アラン・ケイの「メッセージング」というアイデアを組み合わせて作られたクラスベースで手続き型の純粋オブジェクト指向プログラミング言語、および、それによって記述構築された統合化プログラミング環境の呼称。 Smalltalk で一語であり、「Small Talk」「SmallTalk」などは誤りである。 大規模な開発実績としてはCargill Lynx Projectがあり、国産製品の開発実績としてはMCFrameがある。

見る アプリケーションプログラミングインタフェースとSmalltalk

SOAP (プロトコル)

SOAP(ソープ)は、コンピュータネットワーク内のWebサービスの実装において、構造化された情報を交換するための通信プロトコルの仕様である。拡張性、中立性、独立性を導入することを目的とする。XML-RPCから発展した、XML Webサービスのための、XMLベースのRPCプロトコルである。 メッセージ形式としてXMLインフォメーションセットを使用する。また、メッセージのネゴシエーションおよび伝送はアプリケーション層のプロトコル(多くの場合HTTPまたはSMTP)に依存する。 SOAPにより、全く異なるオペレーティングシステム(例えばWindowsとLinux)上で走っているプロセス間でもXMLを使って意思疎通が可能になる。HTTPのようなWebプロトコルは全てのオペレーティングシステムにインストールされて走っているので、SOAPの仕組みを使えば、クライアントはその言語やプラットフォームが何であれ、ウェブサービスを起動してレスポンスを受け取ることが出来る。

見る アプリケーションプログラミングインタフェースとSOAP (プロトコル)

Standard Template Library

Standard Template Library (STL) は、プログラミング言語C++の規格で定義された標準ライブラリの一つ。ヒューレット・パッカード社在籍の研究者(当時)であったアレクサンドル・ステパノフ等によって考案され、後にANSI/ISO標準に組み込まれた。

見る アプリケーションプログラミングインタフェースとStandard Template Library

SWIG

SWIG (Simplified Wrapper and Interface Generator) は、C/C++ で書かれたプログラムやライブラリを、Tcl、Perl、Python、Ruby、PHP、Luaなどのスクリプト言語や、Java、C#、Common Lisp、Scheme、OCamlなどのプログラミング言語に接続するためのオープンソースのツールである。

見る アプリケーションプログラミングインタフェースとSWIG

Transmission Control Protocol

Transmission Control Protocol(トランスミッション コントロール プロトコル、TCP)はIPネットワーク上のアプリ間・コネクション型・高信頼性・ストリーム指向の通信プロトコルである"Transmission Control Protocol (TCP)... TCP provides a reliable, in-order, byte-stream service to applications....

見る アプリケーションプログラミングインタフェースとTransmission Control Protocol

Twitter

Twitter(ツイッター)は、かつてアメリカ合衆国・カリフォルニア州サンフランシスコに本社を置いていたTwitter, Inc.のソーシャル・ネットワーキング・サービス(SNS、情報サービス )。2023年7月24日に「X」へ名称を変更した。投稿は「ツイート」と呼ばれ、限られた文字数だけで投稿できる。

見る アプリケーションプログラミングインタフェースとTwitter

Unified Extensible Firmware Interface

ソフトウェアスタックにおけるEFIの位置づけ Unified Extensible Firmware Interface(ユニファイド・エクステンシブル・ファームウェア・インタフェース、UEFI)はオペレーティングシステム(OS)とプラットフォームファームウェアとの間のソフトウェアインタフェースを定義する仕様である。 UEFIを採用したSystem BIOSは「UEFI BIOS」と呼ばれ、単に「UEFI」と略されることが多いが、ユーザーがアクセスし設定などを行うGUIはUEFIであっても「BIOS」と呼ばれる事が多い。UEFI BIOSはIBM PC互換機に採用された古いSystem BIOSのよりセキュアな置き換えを意図している。遠隔診断やOSがロードされていない状態での修復なども可能とする。「BIOS(バイオス)」とは異なり、「UEFI」の読みは特に定められていない。

見る アプリケーションプログラミングインタフェースとUnified Extensible Firmware Interface

Unix系

複数のUnix系システム間の関連図 Unix系(ユニックスけい、Unix-like、ユニックスライク)とは、Unixに類似した振る舞いをするオペレーティングシステム (OS) を指す用語である。その判断基準や範囲には複数の議論がある。

見る アプリケーションプログラミングインタフェースとUnix系

USENIX

USENIX協会は、1975年に設立された "Unix User Group" というユーザーグループを起源とする団体。Advanced Computing Technical Associationとも呼ばれる。当初の目的はUNIXとUNIX関連のシステムの開発や研究であった。Usenixと名称変更したのは、ウェスタン・エレクトリック(AT&Tの製造部門)からの脅迫状への対応のためであった(商標問題)。その後、より一般的にオペレーティングシステムに関わる事業家、開発者、研究者の組織に成長した。創設当初から;login: という技術誌を出版している。 USENIXは本来技術団体として始まったが、商業的関心が高まるとともにいくつかのグループが並行して始まった。例えばSTUG (Software Tools Users Group) はUnix系ツールと非Unix系OSとのインタフェースについての技術グループ、USENIX/usr/groupは商業志向のユーザーグループである。

見る アプリケーションプログラミングインタフェースとUSENIX

User Datagram Protocol

User Datagram Protocol(ユーザ データグラム プロトコル、UDP)はIPネットワーク上のアプリケーション間データグラム送信を実現する通信プロトコルである"User Datagram Protocol ... make available  a datagram mode of packet-switched computer communication in the environment of an interconnected set of computer networks....

見る アプリケーションプログラミングインタフェースとUser Datagram Protocol

Web 2.0

Web 2.0(ウェブ にーてんぜろ)とは、2000年代中頃以降における、ウェブの新しい利用法を指す流行語である。Darcy DiNucciにより1999年に造られ、2004年のWeb 2.0 Conferenceにより広まり、その後3年間ほど流行した。 ティム・オライリーによって提唱された概念であり、狭義には、旧来は情報の送り手と受け手が固定され送り手から受け手への一方的な流れであった状態が、送り手と受け手が流動化し、誰もがウェブサイトを通して、自由に情報を発信できるように変化したウェブの利用状態のことである。

見る アプリケーションプログラミングインタフェースとWeb 2.0

Windows API

Windows API(ウィンドウズ エーピーアイ)とは、Microsoft Windowsのシステムコール用APIのこと。特に32ビットプロセッサで動作するWindows 95以降やWindows NTで利用できるものはWin32 APIと呼ばれる。また、それらのWindowsにおけるWin32 APIの実装をWin32と呼ぶ。 64ビットプロセッサ向けのWin64 APIも含める場合は「Windows API」という包括的な名称が正確だが、慣習的にWin32と言えばWin64も含んでいることがある。

見る アプリケーションプログラミングインタフェースとWindows API

Windows NT系

Windows NT系(ウィンドウズ エヌティーけい)はマイクロソフトが開発したWindows NTのアーキテクチャに基づいて製作されたオペレーティングシステム (OS) の総称。遅くとも Windows 98/98SE/Me のサポートが終了した2006年以降から2024年現在に至る Windows の主流系統となっている。MS-DOSを基に拡張・発展してきたWindows 9x系とは全く異なった構造をしており、9x系とは分けて考えるときに、NT系と定義する。

見る アプリケーションプログラミングインタフェースとWindows NT系

XPCOM

XPCOM (Cross Platform Component Object Model) は、Mozillaプロジェクトにおいて開発されているクロスプラットフォームなソフトウェアコンポーネント技術である。マイクロソフトのComponent Object Model (MS COM) のオープンソース実装に相当する。XPCOMはC++で実装されており、Linux、Windows、macOSという主要なプラットフォーム上で動作する。複数の言語バインディングが提供されており、C++の他に、JavaScript、Java、Python等の実装が存在する。XPCOMのインタフェースには、XPIDLと呼ばれるインタフェース記述言語 (IDL) が用いられている。

見る アプリケーションプログラミングインタフェースとXPCOM

束縛 (コンピュータ)

束縛またはバインディング(binding)は、主に「対応付け」や「関連付け」などの意味で用いられるコンピュータ用語である。コンピュータ関連で「束縛」という語が使われるものはいくつかあり、それぞれ具体的な内容は異なるので、以下いくつかの例を示す。

見る アプリケーションプログラミングインタフェースと束縛 (コンピュータ)

法 (法学)

法(ほう、law)は、国家の強制力を伴う社会規範である。一般的に、国家の秩序を保つために、国家が設ける社会規範であって、国民の間で自主的に醸成される道徳、マナー、モラルなどの強制力を持たない社会規範と全く異なる性質の規範である。法を知らなかった場合でも、違法行為があった場合は罰せられる事になる。 一般的にイメージされる法の属性としては、一定の行為を命令・禁止・授権すること、違反したときに強制的な制裁(刑罰、損害賠償など)が課せられること、裁判で適用される規範として機能することなどがあげられる。但し、国民への注意喚起の目的で罰則が無い法が制定されることもある。法治国家においては全ての人が法に従わなければならず、法を超越する者は居ないとされる事が一般的である。こうした法を運用するに当たって、犯罪や紛争に関与した人を裁く裁判所や、刑法に基づき実力を行使する警察などが設置される。

見る アプリケーションプログラミングインタフェースと法 (法学)

文字コード

文字コード(もじコード、)は、文字(キャラクタ)を通信やコンピュータで扱えるように、一文字一文字に固有の識別番号を与えて区別できるようにした、その対応関係についての規則のこと。

見る アプリケーションプログラミングインタフェースと文字コード

日経BP

株式会社日経BP(にっけいビーピー)は日本経済新聞社(日経)グループで出版業を営む子会社である。日経BP社とも表記される。2020年4月、日本経済新聞出版社(にほんけいざいしんぶんしゅっぱんしゃ)(旧)株式会社日本経済新聞出版社:2020年4月当社に合併され消滅、東京都千代田区大手町、を経営統合した。 「BP」はビジネス・パブリケーション (Business Publications) の略である。

見る アプリケーションプログラミングインタフェースと日経BP

日本

日本国(にほんこく、にっぽんこく、Japan)、または日本(にほん、にっぽん)は、東アジアに位置する民主制国家。首都は東京都。 全長3500キロメートル以上にわたる国土は、主に日本列島北海道・本州・四国・九州の主要四島およびそれに付随する島々。および南西諸島・伊豆諸島・小笠原諸島などの弧状列島により構成される。大部分が温帯に属するが、北部や島嶼部では亜寒帯や熱帯の地域がある。地形は起伏に富み、火山地・丘陵を含む山地の面積は国土の約75%を占め、人口は沿岸の平野部に集中している。国内には行政区分として47の都道府県があり、日本人(大和民族・琉球民族・アイヌ民族現代、アイヌにルーツをもつ日本国民のうち、アイヌ語を話す能力もしくはアイヌとしてのアイデンティティーを持っている者は少数である一方、近年は政策的にアイヌ文化の復興と発展のための活動が推進されている。

見る アプリケーションプログラミングインタフェースと日本

.NET Framework

Microsoft.NET Framework(マイクロソフト ドットネット フレームワーク)は、マイクロソフトが開発していたアプリケーション開発・実行環境である。バージョン4.8をもって.NET Frameworkのメジャーアップデートは終了し、セキュリティとバグ修正のための更新は継続されるが、以降の新規開発における推奨環境は.NETとなった。 Windowsアプリケーションだけでなく、XML WebサービスやウェブアプリケーションなどWebベースのアプリケーションなども包括した環境となっている。一般に.NETという場合、.NET全体の環境を指す。現在はOSS版の.NET CoreやMonoも包括した技術仕様の総称を.NETと呼び、プロプライエタリの初期から存在する従来のWindows専用実装のみを.NET Frameworkと呼んで区別している。

見る アプリケーションプログラミングインタフェースと.NET Framework

2010年

この項目では、国際的な視点に基づいた2010年について記載する。

見る アプリケーションプログラミングインタフェースと2010年

2015年

この項目では、国際的な視点に基づいた2015年について記載する。

見る アプリケーションプログラミングインタフェースと2015年

2021年

この項目では、国際的な視点に基づいた2021年について記載する。

見る アプリケーションプログラミングインタフェースと2021年

アプリについてアプリケーションプログラミングインタフェース

アプリケーションプログラミングインタフェースについて人工知能を使ってこれらのアプリを作成することで学びます。以下のアプリケーションプログラミングインタフェースに関するアプリは、ユニークな没入型体験を提供します。 トップ10:

1. 📱🌐API入門

初心者向けに基本的なAPI呼び出しとレスポンス処理を学べるアプリ。

API入門を作成

2. ❓🎮APIクイズ

APIに関する知識をクイズ形式で楽しく復習できるゲーム。

APIクイズを作成

3. 🛠️🚀APIチャレンジ

APIのエンドポイント設計と認証方法を実践的に試せるツール。

APIチャレンジを作成

4. 🔐📊APIマスター

高度なREST API設計とセキュリティ対策を学習できる教材。

APIマスターを作成

5. 📚🖼️API図鑑

さまざまなAPIの仕様と使い方をビジュアルで理解できるアプリ。

API図鑑を作成

6. 🧩🔍APIパズル

APIレスポンスのパースとデータ抽出を競うパズルゲーム。

APIパズルを作成

7. 📝💡API学習帳

APIの基礎から応用までステップバイステップで学べるノートアプリ。

API学習帳を作成

8. 🛍️🤝API便利帳

日常生活で使えるAPI連携のアイデアとサンプルを集めたツール。

API便利帳を作成

9. ⚡🖥️API最適化

HTTP/2やキャッシュ最適化を駆使したパフォーマンス向上の実験ツール。

API最適化を作成

10. 🔐🧪API暗号

暗号化通信と署名検証の高度な実装を試せる実験環境。

API暗号を作成

Application Programming Interface、Application binary interface、アプリケーション・プログラミング・インタフェース、アプリケーションプログラミングインターフェイス、ウェブAPI 別名。

C言語Cocoa (API)Common Object Request Broker Architecture特許Dalvik仮想マシンDarwin (オペレーティングシステム)Document Object ModelExtensible Markup Language高水準言語著作権法通信プロトコルFacebookFlickrForeign function interfaceFortranFwriteGIOPGoogleGraphQLHyperText Markup LanguageHypertext Transfer ProtocolIBM J9IconvIOSJavaJava Remote Method InvocationJavaScript Object NotationLindaLinkedInLinuxLinux Standard BaseMac OSMacOSMicrosoft DirectXMicrosoft Visual C++Microsoft WindowsMicrosoft Windows SDKMicrosoft Windows XPMyspaceOpen Database ConnectivityOpenALOpenCLOpenGLOpenJDKOpenMPOpenSocialPharoPhotobucketPlayStation (ゲーム機)POSIXProxy パターンPythonQuickTimeRepresentational State TransferRMI-IIOPSDLSingle UNIX SpecificationSmall Computer System InterfaceSmalltalkSOAP (プロトコル)Standard Template LibrarySWIGTransmission Control ProtocolTwitterUnified Extensible Firmware InterfaceUnix系USENIXUser Datagram ProtocolWeb 2.0Windows APIWindows NT系XPCOM束縛 (コンピュータ)法 (法学)文字コード日経BP日本.NET Framework2010年2015年2021年