タグ

tddadventjpに関するyujioramaのブックマーク (30)

  • ひのきの棒を駆使してレガシーコードに立ち向かう #TddAdventJp - PoohSunny's blog

    このエントリは、TDD Advent Calendar jp: 2012 : ATNDの20日目のエントリです。 昨日は、@mike_neckさんのIPA 平成24年度 システムアーキテクト試験 午後2 問1 解答例 with TDDでした。 今日はTDD初心者がひのきの棒(覚えたてのなけなしの知識)を使ってレガシーコードに立ち向かう話をしようと思います。 レガシーコードにTDD? TDDと聞くと、なんとなく新規コードや、テストが既にある程度整っているプロダクトに対して行うものというイメージを持つ方もいらっしゃると思います。 というか私がそうでした。 しかし、もちろんですがTDDはレガシーコードにも有効です。 TDDBCなどに参加していいなーと思って、最低限の知識はキャッチアップしてみた。 これからもっと武器強くしてレベルアップしたいと思ってるんだけど、 仕事ではレガシーコードばっかで、T

    ひのきの棒を駆使してレガシーコードに立ち向かう #TddAdventJp - PoohSunny's blog
    yujiorama
    yujiorama 2012/12/23
    bugfix は設計という行為を内包しうるのか、という…自分への問いかけが生まれた。
  • TDD の素振りをしよう - haru01のめも

    このエントリは、 TDD Advent Calendar jp: 2012 : ATND の 18 日目の参加エントリです。前日のエントリは @t_wada さんの「愛せないコードを書くには人生はあまりにも短い」というタイトルで TDD について講演させていただきました #TddAdventJp #devlove2012 - t-wada の日記(旧)でした。 ここでは TDDの素振りのススメを語っていきます。 素振り重要 おそらく、いきなり番の仕事で、初めてTDDを実践しようにも、体や頭や心がついてこなくて、時間がかかってしまったり、フラストレーションが溜まり、やがて中断してしまうのではないでしょうか。 実際に体-頭-心が動くようになるには、普段からTDDやプログログラミングの練習、素振りが欠かせません。野球選手もいきなりバッターボックスに立つのではなく、日々の素振りやバッティング練習

    TDD の素振りをしよう - haru01のめも
  • TDDにIDEを活用しよう (VS2012+CodeRush Xpress) #TddAdventJp by @masaru_b_cl

    TDDにIDEを活用しよう (VS2012+CodeRush Xpress) #TddAdventJp by @masaru_b_cl
  • デシジョンテーブルを使用してテストしてみよう #TddAdventJp - 世界のやまさ

    この記事はTDD Advent Calendar jp: 2012 : ATND の6日目です。 前日(5日目)は @a_suenami さんの 受託開発でTDDを導入するということ でした。 デシジョンテーブルを使ってテストしたい! 仙台で行われている、仙台ソフトウェアテスト勉強会とデシジョンテーブルとSpockで試すTDD(ネタ) - pocketberserkerの爆走にインスパイアされ、テスト技法としてデシジョンテーブルを書いた後に、具体的にどのようにテストの自動化を行うか考えてみました。 今回は(も?)FizzBuzzをお題としたいと思います。 デシジョンテーブルとは? デシジョン・テーブルを活用するを参照してください。以下引用します。 デシジョン・テーブル(ディシジョン・テーブル)は decision table、 つまりそのまま訳せば「決定表」です。 様々な事情・条件を考慮し

    デシジョンテーブルを使用してテストしてみよう #TddAdventJp - 世界のやまさ
    yujiorama
    yujiorama 2012/12/23
    Windows8で開発できるのね(まったく関係ないところを読んでる)
  • 思い通りに動くコードを書きたい #TddAdventJp - 日々常々

    2012年のTDD Advent Calendar、4日目でございます。 TDD Advent Calendar jp: 2012 : ATND 3日目 @grimroseさん open build/reports/life/index.html: スタッフになってみませんか? #TddAdventJp 5日目 @a_suenamiさん 受託開発でTDDを導入するということ #TddAdventJp - assertInstanceOf('Engineer', $a_suenami) 自分にとってのTDDを考える 「TDDとは?」なんて掲げたところで、万人に通じる明確な答えを私は持っていません。原典はありますが、相応に進化も派生もしておりますので、固執する必要はないと思います。その上であえて「私にとってのTDD」を挙げるなら、以下の二点になります。 思い通りに動くコードを書く コードの成長

    思い通りに動くコードを書きたい #TddAdventJp - 日々常々
  • gauche unitを書いた

    README.md このgistは TDD Advent Calender 2012, 12/10 のエントリとして書かれたような気がします。昨日、12/9のエントリは @setoazusa さんの JUnitテストの実行環境をバージョンアップする時の落とし穴 #tddadventjp – ふぃーるどのーつ@はてな だったそうです。 そう、だれがJSTに従うと言った? さて、私はいま社内読書会として 計算機プログラムの構造と解釈、通称SICP ってやつを読んでいて、ちょうど2章がもう少しで終わるかなーというところなんですが、その中ではデータ構造の操作だったりをする手続き(「関数」とは言わない)を作ったりして、それを「accumulatorを使うように直してみよう」みたいな感じで、 手続きの構造を変更 させられるわけで、もちろんそのときは、 手続きの入出力が変わらない ようにしなければならな

    gauche unitを書いた
    yujiorama
    yujiorama 2012/12/11
    assert の内部で引数の matcher を lazy にしておいて、eval するところで force すればいいんじゃないかなー
  • [TDD Advent Calendar jp: 2011] TDD とアジャイルを支えるバックボーン #TddAdventJp - TDD.NET

    てっきり bleis さんが立ち上げてくれてると信じたのに~~~ f(^^; 昨日までの記事で TDD の中身に関しては語りつくされた感もあるので、 最終日にあたるこの記事では、 TDD を支えるバックボーンの話をしてみたいと思います。 TDD は (それとアジャイルソフトウェア開発プロセスも)、 ソフトウェアの開発に特有の技法です。 ハードウェアの開発 (機械、 電子機器、 建築など) では、 できません。 なぜか? それを知るためには、 少しハードウェアの開発プロセスを見る必要があります。 ハードウェアも、 ソフトウェアと同様で、 複雑なものをいっぺんに作ることはムリなので、 最初は大雑把に考えてそれからだんだんと詳細を詰めていって、 最後に個々の部品の設計へと落とし込んでいきます。 代表的なハードウェアとして自動車の製品開発プロセスを取り上げると、 次の図のような流れでやっています。

    [TDD Advent Calendar jp: 2011] TDD とアジャイルを支えるバックボーン #TddAdventJp - TDD.NET
  • DartUnitができるまで

    この記事はTDD Advent Calendar jp: 2011 : ATNDへの参加エントリです。昨日は@Gab_kmさんの「#107 TDDに対して思っていること « TDD « Gab_kmのブログ」です。 自己紹介 新潟県長岡市のSIerプログラマーやってます。10月には「TDDBC 長岡 0.1」と銘打って、第23回長岡IT開発者勉強会の中の1セッションとして、TDDについて語らせてもらいました。 (第23回長岡IT開発者勉強会でしゃべってきました @masaru_b_cl #nds23 #tddbc) Dart言語でTDDやりたい! そんな「TDDBC 長岡 0.1」でTDDについて発表することになりましたが、テーマが「Googleがらみのなんか」とのこと。これは「Dart言語でTDDデモするしかないだろう」と、誠に安易ながらそう思ったわけです。 しかし、Dart言語はまだ

    DartUnitができるまで
  • 職業プログラマに贈るTDDのススメ #TddAdventJp – 寺子屋未満

    このエントリはTDD Advent Calendar jp: 2011のエントリーとなります。 前日の@yuri9976さんのエントリ「TDDと共に(成長記録としてのTDD)」に続く23日目の記事です。 23日目はTDDを初めて2年目のオム子がエントリを担当します。 ラスト3の座をゲットしてしまい、さらに電子書籍化の話…と気が遠くなりそうになっていましたが、がんばります。 まずは、タイトルの「職業プログラマ」って何さ、って話からしましょう。 職業プログラマとは(※オム子定義による) 「プログラミングを職業としているので勤務中はコードを書くがプライベートではほとんど書かない」 「詳細設計書通りにプログラムができていればそれでよい」 「与えられた環境と技術以外のことは求めない」 「コードよりもExcelと向き合っている時間が多い」 「割と大規模なプロジェクトで昔からの文化に染まり、それが常識だ

    yujiorama
    yujiorama 2011/12/23
    大事なことが最後に書いてあったので構成がちょっともったいないなーとか思ったり。いい話
  • TDDと共に(成長記録としてのTDD) | YRL(Yuri Research Lab.)

    この記事は、TDD Advent Calenderの22日目のエントリです。 前日は Tugu Katagiriさんの素晴らしいエントリ「私、MVCでTDDやってます。」です。 私は先月TDDBC横浜に初めて参加したばかりのTDD超初心者です。 しかもソフトウェアエンジニアをやっているのに、コーディングが大の苦手です。 エディタに向かって、さあこれからコードを書こう、という時点で、大勢の見知らぬ人々の前でいきなりスピーチを迫られたはにかみ屋さんの気持ちになってしまうのです。#現実の私は全然はにかみ屋さんじゃないのに(苦笑) そんなコンプレックスが邪魔をしてか、一人でレガシーコードに立ち向かうだけの勇気が出ないので、ならばチーム内で仲間を作ろう、いや音を言えば私を引っ張ってくれる人を育てるべく、TDDの良さを伝えるにはどうすれば良いか、現在画策中です。 そこで、周囲の人にTDDとは何

    yujiorama
    yujiorama 2011/12/22
    "我が子の成長記録をアルバムに収めるように、テストコードを記す" 大人にしか分からない世界観…テストコードの反抗期とかこれは擬人化の流れ?!
  • 私、MVCでTDDやってます。

    はじめに この記事はTDD Advent Calendar jp: 2011 : ATNDの参加記事です。 私で21日目に突入しました。20日目は、haru012さんの Testing と 私と 苦い出来事 でした。体験談かぁー。私も炎(ry ごほんごほん。 てな感じで、今までの記事では、TDDの色々がとてもお勉強になるお勧め記事がたくさんでしたが、私のはちょっとだけ業務アプリケーション開発の実作業に近づいた内容かもしれません。まぁ、実際の所、私はこんな風に思ったよ、というのが正しいのですけれども。 MVCとTDD、それぞれの利点 MVC(Model-View-Controller)と呼ばれるデザインパターンが流行ってます。実際、私も使ってます。MVCって何?って方は以下など読んでいただいて。 Model View Controller - Wikipedia MVCとは【Model-Vi

    yujiorama
    yujiorama 2011/12/22
    "TDDの肝は、言語やフレームワークに関係なく、まず仕様の理解が必要不可欠であり、それをいかにテストコードに反映できるか、だと思っています。" 仕様としてのテストコード
  • Testing と 私と 苦い出来事 - haru01のめも

    この記事は、TDD Advent Calendarの20日目。 cubeon さんの 後になります。 http://atnd.org/events/22027 http://d.hatena.ne.jp/cubeon/20111219 今日は、Developer Testing について私の過去の苦い経験を1つお話しします。 この体験は私の中で Testing について強く印象に残っている5のエピソードの中の1つです。 この出来事は、時々思い返します。 (Testingの苦い経験とか、ちょっと趣向の違う記事あってもいいよね!) はじまり あれは今から数年前、私が社会人2-3年目で、 TDDや XPに初めてトライした プロジェクトのでした。Java開発者向けに、とあるフレームワークをつくるというプロジェクト。このプロジェクトには、XPやTDDを強く支持している外部コーチや先輩の人たちがいま

    Testing と 私と 苦い出来事 - haru01のめも
    yujiorama
    yujiorama 2011/12/21
    XP の開発で顧客のことを忘れてしまっていたというお話。「何かを開発する」という利己的な行為より「価値を提供する」という顧客のための行為が大事なんだなー
  • きっと方眼の理から逃れられないお前たちにも告げる!テストコードを手に入れるのだ! #TddAdventJP - 壊頭文書 @cubeon

    タイトルは思いつきで意味は無いです。 来ならこのネタタイトルだけで終わらせたい… TDD Advent Calendar jp: 2011 : ATNDの19日目のエントリーです。 前日の18日目は[twitter:@megascus]さんのアジャイルにTDDしようとしてペアプロして失敗した話、 翌日の20日目は[twitter:@haru01]さんのTesting と 私と 苦い出来事になります。 内容 諸々の事情で今年から社内SEに転職しました。 そんなこんなで元システム屋の同業者として他社の社内システム担当さんと話をする機会もありました。 その中で、Excelのマクロが出来ますと面接で言って入社したら、 システム担当にさせられた上に、 今までプログラミング経験がないのにVBAまで書くことになってしまったという、 よくありそうな経歴をお持ちの方とお会いすることとなり、 TDDをいろい

    きっと方眼の理から逃れられないお前たちにも告げる!テストコードを手に入れるのだ! #TddAdventJP - 壊頭文書 @cubeon
    yujiorama
    yujiorama 2011/12/20
    "AdventCalendarをGoogleChromeで書くのはやめたほうがいい。" なにがあったの…いい話だなーと思ってたら最後に私怨が
  • アジャイルにTDDしようとしてペアプロして失敗した話 - 水まんじゅう2

    これはTDD Advent Calendarの18日目。 記事としては @mao_instantlife さんの TDDやってみてコメントが減った話 のあと、@cubeon さんの きっと方眼の理から逃れられないお前たちにも告げる!テストコードを手に入れるのだ! の前となります。 最近、新しい開発手法の一貫としてTDDを採用しようとするプロジェクトが出始めている印象があります。 ただし、とりあえず取り入れてみたけれどもうまくいかなくて結局ウォーターフォール方式に逆戻りという例も多いのではないでしょうか。 以前、アジャイルにTDDをしようとしてペアプロして失敗したプロジェクトの話を聞いたことがあるので書こうと思います。 その時のプロジェクトでは数百人月前後の工数をかけてそれまであったレガシーシステムをJavaでリプレイスしようとしていたようです。 それなりの規模のプロジェクトに多いように、さ

    アジャイルにTDDしようとしてペアプロして失敗した話 - 水まんじゅう2
    yujiorama
    yujiorama 2011/12/18
    "その兆候を見逃すプロジェクト参加者" どんなによいツールでもそれを使うのって人なんだよね。一部の人はすごく苦しんでたんじゃないかと思った。
  • TDDやってみてコメントが減った話 - 冥冥乃志

    この記事はTDD Advent Calendar jp: 2011 : ATNDのためのエントリです。前日は @masaru_b_cl さんのDartUnitができるまで | be freeです。真面目でもなく緩くもない中途半端な記事です。ただ、TDDを練習していく中で、個人的に面白い気づきだったので、少し取り上げてみたいと思います。 注意事項 個人の経験感想に基づくものです。あなたがそもそも同じようなコードを書いてきたのでなければこの考察はなんのお役にもたてません。ご了承ください。 コメント、書いてますか? TDD以前、私が書いていたソースは以下のような感じでした。 private String hogeMethod(String param) { // 初期処理 initLogic(); // 主処理 mainLogic(); // 後処理 endLogic(); } オーバーでも何で

    TDDやってみてコメントが減った話 - 冥冥乃志
    yujiorama
    yujiorama 2011/12/17
    #tddbc 岡山キター!!
  • DartUnitができるまで « be free

    この記事はTDD Advent Calendar jp: 2011 : ATNDへの参加エントリです。昨日は@Gab_kmさんの「#107 TDDに対して思っていること « TDD « Gab_kmのブログ」です。 自己紹介 新潟県長岡市のSIerプログラマーやってます。10月には「TDDBC 長岡 0.1」と銘打って、第23回長岡IT開発者勉強会の中の1セッションとして、TDDについて語らせてもらいました。 (第23回長岡IT開発者勉強会でしゃべってきました @masaru_b_cl #nds23 #tddbc) Dart言語でTDDやりたい! そんな「TDDBC 長岡 0.1」でTDDについて発表することになりましたが、テーマが「Googleがらみのなんか」とのこと。これは「Dart言語でTDDデモするしかないだろう」と、誠に安易ながらそう思ったわけです。 しかし、Dart言語はまだ

    yujiorama
    yujiorama 2011/12/15
    Dart ってユニットテストフレームワーク無かったんだ。レベル高い写経メソッドだ
  • #107 TDDに対して思っていること « TDD « a wandering wolf

    このエントリは TDD Advent Calendar 2011 の15日目です。 先月11月は26日と27日に、TDDBC 福岡 2に参加してきました。 私にとって、初めてのTDDBC参加になります。 今まで仕事でもTDDを導入する余地がなくて(今年は開発じゃないことをやっていることが多かった) 、個人作業だけぼっちTDDしてました。 なので、こういう場でTDDをちゃんとやれて、しかももう一つ念願だったペアプロまでできて、 当に得るものが多い2日間でした。 で、このTDDBC 福岡 2に参加して、あるいはそれ以前から思っていたことがいくつかありました。 それを雑記の形でつらつらと綴っていこうと思います。関数型言語とTDDの相性は?TDDBCの1日目にこんなツイートをしました。 これは、1日目にあったディスカッションの中で、 id:t-wada さんが発言されたことを自分なりに整理したも

    yujiorama
    yujiorama 2011/12/15
    いろんなテーマを抱えておられるのだなぁという感想。TDDBC の課題は毎回レベル感で苦労されてるようです #TddAdventjp
  • 例えば, Singleton を避ける | Born Too Late

    この記事は TDD Advent Calendar jp: 2011 の 14 日目です. 前日: TDD戦略 -TDDを導入し進化させる方法- #TDDAdventJP (@kyon_mm さん) 翌日: TDDに対して思っていること (@gab_km さん) この記事の概要 TDD で開発することで設計上の問題点に気づきやすくなる Singleton はグローバル変数である Singleton の使用はできる限り避けるべきである テスタビリティを意識しよう TDD では, 原則としてユニットテストを書いてから実際のコードを実装します. なので, 自然と「テストのしやすさ (テスタビリティ)」を意識して実装することになります. そして, TDD においては一般的に, テスタビリティを意識することで, 設計が改善されるとされています. オブジェクト指向には難しい概念がたくさん登場します.

    yujiorama
    yujiorama 2011/12/14
    実行する順番を変えるとテストが通らなくなる、これは怖い。なので本当に1つだけのモノなのかどうか考える気付きをテストに教えてもらう!
  • TDD戦略 -TDDを導入し進化させる方法- #TDDAdventJP - うさぎ組

    @t_wada「TDDはスキルです。量は質に転化する」 TDD Advent Calendar2011の記事になります。 TDD Advent Calendar jp: 2011 : ATND 前:@irof テストと言うパートナー #TddAdventJp - 日々常々 次:@yuya_takeyama さんです。 はじめに これは僕の主観であって、間違いもあると思います。それは僕の勉強不足から生じるものです。 どちらかというと、これを読んだ方に「そこはちょっと認識が一般的じゃない」「そもそも違うよ」って突っ込んでもらうためのものです。 「TDDよくわからないので教えてください」っていう記事です。 TDDをはじめたい人、TDDに行き詰まっている人 TDDがどんなものかよくわからない人、とりあえずテストコードって書いているけど毎回つまずいて成長が実感出来ない人、現場に導入したいけど伝え方が

    TDD戦略 -TDDを導入し進化させる方法- #TDDAdventJP - うさぎ組
    yujiorama
    yujiorama 2011/12/13
    "僕は最近ソフトウェアテストの勉強をすることが多い のですが、気づいたんですね。あぁ、TDDを俯瞰すれ ばいいのだ。と。" マトリクスのどこにいるのかを意識することはあるなー。左側だけど。
  • テストと言うパートナー #TddAdventJp - 日々常々

    TDD Advent Calendar jp: 2011の 12日目です。 前:あなたは写経しますか - pocketberserkerの爆走 次:TDD戦略 -TDDを導入し進化させる方法- #TDDAdventJP - うさぎ組 テストはパートナー 「何を言ってるんだ?」な感じかもしれませんが、私にとってテストはパートナーです。 私がTDDのコンテキストで言う「テスト」はDeveloperTestです。このテストは開発者の開発者による開発者のためのテストであり、つまり開発者たる私のためのものです。私だけのためにテストは働いてくれます。 テストに対する不安 TDDや自動テストと言う言葉に触れ、「いざテストを書こう」と思った時。もしくはよく知らないままテストコードを書かなければならなくなった時。テストに対して不安を感じると思います。TDDは「不安をテストにする」とか言いますが、そもそもテス

    テストと言うパートナー #TddAdventJp - 日々常々
    yujiorama
    yujiorama 2011/12/13
    "出来てます。どこからをTDDと言うかは個人によってまちまちです が、私にとってTDDの範囲は非常に緩いです。戦士はLv1でもLv99で も戦士だってくらいの広さです。" 優しいなぁ