mcpField
K
kotlin-specialist

kotlin-specialist

github.com/404kidwiz開発104 回インストール
リポジトリ

kotlin-specialist について

Kotlin 開発者向けの専門スキルで、Kotlin 2.0、Kotlin Multiplatform、Coroutines、Ktor を扱います。クロスプラットフォームアプリ、Android UI、バックエンド、Java の移行に対応します。

主な機能

  1. 01Kotlin Multiplatform によるビジネスロジック共有
  2. 02Coroutines と Flow の活用
  3. 03Jetpack Compose による Android 開発
  4. 04Ktor による REST API 構築
  5. 05Java コードの Kotlin 移行

活用シーン

  1. 01iOS と Android の共有モジュール構築
  2. 02非同期・リアクティブ処理の実装
  3. 03Ktor バックエンドサービスの開発
  4. 04Java コードベースの Kotlin 移行

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/404kidwiz/claude-supercode-skills --skill kotlin-specialist

インストール後、Claude Code で/kotlin-specialistを入力して読み込まれたか確認します。

同梱ファイルEXAMPLES.mdREFERENCE.md

詳細

Kotlin スペシャリスト

目的

Kotlin 2.0、Kotlin Multiplatform Mobile(KMP)、Coroutines、Ktor を専門とする、Kotlin 開発の専門知識を提供します。iOS/Android 間でビジネスロジックを共有するモダンなクロスプラットフォームアプリケーションと、スケーラブルなバックエンドサービスを構築します。

使用する場面

  • ビジネスロジックを共有するクロスプラットフォームのモバイルアプリを構築する
  • Ktor フレームワークでバックエンドサービスを開発する
  • Coroutines と Flow でリアクティブプログラミングを実装する
  • Jetpack Compose でモダンな Android 開発を行う
  • Kotlin 2.0 の機能(K2 コンパイラー、context receivers)を使用する
  • Java のコードベースを Kotlin に移行する

クイックスタート

呼び出す場面
  • iOS/Android 向けの KMP 共有モジュールを構築する
  • 非同期処理に Coroutines/Flow を実装する
  • Ktor の REST API または WebSocket サーバーを作成する
  • Jetpack Compose で Android 開発を行う
  • Java から Kotlin に移行する
呼び出さない場面
  • iOS 専用の開発(swift-expert を使用)
  • Flutter/React Native アプリ(mobile-developer を使用)
  • Spring Boot バックエンド(java-architect を使用)
  • JavaScript/TypeScript 専用の開発(javascript-pro を使用)

主な機能

Kotlin Multiplatform
  • iOS/Android 向けの共有ビジネスロジックを実装する
  • KMP の Gradle プラグインとコンパイラー設定を構成する
  • プラットフォーム固有の実装(expect/actual)を管理する
  • クロスプラットフォームのライブラリと SDK を構築する
Coroutines と Flow
  • Coroutines で構造化された並行処理を実装する
  • Flow(StateFlow、SharedFlow)でリアクティブストリームを構築する
  • バックプレッシャーとキャンセルを処理する
  • コルーチンの実行とパフォーマンスをデバッグする
Android 開発
  • Jetpack Compose で UI を構築する
  • Architecture Components(ViewModel、Room)を実装する
  • Hilt/Koin で依存性注入を管理する
  • Android アプリのパフォーマンスを最適化する
バックエンド開発
  • Ktor フレームワークで REST API を作成する
  • WebSocket 接続を実装する
  • Exposed でデータベースアクセスを管理する
  • Ktor アプリケーションをクラウドプラットフォームにデプロイする

判断の指針

Kotlin Multiplatform(KMP)を選ぶ場面
Need mobile app for iOS + Android?
│
├─ YES → Shared business logic needed?
│        │
│        ├─ YES → Team has Kotlin experience?
│        │        │
│        │        ├─ YES → **KMP + Coroutines** ✓
│        │        │        (40-80% code sharing)
│        │        │
│        │        └─ NO → Flutter/React Native experience?
│        │                 │
│        │                 ├─ YES → Use that framework
│        │                 │
│        │                 └─ NO → **KMP** ✓
│        │                          (learn once, best native performance)
│        │
│        └─ NO → Native experience on both?
│                 │
│                 ├─ YES → **Native iOS + Android** ✓
│                 │
│                 └─ NO → **KMP** ✓
│                          (single codebase for simple apps)
│
└─ NO → Backend service needed?
         └─ YES → See "Backend Framework Decision" below
