メインコンテンツにスキップ
バージョン: v8

用語集

アクセシビリティ

アクセシビリティ

(a11y) とは、能力に制限のある方を含め、できるだけ多くの方がコンテンツを利用できるようにすることです。これには、障害のある方、モバイルデバイスを使用している方、ネットワーク接続が遅い方が含まれます。コンテンツは、技術的に可能な限りアクセスしやすいように開発する必要があります。

Android SDK

Android SDK

Android SDK

は、Google の Android プラットフォーム向けに開発を行う開発者向けに構築されたソフトウェア開発キットです。Android アプリケーションのビルド、テスト、デバッグを行うためのツールが含まれています。

Android Studio

Android Studio

は、ネイティブ Android アプリ開発のための公式の統合開発環境 (IDE) です。

Autoprefixer

Autoprefixer

は、手書きの Sass/CSS コードにベンダー固有のプレフィックスを追加するツールです。これにより、記述した標準化された CSS ルールが、すべての対応ブラウザで適用されるようになります。たとえば、さまざまなブラウザで使用されているすべてのフレックスボックス構文を把握する代わりに、autoprefixer を使用すると、単に `display: flex;` と記述するだけで、正しい CSS が自動的に挿入されます。

バンドリング

バンドリングとは、アプリの依存関係 (記述したコードとインストールされている npm モジュール) を取得し、それらを 1 つのファイルにコンパイル/トランスパイルするプロセスです。

Capacitor

Capacitor

は、Web ベースのアプリを iOS、Android、Electron、Web 上でネイティブに実行できるオープンソースのクロスプラットフォームアプリランタイムです。これらのアプリは「ネイティブプログレッシブ Web アプリ」と呼ぶと便利です。これは、従来のハイブリッドアプリの考え方から進化したものです。Capacitor は Ionic 社によって作成され、積極的に開発/サポートされています。

CLI

CLI (**C**ommand-**L**ine **I**nterface) とは、プログラムと対話するためのテキストベースのインターフェースです。Mac ユーザー向けの一般的なコマンドラインアプリはターミナルアプリで、Windows ユーザーは多くの場合コマンドプロンプトを使用します。Ionic コミュニティでは、この用語はしばしば Ionic の CLI を指します。Ionic の CLI は、アプリのプロダクションビルドの作成、開発サーバーの実行、

Ionic の商用サービス

.

へのアクセスなど、さまざまな用途に使用できます。

へのアクセスなど、さまざまな用途に使用できます。

CommonJS

は、JavaScript API の標準フォーマットを定義するグループです。JavaScript モジュールとパッケージの標準を定義しています。

Cordova

Apache Cordova

は、標準の HTML/CSS/JS を本格的なネイティブアプリに変換するオープンソースのモバイルアプリケーション開発フレームワークです。カメラや加速度センサーなどのネイティブデバイス機能にアクセスするための JavaScript API を提供します。Cordova には、iOS、Android、Windows Phone 用の Web アプリをパッケージ化するために必要なビルドツールが含まれています。

は、標準の HTML/CSS/JS を本格的なネイティブアプリに変換するオープンソースのモバイルアプリケーション開発フレームワークです。カメラや加速度センサーなどのネイティブデバイス機能にアクセスするための JavaScript API を提供します。Cordova には、iOS、Android、Windows Phone 用の Web アプリをパッケージ化するために必要なビルドツールが含まれています。

CORS (Cross-Origin Resource Sharing) は、サーバーが Web アセットへのクライアントアクセスを制御するためのメカニズムです。詳細は、

CSS 変数

Sass の変数をご存知かもしれません。

CSS 変数

CSS 変数は同じ機能を実現しますが、ブラウザに組み込まれています。CSS 変数は、すべての evergreen ブラウザで使用できます。

デコレーター

