順次、選択、そして繰り返し

プログラミングのことやITのこと、たまに演劇のことも書きます。

CI(メモ)

CIとは

  • 継続的インテグレーション(Continuous Integration)
  • アプリケーション作成時の品質改善や納期の短縮のための習慣のことである。
    • コードを修正する度にコンパイル、テスト、デプロイを行うこと。
なぜコードを修正するたびにコンパイル、テスト、デプロイをする必要があるか
  • 早期にバグの検知と原因箇所が発見しやすい
    • 10行コードを修正した後に発見するバグと100行コードを修正した後に発見するバグでは原因の範囲が異なる
    • 範囲が狭いほうがバグの場所がわかりやすい
しかし、手動でコンパイル、テスト、デプロイをするのは面倒
javac Test.java
java Test

そこでCIツールであるJenkins

Jenkinsのメリット
  • 繰り返し作業の自動化
    • 軽微なソースコードを修正したとしてもコンパイル、テスト、デプロイを自動化することで作業時間を短縮することができる
  • 属人化を防ぐ
    • コンパイルやデプロイといった作業をJenkinsに登録することでビルド・デプロイ手順を知らない人でもボタン1つで実行環境を更新することができる
  • プラグインによる機能拡張が豊富