{"version":"1.0","provider_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","provider_url":"https:\/\/fatihsoysal.com\/blog","author_name":"Fatih Soysal","author_url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/","title":"C# Liskov Prensibi: Yaz\u0131l\u0131mda Esnek ve Sa\u011flam Tasar\u0131m","type":"rich","width":600,"height":338,"html":"<blockquote class=\"wp-embedded-content\" data-secret=\"kzWimly8vt\"><a href=\"https:\/\/fatihsoysal.com\/blog\/c-liskov-prensibi-yazilimda-esnek-ve-saglam-tasarim\/\">C# Liskov Prensibi: Yaz\u0131l\u0131mda Esnek ve Sa\u011flam Tasar\u0131m<\/a><\/blockquote><iframe sandbox=\"allow-scripts\" security=\"restricted\" src=\"https:\/\/fatihsoysal.com\/blog\/c-liskov-prensibi-yazilimda-esnek-ve-saglam-tasarim\/embed\/#?secret=kzWimly8vt\" width=\"600\" height=\"338\" title=\"&#8220;C# Liskov Prensibi: Yaz\u0131l\u0131mda Esnek ve Sa\u011flam Tasar\u0131m&#8221; &#8212; Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" data-secret=\"kzWimly8vt\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" class=\"wp-embedded-content\"><\/iframe><script>\n\/*! This file is auto-generated *\/\n!function(d,l){\"use strict\";l.querySelector&&d.addEventListener&&\"undefined\"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!\/[^a-zA-Z0-9]\/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret=\"'+t.secret+'\"]'),o=l.querySelectorAll('blockquote[data-secret=\"'+t.secret+'\"]'),c=new RegExp(\"^https?:$\",\"i\"),i=0;i<o.length;i++)o[i].style.display=\"none\";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute(\"style\"),\"height\"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):\"link\"===t.message&&(r=new URL(s.getAttribute(\"src\")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(d.top.location.href=t.value))}},d.addEventListener(\"message\",d.wp.receiveEmbedMessage,!1),l.addEventListener(\"DOMContentLoaded\",function(){for(var e,t,s=l.querySelectorAll(\"iframe.wp-embedded-content\"),r=0;r<s.length;r++)(t=(e=s[r]).getAttribute(\"data-secret\"))||(t=Math.random().toString(36).substring(2,12),e.src+=\"#?secret=\"+t,e.setAttribute(\"data-secret\",t)),e.contentWindow.postMessage({message:\"ready\",secret:t},\"*\")},!1)))}(window,document);\n<\/script>\n","description":"Modern yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde, yazd\u0131\u011f\u0131m\u0131z kodun yaln\u0131zca \u00e7al\u0131\u015f\u0131r durumda olmas\u0131 yetmez; ayn\u0131 zamanda esnek, bak\u0131m\u0131 kolay ve geni\u015fletilebilir olmas\u0131 da hayati \u00f6nem ta\u015f\u0131r. Ancak bazen, her \u015feyin yolunda gitti\u011fini d\u00fc\u015f\u00fcnd\u00fc\u011f\u00fcm\u00fcz anlarda bile, bir s\u0131n\u0131f\u0131 de\u011fi\u015ftirdi\u011fimizde veya mevcut bir sisteme yeni bir \u00f6zellik ekledi\u011fimizde beklenmedik hatalar veya garip davran\u0131\u015flarla kar\u015f\u0131la\u015f\u0131r\u0131z. Bu durum, \u00f6zellikle nesne tabanl\u0131 programlaman\u0131n (OOP) temel ta\u015flar\u0131ndan olan kal\u0131t\u0131m\u0131 kullan\u0131rken s\u0131kl\u0131kla kar\u015f\u0131m\u0131za \u00e7\u0131kabilir. Peki, t\u00fcretilmi\u015f bir s\u0131n\u0131f\u0131n, temel s\u0131n\u0131f\u0131n yerine ge\u00e7ti\u011finde neden sorunlar ya\u015far\u0131z ve bu sorunlar\u0131 nas\u0131l \u00f6nleyebiliriz? \u0130\u015fte tam da bu noktada, SOLID prensiplerinin \u00f6nemli bir par\u00e7as\u0131 olan Liskov Yerine Ge\u00e7me Prensibi (LSP) devreye girer. Bu makale boyunca, LSP'nin ne oldu\u011funu, neden bu kadar \u00f6nemli oldu\u011funu ve C# projelerinizde daha sa\u011flam, esnek tasar\u0131mlar olu\u015fturmak i\u00e7in nas\u0131l uygulayaca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m ke\u015ffedece\u011fiz."}