{"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":"Generics: Tasar\u0131m Arac\u0131 Olarak Nas\u0131l Kullan\u0131l\u0131r?","type":"rich","width":600,"height":338,"html":"<blockquote class=\"wp-embedded-content\" data-secret=\"HoDAlxcDas\"><a href=\"https:\/\/fatihsoysal.com\/blog\/generics-tasarim-araci-olarak-nasil-kullanilir\/\">Generics: Tasar\u0131m Arac\u0131 Olarak Nas\u0131l Kullan\u0131l\u0131r?<\/a><\/blockquote><iframe sandbox=\"allow-scripts\" security=\"restricted\" src=\"https:\/\/fatihsoysal.com\/blog\/generics-tasarim-araci-olarak-nasil-kullanilir\/embed\/#?secret=HoDAlxcDas\" width=\"600\" height=\"338\" title=\"&#8220;Generics: Tasar\u0131m Arac\u0131 Olarak Nas\u0131l Kullan\u0131l\u0131r?&#8221; &#8212; Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" data-secret=\"HoDAlxcDas\" 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":"Generics, yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde kar\u015f\u0131la\u015f\u0131lan kod tekrar\u0131 ve tip g\u00fcvensizli\u011fi sorunlar\u0131na zarif \u00e7\u00f6z\u00fcmler sunan g\u00fc\u00e7l\u00fc bir ara\u00e7t\u0131r. Bu makale, Generics'i sadece bir dil \u00f6zelli\u011fi olarak de\u011fil, ayn\u0131 zamanda yaz\u0131l\u0131m tasar\u0131m\u0131n\u0131z\u0131 k\u00f6kten iyile\u015ftirebilecek bir prensip olarak ele alacak. Peki, daha esnek, tip-g\u00fcvenli ve yeniden kullan\u0131labilir kodlar yazmak i\u00e7in Generics'i nas\u0131l bir tasar\u0131m arac\u0131 olarak kullanabiliriz?"}