{"id":126,"date":"2014-07-21T22:01:31","date_gmt":"2014-07-21T19:01:31","guid":{"rendered":"https:\/\/gokhan-gokalp.com\/?p=126"},"modified":"2018-02-17T09:37:49","modified_gmt":"2018-02-17T06:37:49","slug":"abstract-ve-interface-nedir-farklari-nelerdir","status":"publish","type":"post","link":"https:\/\/gokhan-gokalp.com\/tr\/abstract-ve-interface-nedir-farklari-nelerdir\/","title":{"rendered":"Abstract ve Interface Nedir? Farklar\u0131 nelerdir?"},"content":{"rendered":"<p>Merhaba arkada\u015flar.<\/p>\n<p>Zaman zaman ilk ba\u015flarda hepimizin kafas\u0131n\u0131 kar\u0131\u015ft\u0131rd\u0131\u011f\u0131na eminim bu ikilinin. :) Ne zaman abstract kullanmal\u0131y\u0131m, ne zaman interface kullanmal\u0131y\u0131m vb. tarz\u0131 sorular.<\/p>\n<p><a href=\"\/wp-content\/uploads\/2014\/07\/abstract-class-interfaces.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-2187 lazyload\" data-src=\"\/wp-content\/uploads\/2014\/07\/abstract-class-interfaces.png\" alt=\"\" width=\"414\" height=\"289\" data-srcset=\"https:\/\/gokhan-gokalp.com\/wp-content\/uploads\/2014\/07\/abstract-class-interfaces.png 414w, https:\/\/gokhan-gokalp.com\/wp-content\/uploads\/2014\/07\/abstract-class-interfaces-300x209.png 300w\" data-sizes=\"(max-width: 414px) 100vw, 414px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 414px; --smush-placeholder-aspect-ratio: 414\/289;\" \/><\/a><\/p>\n<p>\u015eimdi gelelim bu ikilinin ne olduklar\u0131na.<\/p>\n<p>Bu ikili, nesne\u00a0y\u00f6nelimli\u00a0programlamada (OOP)\u00a0s\u0131n\u0131flar\u0131 soyutlamaya yarayan y\u00f6ntemlerden ikisidir. Bu ikisinin ortak olduklar\u0131 ve farkl\u0131 olduklar\u0131 y\u00f6nler vard\u0131r.<\/p>\n<p>Haydi bu y\u00f6nlere bir g\u00f6z atal\u0131m.<\/p>\n<h4>1) Abstract<\/h4>\n<p>Yazd\u0131\u011f\u0131m\u0131z s\u0131n\u0131flar aras\u0131nda inheritance(kal\u0131t\u0131m) uygularken kullan\u0131r\u0131z. Alt s\u0131n\u0131flar <strong>abstract<\/strong> s\u0131n\u0131f\u0131 inherit al\u0131rlar. Abstract class i\u00e7indeki implement edilmi\u015f t\u00fcm method&#8217;lar di\u011fer class\u2019da da ge\u00e7erlidir.<\/p>\n<p>Abstract classdan implement etti\u011fimiz bir class i\u00e7erisinde, sadece abstract class i\u00e7erisinde <strong>abstract<\/strong> <strong>olarak tan\u0131mlanm\u0131\u015f<\/strong> method, property gibi vb.lerini implement etmek <strong>mecburidir<\/strong>. Di\u011fer method&#8217;lar zaten tan\u0131ml\u0131d\u0131r ve<strong> implement edilmesi mecburi de\u011fildir.<\/strong><\/p>\n<p>Abstract s\u0131n\u0131flar genelde <strong>is-a<\/strong> ili\u015fkilerinde kullan\u0131l\u0131r.<br \/>\n\u00d6rnek vermek gerekirse;<\/p>\n<blockquote><p>+Ferrari <strong>is-a <\/strong>Araba<\/p><\/blockquote>\n<p>Ferrari bir arabad\u0131r ve araban\u0131n sahip oldu\u011fu<strong> t\u00fcm \u00f6zelliklere sahiptir.<\/strong><\/p>\n<p>Hemen\u00a0bir \u00f6rnekle peki\u015fmesini sa\u011flayal\u0131m.<\/p>\n<pre class=\"lang:c# decode:true \">    abstract class Araba\r\n    {\r\n        public string Marka { get; set; }\r\n        public int VitesSayisi { get; set; }\r\n        \/\/ K\u0131sacas\u0131 arabalar\u0131n sahip olduklar\u0131 t\u00fcm ortak \u00f6zellikler\r\n\r\n        public abstract void MaximumHiz();\r\n        \/\/ Override edilecek methodumuz \u00e7\u00fcnk\u00fc her araban\u0131n kendine \u00f6zg\u00fc bir maximum h\u0131z bilgisi vard\u0131r\r\n    }\r\n\r\n    \/\/\/ &lt;summary&gt;\r\n    \/\/\/ Ferrari'yi Araba s\u0131n\u0131f\u0131m\u0131zdan inherit al\u0131yoruz.\r\n    \/\/\/ &lt;\/summary&gt;\r\n    class Ferrari : Araba\r\n    {\r\n        \/\/\/ &lt;summary&gt;\r\n        \/\/\/ Maximum h\u0131z bilgimizi override ediyoruz ve Araba abstract s\u0131n\u0131f\u0131m\u0131z\u0131n sahip oldu\u011fu t\u00fcm \u00f6zelliklere sahip oluyor.\r\n        \/\/\/ &lt;\/summary&gt;\r\n        public override void MaximumHiz()\r\n        {\r\n            Console.WriteLine(\"Ferrari'nin maximum h\u0131z\u0131: 300\");\r\n        }\r\n    }<\/pre>\n<p>\u00d6rne\u011fimizden de anla\u015f\u0131laca\u011f\u0131 gibi araba \u00f6rne\u011fimizden yola \u00e7\u0131karak &#8220;<em>Araba&#8221;<\/em> isminde bir abstract s\u0131n\u0131f olu\u015fturuyoruz ve &#8220;<em>Ferrari<\/em>&#8221; bu s\u0131n\u0131fdan inherit alarak Arabalar\u0131n sahip olmu\u015f olduklar\u0131 t\u00fcm ortak \u00f6zelliklere sahip olmu\u015f oluyor.<\/p>\n<blockquote><p><strong>NOT<\/strong>: <strong>virtual<\/strong> keyi ilede abstract s\u0131n\u0131f i\u00e7erisinde tan\u0131mlanm\u0131\u015f bir method, alt s\u0131n\u0131flar taraf\u0131ndan <strong>override<\/strong> (ezilebilir) edilebilir hale getirebilmek m\u00fcmk\u00fcnd\u00fcr ve akl\u0131m\u0131z\u0131n bir k\u00f6\u015fesinde dursun\u00a0bir class sadece <strong>bir<\/strong> abstract class\u2019\u0131 implemente edebilir.<\/p><\/blockquote>\n<p><strong>Abstract s\u0131n\u0131f\u0131n genel \u00f6zelliklerini s\u0131ralayacak olursak;<\/strong><\/p>\n<ol>\n<li>Kod i\u00e7erisinde \u201c<strong>new<\/strong>\u201d anahtar s\u00f6zc\u00fc\u011f\u00fc ile <strong>olu\u015fturulamazlar<\/strong>.<\/li>\n<li>Bir s\u0131n\u0131f sadece <strong>bir<\/strong> abstract s\u0131n\u0131f\u0131 inherit alabilir.<\/li>\n<li>Inherit al\u0131cak s\u0131n\u0131flar aras\u0131nda genelde \u201c<strong>is-a<\/strong>\u201d ili\u015fkisi vard\u0131r.<\/li>\n<li>Abstract s\u0131n\u0131fda method ve de\u011fi\u015fkenler tan\u0131mlanabilir.<\/li>\n<\/ol>\n<h4>2) Interface<\/h4>\n<p>Interface s\u0131n\u0131f\u0131nda <strong>sadece method tan\u0131mlar\u0131<\/strong> bulunur. \u0130\u00e7lerine kod par\u00e7ac\u0131\u011f\u0131 <strong>yaz\u0131lmaz<\/strong>. \u0130\u00e7erisinde tan\u0131mlanan method tan\u0131mlar\u0131 bu interface&#8217;i implemente edecek di\u011fer s\u0131n\u0131flar taraf\u0131ndan implement edilmesi <strong>zorunludur<\/strong>.<\/p>\n<p>Interfaceler ba\u015fka bir interface den <strong>inherit<\/strong> olabilirler.<br \/>\nInterface\u2019ler genelde <strong>can-do<\/strong> ili\u015fkisi vard\u0131r.<\/p>\n<p>\u00d6rnek vermek gerekirse;<\/p>\n<blockquote><p>+Ferrari <strong>can-do<\/strong> drive itself<\/p><\/blockquote>\n<p>Ferrari kendi kendini s\u00fcrebilir (Biraz sa\u00e7ma bir \u00f6rnek oldu ama) gibi yapabilece\u011fi ek \u00f6zellikler interface olarak tan\u0131mlan\u0131p, implemente edilebilir.<\/p>\n<p>Konuyu fazla uzatmadan hemen kald\u0131\u011f\u0131m\u0131z basit \u00f6rne\u011fimizle devam edelim:<\/p>\n<pre class=\"lang:c# decode:true \">   \/\/\/ &lt;summary&gt;\r\n    \/\/\/ Baz\u0131 arabalar cabriolet olabilir hepsinin ortak bir \u00f6zelli\u011fi de\u011fildir.\r\n    \/\/\/ &lt;\/summary&gt;\r\n    interface ICabrioled\r\n    {\r\n        void TavanTipi();\r\n    }\r\n\r\n    abstract class Araba\r\n    {\r\n        public string Marka { get; set; }\r\n        public int VitesSayisi { get; set; }\r\n        \/\/ K\u0131sacas\u0131 arabalar\u0131n sahip olduklar\u0131 t\u00fcm ortak \u00f6zellikler\r\n\r\n        public abstract void MaximumHiz();\r\n        \/\/ Override edilecek methodumuz \u00e7\u00fcnk\u00fc her araban\u0131n kendine \u00f6zg\u00fc bir maximum h\u0131z bilgisi vard\u0131r\r\n    }\r\n\r\n    \/\/\/ &lt;summary&gt;\r\n    \/\/\/ Ferrari'yi Araba s\u0131n\u0131f\u0131m\u0131zdan inherit al\u0131yoruz ve yeniden \u015fekillendiriyoruz. Ferrarimiz cabriolet ve ICabriolet \u00f6zelli\u011fini implemente ediyoruz.\r\n    \/\/\/ &lt;\/summary&gt;\r\n    class Ferrari : Araba, ICabrioled\r\n    {\r\n        \/\/\/ &lt;summary&gt;\r\n        \/\/\/ Maximum h\u0131z bilgimizi override ediyoruz ve Araba abstract s\u0131n\u0131f\u0131m\u0131z\u0131n sahip oldu\u011fu t\u00fcm \u00f6zelliklere sahip oluyor.\r\n        \/\/\/ &lt;\/summary&gt;\r\n        public override void MaximumHiz()\r\n        {\r\n            Console.WriteLine(\"Ferrari'nin maximum h\u0131z\u0131: 300\");\r\n        }\r\n\r\n        \/\/\/ &lt;summary&gt;\r\n        \/\/\/ ICabrioled'i implemente etti\u011fimiz i\u00e7in TavanTipi methodumuzu tan\u0131ml\u0131yoruz.\r\n        \/\/\/ &lt;\/summary&gt;\r\n        public void TavanTipi()\r\n        {\r\n            Console.WriteLine(\"Metal tavan\");\r\n        }\r\n    }<\/pre>\n<p>\u00d6rne\u011fimizi basit ve anla\u015f\u0131l\u0131r tutmaya \u00e7al\u0131\u015f\u0131rken biraz sa\u00e7malam\u0131\u015f olabilirim, idare edin. :) A\u00e7\u0131klamak gerekirse her arac\u0131m\u0131z cabriolet olamayaca\u011f\u0131 i\u00e7in bunu interface olarak tan\u0131mlam\u0131\u015ft\u0131k. &#8220;<em>Ferrari<\/em>&#8221; gibi bir arac\u0131m\u0131z\u0131 varsayd\u0131k ve buna &#8220;<em>ICabrioled<\/em>&#8221; interface&#8217;imizi implemente ettik.<\/p>\n<p>Ne demi\u015ftik? Interface&#8217;ler i\u00e7erisine kod par\u00e7ac\u0131klar\u0131 yaz\u0131lmaz, sadece method tan\u0131mlar\u0131 bulunur. Bunuda g\u00f6sterebilmek ama\u00e7l\u0131 sadece &#8220;<em>TavanTipi<\/em>&#8221; isminde bir tan\u0131mlama yapt\u0131k ve\u00a0&#8220;<em>Metal tavan<\/em>&#8221; olarak belirttik.<\/p>\n<p><strong>Interface s\u0131n\u0131f\u0131n\u0131n genel \u00f6zelliklerini s\u0131ralayacak olursak;<\/strong><\/p>\n<ol>\n<li>Kod i\u00e7erisinde \u201c<strong>new<\/strong>\u201d anahtar s\u00f6zc\u00fc\u011f\u00fc ile <strong>olu\u015fturulamazlar<\/strong>.<\/li>\n<li>Bir s\u0131n\u0131f <strong>birden<\/strong> fazla interface implemente <strong>edebilir<\/strong>.<\/li>\n<li>Implemente edicek s\u0131n\u0131flar aras\u0131nda genelde \u201c<strong>can-do<\/strong>\u201d ili\u015fkisi vard\u0131r.<\/li>\n<li>Interface i\u00e7erisine sadece bo\u015f method&#8217;lar tan\u0131mlanabilir.<\/li>\n<\/ol>\n<p>Gelecek makalelerde g\u00f6r\u00fc\u015fmek dile\u011fiyle. :)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Merhaba arkada\u015flar. Zaman zaman ilk ba\u015flarda hepimizin kafas\u0131n\u0131 kar\u0131\u015ft\u0131rd\u0131\u011f\u0131na eminim bu ikilinin. :) Ne zaman abstract kullanmal\u0131y\u0131m, ne zaman interface kullanmal\u0131y\u0131m vb. tarz\u0131 sorular. \u015eimdi gelelim bu ikilinin ne olduklar\u0131na. Bu ikili, nesne\u00a0y\u00f6nelimli\u00a0programlamada (OOP)\u00a0s\u0131n\u0131flar\u0131 soyutlamaya yarayan y\u00f6ntemlerden ikisidir. Bu ikisinin ortak olduklar\u0131 ve farkl\u0131 olduklar\u0131&#8230;<\/p>\n<div class=\"more-link-wrapper\"><a class=\"more-link\" href=\"https:\/\/gokhan-gokalp.com\/tr\/abstract-ve-interface-nedir-farklari-nelerdir\/\">Devam\u0131n\u0131 okuyun<span class=\"screen-reader-text\">Abstract ve Interface Nedir? Farklar\u0131 nelerdir?<\/span><\/a><\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,46],"tags":[19,20,13,14,15],"class_list":["post-126","post","type-post","status-publish","format-standard","hentry","category-net","category-nesne-yonelimli-programlama-object-oriented-programming","tag-abstract","tag-interface","tag-nesne-yonelimli-programlama","tag-object-oriented-programming","tag-oop","entry"],"translation":{"provider":"WPGlobus","version":"3.0.2","language":"tr","enabled_languages":["en","tr"],"languages":{"en":{"title":true,"content":true,"excerpt":false},"tr":{"title":false,"content":false,"excerpt":false}}},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Abstract ve Interface Nedir? Farklar\u0131 nelerdir? - G\u00f6khan G\u00f6kalp<\/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:\/\/gokhan-gokalp.com\/abstract-ve-interface-nedir-farklari-nelerdir\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Abstract ve Interface Nedir? Farklar\u0131 nelerdir? - G\u00f6khan G\u00f6kalp\" \/>\n<meta property=\"og:url\" content=\"https:\/\/gokhan-gokalp.com\/abstract-ve-interface-nedir-farklari-nelerdir\/\" \/>\n<meta property=\"og:site_name\" content=\"G\u00f6khan G\u00f6kalp\" \/>\n<meta property=\"article:published_time\" content=\"2014-07-21T19:01:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-02-17T06:37:49+00:00\" \/>\n<meta name=\"author\" content=\"G\u00f6khan G\u00f6kalp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"G\u00f6khan G\u00f6kalp\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/abstract-ve-interface-nedir-farklari-nelerdir\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/abstract-ve-interface-nedir-farklari-nelerdir\\\/\"},\"author\":{\"name\":\"G\u00f6khan G\u00f6kalp\",\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/#\\\/schema\\\/person\\\/7e2a7fa98babd22a5fdae563c4b8cdbe\"},\"headline\":\"Abstract ve Interface Nedir? Farklar\u0131 nelerdir?\",\"datePublished\":\"2014-07-21T19:01:31+00:00\",\"dateModified\":\"2018-02-17T06:37:49+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/abstract-ve-interface-nedir-farklari-nelerdir\\\/\"},\"wordCount\":590,\"commentCount\":19,\"publisher\":{\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/#\\\/schema\\\/person\\\/7e2a7fa98babd22a5fdae563c4b8cdbe\"},\"keywords\":[\"abstract\",\"interface\",\"Nesne Y\u00f6nelimli Programlama\",\"Object Oriented Programming\",\"OOP\"],\"articleSection\":[\".NET\",\"Nesne Y\u00f6nelimli Programlama (Object Oriented Programming)\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/gokhan-gokalp.com\\\/abstract-ve-interface-nedir-farklari-nelerdir\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/abstract-ve-interface-nedir-farklari-nelerdir\\\/\",\"url\":\"https:\\\/\\\/gokhan-gokalp.com\\\/abstract-ve-interface-nedir-farklari-nelerdir\\\/\",\"name\":\"Abstract ve Interface Nedir? Farklar\u0131 nelerdir? - G\u00f6khan G\u00f6kalp\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/#website\"},\"datePublished\":\"2014-07-21T19:01:31+00:00\",\"dateModified\":\"2018-02-17T06:37:49+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/abstract-ve-interface-nedir-farklari-nelerdir\\\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/gokhan-gokalp.com\\\/abstract-ve-interface-nedir-farklari-nelerdir\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/abstract-ve-interface-nedir-farklari-nelerdir\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/gokhan-gokalp.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Abstract ve Interface Nedir? Farklar\u0131 nelerdir?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/#website\",\"url\":\"https:\\\/\\\/gokhan-gokalp.com\\\/\",\"name\":\"G\u00f6khan G\u00f6kalp\",\"description\":\"C# &amp; Python lover\",\"publisher\":{\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/#\\\/schema\\\/person\\\/7e2a7fa98babd22a5fdae563c4b8cdbe\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/gokhan-gokalp.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/#\\\/schema\\\/person\\\/7e2a7fa98babd22a5fdae563c4b8cdbe\",\"name\":\"G\u00f6khan G\u00f6kalp\",\"pronouns\":\"he\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/wp-content\\\/litespeed\\\/avatar\\\/e645f66b6264ced10d7b6d8b1f85509b.jpg?ver=1776170659\",\"url\":\"https:\\\/\\\/gokhan-gokalp.com\\\/wp-content\\\/litespeed\\\/avatar\\\/e645f66b6264ced10d7b6d8b1f85509b.jpg?ver=1776170659\",\"contentUrl\":\"https:\\\/\\\/gokhan-gokalp.com\\\/wp-content\\\/litespeed\\\/avatar\\\/e645f66b6264ced10d7b6d8b1f85509b.jpg?ver=1776170659\",\"caption\":\"G\u00f6khan G\u00f6kalp\"},\"logo\":{\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/wp-content\\\/litespeed\\\/avatar\\\/e645f66b6264ced10d7b6d8b1f85509b.jpg?ver=1776170659\"},\"sameAs\":[\"https:\\\/\\\/gokhan-gokalp.com\"],\"url\":\"https:\\\/\\\/gokhan-gokalp.com\\\/tr\\\/author\\\/gok-gokalp\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Abstract ve Interface Nedir? Farklar\u0131 nelerdir? - G\u00f6khan G\u00f6kalp","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:\/\/gokhan-gokalp.com\/abstract-ve-interface-nedir-farklari-nelerdir\/","og_locale":"tr_TR","og_type":"article","og_title":"Abstract ve Interface Nedir? Farklar\u0131 nelerdir? - G\u00f6khan G\u00f6kalp","og_url":"https:\/\/gokhan-gokalp.com\/abstract-ve-interface-nedir-farklari-nelerdir\/","og_site_name":"G\u00f6khan G\u00f6kalp","article_published_time":"2014-07-21T19:01:31+00:00","article_modified_time":"2018-02-17T06:37:49+00:00","author":"G\u00f6khan G\u00f6kalp","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"G\u00f6khan G\u00f6kalp","Tahmini okuma s\u00fcresi":"4 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/gokhan-gokalp.com\/abstract-ve-interface-nedir-farklari-nelerdir\/#article","isPartOf":{"@id":"https:\/\/gokhan-gokalp.com\/abstract-ve-interface-nedir-farklari-nelerdir\/"},"author":{"name":"G\u00f6khan G\u00f6kalp","@id":"https:\/\/gokhan-gokalp.com\/#\/schema\/person\/7e2a7fa98babd22a5fdae563c4b8cdbe"},"headline":"Abstract ve Interface Nedir? Farklar\u0131 nelerdir?","datePublished":"2014-07-21T19:01:31+00:00","dateModified":"2018-02-17T06:37:49+00:00","mainEntityOfPage":{"@id":"https:\/\/gokhan-gokalp.com\/abstract-ve-interface-nedir-farklari-nelerdir\/"},"wordCount":590,"commentCount":19,"publisher":{"@id":"https:\/\/gokhan-gokalp.com\/#\/schema\/person\/7e2a7fa98babd22a5fdae563c4b8cdbe"},"keywords":["abstract","interface","Nesne Y\u00f6nelimli Programlama","Object Oriented Programming","OOP"],"articleSection":[".NET","Nesne Y\u00f6nelimli Programlama (Object Oriented Programming)"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/gokhan-gokalp.com\/abstract-ve-interface-nedir-farklari-nelerdir\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/gokhan-gokalp.com\/abstract-ve-interface-nedir-farklari-nelerdir\/","url":"https:\/\/gokhan-gokalp.com\/abstract-ve-interface-nedir-farklari-nelerdir\/","name":"Abstract ve Interface Nedir? Farklar\u0131 nelerdir? - G\u00f6khan G\u00f6kalp","isPartOf":{"@id":"https:\/\/gokhan-gokalp.com\/#website"},"datePublished":"2014-07-21T19:01:31+00:00","dateModified":"2018-02-17T06:37:49+00:00","breadcrumb":{"@id":"https:\/\/gokhan-gokalp.com\/abstract-ve-interface-nedir-farklari-nelerdir\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/gokhan-gokalp.com\/abstract-ve-interface-nedir-farklari-nelerdir\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/gokhan-gokalp.com\/abstract-ve-interface-nedir-farklari-nelerdir\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/gokhan-gokalp.com\/"},{"@type":"ListItem","position":2,"name":"Abstract ve Interface Nedir? Farklar\u0131 nelerdir?"}]},{"@type":"WebSite","@id":"https:\/\/gokhan-gokalp.com\/#website","url":"https:\/\/gokhan-gokalp.com\/","name":"G\u00f6khan G\u00f6kalp","description":"C# &amp; Python lover","publisher":{"@id":"https:\/\/gokhan-gokalp.com\/#\/schema\/person\/7e2a7fa98babd22a5fdae563c4b8cdbe"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/gokhan-gokalp.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/gokhan-gokalp.com\/#\/schema\/person\/7e2a7fa98babd22a5fdae563c4b8cdbe","name":"G\u00f6khan G\u00f6kalp","pronouns":"he","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/gokhan-gokalp.com\/wp-content\/litespeed\/avatar\/e645f66b6264ced10d7b6d8b1f85509b.jpg?ver=1776170659","url":"https:\/\/gokhan-gokalp.com\/wp-content\/litespeed\/avatar\/e645f66b6264ced10d7b6d8b1f85509b.jpg?ver=1776170659","contentUrl":"https:\/\/gokhan-gokalp.com\/wp-content\/litespeed\/avatar\/e645f66b6264ced10d7b6d8b1f85509b.jpg?ver=1776170659","caption":"G\u00f6khan G\u00f6kalp"},"logo":{"@id":"https:\/\/gokhan-gokalp.com\/wp-content\/litespeed\/avatar\/e645f66b6264ced10d7b6d8b1f85509b.jpg?ver=1776170659"},"sameAs":["https:\/\/gokhan-gokalp.com"],"url":"https:\/\/gokhan-gokalp.com\/tr\/author\/gok-gokalp\/"}]}},"_links":{"self":[{"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/posts\/126","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/comments?post=126"}],"version-history":[{"count":14,"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/posts\/126\/revisions"}],"predecessor-version":[{"id":2188,"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/posts\/126\/revisions\/2188"}],"wp:attachment":[{"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/media?parent=126"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/categories?post=126"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/tags?post=126"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}