강의

멘토링

로드맵

BEST
Programming

/

Database

銀行サーバープロジェクト実習を通じて学ぶKotlinマスタークラス

この講義では、仮想決済サーバーを通じてKotlinをマスターできる講義です。

  • Hong
실습 중심
Kotlin
mysql
데이터베이스
자격증
시험
MySQL
MongoDB
Kafka
Redis

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

こんなことが学べます

  • コトリン

  • MySQL

  • MongoDB

  • OAuth2

  • カフカ

  • Redis

  • コンカレンシー・コントロール

銀行サーバープロジェクトの実践を通して学ぶコトリン

単にコートリン文法を学ぶことを超えて、銀行サーバーに対してサンプルプロジェクトを一緒に作成し、実務経験を積む準備ができましたか?


この講義では、コトリンの簡潔で表現力の高い文法で効率的なコード作成法を習得し、SpringのAOP限界超えるコトリンだけの解決策を発見し、スケーラブルなログ処理方法を学習します。


金融ドメインで発生する問題は多様で複雑ですが、すべての内容を一つの講義に入れることはできませんが、金融ドメイン進出を希望したりコートリンを深化学習したい方に実務で本当に悩み、向き合う問題を一緒に解決していく機会を提供します。

理論だけで終わらず、実際のサービスにすぐに適用可能な技術を皆さんのものにしてみてください。

Kotlin なぜ学ばなければならない..?

Springと100%の混同になると言います。

📚簡潔で直感的な文法


Kotlinは簡潔で直感的な文法を提供するため、開発者はより少ないコードでより多くの作業を行うことができます。

📚高い生産性と安全性


Kotlinはヌルの安定性をネイティブにサポートし、ヌルポインタ例外(NullPointerException)を減らすことができます。

📚高い互換性


Kotlinは100%Javaと互換性があるため、既存のJavaプロジェクトに簡単に統合できます。これは、Java開発者がKotlinを学ぶのに大きな障壁がなく、既存のコードを維持しながら新しいKotlin機能を使用できることを意味します。

講義を聞いたら、このような結果を作ることができます。

コトリン文法を利用したAPIの設定

関数型プログラミングを使用するコトリンでは、文法をどのように書くのでしょうか?

Spring AOPを克服するためのコトリンの使い方

KotlinはSpringを完全にサポートしていますが、SpringでのAOPの制限は明らかに存在します。

Kotlinでは、これらの制限を克服する方法を学びます。

並行処理のためのロック管理

さまざまなインスタンスがある環境では、クラスタ間で並行処理を行うための作業が必要です。

Redis、MySQL、MongoDBを利用したサーバー構成

サーバーを構成するには、単純なDBだけが存在するわけではありません。

OAuth2認証処理によるAPIセキュリティ

セキュリティは、サーバー構成にとって最も重要な要因です。

このレッスンでは、callBack処理を通じてスケーラブルなAuth処理について説明します。

Kafkaを活用したメッセージキューの実装

MSAアーキテクチャ、大きなドメインサービスなら、Kafkaは選択ではなく必須です。

実際のKafka活用ガイドを一緒に提供します。

講義で扱う技術スタック

MySQL

関連するデータを扱うために、リレーショナルデータベースであるMySQLが使用されます。

JPAを構成し、Entityを作成し、データ間の関連付けを指定するコード方式によって、サービス開発に柔軟な構造をもたらすことになります。

MongoDB

PolyGroat Persistance戦略を導入し、着信トラフィックの種類に応じて履歴データを管理するためのデータベースとして活用します。

これらの概念を学び、考慮することが何であるかについて取り上げています。

Redis, Redisson

キャッシュツールを導入し、データベースに対するCPU最適化およびキャッシュ処理として活用されており、さらに同時性制御用のLockを導入して適用しています。

Kafka

メッセージベースのアーキテクチャを実装することになります。ProducerとConsumerを構成し、一緒にプロジェクトを構成していくことができ、Consumerの拡張性のためのコード実装についても扱うことになります。

Spring Security

Spring Securityを活用してToken検証を進行し、これを通じてリクエストに対するフィルタリングを先制的に適用することになります。このような構造を通じてリソース効率性を確保する方式としてサーバーを構成することになります。

JWT

OAuth2認証後、該当データを基盤としてJWTトークンを管理する方法について扱います。その後、JWTを検証する過程をSpring Securityと連動して、許可されたユーザーに対するリクエストのみを処理する方法について扱います。

大切にしている4つの価値観

1. 講義は人間的でなければならない。

