カテゴリー
Kotlin言語

Android Studio で Kotlin を学習する前に見ておく基本用語集

Kotlin や Android についての基本用語です。Android developers の Vocabulary for Android Basics in Kotlin の内容をまとめたものです(翻訳ではありません)


A / B からはじまる用語

用語説明
Abstract class抽象クラス。クラスのひな型みたいなもの
Accessibilityアプリのデザインや機能によってもたらされる操作性のこと
Adaptive iconsAndroidアプリで使われるデバイスに応じて最適化されるアイコン
adb (Android Debug Bridge)Androidデバイスのデバッグなど便利につかえるコマンドラインツール
Androidいろんなデバイスに使えるモバイル向けOS
Android appAndroidデバイスで動くアプリ
Android deviceAndroid OSが動いているデバイス
Android EmulatorPC上でAndroidデバイスをエミューレーションするソフト
Android StudioAndroidアプリを作るための機能がぜんぶ詰まった公式の開発環境(IDE)
Android Virtual Device (AVD)Android Emulator上で動く、実機をソフトウェアでエミュレートしたもの
Annotationsクラスやらメソッドやらに「@~」のような形で注釈して、Android Studioにそれが何であるか伝えておくおまけ情報
AnyKotlinでつかうすべてのクラスの親、スーパークラス。equals(), hashCode(), toString() メソッドはAnyクラスに用意されているのでどんなクラスでも使える
APK (Android Application Package)Androidアプリを配布,インストールするためのファイル形式
Argument関数に渡す値やら変数やらのこと。引数
AVD ManagerAndroid Virtual Devices (AVDs) を新たに作ったり管理したりするためのもの。Android Studio のメニューから呼び出せる
Boolean真偽型。true または false をもつ
Buttonボタンが作れる。View型。ボタンを押すとclick handler が呼ばれて処理が行われる

C からはじまる用語

用語説明
Camel case単語の頭を大文字にしてスペースを使わずにくっつけて1単語にする表し方のこと。関数名、変数名、クラス名なんかに使う。たとえば LinearLayoutMainActivitysetOnClickListener みたいな感じ
Chainingメソッドやプロパティを次々と適用していくときに、どんどんつなげて書いてしまう方法。たとえば binding.costOfService.toString() みたいな感じ
Classクラス。object の設計図みたいなもの。property(変数)と method(関数)から成る
Click HandlerView部品がタップされたときの処理を書いておく。View部品がタップされると click listener が反応して click handler が呼び出される仕組み
Click ListenerView部品にくっつけて使う。View部品がタップされると反応して click handler を呼び出す
Code (Source code)デバイスを操作するためにKotlinのようなプログラミング言語で書かれた指示書のこと
Code editorプログラムのコードを書くのに特化したテキストエディタのこと。Android Studio に入っているコードエディタは Kotlin に対応している
Code refactoring外から見たアプリの動作を変えずに、プログラムのコードを見やすく整理したり、効率よくしたりするように書き換えること
Code snippet繰り返しよくつかう小さめの定型文的なコードのこと
Coding conventionsコードの書き方についての標準的な取り決め、ガイドラインのこと。みんなで書き方のルールを大体決めておくと何かといいので
Commentsコメント文。Kotlinでは // と /* ~ */
Compileソースコードをデバイスで実行できるコードに変換すること
Compilerコンパイルするためのソフトのこと
Conditionaltrue か false で処理を分岐するための条件のこと。Kotlin には if , else , when などの条件文がある
Consoleシステムから送られるテキスト出力のこと(ソフトウェアの開発環境の場合)
Constraint制約とか制限という意味だが、Android の画面レイアウトの話で出てくる。ConstraintLayout ではレイアウトする部品それぞれに、配置する上で満たしてほしい制約(Constraint)を付けていく
ConstraintLayoutAndroid の 比較的新しいレイアウト(ViewGroup)で、画面に配置する部品に制約(Constraint)を付けていくことでそれらを満たすようなレイアウトが自動的に行われる
Constructorクラスからインスタンスを生成するときに必ず呼ばれる。オブジェクトがちゃんと使えるように必要な初期化などをする。コンストラクタの名前はクラスの名前と同じ
Control Flow制御フロー。基本的にプログラムは上から下へ処理されていくが、if やら repeat やらがあると流れが変わる。この実際の処理の流れを Control Flow という

D から I ではじまる用語