バックエンドフレームワークの選択
Building backend service?
│
├─ Microservice or standalone API?
│  │
│  ├─ MICROSERVICE → Spring Boot ecosystem needed?
│  │                 │
│  │                 ├─ YES → **Spring Boot** ✓ (use java-architect)
│  │                 │
│  │                 └─ NO → Performance critical?
│  │                          │
│  │                          ├─ YES → **Ktor** ✓
│  │                          │        (lightweight, async, 2-3x faster startup)
│  │                          │
│  │                          └─ NO → **Ktor** ✓
│  │                                   (simpler for Kotlin teams)
│  │
│  └─ STANDALONE API → Team experience?
│                      │
│                      ├─ Kotlin/Android → **Ktor** ✓
│                      ├─ Java/Spring → **Spring Boot** ✓
│                      └─ Node.js → **Node.js** ✓
Coroutines と代替手段の比較
機能CoroutinesRxJavaコールバックスレッド
学習曲線中程度急緩やか緩やか
可読性高い中程度低い低い
キャンセル組み込み手動手動手動
メモリーオーバーヘッド約1KB/コルーチン約10KB/ストリーム最小限約1MB/スレッド
Kotlin を優先はいいいえはいはい

推奨事項: 非同期処理のニーズの95%には Coroutines と Flow を使用してください。

Ktor と Spring Boot の比較
項目KtorSpring Boot
起動時間0.5~1秒3~8秒
メモリー使用量(アイドル時)30~50MB150~300MB
学習曲線緩やか(DSL ベース)中程度(アノテーション)
エコシステム小規模非常に大規模
最適な用途マイクロサービス、KMP バックエンドエンタープライズアプリ、モノリス

エスカレーションの判断基準

危険信号 → oracle にエスカレーション:

  • 10を超える機能モジュールを持つアプリの KMP アーキテクチャを設計する
  • スタートアップの MVP で KMP と Flutter のどちらを選ぶか判断する
  • レガシーな Android アプリ(Java + RxJava)を Kotlin + Coroutines に移行する
  • 複雑な分散トレーシングを伴う Ktor マイクロサービスを設計する
  • カスタムの Coroutine ディスパッチャーまたはコンテキスト要素を実装する
  • Flow パイプラインでパフォーマンスのボトルネックが発生している

連携パターン

mobile-developer:
  • 引き継ぎ:kotlin-specialist が KMP 共有モジュールを構築 → mobile-developer が React Native/Flutter に統合
  • 共同作業:両者が KMP プロジェクトで作業します。kotlin-specialist は共有コードを担当し、mobile-developer はプラットフォーム UI を担当します
swift-expert:
  • 引き継ぎ:kotlin-specialist が KMP iOS フレームワークを作成 → swift-expert が SwiftUI アプリで利用
  • ツール:Kotlin/Native Cocoapods 統合、Swift Package Manager
backend-developer:
  • 引き継ぎ:backend-developer が API コントラクトを定義 → kotlin-specialist が KMP で Ktor クライアントを実装
  • ツール:コントラクトファースト設計のための OpenAPI/Swagger
database-optimizer:
  • 引き継ぎ:kotlin-specialist が Exposed クエリを実装 → database-optimizer が N+1 問題をレビュー
  • ツール:Exposed ORM、Flyway マイグレーション
devops-engineer:
  • 引き継ぎ:kotlin-specialist が Ktor サービスを構築 → devops-engineer がコンテナ化してデプロイ
  • ツール:Ktor モニタリングプラグイン、Prometheus メトリクス、Docker マルチステージビルド
frontend-developer:
  • 引き継ぎ:kotlin-specialist が Ktor REST API を構築 → frontend-developer が React/Vue から利用
  • ツール:TypeScript クライアント用の OpenAPI コード生成、Ktor CORS 設定
graphql-architect:
  • 引き継ぎ:kotlin-specialist が Ktor GraphQL サーバーを実装 → graphql-architect がスキーマを設計
  • ツール:graphql-kotlin-server、クライアント用の Apollo Kotlin

追加リソース

  • 詳細な技術リファレンス:REFERENCE.mdを参照してください
  • コード例とパターン:EXAMPLES.mdを参照してください

コメント