Your SlideShare is downloading. ×
0
BDD with F#<br />Phillip Trelford<br />@ptrelford<br />http://trelford.com/blog<br />
Jargon Buster<br />FP = Functional Programming<br />Immutable = Doesn’t change<br />Idempotent = Free from side effects<br...
Fun and Profit<br />Introduction<br />Fun with F#<br />Intro -> Code -> What next<br />Profit with BDD<br />Intro -> Code ...
Functional<br />
Myth 1<br />“F# is a purely functional programming language”<br />
F# is more a mix of<br />
Code Samples<br />1: // Declare a local value (inferred type is string)<br />2: letworld="world"<br />3: <br />4: // Using...
Myth 2<br />“FP is slow”<br />
Performance<br />
Myth 3<br />“F# is Academic”<br />
Commercial Users<br />We could not have developed 200 models in two years without F# and Visual Studio. It would have take...
F# Books<br />
Meet the F#ers<br />
Agile Manifesto<br />Individuals and interactions over <br />    processes and tools<br />Working software over <br />    ...
User Stories<br />
Acceptance Test Scenario<br />Refunded items should be returned to stock<br />Given  a customer buys a black jumper<br />A...
Behaviour Driven Development<br />“Acceptance criteria should be executable”<br /><ul><li>Dan North in Introducing BDD Art...
Look no hands<br />
Look no hands<br />
TickSpec<br />
Demo <br />
BDD Books<br />
Lifetime BDD Awards<br />
@jbandi<br />#chtd Quote from "future of .net " Have a look at F# for two days and you will find yourself two years ahead ...
Q & A<br />Or contact me in confidence:<br />Twitter: @ptrelford<br />E-mail: phil(at)trelford.com<br />In-person: http://...
BDD with F# at DDDScot
Upcoming SlideShare
Loading in...5
×

BDD with F# at DDDScot

1,826

Published on

Talk presented in Glasgow at DDD Scotalnd in May 2011.
Abstract: http://developerdeveloperdeveloper.com/scotland2011/ViewSession.aspx?SessionID=724

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,826
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
23
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Python = light, C# = OO, OCaml = Functional
  • http://blog.dannorth.net/introducing-bdd/
  • Transcript of "BDD with F# at DDDScot"

    1. 1. BDD with F#<br />Phillip Trelford<br />@ptrelford<br />http://trelford.com/blog<br />
    2. 2. Jargon Buster<br />FP = Functional Programming<br />Immutable = Doesn’t change<br />Idempotent = Free from side effects<br />DSL = Domain Specific Language <br />BDD = Behaviour Driven Development <br />Agile Acceptance Testing<br />Acceptance-Test Driven Development <br />Story-Testing<br />Specification by Example<br />
    3. 3. Fun and Profit<br />Introduction<br />Fun with F#<br />Intro -> Code -> What next<br />Profit with BDD<br />Intro -> Code -> What next<br />Q & A<br />
    4. 4. Functional<br />
    5. 5. Myth 1<br />“F# is a purely functional programming language”<br />
    6. 6. F# is more a mix of<br />
    7. 7. Code Samples<br />1: // Declare a local value (inferred type is string)<br />2: letworld="world"<br />3: <br />4: // Using '%s' format specifier to include string parameter<br />5: printfn"Hello %s!"world<br /> <br />
    8. 8. Myth 2<br />“FP is slow”<br />
    9. 9. Performance<br />
    10. 10. Myth 3<br />“F# is Academic”<br />
    11. 11. Commercial Users<br />We could not have developed 200 models in two years without F# and Visual Studio. It would have taken us at least twice as long with our previous tools. Directorlarge European financial services firm<br />
    12. 12. F# Books<br />
    13. 13. Meet the F#ers<br />
    14. 14. Agile Manifesto<br />Individuals and interactions over <br /> processes and tools<br />Working software over <br /> comprehensive documentation<br />Customer collaboration over <br /> contract negotiation<br />Responding to change over <br /> following a plan<br />
    15. 15. User Stories<br />
    16. 16. Acceptance Test Scenario<br />Refunded items should be returned to stock<br />Given a customer buys a black jumper<br />And I have 3 black jumpers left in stock<br />When he returns the blackjumper for a refund<br />Then I should have 4 black jumpers in stock<br />
    17. 17. Behaviour Driven Development<br />“Acceptance criteria should be executable”<br /><ul><li>Dan North in Introducing BDD Article</li></li></ul><li>First Steps in BDD on .Net<br />
    18. 18. Look no hands<br />
    19. 19. Look no hands<br />
    20. 20. TickSpec<br />
    21. 21. Demo <br />
    22. 22. BDD Books<br />
    23. 23. Lifetime BDD Awards<br />
    24. 24. @jbandi<br />#chtd Quote from "future of .net " Have a look at F# for two days and you will find yourself two years ahead of your peer .netdevs. #fsharp<br />
    25. 25. Q & A<br />Or contact me in confidence:<br />Twitter: @ptrelford<br />E-mail: phil(at)trelford.com<br />In-person: http://meetup.com/FSharpLondon<br />
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×