用語説明
Dark themeAndroid のUIモードのひとつで、暗い背景に明るい文字で表示する。Light theme の逆。消費電力が少ない
Data classKotlinに用意された、データ保持専用のクラス。クラスの宣言を data class からはじめればよい。データクラスには equals() ,  hashCode() , toString() , copy() メソッドが自動的に設定される
Data typeデータ型。Int , Boolean , String , Array , IntRange などなど
Debuggerアプリやコードのデバッグをするためのツール。コードを1行ずつ実行して変数の値がどんな風に変化しているのかを調べたりできる
Debuggingアプリが思うような動作をしないときに問題点を発見したり修正したりすること。デバッグ
DoubleKotlinの小数の型。整数の型は Int
DP (Density-independent pixels)デバイスによって1インチあたり何ピクセルで表示されるのかは異なる(Densityが異なる)。単純にピクセルで管理していると高解像度なディスプレイだと表示が小っちゃくなってしまう。そこでAndroidではUIの部品などをdpとかdipと呼ばれる単位で管理している。Androidはデバイス毎に1dpを何ピクセルとして扱えばいいのか把握していて、自動的にレイアウトが乱れないように表示する
DrawableAndroid Studio で、描画が必要なリソースのことを Drawable と呼んでいる。通常は画像ファイルのこと。リソースには Resource Manager を使って追加する
Empty string長さ0の文字列。”” のこと
Encapsulationカプセル化。機能的に関連するデータとその機能を1つにまとめること。具体的にはクラスでしていること
Exception例外。システムが想定していないこと
Function関数。Kotlinでは fun で宣言する。引数にはデフォルト値を設定することもできる。クラス内に記述された関数はメソッドと呼んでいる
Getters and Settersクラスのプロパティ(変数)の値を取り出したり、設定したりするための関数。Kotlinでは getter と setter がすべてのプロパティ(クラスの変数)に最初から用意されている(自分で作らなくていい)
Gradleアプリのビルドを管理して自動化するツール。Android Studioで採用されている。ソースコードをはじめ必要なものをすべてまとめてAPKを作成してくれる。ビルドに関する設定は build.gradle ファイルを書き換えて行う
Hardcodedハードコード。プログラムやアプリの中に値そのものを直接書き込むこと。修正などがしにくくなるので推奨されない。できれば別ファイルにまとめて参照するようにしたほうがよい
IDE (Integrated Development Environment)ソフトウェアを開発するためのツールをまとめたもの。Android Studio もそのひとつ
ImageViewアイコンや写真のような画像を表示するためのView部品のひとつ
Immutable作成後に変更できない(状態を変えられない)ということ(イミュータブル)。変更できるのは mutable(ミュータブル)
Import外部にあるAPIやコードを取り込む指示。Kotlinではファイルの先頭に記述して外部にあるクラスやAPIを取り込むのに使う
Instance (object instance)クラスから作ったオブジェクトのこと。
IntKotlinの整数のデータ型。通常4バイト(±21億くらいの範囲の整数が表せる)

K から P ではじまる用語

用語説明
KotlinAndroid Studio でも使える最新の言語。Androidアプリを作るなら Java よりも簡潔で書きやすいと評判
lateinit通常、非Nullプロパティ(クラスで定義したnullにならない変数)はコンストラクタで初期化すべきなのだけど、それがうまくないことがある。そんなときにプロパティに lateinit をつけておく。これは使う前に必ず初期化しますという宣言(初期化しないで使うと例外が発生する)
LayoutAndroid Studio でアプリの画面を作るときに、View部品を配置するためのもの
Line break改行のこと。Kotlinでは、文字列の中に書いた ‘\n’ は改行を意味する
List要素に番号付けしてひとまとめにしたもの。Kotlinのリストは定義次第で mutable(変更可能)にも immutable(変更不可)にもできる
main() functionKotlinプログラムは必ず main()関数 から実行が開始される(エントリーポイント)。Androidの場合、アプリの実行はAndroidシステムが管理しているので main()関数がありません(見えません)
MaterialGoogleが提唱しているUIなどのデザインについての設計ガイドラインのこと
Methodメソッド。クラスに定義された関数のこと
Mockupとりあえず試作的に用意したアプリのユーザーインターフェース(UI)のこと
Mutable作成後に変更できる(状態を変えられる)ということ(ミュータブル)。変更できないのは immutable(イミュータブル)
Null「値が存在しない」ことをあらわす特別な値。数値の0や文字列の “”(長さ0の文字列)とは違って、明確に値が設定されていないことを示している。Kotlinでは特に指定しない限り概ね null を扱わないようになっている。nullを扱えるようにしたいときはその都度明示的に宣言しないといけない
Objectクラスから作られたそれぞれのインスタンスのこと
Object Oriented Programming (OOP)オブジェクト指向プログラミング。オブジェクトという考え方を中心にプログラムを構築する。大規模、大人数でのプログラムの保守開発がしやすい
Operators and operandsたとえば 5+3 ならば + がoperator(演算子)で5と3が operand(被演算子)。- や * なども同様。論理演算の > , == , ! なども演算子。論理演算の場合、結果は true や false として返される
Package関連のあるクラスや関数のソースコードをまとめたもの。Kotlinだとパッケージの宣言はファイルの先頭に書く。ほかのパッケージを利用したいときは必要なパッケージを import しておくこと。パッケージ名はアンダースコア(_)を使わず小文字のみ、ドット(.)区切りで表すのがいい。クラス名はパッケージ内で重複しなければ問題ないが、パッケージ名はグローバルに重複しないようにする(ドメイン名の逆順などを使う)
Parameter vs. argumentparameter(パラメータ)は関数の中で宣言された変数のこと。argument(引数)はパラメータに渡したデータのこと
Privateクラスのメンバ(プロパティやメソッド)はデフォルトで public です。プロパティやメソッドに private をつけるとアクセスはクラス内からのみ可能になり、外部からはアクセスできなくなります
Programコンピュータに何らかの動作をさせるための命令を並べたもの
ProjectAndroid Studio では作成するAndroidアプリに必要なものを全部まとめて project(プロジェクト)として扱う。アプリのソースコードはもちろん、ビルドの設定、マニフェスト、リソース、テストコードなどすべてを含む
Pseudocodeスードコード(疑似コード)。何らかのコンピュータ言語っぽく書かれているが、肝心の処理の部分などは普通の言葉で書いてあったりするもの。何をしているのか直感的に把握しやすい。アプリの動作なんかを説明したり検討したりするのに使われる
Publicクラスのメンバ(プロパティやメソッド)はデフォルトで public なので、外部から自由にアクセスできる