専門性が劣って見えるかもしれませんが、見せやすい講義は講義ではないと思います。デバッグを進める時間もまた講義の一部です。

2. 実務に特化すべきである

開発は口で言うものではありません。実際に実装してみて、動作する過程を一緒に体験していただけます。

  • 企画者の皆さん...助けてください..

3. 受講生の皆さんの役に立つものでなければならない。

私が実務で適用して効果を得た概念を盛り込もうと思いました。この過程を通じて実務を間接的に体験していただいたり、実務者であれば実務環境でより優れたパフォーマンスを発揮していただけます。

4. 講義が終わりではない。

講義を進められる際には、質疑応答をたくさん残していただければと思います。この講義は私一人だけの知識によって作られたものではありません。様々な大企業の開発者の方々のご意見も集約されています。

  • 講義完成にご協力いただいた方々の簡単な経歴は以下の通りです。


private val supported_one = "カカオペイ プラットフォーム バックエンド開発者"

private val supported_two = "トス証券 APIサーバー開発者"

private val supported_three = "秘密にしてほしいというユニコーンスタートアップ サーバー開発者"

講義構成図

セクション2

実務を経験しながら扱ったmodel管理について簡潔に扱っています。

googleの設計パターンを基盤として、どのような観点でtypeを扱うのがベストなのかについての個人的な見解が含まれています。

セクション3

OAuth2について拡張性のあるコードを実装するためのコード作業を進めることになります。

OAuth2はプラットフォームの特徴に応じて継続的に追加される可能性がある機能です。この機能をインターフェース処理を通じてどのように拡張性のあるコードを実装できるかをお教えします。

セクション4

この節ではKotlinを使用してSpringでのAOPの欠点を克服する方法について学習します。

Spring AOPは皆さんが知らないうちに多く適用されて使用されている概念です。関係型DBに対するデータ永続性保証に使用されることもあり、追加的にPointCutを活用したログ処理でも活用されています。

しかし、いくつかの欠点も存在する残念な友達です。このセクションでは、SpringのAOPをKotlinでより柔軟に使用する方法について扱っています。

セクション 5

OAuth2に関する機能実装とAOPまで適用を完了したAPIを作業することになります。

この過程を通じて、皆さんが私と一緒に初めて実装し作成したコードが正しく動作するかを確認し、この過程を通じてデバッグする時間も一緒に持つことになります。

セクション 6

B2CおよびB2Bに適した機能作業のためのコード作業が進行されます。

入ってくるトラフィックに応じて特定のService Logicを実行しながら、どのように機能を実装するかについて一緒に実装していきます。

@Service, @RestControllerなどを使用してビジネスロジックを一緒に作成することになります。

セクション7

Redisは実務において非常に重要な要素です。同時性を制御するために使用することも可能で、データに対するキャッシュ処理を通じてDBに対するCPU最適化のために使用されます。

このセクションではRedisRedissonを活用できる様々なメソッドを作業することになります。

セクション8

本格的に先ほど作成したRedis関連メソッドを活用して、同時性制御に関するロジックを作成することになります。

同時多発的に入ってくるトラフィックを順次処理するためのDistributed Lockを一緒に作成していきながら、データ永続性保証のためのロジックを一緒に作成する時間になる予定です。

セクション9、10

この時間にはKafkaについて直接コードを実装していただきます。KafkaのProducerを活用してAPI上で発生するイベント変化を処理し、サービス間の疎結合とポリグロットパーシステンス戦略を活用するコードとして活用していただきます。


MongoDBに関するコードを実装し、それに応じたサービスロジックを実装することになります。また、メモリ活用を通じてDBの使用量を削減するロジックについて実装し、扱うことになります。

セクション 11

Spring Securityを活用してAPIに入ってくるリクエストを事前に処理するロジックを担当することになります。

この過程で管理すべきポイントが増えるという短所がありますが、それに伴って追加的なリソースを最適化できる長所について一緒に実装します。

セクション12、13

新しいモジュールを生成してKafkaのProducerを処理し、MongoDBRedisと通信するロジックを実装することになり、それに応じてトラフィックタイプに適したデータを生成する過程を扱うことになります。この時間を通して皆さんは疎結合とは何か、メッセージ処理方式とは何かについて学習することになります。

受講前の注意事項

練習環境

  • Macos M3を使って撮影しました。

  • Dockerをデフォルトで使用します。

  • java --version : 17.0.12 2024-07-16 LTS

  • JetBrainシリーズのIDEを使用します。

  • Gradleを使用してビルドします。

  • インフラについては扱いません。

一緒に見ればいい講義!