デコレーターは、関数を返す式です。既存の関数を取得し、その動作を拡張することができます。TypeScript では、*クラス* と *パラメータ* もデコレートできます。 **クラス** をデコレートする場合、コンストラクタの動作をラップして拡張しています。つまり、デコレーターはコンストラクタが呼び出されたときに何らかの機能を追加し、元のコンストラクタを返します。**パラメータ** をデコレートする場合、そのパラメータに渡される引数をラップしています。デコレーターは、メソッドに引数が渡されたときに機能を追加し、元の引数を返します。

ES5

ES5 は EcmaScript 5th Edition を指します。簡単に言うと、ES5 は今日開発者が最もよく知っている JavaScript のバージョンです。

ES2015/ES6

このバージョンの JavaScript では、クラス、モジュール、イテレータ、プロミスなど、幅広い新機能が導入されました。Evergreen ブラウザ (Chrome、Safari、Firefox、Edge) は ES6 を完全にサポートしていますが、古いブラウザで ES6 機能を使用するには、BabelTypeScript などのツールで ES6 コードを ES5 にトランスパイルする必要があります。

ES2016/ES7

このバージョンの JavaScript では、`Array.includes` や指数演算子など、いくつかの新機能が言語に追加されました。このバージョンの JavaScript は、すべての evergreen ブラウザ (Chrome、Safari、Firefox、Edge) で完全にサポートされています。

ES2017/ES8

このバージョンの JavaScript は最新の標準です。現在、新しい公式標準になる前の最終段階にあります。この仕様には、Async/Await (すでにすべての evergreen ブラウザに搭載されている) と共有メモリ/アトミックが含まれています。

Genymotion

Genymotion はサードパーティ製の Android エミュレータです。非常に高速で、Android でアプリをすばやくテストするのに役立ちます。Genymotion の詳細については、リソースセクションを参照してください。

Git

Git

は、コードを管理するための分散型バージョン管理システムです。開発チームは、コードの競合を引き起こすことなく、同じプロジェクトにコードを貢献できます。

Gulp

Gulp

は、アプリのビルドに使用できるタスクを実行するためのツールです。一般的なビルドタスクには、 ES6 から ES5 へのトランスパイルSass から CSS への変換、コードの縮小、ファイルの連結などがあります。

ES Modules

ES Modules

は、モジュールの概念を JavaScript にネイティブにもたらします。モジュールを使用すると、クラスと変数はグローバルスコープになくなるため、使用するプロジェクトに明示的にインポートする必要があります。これにより、コードの出所を理解しやすくなり、機能のモジュール化とコンパートメント化が向上します。

Ionicons

Ionicons

は、Ionic によって使用および作成されたオープンソースのアイコンセットです。1:1 の iOS と Material Design アイコン、および一般的に使用されるソーシャル/アプリケーションアイコンが含まれています。Ionicons は Ionic ディストリビューションにデフォルトで含まれていますが、どのプロジェクトでも使用できます。

Karma

Karma

は、実際のブラウザ内でアプリのテストを実行するテストランナーです。任意のテストフレームワークで記述されたテストケースを実際のブラウザで実行します。Karma は元々 Angular 1 で使用するために記述されました。

モジュール

JavaScript のモジュールは、互いに独立した再利用可能な小さなコードで、互いに分離されており、グローバルスコープからも分離されています。

モノレポ

**モノレポ**とは、複数のプロジェクトを含む単一の git リポジトリです。利点としては、組織の簡素化、ツールと依存関係の共有、チームメイトとのコラボレーションの向上が挙げられます。

ライブリロード

**ライブリロード** (または **live-reload**) は、アプリの変更を検出すると、ブラウザまたは Web ビュー を自動的にリロードするツールです。場合によっては、ウィンドウ全体をリロードすることなく、アプリの一部を置き換えることができます。詳細は、 ライブリロードのドキュメント を参照してください。

Node

Node

は、サーバー側で JavaScript を記述できるランタイム環境です。Web サービスに使用されることに加えて、Node は Ionic CLI などの開発ツールを構築するためによく使用されます。

npm

npm