Q から X ではじまる用語

用語説明
Qualified nameクラス名だけでなく、完全なパッケージ名までつけて表した名前。たとえば TextView クラスの qualified name は android.widget.TextView 。インポートしたパッケージに同じ名前のクラスがあったときなどに使う
RecyclerViewAndroidでリスト表示するためのウィジェット。RecyclerView.Adapter , RecyclerView , ViewHolder を組み合わせて使う。
Reference変数や関数に object を渡すと、object そのものではなくID(あるいはメモリ上のアドレス)が渡される。これを reference(参照)という。参照を使うとコードが小さくなる
ResourcesAndroidアプリで使う 画像 , 画面レイアウト , UIで使う文字列などをResource(リソース)という
SP (Scalable pixel)フォントサイズの単位。Androidでは実際のフォントサイズはデバイスやユーザの設定に応じて計算される。フォントサイズの指定はいつでも SP を使うこと
Stack traceプログラムの実行が止まるまでに呼び出されたメソッドをリストで表示したもの。プログラムのエラーが起きた場所を調べたりするのに使う
String文字列のこと。文字列は1文字だけ、あるいはまったく文字を含まなくてもよい(空文字列、長さが0の文字列)
String Resource文字列のリソース。Androidアプリでは、画面に表示する文字列は strings.xml の中に記述するのがよい
String templateKotlinでは、文字列の中に ${変数} として変数の内容を埋め込むことができる。これを string template(文字列テンプレート)という
Subclass / inheritance / superclasssubclass(サブクラス,子クラス), inheritance(継承), superclass(スーパークラス,親クラス)。スーパークラス(superclass)を継承(inheritance)してサブクラス(subclass)を作ることができる。親クラスは子クラスのテンプレートともいえる。親クラスのプロパティや関数をオーバーライドすることもできる。
System imageAndroid Virtual Device(AVD)に読み込むAndroid OS, API, デバイス毎の機能などをまとめたもの
TextViewテキストを表示するための View部品
User Interface (UI)Androidデバイスに表示されている画面のこと。さまざな部品からできている
val and varKotlinの変数は2種類。val で宣言した変数は1回のみ代入できる(変更不可,再度代入しようとするとエラーになる)。var で宣言した変数は何度でも変更できる
Variable変数のこと。Kotlinでは camelCase で表すことが多い
Vector drawableXMLファイルで定義されたベクターグラフィックのこと。ビットマップイメージに比べてサイズの変更が柔軟にできる。拡大縮小で劣化せずサイズも小さくできるので、さまざまなデバイスに対応しやすい
ViewViewは画面上の矩形領域を基本とするUI作成に使うクラス。ImageView , TextView , Button など、いろんなタイプのView部品がある
View bindingViewを操作するコードを書くのが簡単になる Android Jetpack で提供される機能。利用するには Android Studio(v3.6以降)へ設定が必要。findViewById() を使わず直接リソースIDで参照できるようになる
ViewGroup他のView部品(子)をまとめるためのViewで、Viewの階層を作ります。AndroidではどんなレイアウトでもまずViewGroup(親)を設定して、そこにView部品(子)を置いていきます
View hierarchyAndroidアプリの中で、Viewの階層は親子関係のあるツリー構造になっています。階層の頂上のView(Viewのルート)は必ず ConstraintLayout のような ViewGroup にします。子のViewは、View部品でもViewGroupでも構いません。階層は好きなだけ深くできますが、深くしすぎないのがおすすめ
XML文書を構造化して記述できるマークアップ言語。文書の記述だけなく、ベクターグラフィックス、Androidの画面レイアウト(Viewの階層を記述)にも使われている