{"id":738,"date":"2004-08-09T13:27:25","date_gmt":"2004-08-09T17:27:25","guid":{"rendered":"http:\/\/whizkidnine.com\/?p=738"},"modified":"2004-08-09T13:27:25","modified_gmt":"2004-08-09T17:27:25","slug":"refactoring-thumbnails","status":"publish","type":"post","link":"https:\/\/xp123.com\/refactoring-thumbnails\/","title":{"rendered":"Refactoring Thumbnails"},"content":{"rendered":"<p>Sven Gorts has introduced what he calls <em><a href=\"http:\/\/web.archive.org\/web\/20090221213654\/http:\/\/www.refactoring.be\/thumbnails.html\">Refactoring Thumbnails<\/a><\/em>.  These are UML-like diagrams augmented with some flows, and used to  summarize refactorings. (For example, the UML might have no words, but  rather squiggles to represent identical text in two different classes.)<\/p>\n<p>In addition to summarizing the transformation involved in simple  refactorings, he uses these to show how large refactorings can be  created out of smaller ones. A nice example is <a href=\"http:\/\/web.archive.org\/web\/20091113193150\/http:\/\/www.refactoring.be\/thumbnails\/ec-adapter.html\">Break Module Dependencies With Adapter<\/a>.  He shows that you can break package dependencies by doing Separate  Interface from Implementation, and then Introduce Indirect Class, or by  doing these in the opposite order.  For Evolving to the Proxy \/  Decorator Pattern, he shows several approaches that end up in the same  place.<\/p>\n<p>I really like these summaries, and I&#8217;ll use this approach to help manage my focus on large refactorings.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sven Gorts has introduced Refactoring Thumbnails to summarize refactorings. <a class=\"more-link\" href=\"https:\/\/xp123.com\/refactoring-thumbnails\/\">Continue reading <span class=\"screen-reader-text\">  Refactoring Thumbnails<\/span><span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_wp_convertkit_post_meta":{"form":"-1","landing_page":"0","tag":"0","restrict_content":"0"},"footnotes":""},"categories":[1],"tags":[77,79],"class_list":["post-738","post","type-post","status-publish","format-standard","hentry","category-xp123","tag-prog","tag-refactoring"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Refactoring Thumbnails - XP123<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/xp123.com\/refactoring-thumbnails\/\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Bill Wake\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/xp123.com\\\/refactoring-thumbnails\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/xp123.com\\\/refactoring-thumbnails\\\/\"},\"author\":{\"name\":\"Bill Wake\",\"@id\":\"https:\\\/\\\/xp123.com\\\/#\\\/schema\\\/person\\\/72474af0de7f699327fcff15bebf04c9\"},\"headline\":\"Refactoring Thumbnails\",\"datePublished\":\"2004-08-09T17:27:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/xp123.com\\\/refactoring-thumbnails\\\/\"},\"wordCount\":141,\"publisher\":{\"@id\":\"https:\\\/\\\/xp123.com\\\/#\\\/schema\\\/person\\\/72474af0de7f699327fcff15bebf04c9\"},\"keywords\":[\"programmer\",\"refactoring\"],\"articleSection\":[\"xp123.com\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/xp123.com\\\/refactoring-thumbnails\\\/\",\"url\":\"https:\\\/\\\/xp123.com\\\/refactoring-thumbnails\\\/\",\"name\":\"Refactoring Thumbnails - XP123\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/xp123.com\\\/#website\"},\"datePublished\":\"2004-08-09T17:27:25+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/xp123.com\\\/refactoring-thumbnails\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/xp123.com\\\/refactoring-thumbnails\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/xp123.com\\\/refactoring-thumbnails\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/xp123.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Refactoring Thumbnails\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/xp123.com\\\/#website\",\"url\":\"https:\\\/\\\/xp123.com\\\/\",\"name\":\"XP123\",\"description\":\"Exploring Extreme Programming\",\"publisher\":{\"@id\":\"https:\\\/\\\/xp123.com\\\/#\\\/schema\\\/person\\\/72474af0de7f699327fcff15bebf04c9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/xp123.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/xp123.com\\\/#\\\/schema\\\/person\\\/72474af0de7f699327fcff15bebf04c9\",\"name\":\"Bill Wake\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/xp123.com\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/bill2012.jpeg\",\"url\":\"https:\\\/\\\/xp123.com\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/bill2012.jpeg\",\"contentUrl\":\"https:\\\/\\\/xp123.com\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/bill2012.jpeg\",\"width\":200,\"height\":200,\"caption\":\"Bill Wake\"},\"logo\":{\"@id\":\"https:\\\/\\\/xp123.com\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/bill2012.jpeg\"},\"sameAs\":[\"http:\\\/\\\/xp123.com\"],\"url\":\"https:\\\/\\\/xp123.com\\\/author\\\/bill\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Refactoring Thumbnails - XP123","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/xp123.com\/refactoring-thumbnails\/","twitter_misc":{"Written by":"Bill Wake","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/xp123.com\/refactoring-thumbnails\/#article","isPartOf":{"@id":"https:\/\/xp123.com\/refactoring-thumbnails\/"},"author":{"name":"Bill Wake","@id":"https:\/\/xp123.com\/#\/schema\/person\/72474af0de7f699327fcff15bebf04c9"},"headline":"Refactoring Thumbnails","datePublished":"2004-08-09T17:27:25+00:00","mainEntityOfPage":{"@id":"https:\/\/xp123.com\/refactoring-thumbnails\/"},"wordCount":141,"publisher":{"@id":"https:\/\/xp123.com\/#\/schema\/person\/72474af0de7f699327fcff15bebf04c9"},"keywords":["programmer","refactoring"],"articleSection":["xp123.com"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/xp123.com\/refactoring-thumbnails\/","url":"https:\/\/xp123.com\/refactoring-thumbnails\/","name":"Refactoring Thumbnails - XP123","isPartOf":{"@id":"https:\/\/xp123.com\/#website"},"datePublished":"2004-08-09T17:27:25+00:00","breadcrumb":{"@id":"https:\/\/xp123.com\/refactoring-thumbnails\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/xp123.com\/refactoring-thumbnails\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/xp123.com\/refactoring-thumbnails\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/xp123.com\/"},{"@type":"ListItem","position":2,"name":"Refactoring Thumbnails"}]},{"@type":"WebSite","@id":"https:\/\/xp123.com\/#website","url":"https:\/\/xp123.com\/","name":"XP123","description":"Exploring Extreme Programming","publisher":{"@id":"https:\/\/xp123.com\/#\/schema\/person\/72474af0de7f699327fcff15bebf04c9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/xp123.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/xp123.com\/#\/schema\/person\/72474af0de7f699327fcff15bebf04c9","name":"Bill Wake","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/xp123.com\/wp-content\/uploads\/2022\/09\/bill2012.jpeg","url":"https:\/\/xp123.com\/wp-content\/uploads\/2022\/09\/bill2012.jpeg","contentUrl":"https:\/\/xp123.com\/wp-content\/uploads\/2022\/09\/bill2012.jpeg","width":200,"height":200,"caption":"Bill Wake"},"logo":{"@id":"https:\/\/xp123.com\/wp-content\/uploads\/2022\/09\/bill2012.jpeg"},"sameAs":["http:\/\/xp123.com"],"url":"https:\/\/xp123.com\/author\/bill\/"}]}},"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/xp123.com\/wp-json\/wp\/v2\/posts\/738","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/xp123.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/xp123.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/xp123.com\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/xp123.com\/wp-json\/wp\/v2\/comments?post=738"}],"version-history":[{"count":0,"href":"https:\/\/xp123.com\/wp-json\/wp\/v2\/posts\/738\/revisions"}],"wp:attachment":[{"href":"https:\/\/xp123.com\/wp-json\/wp\/v2\/media?parent=738"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/xp123.com\/wp-json\/wp\/v2\/categories?post=738"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/xp123.com\/wp-json\/wp\/v2\/tags?post=738"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}