inflearn logo

Kotlin Multiplatform, Encounter with the Unknown

We will build a complete web application using React and Spring along with Kotlin Multiplatform. Through this process, you will understand Kotlin Multiplatform projects and gain experience in writing shared logic between client and server, Kotlin/JS-based React, and Kotlin/JVM-based Spring web programming!

(4.8) 26 reviews

1,198 learners

Level Intermediate

Course period Unlimited

Kotlin
Kotlin
Kotlin
Kotlin
Thumbnail

Reviews from Early Learners

4.8

5.0

Edwards

100% enrolled

I was thinking about how to use Kotlin in a way other than mobile app programming (Windows applications), so your introduction to using it in conjunction with JavaScript was very helpful.

5.0

Jang Jaehoon

30% enrolled

Thank you for the great lecture!

5.0

쿠카이든

30% enrolled

Thank you for the great lecture!

What you will gain after the course

  • Learn about the principles, operating methods, and limitations of Kotlin Multiplatform.

  • Develop a full-stack web application using Kotlin Multiplatform, React, and Spring.

Experience the hands-on session from INFCON 2022
as a lecture! 🥰

Kotlin Multiplatform, Encounter with the Unknown ✨

Kotlin was first released in February 2016 as a multi-paradigm, multi-platform programming language that emphasizes safety, conciseness, and interoperability. Although it started with the goal of providing a better alternative to Java, it has since grown significantly and is now used in various development fields, including Android, desktop, and server-side solutions.

As mentioned earlier, Kotlin is a programming language that supports multi-platform development. Kotlin already works well on platforms that support the JVM (Java Virtual Machine), and for platforms that do not support the JVM, you can use Kotlin/Native. Kotlin/Native compiles Kotlin into binaries that run on iOS, macOS, Windows, and Linux. For the web, it compiles into JavaScript and HTML. Using this, you can write multi-platform applications—ranging from mobile to web, desktop, and server—with a single codebase that shares Kotlin code.

In this course, we will build a complete web application using Kotlin Multiplatform along with React and Spring. Participants will understand Kotlin Multiplatform projects and further gain light experience in writing shared logic between client and server, as well as Kotlin/JS-based React and Kotlin/JVM-based Spring web programming.

The application we will build together through this course is a To-Do Management Application where users can register, modify, complete, or delete tasks. The core domain logic of this application involves defining a model called "To-Do" and the actions of saving or retrieving that model from a repository. Additionally, we need to create a user interface to manipulate the domain logic via a browser, as well as web and database server logic to process the data.

However, since writing code from scratch that satisfies all the aforementioned requirements would take an enormous amount of time, this course will proceed by completing code snippets within a pre-written template project.

📢 Please take note before taking the course!

  • Please be advised that this course was produced in a general lecture format based on <Kotlin Multiplatform, Encounter with the Unknown>, a hands-on session held at INFCON 2022.
  • This course is intended for those who understand and can use the features and syntax of the Kotlin language and have an understanding of web technologies. While I will explain the intent and operation of the code we write, I will not be teaching React or Spring.

Kotlin Multiplatform 🤓

Kotlin is a language that supports multiplatform, allowing it to be used not only for JVM-based server-side and Android development but also in browsers with JavaScript engines, Node.js, and various native platforms such as iOS, Linux, and Windows. Using this, you can write multiplatform applications ranging from mobile to web, desktop, and server with a single codebase that shares Kotlin code.

If you are curious about more details regarding Kotlin and Kotlin Multiplatform, you can find them here.


Learning Environment 🖥️

The languages, frameworks, libraries, and tools used in the learning process are as follows.

  • 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)

Instructor Introduction ✒️

- Introducing SpringRunner.

SpringRunner is a training team that helps you build the knowledge and experience needed to develop Spring-based applications.

Developing Spring-based applications requires more learning and effort than one might think. While you can learn the technical aspects of Spring through books and online courses, trying to develop an application using only the knowledge gained this way often leads to feeling overwhelmed. This is because although you have learned how to use the features Spring provides, you lack the experience of actually developing a Spring-based application.

SpringRunner helps participants learn the principles and usage of the Spring ecosystem, including Spring Framework and Spring Boot, and further enables them to master Spring-based application programming that can be applied in practice.

SpringRunner is a name created by combining 'Spring' and 'Guide Runner.'


Recommended for
these people

Who is this course right for?

  • For those who are curious about Kotlin Multiplatform

  • For those who are curious about how to create React applications with Kotlin

  • Those who are curious about how to create a Spring web application with Kotlin

  • Those who are curious about the structure of a web application built with Clean Architecture

Need to know before starting?

  • You must be able to understand and use the features and syntax of the Kotlin language!

  • Basic knowledge and understanding of web technologies (HTML, CSS, JavaScript) are required.

  • You must be able to use the Integrated Development Environment (IDE) IntelliJ IDEA.

Hello
This is jykmww1219

1,503

Learners

51

Reviews

4.9

Rating

3

Courses

JYK management

“Jazz Your Knowledge 🆙

“Make your knowledge more exciting and more attractive”

——

"Your ideas can change the world. We are with you every step of the way."

More

Co-instructor

Curriculum

All

10 lectures ∙ (2hr 14min)

Published: 
Last updated: 

Reviews

All

26 reviews

4.8

26 reviews

  • nid님의 프로필 이미지
    nid

    Reviews 1

    Average Rating 5.0

    5

    100% enrolled

    It was easy to understand because you explained it well. Thank you.

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

      Reviews 1

      Average Rating 5.0

      Edited

      5

      100% enrolled

      I learned a lot from the well-structured lecture. It's amazing that this is a free lecture. It would have been even better if it had included how to configure iOS and Android platforms.

      • kukaeden님의 프로필 이미지
        kukaeden

        Reviews 518

        Average Rating 5.0

        5

        30% enrolled

        Thank you for the great lecture!

        • jjhgwx님의 프로필 이미지
          jjhgwx

          Reviews 827

          Average Rating 4.9

          5

          30% enrolled

          Thank you for the great lecture!

          • edwards님의 프로필 이미지
            edwards

            Reviews 18

            Average Rating 5.0

            5

            100% enrolled

            I was thinking about how to use Kotlin in a way other than mobile app programming (Windows applications), so your introduction to using it in conjunction with JavaScript was very helpful.

            • Hello. After taking the class and reading the course reviews, I thought I might be having the same concerns, so I am leaving a reply. Can I ask you about the current progress?

          Similar courses

          Explore other courses in the same field!

          Free