Kotlin Multiplatform、未知との遭遇

Kotlin Multiplatformとともに、ReactとSpringで一つの完全なウェブアプリケーションを作成します。この過程でKotlin Multiplatformプロジェクトを理解し、さらにはクライアントとサーバーの共有ロジックの作成、Kotlin/JSベースのReactおよびKotlin/JVMベースのSpringウェブプログラミングを経験することができます!

難易度 中級以上

受講期間 無制限

Kotlin
Kotlin
Kotlin
Kotlin
Thumbnail

学習した受講者のレビュー

4.8

5.0

Edwards

100% 受講後に作成

コトリンをモバイルアプリプログラミング以外の方面で(windows application)で書けないかと考えていましたが、JavaScriptと連携して使用できる方法をご紹介いただき、かなり多くのお役に立ちました。

5.0

Jang Jaehoon

30% 受講後に作成

良い講義をありがとうございます!

5.0

쿠카이든

30% 受講後に作成

良い講義をありがとうございます!

受講後に得られること

  • Kotlin Multiplatformの原理や動作方法、限界について調べます。

  • KotlinマルチプラットフォームとReact、そしてSpringを使用してフルスタックWebアプリケーションを開発してみます。

INFCON 2022のハンズオンセッションを
講義で体験しましょう! 🥰

Kotlinマルチプラットフォーム、未知との遭遇 ✨

Kotlin(コトリン)は、安全性、簡潔性、相互運用性を強調するマルチパラダイム・マルチプラットフォームプログラミング言語で、2016年2月に初めて公開されました。KotlinはJavaに代わるより良い選択肢を提供することを目的に始まりましたが、その間に大きく成長し、Android、デスクトップ、サーバーサイドソリューションなど、様々な開発分野で活用されています。

先ほどお伝えしたように、Kotlinはマルチプラットフォームをサポートするプログラミング言語です。KotlinはすでにJVM(Java Virtual Machine)をサポートするプラットフォームで十分に動作しており、JVMをサポートしていないプラットフォームではKotlin Nativeを使用できます。Kotlin Nativeは、KotlinをiOSやMacOS、そしてWindowsおよびLinuxで実行されるバイナリへとコンパイルします。ウェブではJavaScriptおよびHTMLへとコンパイルします。これを利用して、Kotlinコードを共有する単一のコードベースで、モバイルからウェブ、デスクトップ、サーバーに至るまで、マルチプラットフォームアプリケーションを作成することができます。

本講義では、Kotlinマルチプラットフォームと共にReactとSpringで一つの完全なウェブアプリケーションを作成します。受講者はKotlinマルチプラットフォームプロジェクトを理解し、さらにはクライアントとサーバーの共有ロジックの作成、Kotlin/JSベースのReactおよびKotlin/JVMベースのSpringウェブプログラミングを軽く体験することができます。

講義を通じて皆さんと一緒に作っていくアプリケーションは、ユーザーがタスクを登録または変更し、完了や削除ができるToDo管理アプリケーションです。このアプリケーションの核心的なドメインロジックは、ToDoというモデルを定義し、そのモデルをリポジトリに保存したり取り出したりする行為だと言えます。そして、ブラウザを通じてドメインロジックを操作するためのユーザーインターフェースと、データを処理するためのWebおよびデータベースサーバーのロジックを作成する必要があります。

ただし、前述のすべての要件を満たすコードを最初から最後まで直接作成しようとすると膨大な時間が必要になるため、講義では事前に作成しておいたテンプレートプロジェクトのコードスニペットを完成させていく方式で進めます。

📢 受講の際にご参考ください!

  • 本講義は、INFCON 2022で開催されたハンズオンセッションである<Kotlinマルチプラットフォーム、未知との遭遇>を、一般的な講義形式で制作したものであることをお知らせいたします。
  • この講義は、Kotlin言語の特徴と文法を理解し使用することができ、ウェブ技術に関する理解がある方を対象としています。作成するコードの意図や動作過程については説明しますが、ReactやSpringについては解説いたしません。

Kotlin Multiplatform 🤓

Kotlinはマルチプラットフォームをサポートする言語であり、JVMベースのServer-sideやAndroidだけでなく、JavaScriptエンジンがあるブラウザやNode.js、そしてiOS、Linux、Windowsなど様々なNativeプラットフォームでも使用できます。これを利用して、Kotlinコードを共有する単一のコードベースで、モバイルからウェブ、デスクトップ、サーバーに至るまで、マルチプラットフォームアプリケーションを作成することができます。

KotlinとKotlinマルチプラットフォームに関する詳細については、こちらでご確認いただけます。


学習環境 🖥️

学習過程で使用する言語およびフレームワーク、ライブラリとツールは以下の通りです。

  • Kotlin 1.6.x (with Java 11)
  • Share common-code
    • Common Kotlin
    • Kotlin Coroutines
    • Kotlin Serialization
    • Kotlin Logging
    • Kotlin Test
  • Client (Front-end)
    • Kotlin/JS
    • React 18.0.x
    • MUI 5.6.x
    • Emotion 11.9.x
    • Ktor 2.0.x
  • Server (Back-end)
    • Kotlin/JVM
    • Spring WebFlux 5.2.x
    • Spring Data R2DBC 1.4.x
    • Spring Boot 2.6.x
    • Kotest 5.0.x (with JUnit 5)

講師紹介 ✒️

- スプリングランナー(SpringRunner)を紹介します。

SpringRunnerは、スプリングベースのアプリケーション開発に必要な知識と経験を積み重ねられるよう支援するトレーニングチームです。

スプリングベースのアプリケーションを開発するためには、思った以上に多くの学習と努力が必要です。書籍やオンライン教育などを通じて、スプリングの技術的な側面を学習することはできます。しかし、このように学習を通じて積み上げた知識だけでアプリケーションを開発しようとすると、途方に暮れてしまうことがあります。スプリングが提供する機能の使い方は学びましたが、スプリングベースのアプリケーション開発の経験を持っていないためです。

参加者がスプリングフレームワーク(Spring Framework)、スプリングブート(Spring Boot)などのスプリングエコシステムにおいて、スプリングの動作原理や使い方を学び、さらに一歩進んで実務に適用できるスプリングベースのアプリケーションプログラミングを習得できるよう、スプリングランナー(SpringRunner)がお手伝いします。

スプリングランナー(SpringRunner)は、「スプリング(Spring)+ガイドランナー(Guide Runner)」を組み合わせて作られた名前です。


こんな方に
おすすめです

学習対象は
誰でしょう?

  • Kotlin Multiplatformが気になる方へ

  • KotlinでReactアプリケーションを作る方法が気になる方へ

  • KotlinでSpring Webアプリケーションを作る方法が気になる方へ

  • クリーンアーキテクチャで作成されたウェブアプリケーションの構造が気になる方へ

前提知識、
必要でしょうか?

  • Kotlin(コトリン)言語の特徴と文法を理解し、使いこなせなければなりません!

  • ウェブ技術(HTML、CSS、JavaScript)に関する基礎知識と理解が必要です。

  • 統合開発環境(IDE)であるIntelliJ IDEAを使用できる必要があります。

こんにちは
jykmww1219です。

1,503

受講生

51

受講レビュー

4.9

講座評価

3

講座

JYK management

“Jazz Your Knowledge 🆙

「あなたの知識をもっと楽しく、もっと魅力的にせよ」

—— 「あなたのアイデアが世界を変えることができます。私たちはその過程を共にします。」

「あなたのアイデアが世界を変えることができます。私たちはその過程を共にします。」

もっと見る

共同知識共有者

カリキュラム

全体

10件 ∙ (2時間 14分)

講座掲載日: 
最終更新日: 

受講レビュー

全体

26件

4.8

26件の受講レビュー

  • nid님의 프로필 이미지
    nid

    受講レビュー 1

    平均評価 5.0

    5

    100% 受講後に作成

    分かりやすく説明してくださったので、理解するのに 도움이 되었습니다. ありがとうございます。

    • jjhgwx님의 프로필 이미지
      jjhgwx

      受講レビュー 827

      平均評価 4.9

      5

      30% 受講後に作成

      良い講義をありがとうございます!

      • edwards님의 프로필 이미지
        edwards

        受講レビュー 18

        平均評価 5.0

        5

        100% 受講後に作成

        コトリンをモバイルアプリプログラミング以外の方面で(windows application)で書けないかと考えていましたが、JavaScriptと連携して使用できる方法をご紹介いただき、かなり多くのお役に立ちました。

        • こんにちは。講義を聞いてから受講評をより見ると同じ悩みをしているのではないかと思って返事を残してみます。現在どのように進行がなされているのか、進行状況を考えてみませんか?

      • kukaeden님의 프로필 이미지
        kukaeden

        受講レビュー 518

        平均評価 5.0

        5

        30% 受講後に作成

        良い講義をありがとうございます!

        • 424sichoi3667님의 프로필 이미지
          424sichoi3667

          受講レビュー 1

          平均評価 5.0

          修正済み

          5

          100% 受講後に作成

          講義の構成が充実していて、たくさん学んで帰ります。これが無料の講義だなんて驚きです。iOSとAndroidプラットフォームの構成方法も含まれていれば、もっと良かったと思います。

          似ている講座

          同じ分野の他の講座を見てみましょう!

          無料