テスト駆動開発から始めるRuby入門 ~2時間でTDDとリファクタリングのエッセンスを体験する~

初めに

この記事は一応、Ruby 入門者向けの記事ですが同時にテスト駆動開発入門者向けともなっています。

対象レベルによって以下のように読み進められれば効率が良いかと思います。

  • Ruby 入門者でプログラミング初心者・・・とりあえずコードの部分だけを写経しましょう。解説文は最初のうちは何言ってるかわからないと思うので 5 回ぐらい写経して Ruby を書く感覚がつかめてきてから読み直すといいでしょう。もっと知りたくなったら参考図書にあたってください。と言っても結構お高いので「リーダブルコード」と「かんたん Ruby(プログラミングの教科書)」といった初心者向け言語入門書から買い揃えるのがおすすめです。

  • Ruby 経験者でテスト駆動開発初心者・・・コード部分を写経しながら解説文を読み進めていきましょう。短いステップでテスト駆動のリズムが感覚がイメージしていただければ幸いです。もっと知りたくなったら原著の「テスト駆動開発」にあたってくださいオリジナルは Java ですが Ruby で実装してみると多くの学びがあると思います。あと、「プロを目指す人のための Ruby 入門」が対象読者に当たると思います。

  • 他の言語経験者でテスト駆動開発初心者・・・コード部分を自分が使っている言語に置き換えながら解説文を読み進めていきましょう。もっと知りたくなったら原著の「テスト駆動開発」にあたってくださいオリジナルは Java と Python が使われています。あと、「リファクタリング」は初版が Java で第2版が JavaScript で解説されています。

  • 言語もテスト駆動開発もつよつよな人・・・レビューお待ちしております(笑)。オブジェクト指向に関する言及が無いというツッコミですが追加仕様編でそのあたりの解説をする予定です。あと、「リファクタリング」には Ruby エディションもあるのですが日本語訳が絶版となっているので参考からは外しています。

写経するのに環境構築ができない・面倒なひとは こちら からお手軽に始めることができます。

Read more
環境構築から始めるテスト駆動開発 ~Ruby開発環境を構築する(WSL版)~

はじめに

これは 環境構築から始めるテスト駆動開発 ~ プログラミング環境の共通基盤を構築する ~ の開発言語セットアップ記事です。Windows 10 Home で共通基盤が構築されていることを前提としています。

Read more
環境構築から始めるテスト駆動開発 ~Ruby開発環境を構築する~

はじめに

これは 環境構築から始めるテスト駆動開発 ~ プログラミング環境の共通基盤を構築する ~ の開発言語セットアップ記事です。Windows 10 Home で共通基盤が構築されていることを前提としています。

Read more
環境構築から始めるテスト駆動開発 ~プログラミング環境の共通基盤を構築する~

はじめに

この記事はソフトウェア開発者を目指す入門者を対象に、IT リテラシの基本とプログラミング学習とソフトウェア開発の基盤となる環境構築の手順を解説しています。以下の構成の Windows マシンで作業を進めていきます。

os-version.png
Read more
TDD Boot Camp in 愛媛 ふりかえり

基調講演

当日講演スライドはこちら

お約束の アレ から始まり、最初のテスト駆動開発とは何かというお話の内容としては自分が実践してきたテスト駆動開発と認識のズレはなかったので良かった。勉強会 を実施したり テスト駆動開発の記事 を書いて専門学校の講義に使ったりしてきたけど やはり俺のテスト駆動開発に対する理解は間違っていなかった ようだ。ただ、テスト駆動開発で言及されているリファクタリングとマーティンファウラーの リファクタリング ではサイズ感が違う というのは新しい気づきだった。

続いて、ライブコーディングのお題は FizzBuzz 問題 。 内容は 50 分でわかるテスト駆動開発 を以前視聴していたので流れは大体知っていたけどお題から TODO に落とし込むあたりの作業が動画の時よりバージョンアップしていてよりわかりやすい流れになっていた。後半のシンプルな FizzBuzz プログラムを使った保守運用に向けた解説は実際に現場で起きている問題を反映しているのだと思うと興味深い内容だった。このへんが レガシーコード改善ガイド へとつながっていくのかなと個人的に思った。

ライブコーディングの内容として自分は 抽象から具体へ具体から抽象へ を小さなサイクルで何度も回しているなという印象を受けた。自分も最近は 抽象と具体 の往復は意識しているのだがやはり上手な人が実際にやるのを見れるのは実に学びがある。こればかりは文章ではなかなか伝えられないのよね。

Read more
StartupWeekendFukuoka June振り返り

スタートアップウィークエンド とは…
ある 週末の54時間の あいだ、
あなたのいる町に現れる 幻のシリコンバレー。

Read more
顧客開発モデル

rainboooo
rainboooo / nuttallp

“There Are No Facts Inside Your Building , So Get Out Side”
(顧客は外にいる)

『THE STARTUP OWNER’S MANUAL』

Read more
ビジネスモデルキャンパス
タイトルなしタイトルなし / szwerink

>A shared language for describing,visualizing,assessing, and changing business models. >(ビジネスモデルを記述、ビジュアライズし、評価、変革するための共通言語) >>『Business Model Generation』
Read more
実践リーンスタートアップ
3 Jari-Matti Latvala ja Miikka Anttila, FIN FIN, Ford World Rally Team Ford Fiesta RS WRC3 Jari-Matti Latvala ja Miikka Anttila, FIN FIN, Ford World Rally Team Ford Fiesta RS WRC / smerikal

>Life's too short to build something nobody wants.

(誰も欲しがらないものを作るほど人生は長くない)

『Running Lean』

Read more
ビヘイビア駆動開発
The All-New Range Rover | Test & DevelopmentThe All-New Range Rover | Test & Development / landrovermena

  • 十分といったら十分
  • ステークホルダーに価値をもたらす
  • すべては振る舞いから
Read more