Created
April 18, 2012 19:25
-
-
Save davidgrenier/2415922 to your computer and use it in GitHub Desktop.
Extract behavior
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// bad way | |
let formatOrder blah bleh clientName = | |
let order = getOrder blah | |
let message = getMessage bleh | |
let reseult = | |
if clientName = "boeing" then | |
sprintf "<Order orderId=\"%d\"/>" order | |
else | |
sprintf "Order.orderId:%d" order | |
result | |
// good way | |
let getFormatBehavior = function | |
| "boeing" -> sprintf "<Order orderId=\"%d\"/>" | |
| _ -> sprintf "Order.orderId:%d" | |
let formatOrder blah bleh clientName = | |
let behavior = getFormatBehavior clientName | |
let order = getOrder blah | |
let message = getMessage bleh | |
let reseult = behavior order | |
result | |
// another good way | |
let formatOrder blah bleh behavior = | |
let order = getOrder blah | |
let message = getMessage bleh | |
let reseult = behavior order | |
result | |
//and then | |
getFormatBehavior clientName |> formatOrder blah bleh |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment