![Android Studio入門 アプリ開発を始めてみよう【Kotlin プログラミング #1】](https://i.ytimg.com/vi/WTQUj8tXUKU/hqdefault.jpg)
コンテンツ
Kotlinは、JetBrainsの静的に型付けされたプログラミング言語です。 Javaと完全に「相互運用可能」であり(Javaフレームワークを使用でき、コード内で両方のコマンドを混在させることもできます)、制限はありません。 Android開発者は実際にプラグイン経由でKotlinを使用しており、Playストアの一部の人気アプリ(Basecampなど)はその言語のみを使用して構築されたと伝えられています。ただし、Android Studio 3.0では、バンドルされてすぐにサポートされるようになります。
Kotlinを使用すると、大量の定型文を削除できます
それでは、なぜJavaではなくAndroidアプリにKotlinを使用することにしたのでしょうか?主な理由は、多くの場合にあなたの人生を少し楽にすることができるからです。
たとえば、Kotlinはnull参照を削除し、例外をチェックしていません。どちらも開発者の頭痛の種を軽減できます。ご覧のとおり、Kotlin for Androidのさまざまな機能により、大量の定型コードも削除できるため、よりスリムで読みやすいプログラムになります。一般に、これはより現代的な言語であり、Javaにまだ深く根付いていないか、「最も公式な」方法に固執したい場合は、検討する価値があるかもしれません。始めたばかりの人にとって、Kotlinはより寛容な学習曲線を表すかもしれません。
次を読む:Kotlin対Java:Androidの公式にサポートされている言語の主な違い
それでは、Kotlinをワークフローに採用することに関心がある人にとって、どうやって行き詰まるのでしょうか?
設定する
幸いなことに、KotlinはAndroid Studio 3.0以降にパッケージ化されているため、新しいものをダウンロードする必要はなく、最小限のセットアップのみが必要です。未来へようこそ! Android Studio 3.0を使用している場合、新しいプロジェクトを作成すると、Kotlinサポートを含めるオプションが提供されます。このチェックボックスをオンにすると、後でプロジェクトを構成する必要がなくなります。
以前は、開発者はメニューからファイルを手動でKotlinに変換する必要がありましたが、現在ではデフォルトでこれが行われます。
MainActivity.kt(ktはKotlin拡張機能)を開くと、物事の記述方法とレイアウト方法にいくつかの重要な違いがあることがすぐにわかるはずです。
これで、Kotlin for Androidで開発を開始する準備が整いました!
通常、Kotlinファイル用の新しいディレクトリを作成するか、ここから純粋にKotlinを使用している場合はjavaフォルダー全体を置き換えることをお勧めします。ターゲットディレクトリを右クリックして、新しいKotlinファイルを作成できます。次に選択 新規> Kotlinアクティビティ。
Hello Kotlin for Android:基本的な構文と違い
さて、すでに持っているコードを見てみましょう。最初に、クラスを宣言することに気づくかもしれません クラス Javaの場合と同じです。違いはありません パブリック キーワード、 すべて Kotlinのクラスは公開されており、最終クラスです。また、私たちが使用していないことに気付くかもしれません 伸ばす どちらか。代わりに、同じことをするコロンを使用します。
そのことについて何楽しい コマンド?これは実際には「関数」の略です(あまり面白くない)ので、書く代わりに パブリックボイド あなたは今書きます 楽しい。これにより、クラスは他のクラスから呼び出すことができるパブリック関数になります。引数は、関数名に続く括弧で指定されます。これを行うには、変数の定義方法を知る必要がありますが、これは少し異なります。文字列を作成するには、次のように記述できます。
var text:String =“ Hello”
実際、Kotlinは通常、Pythonのように変数の型を独自に識別するのに十分なほど賢いので、通常は次のように書くことができます。
var text =“ Hello”
文字列を作成するには、または:
var num = 3
整数を作成します。これは、可変(変更可能)変数を作成する方法です。 val 定数の作成に使用されます。そのため、引数付きの関数を作成するときは、括弧内に表示されます。また、これらの変数はデフォルト値を持つことができ、これも便利です。そのため、次のようなものが表示される場合があります。
fun SayHello(var userName:String =“ User”){textView.setText(“ Hello、$ userName!”)}
もう1つ大きな違いがあります。セミコロンはありません!必要に応じてそれらを自由に含めることができますが、義務はなくなり、欠席しても罰せられることはありません。あなたが誰かまだ常にどこかを忘れてしまうと、これは良いニュースになるかもしれません!
構文の違いは他にもたくさんあることに気づくでしょう。もちろん、ここにすべてをリストするのはこの投稿の範囲外です。ただし、構造はまだかなり似ているので、全体的には、コンテキストからすべてが何をしているのかを推測でき、おそらく少しの試行錯誤が必要です。ここで素晴らしい紹介を見つけることができます。
Kotlinの真の力:入力を減らす
多くの場合、Javaに比べてAndroid向けKotlinのコードはかなりシンプルで短く見えます。 onClickListenerをFABに追加する次の例を検討してください。 Javaで行う方法は次のとおりです。
FloatingActionButton fab =(FloatingActionButton)findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener(){@Override public void onClick(View view){...}});
これはKotlinでも同じです:
val fab = findViewById(R.id.fab)as FloatingActionButton fab.setOnClickListener {...}
はるかに単純でわかりやすく、コードを読みやすくします。私が言ったように:定型化が少ない。そして実際には、これよりもはるかに深くなります。 Kotlin開発者は、これを記述する必要がなくなります。 findViewByID 再び!これを行うには、プラグインを適用する必要があります。
これはモジュールレベルで行います build.gradle 行を追加してファイル:
プラグインの適用:「kotlin-android-extensions」
[同期]をクリックすると、次のように、コードの上部にあるビューへの参照をインポートできます。
kotlinx.android.synthetic.mainをインポートします。 これにより、IDを使用せずにビューに直接アクセスできるようになります。これにより、生活が非常に簡単になり、 たくさん 任意のコードの。
ラムダ式をスローすると、コードは非常に簡潔になり始めます。ラムダ式は、すべてを1行に記述することで、記述する必要がある量をさらに減らすことができる匿名関数です。ステートメントは中括弧で囲まれており、パラメーターとそれに続く矢印記号、そして本文が含まれています。たとえば、 onClickListener次のようになります。
button.setOnClickListener({view-> toast( "Clicked!")})
また、関数が最後のパラメーターとして別の関数を必要とする場合は、括弧の外側に渡すことができます。
button.setOnClickListener(){toast( "Clicked!")}
これらの手法を組み合わせることで、多くの忙しい作業を省くことができ、今後さらに多くの便利な時間節約戦略を見つけることができます。
次を読む:Kotlinコルーチンと、Androidの非同期プログラミングでの役割
今後
そして、あなたはそれを持っています:それは一言で言えばAndroid用のKotlinです。あなたに合っていますか?最終的に、これはコーディングに関する個人的な好みとあなたの感性に帰着します。個人的には、Kotlinの合理化された性質と、Kotlinが多くの不要なコード行を削除する方法のファンです。願わくば、この投稿で十分な入門書が得られたので、興味があると判断したら自分で考えて教育を続けることができます。少し遊んでみたいなら、ここでブラウザで試してみてください。
あなたが決めるものは何でも、より多くのオプションを持つことは良いことです!