0Pricing
Scala for Backend Engineering & Functional Programming · レッスン

SBTプロジェクトのセットアップと基礎

新しいSBTプロジェクトの初期化、設定の定義、一般的なビルドタスクの実行方法を学びます。

「SBTプロジェクトのセットアップと基礎」はCoddyKit上の無料Scala for Backend Engineering & Functional Programmingレッスンです。 これはレッスン1/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはScala for Backend Engineering & Functional Programming学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Scala for Backend Engineering & Functional Programmingコースには全3レッスンが含まれています。

SBTへようこそ

こんにちは。今日はScalaプロジェクトの標準ビルドツールであるSBTについて学びます。SBTは、コードのコンパイルからテストの実行、アプリケーションのパッケージ化までを管理する、プロジェクトのマネージャーのようなものです。

SBTはScala Build Toolの略です。複雑な作業を簡単にし、プロジェクトが正しくセットアップされるようにします。

SBTを使う理由

SBTはScala開発に次のようなメリットをもたらします。

  • 依存関係管理:プロジェクトに必要な外部ライブラリを簡単に追加できます。
  • プロジェクト構成:標準的なレイアウトを適用し、プロジェクトを把握しやすくします。
  • タスクの自動化:簡単なコマンドで、コンパイル、テスト、パッケージ化などを自動化できます。
  • 一貫性:チームの全員が同じ方法でプロジェクトをビルドし、実行できるようにします。

SBTをインストールする

SBTを使う前に、インストールする必要があります。一般的には、CoursierやHomebrew(macOS/Linuxの場合)などのパッケージマネージャーを使うか、公式ランチャーをダウンロードする方法が推奨されます。

インストール後、ターミナルでバージョンを確認して、正しくインストールされたことを確認できます。

sbt --version

新しいプロジェクトを作成する

SBTでは、テンプレートを使って新しいプロジェクトを簡単に作成できます。ここでは、基本的なScalaのseedテンプレートを使ってsbt newコマンドを実行します。

このコマンドによって、シンプルなScalaアプリケーションに必要なディレクトリとファイルが作成されます。

sbt new scala/scala-seed.g8 --name my-first-sbt-app

プロジェクト構成を確認する

my-first-sbt-appを作成すると、標準的なディレクトリ構成が表示されます。

  • src/main/scala/:メインのScalaソースコードを配置します。
  • src/test/scala/:テストファイルを配置します。
  • project/:プロジェクト固有のSBT設定が含まれます。
  • build.sbt:プロジェクトのメイン設定ファイルです。

build.sbtファイルでプロジェクトの設定を定義します。

build.sbtの基本設定

build.sbtファイルでは、シンプルな構文でプロジェクトの設定を定義します。基本的な例を見てみましょう。

  • name := "my-first-sbt-app":プロジェクト名を設定します。
  • version := "0.1.0-SNAPSHOT":プロジェクトのバージョンを定義します。
  • scalaVersion := "2.13.12":使用するScalaのバージョンを指定します。

これらはキーと値のペアであり、:=によって設定に値を割り当てます。

name := "my-first-sbt-app"
version := "0.1.0-SNAPSHOT"
scalaVersion := "2.13.12"

最初のScalaプログラム

プロジェクトにシンプルなScalaプログラムを追加しましょう。src/main/scala/内に、Main.scalaという名前のファイルを作成します。このプログラムは挨拶を表示するだけです。

SBTは、compileやrunなどのコマンドを実行すると、このファイルを自動的に見つけてコンパイルします。

object Main {
  def main(args: Array[String]): Unit = {
    println("Hello from SBT!")
  }
}

アプリケーションを実行する

Main.scalaを配置したら、ターミナルでプロジェクトのルートディレクトリ(例:cd my-first-sbt-app)に移動します。

次に、sbt runコマンドを使います。SBTがコードをコンパイルし、見つかったmainメソッドを実行します。

sbt run

SBTインタラクティブシェル

プロジェクトのルートディレクトリでsbtと入力するだけで、SBTインタラクティブシェルを起動することもできます。SBTが起動したままになるため、続けて実行するコマンドが速くなります。

シェル内では、compile、run、testなどのコマンドを直接入力できます。シェルを終了するにはexitと入力します。

sbt

> compile
> run
> exit

クイックチェック:SBTの基本

プロジェクトで使用するScalaのバージョンを指定するために、通常build.sbtで使用する設定は次のうちどれでしょうか。

SBTの学習は続きます

よくできました。SBTの最初の一歩を踏み出しました。

次の内容を学びました。

  • SBTとは何か、なぜ重要なのか。
  • 新しいSBTプロジェクトのセットアップ方法。
  • 基本的なプロジェクト構成。
  • build.sbtで基本設定を行う方法。
  • SBTのコマンドを使って最初のScalaアプリケーションを実行する方法。

次は、外部ライブラリの管理方法と、SBTプラグインを使ってプロジェクトの機能を拡張する方法を学びます。

よくある質問

「SBTプロジェクトのセットアップと基礎」レッスンは無料ですか?

はい。「SBTプロジェクトのセットアップと基礎」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Scala for Backend Engineering & Functional Programmingコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Scala for Backend Engineering & Functional Programmingコースには全3レッスンが含まれています。

「SBTプロジェクトのセットアップと基礎」で何を学びますか?

新しいSBTプロジェクトの初期化、設定の定義、一般的なビルドタスクの実行方法を学びます。 ブラウザで直接実行するハンズオンコードでScala for Backend Engineering & Functional Programmingを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Scala for Backend Engineering & Functional Programmingを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのScala for Backend Engineering & Functional Programmingは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/3です。

「SBTプロジェクトのセットアップと基礎」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このScala for Backend Engineering & Functional Programmingレッスンでコードを書いて実行できますか?

はい。すべてのScala for Backend Engineering & Functional Programmingレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. SBTプロジェクトのセットアップと基礎
  2. 依存関係の管理とプラグイン
  3. マルチプロジェクトビルドとデプロイ
← Scala for Backend Engineering & Functional Programmingに戻る