{"id":8795,"date":"2025-01-06T14:00:14","date_gmt":"2025-01-06T11:00:14","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/"},"modified":"2025-01-06T14:00:14","modified_gmt":"2025-01-06T11:00:14","slug":"yazilim-tasariminda-acik-kapali-prensibi-ocp","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/","title":{"rendered":"Yaz\u0131l\u0131m Tasar\u0131m\u0131nda A\u00e7\u0131k\/Kapal\u0131 Prensibi (OCP)"},"content":{"rendered":"<p>Yaz\u0131l\u0131m Tasar\u0131m\u0131nda A\u00e7\u0131k\/Kapal\u0131 Prensibi (OCP)<\/p>\n<p>Merhaba de\u011ferli okuyucular! Bug\u00fcn, yaz\u0131l\u0131m tasar\u0131m\u0131nda olduk\u00e7a \u00f6nemli bir prensip olan A\u00e7\u0131k\/Kapal\u0131 Prensibi (Open\/Closed Principle &#8211; OCP) hakk\u0131nda detayl\u0131 bir makale yazaca\u011f\u0131m.  Bu prensip, yaz\u0131l\u0131m sistemlerimizin  esnek, s\u00fcrd\u00fcr\u00fclebilir ve kolayca geni\u015fletilebilir olmas\u0131n\u0131 sa\u011flayan temel ta\u015flardan biridir.  \u00d6ncelikle prensibi a\u00e7\u0131klayal\u0131m, ard\u0131ndan \u00f6rnekler ve faydalar\u0131n\u0131 inceleyelim.<\/p>\n<h2>OCP Nedir?<\/h2>\n<p>OCP, yaz\u0131l\u0131m varl\u0131klar\u0131n\u0131n (s\u0131n\u0131flar, mod\u00fcller, fonksiyonlar vs.) geni\u015flemeye a\u00e7\u0131k, ancak de\u011fi\u015fikli\u011fe kapal\u0131 olmas\u0131 gerekti\u011fini savunan bir prensiptir.  Ba\u015fka bir deyi\u015fle, yeni \u00f6zellik eklemek i\u00e7in mevcut kodumuzu de\u011fi\u015ftirmemeliyiz.  Bunun yerine, yeni davran\u0131\u015flar eklemek i\u00e7in mevcut kodumuzdan ba\u011f\u0131ms\u0131z yeni kod yazmal\u0131y\u0131z.  Bu sayede, mevcut sistemde de\u011fi\u015fiklik yapmadan yeni i\u015flevsellikler ekleyebilir ve riskleri minimize edebiliriz. <\/p>\n<p>Peki bu nas\u0131l m\u00fcmk\u00fcn olur?  Bir\u00e7ok tasar\u0131m deseni ve teknik OCP&#8217;yi uygulamam\u0131za yard\u0131mc\u0131 olur.  \u00d6rne\u011fin, soyutlama, polimorfizm ve aray\u00fczler gibi kavramlar OCP&#8217;nin uygulanmas\u0131nda kritik rol oynar.  Soyut s\u0131n\u0131flar ve aray\u00fczler, alt s\u0131n\u0131flar veya uygulamalar i\u00e7in bir s\u00f6zle\u015fme tan\u0131mlar.  Bu s\u00f6zle\u015fmeye uygun olarak yaz\u0131lm\u0131\u015f yeni s\u0131n\u0131flar, mevcut sisteme kolayca entegre edilebilir.<\/p>\n<h2>OCP&#8217;nin Faydalar\u0131<\/h2>\n<p>OCP&#8217;yi uygulaman\u0131n bir\u00e7ok avantaj\u0131 vard\u0131r.  Bunlardan en \u00f6nemlisi,  yaz\u0131l\u0131m\u0131n s\u00fcrd\u00fcr\u00fclebilirli\u011fini art\u0131rmas\u0131d\u0131r.  Mevcut kodda yap\u0131lan de\u011fi\u015fiklikler, beklenmedik hatalara ve problemlere yol a\u00e7abilir. OCP, bu riski azalt\u0131r.  Ayr\u0131ca,  geli\u015ftirme s\u00fcrecini h\u0131zland\u0131r\u0131r.  Yeni \u00f6zellikler eklemek i\u00e7in mevcut kodu de\u011fi\u015ftirmek yerine, yeni mod\u00fcller eklemek daha h\u0131zl\u0131 ve daha g\u00fcvenli bir y\u00f6ntemdir.  Sonu\u00e7 olarak, yaz\u0131l\u0131m\u0131n daha esnek ve bak\u0131m\u0131 daha kolay hale gelir.<\/p>\n<h2>OCP Uygulamas\u0131: Bir \u00d6rnek<\/h2>\n<p>\u015eimdi, OCP&#8217;nin nas\u0131l uygulanabilece\u011fine dair basit bir \u00f6rne\u011fe bakal\u0131m.  Diyelim ki bir \u00f6deme sistemi geli\u015ftiriyoruz.  Ba\u015flang\u0131\u00e7ta sadece kredi kart\u0131 ile \u00f6deme kabul ediyoruz.  Ancak ileride farkl\u0131 \u00f6deme y\u00f6ntemleri (PayPal, Apple Pay vb.) eklemek isteyebiliriz.  OCP prensibine g\u00f6re, her \u00f6deme y\u00f6ntemi i\u00e7in ayr\u0131 bir s\u0131n\u0131f olu\u015fturur ve bunlar\u0131 bir aray\u00fcz \u00fczerinden y\u00f6netiriz.<\/p>\n<pre><code class=\"language-java\">\n\/\/ \u00d6deme y\u00f6ntemi aray\u00fcz\u00fc\ninterface \u00d6demeY\u00f6ntemi {\n    boolean \u00f6demeYap(double tutar);\n}\n\n\/\/ Kredi kart\u0131 ile \u00f6deme s\u0131n\u0131f\u0131\nclass KrediKart\u0131\u00d6deme implements \u00d6demeY\u00f6ntemi {\n    @Override\n    public boolean \u00f6demeYap(double tutar) {\n        \/\/ Kredi kart\u0131 ile \u00f6deme i\u015flemi\n        return true;\n    }\n}\n\n\/\/ PayPal ile \u00f6deme s\u0131n\u0131f\u0131\nclass PayPal\u00d6deme implements \u00d6demeY\u00f6ntemi {\n    @Override\n    public boolean \u00f6demeYap(double tutar) {\n        \/\/ PayPal ile \u00f6deme i\u015flemi\n        return true;\n    }\n}\n\n\/\/ \u00d6deme i\u015flemini y\u00f6neten s\u0131n\u0131f\nclass \u00d6deme\u0130\u015flemi {\n    private \u00d6demeY\u00f6ntemi \u00f6demeY\u00f6ntemi;\n\n    public \u00d6deme\u0130\u015flemi(\u00d6demeY\u00f6ntemi \u00f6demeY\u00f6ntemi) {\n        this.\u00f6demeY\u00f6ntemi = \u00f6demeY\u00f6ntemi;\n    }\n\n    public boolean \u00f6demeAl(double tutar) {\n        return \u00f6demeY\u00f6ntemi.\u00f6demeYap(tutar);\n    }\n}\n<\/code><\/pre>\n<p>Bu \u00f6rnekte, yeni bir \u00f6deme y\u00f6ntemi eklemek i\u00e7in mevcut <code>\u00d6deme\u0130\u015flemi<\/code> s\u0131n\u0131f\u0131n\u0131 de\u011fi\u015ftirmemize gerek yoktur.  Sadece yeni bir s\u0131n\u0131f olu\u015fturup <code>\u00d6demeY\u00f6ntemi<\/code> aray\u00fcz\u00fcn\u00fc uygular\u0131z.  Bu sayede, sistemimizi kolayca geni\u015fletebiliriz.<\/p>\n<h2>Sonu\u00e7<\/h2>\n<p>A\u00e7\u0131k\/Kapal\u0131 Prensibi, yaz\u0131l\u0131m geli\u015ftirmede  kaliteyi ve s\u00fcrd\u00fcr\u00fclebilirli\u011fi art\u0131rmak i\u00e7in \u00e7ok \u00f6nemlidir.  Bu prensibi projelerimizde uygulamaya \u00e7al\u0131\u015farak,  daha esnek,  bak\u0131m\u0131 daha kolay ve gelece\u011fe daha uyumlu sistemler geli\u015ftirebiliriz.  Daha fazla bilgi i\u00e7in <a href=\"https:\/\/dev.to\/thrsouza\/ocp-o-principio-abertofechado-12f5\">bu \u0130ngilizce makaleye<\/a> ve  <a href=\"https:\/\/fatihsoysal.com\">kendi web sitemi<\/a> ziyaret edebilirsiniz.<\/p>\n<p>#Etiketler: OCP, A\u00e7\u0131k\/Kapal\u0131 Prensibi, Yaz\u0131l\u0131m Tasar\u0131m\u0131, Nesne Y\u00f6nelimli Programlama, OOP, Soyutlama, Polimorfizm, Aray\u00fcz,  S\u00fcrd\u00fcr\u00fclebilirlik, Esneklik, Yaz\u0131l\u0131m Geli\u015ftirme<\/p>\n","protected":false},"excerpt":{"rendered":"Yaz\u0131l\u0131m Tasar\u0131m\u0131nda A\u00e7\u0131k\/Kapal\u0131 Prensibi (OCP) Merhaba de\u011ferli okuyucular! Bug\u00fcn, yaz\u0131l\u0131m tasar\u0131m\u0131nda olduk\u00e7a \u00f6nemli bir prensip olan A\u00e7\u0131k\/Kapal\u0131 Prensibi&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-8795","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Yaz\u0131l\u0131m Tasar\u0131m\u0131nda A\u00e7\u0131k\/Kapal\u0131 Prensibi (OCP)<\/title>\n<meta name=\"description\" content=\"Merhaba de\u011ferli okuyucular! Bug\u00fcn, yaz\u0131l\u0131m tasar\u0131m\u0131nda olduk\u00e7a \u00f6nemli bir prensip olan A\u00e7\u0131k\/Kapal\u0131 Prensibi (Open\/Closed Principle - OCP) hakk\u0131nda detayl\u0131 bir makale yazaca\u011f\u0131m. Bu prensip, yaz\u0131l\u0131m sistemlerimizin esnek, s\u00fcrd\u00fcr\u00fclebilir ve kolayca geni\u015fletilebilir olmas\u0131n\u0131 sa\u011flayan temel ta\u015flardan biridir. \u00d6ncelikle prensibi a\u00e7\u0131klayal\u0131m, ard\u0131ndan \u00f6rnekler ve faydalar\u0131n\u0131 inceleyelim.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Yaz\u0131l\u0131m Tasar\u0131m\u0131nda A\u00e7\u0131k\/Kapal\u0131 Prensibi (OCP)\" \/>\n<meta property=\"og:description\" content=\"Merhaba de\u011ferli okuyucular! Bug\u00fcn, yaz\u0131l\u0131m tasar\u0131m\u0131nda olduk\u00e7a \u00f6nemli bir prensip olan A\u00e7\u0131k\/Kapal\u0131 Prensibi (Open\/Closed Principle - OCP) hakk\u0131nda detayl\u0131 bir makale yazaca\u011f\u0131m. Bu prensip, yaz\u0131l\u0131m sistemlerimizin esnek, s\u00fcrd\u00fcr\u00fclebilir ve kolayca geni\u015fletilebilir olmas\u0131n\u0131 sa\u011flayan temel ta\u015flardan biridir. \u00d6ncelikle prensibi a\u00e7\u0131klayal\u0131m, ard\u0131ndan \u00f6rnekler ve faydalar\u0131n\u0131 inceleyelim.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-01-06T11:00:14+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Yaz\u0131l\u0131m Tasar\u0131m\u0131nda A\u00e7\u0131k\/Kapal\u0131 Prensibi (OCP)\",\"datePublished\":\"2025-01-06T11:00:14+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/\"},\"wordCount\":544,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/\",\"name\":\"Yaz\u0131l\u0131m Tasar\u0131m\u0131nda A\u00e7\u0131k\/Kapal\u0131 Prensibi (OCP)\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-01-06T11:00:14+00:00\",\"description\":\"Merhaba de\u011ferli okuyucular! Bug\u00fcn, yaz\u0131l\u0131m tasar\u0131m\u0131nda olduk\u00e7a \u00f6nemli bir prensip olan A\u00e7\u0131k\/Kapal\u0131 Prensibi (Open\/Closed Principle - OCP) hakk\u0131nda detayl\u0131 bir makale yazaca\u011f\u0131m. Bu prensip, yaz\u0131l\u0131m sistemlerimizin esnek, s\u00fcrd\u00fcr\u00fclebilir ve kolayca geni\u015fletilebilir olmas\u0131n\u0131 sa\u011flayan temel ta\u015flardan biridir. \u00d6ncelikle prensibi a\u00e7\u0131klayal\u0131m, ard\u0131ndan \u00f6rnekler ve faydalar\u0131n\u0131 inceleyelim.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Yaz\u0131l\u0131m Tasar\u0131m\u0131nda A\u00e7\u0131k\/Kapal\u0131 Prensibi (OCP)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Yaz\u0131l\u0131m Tasar\u0131m\u0131nda A\u00e7\u0131k\/Kapal\u0131 Prensibi (OCP)","description":"Merhaba de\u011ferli okuyucular! Bug\u00fcn, yaz\u0131l\u0131m tasar\u0131m\u0131nda olduk\u00e7a \u00f6nemli bir prensip olan A\u00e7\u0131k\/Kapal\u0131 Prensibi (Open\/Closed Principle - OCP) hakk\u0131nda detayl\u0131 bir makale yazaca\u011f\u0131m. Bu prensip, yaz\u0131l\u0131m sistemlerimizin esnek, s\u00fcrd\u00fcr\u00fclebilir ve kolayca geni\u015fletilebilir olmas\u0131n\u0131 sa\u011flayan temel ta\u015flardan biridir. \u00d6ncelikle prensibi a\u00e7\u0131klayal\u0131m, ard\u0131ndan \u00f6rnekler ve faydalar\u0131n\u0131 inceleyelim.","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:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/","og_locale":"tr_TR","og_type":"article","og_title":"Yaz\u0131l\u0131m Tasar\u0131m\u0131nda A\u00e7\u0131k\/Kapal\u0131 Prensibi (OCP)","og_description":"Merhaba de\u011ferli okuyucular! Bug\u00fcn, yaz\u0131l\u0131m tasar\u0131m\u0131nda olduk\u00e7a \u00f6nemli bir prensip olan A\u00e7\u0131k\/Kapal\u0131 Prensibi (Open\/Closed Principle - OCP) hakk\u0131nda detayl\u0131 bir makale yazaca\u011f\u0131m. Bu prensip, yaz\u0131l\u0131m sistemlerimizin esnek, s\u00fcrd\u00fcr\u00fclebilir ve kolayca geni\u015fletilebilir olmas\u0131n\u0131 sa\u011flayan temel ta\u015flardan biridir. \u00d6ncelikle prensibi a\u00e7\u0131klayal\u0131m, ard\u0131ndan \u00f6rnekler ve faydalar\u0131n\u0131 inceleyelim.","og_url":"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-01-06T11:00:14+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"3 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Yaz\u0131l\u0131m Tasar\u0131m\u0131nda A\u00e7\u0131k\/Kapal\u0131 Prensibi (OCP)","datePublished":"2025-01-06T11:00:14+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/"},"wordCount":544,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/","url":"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/","name":"Yaz\u0131l\u0131m Tasar\u0131m\u0131nda A\u00e7\u0131k\/Kapal\u0131 Prensibi (OCP)","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-01-06T11:00:14+00:00","description":"Merhaba de\u011ferli okuyucular! Bug\u00fcn, yaz\u0131l\u0131m tasar\u0131m\u0131nda olduk\u00e7a \u00f6nemli bir prensip olan A\u00e7\u0131k\/Kapal\u0131 Prensibi (Open\/Closed Principle - OCP) hakk\u0131nda detayl\u0131 bir makale yazaca\u011f\u0131m. Bu prensip, yaz\u0131l\u0131m sistemlerimizin esnek, s\u00fcrd\u00fcr\u00fclebilir ve kolayca geni\u015fletilebilir olmas\u0131n\u0131 sa\u011flayan temel ta\u015flardan biridir. \u00d6ncelikle prensibi a\u00e7\u0131klayal\u0131m, ard\u0131ndan \u00f6rnekler ve faydalar\u0131n\u0131 inceleyelim.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/yazilim-tasariminda-acik-kapali-prensibi-ocp\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Yaz\u0131l\u0131m Tasar\u0131m\u0131nda A\u00e7\u0131k\/Kapal\u0131 Prensibi (OCP)"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/8795","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=8795"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/8795\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=8795"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=8795"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=8795"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}