Nodeのパッケージマネージャーです。開発者はNodeモジュールをインストール、共有、パッケージ化できます。Ionicは、多くの依存関係とともに、npmを使用してインストールできます。

Observable(オブザーバブル)

オブザーバブルは、イベント(または通知)を発行するオブジェクトです。オブザーバーは、これらのイベントをリッスンし、イベントを受信したときに何かを行うオブジェクトです。これらを組み合わせることで、非同期プログラミングに使用できるパターンが作成されます。

パッケージID

AppleではバンドルID、AndroidではアプリケーションIDと呼ばれ、 パッケージIDは、App Store / Playストアに公開されているアプリを識別するために使用されます。これは、

逆DNS表記

.

でフォーマットされた文字列です。

Polyfill(ポリフィル)

ポリフィル

とは、ブラウザに機能を追加し、ブラウザ間の差異を正規化するコードのことです。これは Shim(シム)に似ていますが、シムは独自のAPIを持つのに対し、ポリフィルはブラウザの期待されるAPIを使用できるようにします。

Protractor(プロトラクター)

Protractor(プロトラクター)

は、AngularチームによってAngular用に書かれたテストフレームワークです。Protractorは、エンドツーエンドテストのために、Karmaなどのテストランナーで使用できます。テストランナーを使用すると、コードの品質を迅速かつプログラムで検証できます。

Sass(サス)

Sassは、CSSにコンパイルされるスタイルシート言語であり、Ionicで使用されています。SassはCSSに似ていますが、

変数

ミックスイン ループ などの追加機能があります。

スコープカプセル化

スコープカプセル化を使用するコンポーネントは、実行時に各スタイルにデータ属性を追加することにより、CSSのスコープを自動的に設定します。CSSでスコープセレクタをオーバーライドするには、

より高い特異性

を持つセレクタが必要です。スコープコンポーネントは、

CSSカスタムプロパティ

.

を使用してスタイルを設定することもできます。

を使用してスタイルを設定することもできます。

Shadow DOM(シャドウDOM)

CSSカスタムプロパティ

CSSカスタムプロパティ

CSS シャドウパーツ

.

::part擬似要素

を使用する必要があります。

Shim(シム)

シムは、ブラウザ間でAPIを正規化するコードです。シムは、ブラウザ固有の実装をエンドユーザーから隠す独自のAPIを持つことができます。 トランスパイラ

トランスパイルとは、実行前にコードをある言語から別の言語に変換するプロセスです。通常、トランスパイラは高水準言語を別の高水準言語に変換します。Ionic Frameworkで最も一般的な

トランスパイルとは、実行前にコードをある言語から別の言語に変換するプロセスです。通常、トランスパイラは高水準言語を別の高水準言語に変換します。Ionic Frameworkで最も一般的な

トランスパイルは、ES2015 / ES6TypeScript)をES5(従来のJavaScript)に変換することです。

TypeScript(タイプスクリプト)

はJavaScriptのスーパーセットです。つまり、JavaScriptに加えて、

型宣言

インターフェース

などの多くの追加機能を提供します。IonicはTypeScriptで構築されていますが、Ionicアプリの構築にTypeScriptを使用することは完全にオプションです。

ユニットテスト

ユニットテスト

ユニットテストとは、コードの小さな部分をテストして、期待どおりに動作するかどうかを確認する方法です。ユニットテストフレームワークには、Jasmine、Mocha、QUnitなど、多くのものがあります。

Webpack(ウェブパック)

Android SDK

は、JavaScriptモジュールやその他のアセットをまとめてバンドルします。必要な場合にのみロードされる単一または複数の「チャンク」を作成するために使用できます。Webpackを使用すると、多くのファイルと依存関係を取得して、1つのファイルなどにバンドルできます。

Web標準

World Wide Web Consortium

(W3C)は、Webの標準化団体です。業界リーダーと一般の人々が協力して、

Web標準

Web標準

を開発しています。Web標準は、Webプラットフォームを定義する一連のプロトコル、仕様、およびテクノロジーです。