タイムカプセルプロジェクトの実践を通して学ぶコトリンマスタークラス

  • JetBrainsの最大のオープンソースであるKtorを通じてWebサービスを構築するKotlinマスタークラス講義です。この講義を通じて、Kotlinの基本的な文法と本番暗号化方式について学習します。

定石に近い基本に忠実なコルーチンマスタークラス

  • コルーチン公式文書に基づいて作成は大企業の開発者のコ​​ルーチンマスタークラス!さまざまな例に基づいて、実務開発者の意見が入った講義にすぐに会いましょう!

こんな方に
おすすめです

学習対象は
誰でしょう?

  • コトリンが初めての方

  • プログラミングについて学習したい方

  • 並行性制御が気になる方

  • APIサーバーに関してご興味をお持ちの方

  • 実務で使うツールが気になる方

こんにちは
です。

3,137

受講生

212

受講レビュー

85

回答

4.6

講座評価

16

講座

자기 소개

집에서 빈둥대다 개발에 흥미를 느껴 개발 공부를 시작하였고 현재는 판교에서 플랫폼 서버 개발을 담당하여 진행하고 있습니다.

 

제가 공부를 했던 방법과 실무에서 접하실 수 있는 여러가지 문제점들과 해결책을 여러분들에게 제공하고 싶어 지식공유자 활동을 이어나가고 있습니다.

 

강의는 오로지 저만의 지식을 통해 만들어지지 않습니다. 모든 강의는 함께하시는 분들이 계십니다.

 

지식공유자 경력

[前] 샌드박스 블록체인 개발자

[前] 넥슨 자회사 백엔드 개발자

[] 판교에서 고여가는 서버 개발자

 

인터뷰 이력

カリキュラム

全体

50件 ∙ (9時間 2分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

18件

4.8

18件の受講レビュー

  • tttos님의 프로필 이미지
    tttos

    受講レビュー 7

    平均評価 5.0

    5

    30% 受講後に作成

    I'm not sure if I was helpful in preparing the lecture... I'm a developer working at Toss, and I answered a few questions from the lecturer and had some interaction. You said you were filming the lecture... and you've really opened it up like this 😆😆😆 It seems like a fun topic. Thanks to you, I'm having a good experience. I hope it will be helpful to everyone who listens to the lecture!

    • jhong
      知識共有者

      Thank you again for visiting! I learned a lot, and I wanted to share what I learned with others, so I prepared this. 😊😊 Thank you always!! I'll be back to bother you again. 😆😆😆 Please give it a lot of attention!

  • ddddve님의 프로필 이미지
    ddddve

    受講レビュー 7

    平均評価 5.0

    5

    30% 受講後に作成

    Hi, I'm Choi, a server developer at Kakao. Someone suddenly asked me for advice on filming a lecture, and after a few things here and there, I ended up giving some help. It's amazing to see the lecture actually being released like this 😊😊 I think I can see that the content I told him was incorporated as much as possible, which feels new to me. I hope that through this lecture, you all will fall in love with the charm of Kotlin.

    • jhong
      知識共有者

      😆😆😆 I'm always sorry for bothering you by following you around. Thanks to you, I was able to prepare a good lecture. Thank you always! ❤️

  • dfdssdsd님의 프로필 이미지
    dfdssdsd

    受講レビュー 22

    平均評価 5.0

    5

    30% 受講後に作成

    The GOAT. Personally, I think it's the top Kotlin course on Inflearn.

    • jhong
      知識共有者

      Hello soap, thank you for your good review!! I'll come back with even better lectures in the future! Thank you!

  • sdl1355126님의 프로필 이미지
    sdl1355126

    受講レビュー 12

    平均評価 5.0

    5

    30% 受講後に作成

    Although I haven't finished all the lectures, even based on the current progress, I think it's a good lecture that covers and teaches most functionalities needed for project construction, starting from the limitations of AOP. I started listening, thinking it would be easy, but the more I listen, the more I feel it's a substantive lecture from which I can learn even more.

    • jhong
      知識共有者

      Hello Keny, thank you for leaving a good review! I will prepare more substantial lectures in the future and see you again! Have a great day!

  • de님의 프로필 이미지
    de

    受講レビュー 10

    平均評価 5.0

    5

    60% 受講後に作成

    Thanks to you, I was able to study comfortably. Thank you.

    • jhong
      知識共有者

      Thank you for leaving a great review. I hope this lecture helps you fall even deeper into the charm of Kotlin!

期間限定セール

¥64

24%

¥12,840

Hongの他の講座

知識共有者の他の講座を見てみましょう!

似ている講座

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