/java-junit-basic

TDD 入門 Java 編

Primary LanguageJava

プログラミング入門 (Java + JUnit編)

プログラミングをなぜ学ぶのか?

  • 「機械との競争」(TED)

  • 我々はムーアの法則の後半にいる。予測できない進化がICT分野で起きている。

  • コンピューターを使いこなす側にまわる。

  • なぜすべての人がプログラミングを学ぶべきなのか? | ビジュアルシンキング

  • デザインのプロセス。ぼんやりしたアイディアのから始めて実際に機能するプロジェクトにする。

  • 新しいアイディアを試す。

  • 複雑なアイディアを単純な部分へと分割する。

  • 他の人と協力する。

  • 期待したように動かないときにバグを見つけて直す。

  • 物事がうまくいかない状況で粘り強く方向性をもって前に進む。

プログラミングの学び方

  • 人による。
  • おすすめなのは Lern by doing。せっかく動かせるマシンが目の前にあるのだから。
  • 入門 / チュートリアル
  • ドットインストール
  • codecademy, Code School, Treehouse
  • Code.org
  • Udacity, coursera
  • インプットの質を高める。
  • ソースコードリーディング
  • アウトプットの量を増やす。
  • Coding Kata
  • Codewars
  • CheckiO (Python)
  • 一つの言語を極めておくと、応用が効く。ただ、極めるためにはコンピューターの知識も必要。

アウトプットの量を増やす

  • 鉄則「一度に一つのことをする」
  • 小さなゴールを決め、それをクリアして、次に進む
  • 小さなゴール=テスト
  • テスト駆動開発(Test Driven Development: TDD)
  • Junitを使ったjavaのテスト入門

演習の進め方

  1. Github でこのリポジトリーを Fork
  2. git clone でローカルに取り込む
  3. git checkout -b your_name
  4. git branch (* your_name になっていることを確認する)
  5. Ex1Test を実行 -> 赤
  6. Ex1 を実装。Ex1Test を実行 -> 緑
  7. 必要に応じて Ex1 をリファクタリング -> 緑
  8. git push origin your_name
  9. 5 から 8 を繰り返す

おまけ

遊びながら

スキルの可視化

他流試合