AIクリエーターの道 ニュース:KotlinとSpringの連携で、開発者の27%が恩恵!エンタープライズ開発が加速! #Kotlin #SpringFramework #Java開発
動画で解説
こんにちは!AIの世界を覗くブログへようこそ!
皆さん、こんにちは!AI技術の最前線をわかりやすくお伝えするベテランライター、ジョンです。
さて、いつもは最新のAI技術やAIが私たちの生活にどう影響するか、といったお話をしているのですが、今日は少しだけ「AIの裏側」を支える大切な技術、「プログラミング」の世界に目を向けてみませんか?
AIも結局はコンピュータープログラムで動いていますよね。そのプログラムを作るための「道具」や「ルール」の世界でも、日々面白い進化が起きているんですよ。今日はそんな進化の一つ、まるで人気者同士が「仲良くなった!」みたいな、素敵なニュースをご紹介します!
「Kotlin(コトリン)」と「Spring Framework(スプリング フレームワーク)」、人気者同士が手を組んだ話!
今回ご紹介するのは、「Kotlin(コトリン)」というプログラミング言語と、「Spring Framework(スプリング フレームワーク)」という、プログラムを作るための土台(骨組み)が、もっともっと密接に協力し合うことになった!というニュースです。
なんだか難しそうな言葉が並んでいますよね?大丈夫です!一つずつ、簡単に解説していきますね。
そもそも「Kotlin(コトリン)」って何?
まずは「Kotlin(コトリン)」から。これは、プログラミング言語の一つで、例えるなら「コンピューターに命令を出すための言葉」みたいなものです。日本語や英語と同じように、たくさんのプログラミング言語がある中で、Kotlinは比較的新しい部類に入ります。
- 特徴としては、昔からある「Java(ジャバ)」という超有名な言語と、とっても仲良しだということ。Javaで作られたプログラムと、Kotlinで作られたプログラムは、一緒に使うことができるんです。
- そして、Kotlinは「もっとシンプルに、もっと安全に、もっと効率的に」プログラムを書けるように工夫されています。例えるなら、ちょっと前まではたくさん回り道をしないと目的地に着けなかった道が、Kotlinのおかげでまっすぐで、安全な近道ができた!みたいなイメージです。
もともとは、「JetBrains(ジェットブレインズ)」という、プログラマーさん向けの便利な道具(「統合開発環境」という開発ツール)を作っている会社が開発しました。
じゃあ「Spring Framework(スプリング フレームワーク)」って何?
次に、「Spring Framework(スプリング フレームワーク)」です。これは、プログラムを作るための「骨組み」や「土台」のようなものだと考えてください。
- 例えるなら、家を建てるときに、壁や屋根を作る前に、まず柱や梁といった基本的な構造を組み立てますよね?Spring Frameworkは、この「柱や梁」の部分を先に用意してくれるんです。
- これがあると、プログラマーは一から全部プログラムの構造を作る手間が省けて、もっと効率よく、頑丈なプログラムを作ることができます。特に、銀行のシステムや、大きな会社で使うような大規模なシステム(「エンタープライズアプリケーション」)を作るのに得意なんですよ。
なぜこの人気者二人が「仲良くなった」の?~今回の提携の目的~
今回のニュースは、Kotlinを作ったJetBrainsという会社と、Spring Frameworkを支えるチームが「もっと協力して、Kotlinをもっと便利にしていこう!」と決めた、というお話なんです。
主な目的は、Kotlinを「サーバーサイドの仕事」、つまりインターネットの向こう側にある「サーバー」と呼ばれるコンピューターで動くプログラムを作る上で、「最高に良い選択肢」にすること。私たちが使っているウェブサイトやスマートフォンのアプリの裏側で動いているプログラムの多くは、この「サーバー」で動いています。
これまではそれぞれ独立して頑張っていましたが、今回は「よし、公式に手を組んで、もっと素晴らしいものを作ろう!」ということになったわけです。例えるなら、人気バンドのボーカルと、大ヒット作曲家が「一緒に曲を作ろう!」と発表したような、そんなエキサイティングなニュースなんですよ!
「仲良し」になったら、どんな「良いこと」があるの?~具体的な協力内容~
では、この協力によって、どんな良いことがあるのでしょうか?いくつかポイントをご紹介しますね!
- もっと安全にプログラムが書けるようになる(null safetyの強化)
プログラムを作っていると、たまに「何もない」という意味の「null(ナル)」という状態が原因でエラーが起きてしまうことがあります。例えるなら、冷蔵庫に何もないのに「牛乳を取ってきて」と命令するとエラーになるようなものです。今回の協力で、Kotlinが持っている「null safety(ナルセーフティ)」という「何もない」状態からエラーを防ぐ仕組みが、Spring Frameworkの中でもっとしっかり働くようになります。これによって、「型安全(タイプセーフティ)」といって、間違った種類のデータが使われるのを防ぐ仕組みも強くなり、より安定したプログラムが作れるようになるんです!
- もっとスマートなプログラムの作り方ができる(Bean Registration DSL)
Spring Frameworkでは、プログラムの部品を「Bean(ビーン)」と呼び、これを「登録」することで使えるようにします。今回の協力では、このBeanの登録を、もっと簡潔に、わかりやすく書けるようにする新しい方法「Bean Registration DSL(ビーン登録DSL)」が提供されます。「DSL(ドメイン固有言語)」というのは、特定の目的のために作られた、普通の言葉に近い記述方法のこと。例えるなら、特定の料理を作るためだけの専用のレシピ本のようなものです。これで、プログラムの書き方がもっとシンプルになり、まるで「レシピの要点だけを分かりやすくまとめたメモ」のように、サッと書けるようになります。「lambda(ラムダ)」という、ちょっとした処理を簡単に書くための便利な書き方も、より使いやすくなるんですよ。
- KotlinでSpringを学びやすくなる
Spring Frameworkを学ぶための公式の教材が、Kotlinで書かれたものも提供されるようになります。これは、これからSpringとKotlinを一緒に学ぼうとする人たちにとっては、最高のニュースですね!
Kotlinはもともと、「named and default parameters(名前付き引数とデフォルト引数)」という機能のおかげで、「builder pattern(ビルダーパターン)」という、複雑なものを作る時に手順を段階的に組み立てていく方法や、「overload-related boilerplate(オーバーロード関連の定型コード)」という、何度も書かされる面倒な「お決まりのコード」を減らせる、という強みを持っていました。
また、「extension functions(拡張関数)」(既存の機能に後から新しい機能を付け足すこと)や、「top-level functions(トップレベル関数)」(特定の部品の中に入れなくても使える機能)のおかげで、プログラムを部品ごとに分けて、整理して作りやすいというメリットもあります。
Springチームも、これまでKotlinの「coroutines(コルーチン)」(複数の仕事を効率よく同時にこなす仕組み)など、便利な機能を積極的にサポートしてきました。すでに、Springのプログラマーさんの約3割がKotlinを使っているというデータもあるそうですよ!
ジョンから一言
今回のKotlinとSpring Frameworkの提携は、プログラミングの世界が常に進化し、より良いものへと変化していることを示しています。AI技術の進化も素晴らしいですが、そのAIを動かす土台となるプログラミング言語やフレームワークの進化も、私たちの未来を形作る上で欠かせない要素です。
これからも、このような技術の「裏側」にある面白い動きも、皆さんにご紹介していけたら嬉しいです。AIの進化を支える技術の進歩にも、ぜひ注目してみてくださいね!
この記事は、以下の元記事をもとに筆者の視点でまとめたものです:
Kotlin cozies up to Spring Framework