{"id":4,"date":"2007-04-26T11:34:56","date_gmt":"2007-04-26T09:34:56","guid":{"rendered":"http:\/\/blog.eweibel.net\/?p=4"},"modified":"2007-04-26T12:39:38","modified_gmt":"2007-04-26T10:39:38","slug":"object-oriented-programming-part-1","status":"publish","type":"post","link":"https:\/\/blog.eweibel.net\/?p=4","title":{"rendered":"Object oriented programming (Part 1)"},"content":{"rendered":"<p>Jonas showed me an interesting link on <a href=\"http:\/\/www.infoq.com\/presentations\/principles-agile-oo-design\">infoq<\/a>. Unfortunately, video shows not the hole presentation, but the things which you could learn are very essential for object oriented programming. I decided, that I want to blog more about that.<br \/>\nOne of the main principles is the <a href=\"http:\/\/www.objectmentor.com\/resources\/articles\/ocp.pdf\">open-close-principle<\/a> by Bertrand Meyer. But more about that and the others principles in a later post.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Jonas showed me an interesting link on infoq. Unfortunately, video shows not the hole presentation, but the things which you could learn are very essential for object oriented programming. I decided, that I want to blog more about that. One of the main principles is the open-close-principle by Bertrand Meyer. But more about that and the others principles in a later post.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[4],"tags":[],"class_list":["post-4","post","type-post","status-publish","format-standard","hentry","category-software-architecture"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/plOV9-4","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":600,"url":"https:\/\/blog.eweibel.net\/?p=600","url_meta":{"origin":4,"position":0},"title":"First developer meeting in Bern","author":"Patrick","date":"21. Jan 2010","format":false,"excerpt":"Today at the Fachhochschule happened the first developer meeting in Bern. The first tasks were the presentation of each participant and to collect the interests to discuss. After that Florian Kammermann presented his thoughts about software development. He\u2019s highly interested in business oriented software developing. That means for him, that\u2026","rel":"","context":"In &quot;Private&quot;","block_context":{"text":"Private","link":"https:\/\/blog.eweibel.net\/?cat=9"},"img":{"alt_text":"entwicklertreffen","src":"https:\/\/i0.wp.com\/blog.eweibel.net\/wp-content\/uploads\/entwicklertreffen_thumb.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":12,"url":"https:\/\/blog.eweibel.net\/?p=12","url_meta":{"origin":4,"position":1},"title":"Explicit interface implementation","author":"Patrick","date":"12. May 2007","format":false,"excerpt":"In C# you have a feature, which java don't have. It's called explicit interface implementation.The main use of this feature is to solve problems when you have to implement for example two interfaces which have both unfortunatly a same method signature: namespace testpw.ExplicitInterfaces{\u00a0\u00a0\u00a0 public interface IA\u00a0\u00a0\u00a0 {\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 void doAction();\u00a0\u00a0\u00a0 }\u00a0\u00a0\u00a0\u2026","rel":"","context":"In &quot;Good practices&quot;","block_context":{"text":"Good practices","link":"https:\/\/blog.eweibel.net\/?cat=5"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1248,"url":"https:\/\/blog.eweibel.net\/?p=1248","url_meta":{"origin":4,"position":2},"title":"VDD &#8211; the new programming manifesto?","author":"Patrick","date":"17. Jul 2012","format":false,"excerpt":"When I was at the NDC, I had also the possibility to visit with colleagues the city of Oslo. During a stop in front of a little shop, a colleague discovered a post card about Viking laws. When I read it, I was really surprised how well the laws fit\u2026","rel":"","context":"In &quot;Agile&quot;","block_context":{"text":"Agile","link":"https:\/\/blog.eweibel.net\/?cat=17"},"img":{"alt_text":"VikingLaws","src":"https:\/\/i0.wp.com\/blog.eweibel.net\/wp-content\/uploads\/VikingLaws_thumb1.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":1150,"url":"https:\/\/blog.eweibel.net\/?p=1150","url_meta":{"origin":4,"position":3},"title":"Education in companies","author":"Patrick","date":"31. Jan 2012","format":false,"excerpt":"I do a lot of trainings and courses in the company where I work currently. And I was also in a lot of courses too. But I think, that those courses or trainings don't work really. The reason, why is that they are just so called \"sheep dips\". Sheep dip\u2026","rel":"","context":"In &quot;Good practices&quot;","block_context":{"text":"Good practices","link":"https:\/\/blog.eweibel.net\/?cat=5"},"img":{"alt_text":"image","src":"https:\/\/i0.wp.com\/blog.eweibel.net\/wp-content\/uploads\/image_thumb19.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":5,"url":"https:\/\/blog.eweibel.net\/?p=5","url_meta":{"origin":4,"position":4},"title":"Programming several conditions in C#","author":"Patrick","date":"28. Apr 2007","format":false,"excerpt":"When you have to programme a piece of code which have several conditions you could do it in the following way: switch(a.name){\u00a0\u00a0\u00a0 case \"smith\":\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CallHim(); \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 break;\u00a0\u00a0\u00a0 case \"doyle\":\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 SendAMessageToHim();\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 break;\u00a0\u00a0\u00a0 default:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 throw new WriteNotReachableErrorException();} If you couldn't use constants as conditions, you will implement the logic in the following\u2026","rel":"","context":"In &quot;Good practices&quot;","block_context":{"text":"Good practices","link":"https:\/\/blog.eweibel.net\/?cat=5"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":281,"url":"https:\/\/blog.eweibel.net\/?p=281","url_meta":{"origin":4,"position":5},"title":"VB-stereotype: Are there programmers who fit any more?","author":"Patrick","date":"29. Jun 2009","format":false,"excerpt":"I saw recently the talk \"Comparing Java Web Framworks\" on Parleys.com and when the speaker talks about JSF, he used the word \"VB\". I was a little bit surprised, that also in the java world the VB-stereotype is known. But what about is this VB-stereotype? Are there programmers who fit\u2026","rel":"","context":"In &quot;.NET&quot;","block_context":{"text":".NET","link":"https:\/\/blog.eweibel.net\/?cat=13"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/blog.eweibel.net\/index.php?rest_route=\/wp\/v2\/posts\/4","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.eweibel.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.eweibel.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.eweibel.net\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.eweibel.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4"}],"version-history":[{"count":0,"href":"https:\/\/blog.eweibel.net\/index.php?rest_route=\/wp\/v2\/posts\/4\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.eweibel.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.eweibel.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.eweibel.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}