iOSアプリを開発するとき私たちはObjectCとかSwiftを利用する。
そして、androidアプリを開発するときはJavaとKotlinと言う言語を利用する。
今日はこのkotlinというものを調べるつもりだ。
###Kotlin?
コトリンはジャワ州の新しいプログラミング言語である.
コトリンの主な目的は,ジャワが使用されているあらゆる用途に適し,簡潔で,生産的で安全な代替言語を提供することである.
###いい点
1. 簡潔で実用
2. ジャワコードとの相互運用
3. ほとんどのジャワプロジェクトでコトリンを活用できる(アンドロイド、サーバー開発など)、インテルのマルチOSエンジンを使用してiOSでも実行可能、デスクトップアプリケーション(コトリン、トルネードFX)、ジャワFXでも使用可能、ジャワスクリプトでもコトリンコードを利用してブラウザやノードで実行できる。
4. 性能はジャワに似ている。
5. 安定性(nullチェック、タイプ検査とキャスト)
###主になる特徴
コトリンの目標は,1問の領域のみを解決することや今日におけるソフトウェア開発の問題の一部だけを扱うための言葉ではない. その代わり、コトリンは開発過程で遂行しなければならないすべての課業において幅広い生産性を向上させる。 コトリンは、具体的な領域の問題を解決したり、特定プログラミングパラダイムを支援する様々なライブラリとうまく融合する。
静的タイプ指定言語
ジャワと同じくコトリンは静的タイプの指定言語である. 全てのプログラムの構成要素のタイプがコンパイル時点でわかり、プログラムの中でオブジェクトのフィールドやメソッドを使用するたびにコンパイラがタイプを検証してくれるという意味である。 それによって、さらにコードが短くなり、柔軟だ。
var x = 1
ここでは変数を定義しながら定数値に初期化するが、コトリンは変数のタイプをintで自動的に割り出す。 コンパイラが文脈を考慮して変数タイプを決定するこのような機能をタイプ推論という。
コトリンは関数型プログラミングを豊富にサポートする。 だからといって、コトリンが関数型プログラミングを強制したりはしない。 命令型方式の方が適している場合は、関数型プログラミングで煩わしくコーディングする必要はない。
###コトリン·コード·コンパイル
コトリンソースコードを保存するときは、通常.ktという拡張子をファイルに貼り付ける。 コトリンコンパイラはソースを.classファイルで作り出す。コンパイルしたコードはコトリン·ランタイム·ライブラリに依存する ランタイムライブラリーには、コトリン独自の標準ライブラリークラスとコトリンでジャワAPIの機能を拡張した内容が含まれている。 コトリンでコンパイルしたアプリケーションを配布する時は、ランタイムライブラリも一緒に配布しなければならない。