{"id":3271,"date":"2025-03-09T01:22:28","date_gmt":"2025-03-08T22:22:28","guid":{"rendered":"https:\/\/blog.koddit.com\/?p=3271"},"modified":"2025-03-12T13:09:09","modified_gmt":"2025-03-12T10:09:09","slug":"dependency-injection-nedir-net-core-ile-ornekli-anlatim","status":"publish","type":"post","link":"https:\/\/blog.koddit.com\/en\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/","title":{"rendered":"Dependency Injection Nedir? .NET Core \u0130le \u00d6rnekli Anlat\u0131m"},"content":{"rendered":"<p>Dependency Injection Nedir? Dependency Injection (DI), yaz\u0131l\u0131m tasar\u0131m desenleri aras\u0131nda yer alan bir tekniktir ve genellikle nesne y\u00f6nelimli programlama (OOP) ile kullan\u0131l\u0131r. DI, bir yaz\u0131l\u0131m bile\u015feninin, ba\u015fka bir bile\u015fene ba\u011f\u0131ml\u0131 olmaks\u0131z\u0131n \u00e7al\u0131\u015fabilmesini sa\u011flamak i\u00e7in kullan\u0131lan bir y\u00f6ntemdir. Bu yaz\u0131da, Dependency Injection konusunu daha ayr\u0131nt\u0131l\u0131 olarak ele alaca\u011f\u0131z.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Dependency Injection Nedir?<\/h2>\n\n\n\n<p>Dependency Injection (DI), bir nesnenin, ba\u015fka bir nesneye ba\u011f\u0131ml\u0131 olmas\u0131na ra\u011fmen, ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 do\u011fru bir \u015fekilde y\u00f6netebilmek i\u00e7in kullan\u0131lan bir tekniktir. Bu, ba\u011f\u0131ml\u0131l\u0131klar\u0131n nesnenin kendisi taraf\u0131ndan y\u00f6netilmesi yerine DI konteyneri taraf\u0131ndan y\u00f6netilmesi anlam\u0131na gelir. DI, nesneler aras\u0131ndaki ba\u011f\u0131ml\u0131l\u0131klar\u0131 azalt\u0131r ve bu sayede yaz\u0131l\u0131m\u0131n bak\u0131m\u0131n\u0131, testini ve geni\u015fletilebilirli\u011fini kolayla\u015ft\u0131r\u0131r.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/blog.koddit.com\/wp-content\/plugins\/wp-images-lazy-loading\/images\/grey.gif\" data-original=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2023\/04\/image-3.png\" alt=\"dependency injection nedir\" class=\"lazy wp-image-3273\"\/><noscript><img loading=\"lazy\" decoding=\"async\" width=\"639\" height=\"379\" src=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2023\/04\/image-3.png\" alt=\"dependency injection nedir\" class=\"wp-image-3273\"\/><\/noscript><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">DI Nas\u0131l \u00c7al\u0131\u015f\u0131r?<\/h2>\n\n\n\n<p>Dependency Injection, nesnelerin olu\u015fturulmas\u0131 ve y\u00f6netilmesi s\u0131ras\u0131nda kullan\u0131l\u0131r. DI, bir bile\u015fenin bir ba\u015fka bile\u015fene ihtiya\u00e7 duydu\u011fu zaman, bu ihtiyac\u0131n DI konteyneri taraf\u0131ndan kar\u015f\u0131lanmas\u0131 ile ger\u00e7ekle\u015ftirilir. DI, bir bile\u015fenin kullan\u0131m\u0131na ihtiya\u00e7 duydu\u011fu di\u011fer bile\u015fenlerin konfig\u00fcrasyonlar\u0131n\u0131 y\u00f6netir ve ihtiya\u00e7 duyulan bile\u015fenlerin olu\u015fturulmas\u0131n\u0131 sa\u011flar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Avantajlar\u0131<\/h3>\n\n\n\n<p>Dependency Injection&#8217;\u0131n bir\u00e7ok avantaj\u0131 vard\u0131r:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Daha az ba\u011f\u0131ml\u0131l\u0131k: Dependency Injection sayesinde, ba\u011f\u0131ml\u0131l\u0131klar aras\u0131ndaki do\u011frudan ili\u015fki azal\u0131r. Bu, daha az s\u0131k\u0131 ba\u011f\u0131ml\u0131l\u0131klar sa\u011flar ve de\u011fi\u015fikliklerin di\u011fer kod par\u00e7alar\u0131n\u0131 etkilemesini azalt\u0131r. \u00d6rne\u011fin, bir s\u0131n\u0131fta de\u011fi\u015fiklik yapmak, uygulaman\u0131n di\u011fer par\u00e7alar\u0131n\u0131 etkilemez.<\/li>\n\n\n\n<li>Daha kolay birim testleri: Birim testleri yaparken, bir s\u0131n\u0131f\u0131n ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 taklit edebilirsiniz. Bu, birim testlerinin daha az karma\u015f\u0131k hale gelmesini sa\u011flar. \u00d6rne\u011fin, bir s\u0131n\u0131f\u0131n ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 taklit etmek i\u00e7in, Dependency Injection kullanabilirsiniz.<\/li>\n\n\n\n<li>Daha kolay bak\u0131m: Bir s\u0131n\u0131f\u0131n ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 de\u011fi\u015ftirerek, uygulamadaki de\u011fi\u015fikliklerin etkisini azaltabilirsiniz. Bu, bak\u0131m\u0131n daha kolay ve daha h\u0131zl\u0131 olmas\u0131n\u0131 sa\u011flar.<\/li>\n\n\n\n<li>Daha kolay \u00f6l\u00e7ekleme: Bir uygulamay\u0131 \u00f6l\u00e7eklendirirken, baz\u0131 par\u00e7alar\u0131n\u0131n \u00f6l\u00e7eklendirilememesi sorun yaratabilir. Dependency Injection kullanarak, ba\u011f\u0131ml\u0131l\u0131klar\u0131 daha kolay de\u011fi\u015ftirebilir ve \u00f6l\u00e7eklendirebilirsiniz.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Dezavantajlar\u0131<\/h3>\n\n\n\n<p>Dependency Injection&#8217;\u0131n baz\u0131 dezavantajlar\u0131 vard\u0131r:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Daha karma\u015f\u0131k kod: Dependency Injection, daha karma\u015f\u0131k kod yap\u0131s\u0131na neden olabilir. Bu, daha fazla \u00e7aba gerektirebilir ve kodun anla\u015f\u0131lmas\u0131n\u0131 zorla\u015ft\u0131rabilir.<\/li>\n\n\n\n<li>Yanl\u0131\u015f yap\u0131land\u0131rma: Dependency Injection, yanl\u0131\u015f yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131nda hatalara neden olabilir. \u00d6rne\u011fin, bir ba\u011f\u0131ml\u0131l\u0131\u011f\u0131 yanl\u0131\u015f bir \u015fekilde yap\u0131land\u0131r\u0131rsan\u0131z, uygulama hatalara neden olabilir.<\/li>\n\n\n\n<li>Daha fazla bellek kullan\u0131m\u0131: Dependency Injection, daha fazla bellek kullanabilir. Bu, uygulama \u00f6l\u00e7eklendirilirken sorun yaratabilir.<\/li>\n\n\n\n<li>Daha yava\u015f \u00e7al\u0131\u015fma: Dependency Injection, uygulaman\u0131n yava\u015f \u00e7al\u0131\u015fmas\u0131na neden olabilir. Bu, \u00f6zellikle b\u00fcy\u00fck uygulamalarda sorun yaratabilir.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">.NET Core \u0130le Bir Dependency Injection \u00d6rne\u011fi<\/h2>\n\n\n\n<p>\u00d6rne\u011fimize ba\u015flamadan \u00f6nce, \u00f6ncelikle .NET Core projesi olu\u015fturmal\u0131y\u0131z. Bunun i\u00e7in Visual Studio kullanabilirsiniz. A\u015fa\u011f\u0131daki ad\u0131mlar\u0131 takip ederek bir .NET Core projesi olu\u015fturabilirsiniz:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Visual Studio&#8217;yu a\u00e7\u0131n ve &#8220;New Project&#8221; se\u00e7ene\u011fini se\u00e7in.<\/li>\n\n\n\n<li>&#8220;ASP.NET Core Web Application&#8221; se\u00e7ene\u011fini se\u00e7in ve ad\u0131n\u0131 belirleyin.<\/li>\n\n\n\n<li>&#8220;Web Application&#8221; \u015fablonunu se\u00e7in ve &#8220;Create&#8221; d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li>\n<\/ol>\n\n\n\n<p>.NET Core projesi olu\u015fturulduktan sonra, ConfigureServices() metodunu kullanarak DI ekleyebiliriz. A\u015fa\u011f\u0131daki kod \u00f6rne\u011finde, bir ILogger nesnesi ekleyece\u011fiz:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>public void ConfigureServices(IServiceCollection services)\n{\n    services.AddControllersWithViews();\n\n    services.AddSingleton&lt;ILogger, Logger&gt;();\n}<\/code><\/pre>\n\n\n\n<p>Yukar\u0131daki kodda, AddSingleton() metodu, ILogger aray\u00fcz\u00fcne kar\u015f\u0131l\u0131k gelen Logger s\u0131n\u0131f\u0131n\u0131 DI i\u00e7in kaydediyor. ILogger aray\u00fcz\u00fc, ILogger uygulamas\u0131n\u0131n bir soyutlamas\u0131d\u0131r ve bu sayede ILogger&#8217;a sahip olan nesneler, ILogger nesnesinin ger\u00e7ek uygulamas\u0131na ba\u011f\u0131ml\u0131 olmadan \u00e7al\u0131\u015fabilir.<\/p>\n\n\n\n<p>ILogger \u00f6rne\u011fi kullanmak i\u00e7in, bir Controller nesnesi olu\u015fturabiliriz ve ILogger \u00f6rne\u011fini bu Controller nesnesine enjekte edebiliriz. A\u015fa\u011f\u0131daki \u00f6rnekte, HomeController s\u0131n\u0131f\u0131na ILogger enjekte ediyoruz:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>public class HomeController : Controller\n{\n    private readonly ILogger _logger;\n\n    public HomeController(ILogger logger)\n    {\n        _logger = logger;\n    }\n\n    public IActionResult Index()\n    {\n        _logger.Log(\"Index method called\");\n\n        return View();\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>Yukar\u0131daki kodda, HomeController s\u0131n\u0131f\u0131 ILogger aray\u00fcz\u00fcne ba\u011f\u0131ml\u0131 hale getirilmi\u015ftir. Constructor enjeksiyonunu kullanarak, ILogger nesnesi Controller nesnesine enjekte edilir ve bu sayede ILogger nesnesi kullan\u0131labilir hale gelir. Index() metodu, ILogger nesnesi kullan\u0131larak bir log olu\u015fturur.<\/p>\n\n\n\n<p>Bu \u00f6rnekte, ILogger aray\u00fcz\u00fcne ba\u011f\u0131ml\u0131l\u0131k enjekte ettik. Ancak, ayn\u0131 \u015fekilde ba\u015fka nesneler de enjekte edilebilir. \u00d6rne\u011fin, veritaban\u0131 ba\u011flant\u0131s\u0131, yap\u0131land\u0131rma ayarlar\u0131 vb.<\/p>\n\n\n\n<p>Dependency Injection, yaz\u0131l\u0131m\u0131n test edilebilirli\u011fini art\u0131r\u0131r ve nesneler aras\u0131ndaki ba\u011f\u0131ml\u0131l\u0131\u011f\u0131 azaltarak bak\u0131m kolayl\u0131\u011f\u0131 sa\u011flar.<\/p>\n\n\n\n<p>Detayl\u0131 \u00f6rnekler i\u00e7in incelenebilir: <a href=\"https:\/\/www.tutorialsteacher.com\/ioc\/dependency-injection\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">https:\/\/www.tutorialsteacher.com\/ioc\/dependency-injection<\/a><\/p>\n\n\n\n<p>G\u00fcn\u00fcn sonunda yaz\u0131l\u0131mda yapt\u0131\u011f\u0131m\u0131z t\u00fcm mimari yaz\u0131l\u0131m\u0131n daha test edilebilir, daha kolay y\u00f6netilebilir, daha kolay geli\u015ftirilebilir bir hale ge\u00e7mesini sa\u011fl\u0131yor. Ufak projelerle u\u011fra\u015f\u0131rken bu tarz konular pek \u00f6nem kazanmasa da projeler b\u00fcy\u00fcd\u00fck\u00e7e kritik bir hal al\u0131yor.<\/p>\n\n\n\n<p>Konuyu anlaman\u0131n en iyi yolu konuyla alakal\u0131 kod geli\u015ftirmekten ge\u00e7iyor. Denemelerinizi yaparken olu\u015fabilecek sorular\u0131n\u0131z\u0131 yorumlarda belirtebilirsiniz, sevgiler.<\/p>","protected":false},"excerpt":{"rendered":"<p>Dependency Injection Nedir? Dependency Injection (DI), yaz\u0131l\u0131m tasar\u0131m desenleri aras\u0131nda yer alan bir tekniktir ve genellikle nesne y\u00f6nelimli programlama (OOP) ile kullan\u0131l\u0131r. DI, bir yaz\u0131l\u0131m bile\u015feninin, ba\u015fka bir bile\u015fene ba\u011f\u0131ml\u0131 olmaks\u0131z\u0131n \u00e7al\u0131\u015fabilmesini sa\u011flamak i\u00e7in kullan\u0131lan bir y\u00f6ntemdir. Bu yaz\u0131da, Dependency Injection konusunu daha ayr\u0131nt\u0131l\u0131 olarak ele alaca\u011f\u0131z. Dependency Injection Nedir? Dependency Injection (DI), bir nesnenin, [&hellip;]<\/p>","protected":false},"author":1,"featured_media":3272,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[168],"tags":[],"class_list":["post-3271","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-yazilim"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Dependency Injection Nedir? .NET Core \u0130le \u00d6rnekli Anlat\u0131m - Koddit<\/title>\n<meta name=\"description\" content=\"Dependency Injection Nedir? Dependency Injection (DI), yaz\u0131l\u0131m tasar\u0131m desenleri aras\u0131nda yer alan bir tekniktir. Detayl\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:\/\/blog.koddit.com\/en\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dependency Injection Nedir? .NET Core \u0130le \u00d6rnekli Anlat\u0131m - Koddit\" \/>\n<meta property=\"og:description\" content=\"Dependency Injection Nedir? Dependency Injection (DI), yaz\u0131l\u0131m tasar\u0131m desenleri aras\u0131nda yer alan bir tekniktir. Detayl\u0131 inceleyelim...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.koddit.com\/en\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/\" \/>\n<meta property=\"og:site_name\" content=\"Koddit\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/r.caner.oncu\" \/>\n<meta property=\"article:published_time\" content=\"2025-03-08T22:22:28+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-03-12T10:09:09+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/blog.koddit.com\/wp-content\/uploads\/2023\/04\/di.png\" \/>\n\t<meta property=\"og:image:width\" content=\"829\" \/>\n\t<meta property=\"og:image:height\" content=\"352\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Caner \u00d6nc\u00fc\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@caneroncu\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Caner \u00d6nc\u00fc\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/\"},\"author\":{\"name\":\"Caner \u00d6nc\u00fc\",\"@id\":\"https:\/\/blog.koddit.com\/#\/schema\/person\/475b7f34a5b2ec63447d0f5735829ff9\"},\"headline\":\"Dependency Injection Nedir? .NET Core \u0130le \u00d6rnekli Anlat\u0131m\",\"datePublished\":\"2025-03-08T22:22:28+00:00\",\"dateModified\":\"2025-03-12T10:09:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/\"},\"wordCount\":914,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/blog.koddit.com\/#organization\"},\"articleSection\":[\"Yaz\u0131l\u0131m\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/\",\"url\":\"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/\",\"name\":\"Dependency Injection Nedir? .NET Core \u0130le \u00d6rnekli Anlat\u0131m - Koddit\",\"isPartOf\":{\"@id\":\"https:\/\/blog.koddit.com\/#website\"},\"datePublished\":\"2025-03-08T22:22:28+00:00\",\"dateModified\":\"2025-03-12T10:09:09+00:00\",\"description\":\"Dependency Injection Nedir? Dependency Injection (DI), yaz\u0131l\u0131m tasar\u0131m desenleri aras\u0131nda yer alan bir tekniktir. Detayl\u0131 inceleyelim...\",\"breadcrumb\":{\"@id\":\"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/blog.koddit.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dependency Injection Nedir? .NET Core \u0130le \u00d6rnekli Anlat\u0131m\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.koddit.com\/#website\",\"url\":\"https:\/\/blog.koddit.com\/\",\"name\":\"Koddit\",\"description\":\"Blog\",\"publisher\":{\"@id\":\"https:\/\/blog.koddit.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.koddit.com\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/blog.koddit.com\/#organization\",\"name\":\"Koddit\",\"url\":\"https:\/\/blog.koddit.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/blog.koddit.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2023\/04\/koddit-logo.png\",\"contentUrl\":\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2023\/04\/koddit-logo.png\",\"width\":\"176\",\"height\":\"65\",\"caption\":\"Koddit\"},\"image\":{\"@id\":\"https:\/\/blog.koddit.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.koddit.com\/#\/schema\/person\/475b7f34a5b2ec63447d0f5735829ff9\",\"name\":\"Caner \u00d6nc\u00fc\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/blog.koddit.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0e4ad628f2a21b0fb77e910ee24545b7?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0e4ad628f2a21b0fb77e910ee24545b7?s=96&d=mm&r=g\",\"caption\":\"Caner \u00d6nc\u00fc\"},\"sameAs\":[\"https:\/\/blog.koddit.com\",\"https:\/\/www.facebook.com\/r.caner.oncu\",\"https:\/\/twitter.com\/caneroncu\"],\"url\":\"https:\/\/blog.koddit.com\/en\/author\/caner\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Dependency Injection Nedir? .NET Core \u0130le \u00d6rnekli Anlat\u0131m - Koddit","description":"Dependency Injection Nedir? Dependency Injection (DI), yaz\u0131l\u0131m tasar\u0131m desenleri aras\u0131nda yer alan bir tekniktir. Detayl\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:\/\/blog.koddit.com\/en\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/","og_locale":"en_US","og_type":"article","og_title":"Dependency Injection Nedir? .NET Core \u0130le \u00d6rnekli Anlat\u0131m - Koddit","og_description":"Dependency Injection Nedir? Dependency Injection (DI), yaz\u0131l\u0131m tasar\u0131m desenleri aras\u0131nda yer alan bir tekniktir. Detayl\u0131 inceleyelim...","og_url":"https:\/\/blog.koddit.com\/en\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/","og_site_name":"Koddit","article_author":"https:\/\/www.facebook.com\/r.caner.oncu","article_published_time":"2025-03-08T22:22:28+00:00","article_modified_time":"2025-03-12T10:09:09+00:00","og_image":[{"width":829,"height":352,"url":"http:\/\/blog.koddit.com\/wp-content\/uploads\/2023\/04\/di.png","type":"image\/png"}],"author":"Caner \u00d6nc\u00fc","twitter_card":"summary_large_image","twitter_creator":"@caneroncu","twitter_misc":{"Written by":"Caner \u00d6nc\u00fc","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/#article","isPartOf":{"@id":"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/"},"author":{"name":"Caner \u00d6nc\u00fc","@id":"https:\/\/blog.koddit.com\/#\/schema\/person\/475b7f34a5b2ec63447d0f5735829ff9"},"headline":"Dependency Injection Nedir? .NET Core \u0130le \u00d6rnekli Anlat\u0131m","datePublished":"2025-03-08T22:22:28+00:00","dateModified":"2025-03-12T10:09:09+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/"},"wordCount":914,"commentCount":0,"publisher":{"@id":"https:\/\/blog.koddit.com\/#organization"},"articleSection":["Yaz\u0131l\u0131m"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/","url":"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/","name":"Dependency Injection Nedir? .NET Core \u0130le \u00d6rnekli Anlat\u0131m - Koddit","isPartOf":{"@id":"https:\/\/blog.koddit.com\/#website"},"datePublished":"2025-03-08T22:22:28+00:00","dateModified":"2025-03-12T10:09:09+00:00","description":"Dependency Injection Nedir? Dependency Injection (DI), yaz\u0131l\u0131m tasar\u0131m desenleri aras\u0131nda yer alan bir tekniktir. Detayl\u0131 inceleyelim...","breadcrumb":{"@id":"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/blog.koddit.com\/yazilim\/dependency-injection-nedir-net-core-ile-ornekli-anlatim\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/blog.koddit.com\/"},{"@type":"ListItem","position":2,"name":"Dependency Injection Nedir? .NET Core \u0130le \u00d6rnekli Anlat\u0131m"}]},{"@type":"WebSite","@id":"https:\/\/blog.koddit.com\/#website","url":"https:\/\/blog.koddit.com\/","name":"Koddit","description":"Blog","publisher":{"@id":"https:\/\/blog.koddit.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.koddit.com\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/blog.koddit.com\/#organization","name":"Koddit","url":"https:\/\/blog.koddit.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.koddit.com\/#\/schema\/logo\/image\/","url":"https:\/\/blog.koddit.com\/wp-content\/uploads\/2023\/04\/koddit-logo.png","contentUrl":"https:\/\/blog.koddit.com\/wp-content\/uploads\/2023\/04\/koddit-logo.png","width":"176","height":"65","caption":"Koddit"},"image":{"@id":"https:\/\/blog.koddit.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/blog.koddit.com\/#\/schema\/person\/475b7f34a5b2ec63447d0f5735829ff9","name":"Caner \u00d6nc\u00fc","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.koddit.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0e4ad628f2a21b0fb77e910ee24545b7?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0e4ad628f2a21b0fb77e910ee24545b7?s=96&d=mm&r=g","caption":"Caner \u00d6nc\u00fc"},"sameAs":["https:\/\/blog.koddit.com","https:\/\/www.facebook.com\/r.caner.oncu","https:\/\/twitter.com\/caneroncu"],"url":"https:\/\/blog.koddit.com\/en\/author\/caner\/"}]}},"_links":{"self":[{"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/posts\/3271"}],"collection":[{"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/comments?post=3271"}],"version-history":[{"count":7,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/posts\/3271\/revisions"}],"predecessor-version":[{"id":3585,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/posts\/3271\/revisions\/3585"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/media\/3272"}],"wp:attachment":[{"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/media?parent=3271"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/categories?post=3271"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/tags?post=3271"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}