﻿
{"id":11088,"date":"2019-06-03T12:38:57","date_gmt":"2019-06-03T12:38:57","guid":{"rendered":"https:\/\/www.gencayyildiz.com\/blog\/?p=11088"},"modified":"2019-06-03T12:38:57","modified_gmt":"2019-06-03T12:38:57","slug":"c-8-0-switch-expressionproperty-tuple-positional-patterns","status":"publish","type":"post","link":"https:\/\/www.gencayyildiz.com\/blog\/c-8-0-switch-expressionproperty-tuple-positional-patterns\/","title":{"rendered":"C# 8.0 &#8211; Switch Expression(Property &#8211; Tuple &#8211; Positional Patterns)"},"content":{"rendered":"<div id=\"fb-root\"><\/div>\n<p>Merhaba,<\/p>\n<p>G\u00fcn\u00fcm\u00fczde bir\u00e7ok yaz\u0131l\u0131m dili de\u011fi\u015fmekte lakin bu de\u011fi\u015fim esintisinin alt\u0131nda bir\u00e7ok geli\u015fim ger\u00e7ekle\u015fmektedir. De\u011fi\u015fim ile geli\u015fim aras\u0131ndaki fark\u0131 tasavvur edersek e\u011fer; var olan bir \u00f6zelli\u011fe olmayan bir \u00f6zellik eklendi\u011finde yahut s\u0131f\u0131rdan yepyeni bir yap\u0131 ortaya kondu\u011funda bu bir de\u011fi\u015fimken, var olan \u00fczerinde yap\u0131sal olarak bir iyile\u015ftirme yap\u0131ld\u0131\u011f\u0131nda ya da kullan\u0131m a\u00e7\u0131s\u0131ndan operasyonel s\u00fcre\u00e7te ayn\u0131 i\u015fte pratiksel fark yaratacak g\u00fc\u00e7lendirmeler ger\u00e7ekle\u015ftirildi\u011finde bu durumlar\u0131 geli\u015fim olarak de\u011ferlendirebiliriz. Tabi ki de t\u00fcm bu s\u00fcre\u00e7 nihai olarak dilin geli\u015fmesi olarak g\u00f6r\u00fclebilece\u011fi gibi lokal de\u011ferlendirmelerde; yap\u0131lara ve syntaxa odaklan\u0131ld\u0131\u011f\u0131nda yukar\u0131daki ayr\u0131m s\u00f6z konusu olabilmektedir.<\/p>\n<p>Bu girizgah akabinde, ilgili i\u00e7eri\u011fimizde yukar\u0131da kavramsalla\u015ft\u0131rd\u0131\u011f\u0131m\u0131z vurgulara paralel olarak C# programlama dilinin 8.0 versiyonunda, bir yap\u0131n\u0131n(<span style=\"font-size:10px;\">switch yap\u0131s\u0131<\/span>) bir de\u011fi\u015fim bir de geli\u015fim olmak \u00fczere iki farkl\u0131 yakla\u015f\u0131mla ele alabilece\u011fimiz yeniliklerini inceleyece\u011fimizi bildirerek konuya giri\u015f yapal\u0131m.<\/p>\n<h3>Switch Expressions<\/h3>\n<p>Switch yap\u0131lanmas\u0131, bir de\u011ferin birden fazla de\u011fere kar\u015f\u0131l\u0131k e\u015fitlik durumunu kontrol etti\u011fimiz ve neticede <u>genellikle tek bir i\u015flem<\/u> yapt\u0131\u011f\u0131m\u0131z bir kontrol yap\u0131s\u0131d\u0131r.<\/p>\n<p>\u00d6rne\u011fin a\u015fa\u011f\u0131daki gibi haftan\u0131n g\u00fcnlerine g\u00f6re ekranda bilgi yazd\u0131ran kod blo\u011funu ele alal\u0131m;<br \/>\n<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns.jpg\" alt=\"C# 8.0 - Switch Expression(Property - Tuple - Positional Patterns)\" width=\"260\" height=\"442\" class=\"aligncenter size-full wp-image-11106\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns.jpg 260w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-176x300.jpg 176w\" sizes=\"auto, (max-width: 260px) 100vw, 260px\" \/><\/a><\/p>\n<p>Yukar\u0131daki kod yap\u0131s\u0131n\u0131 incelerseniz e\u011fer; tek bir i\u015flem \u00e7\u0131kt\u0131s\u0131 i\u00e7in okunabilirli\u011fi ve kod miktar\u0131 a\u00e7\u0131s\u0131ndan olduk\u00e7a maliyetli bir yap\u0131 in\u015fa etti\u011fimizin fark\u0131nda m\u0131s\u0131n\u0131z?<\/p>\n<p>Do\u011frusunu s\u00f6ylemek gerekirse bu g\u00fcne kadar yap\u0131lan \u00e7al\u0131\u015fmalarda genellikle switch &#8211; case yap\u0131lanmas\u0131ndan ka\u00e7mam\u0131z\u0131n en b\u00fcy\u00fck sebebi, tek sat\u0131rl\u0131k basit bir kodu operasyona dahil edebilmemiz i\u00e7in bu \u015fekilde geni\u015f yer kaplayan, kalabal\u0131k hissi do\u011furan ve biz yaz\u0131l\u0131mc\u0131lar a\u00e7\u0131s\u0131ndan fazladan kod yazmam\u0131za sebep olan bir yap\u0131s\u0131n\u0131n olmas\u0131ndan kaynaklanmaktad\u0131r.<\/p>\n<p>C# 8.0 versiyonunda, switch &#8211; case yap\u0131s\u0131n\u0131n bu handikab\u0131 g\u00f6z ard\u0131 edilmeksizin direkt m\u00fcdahale edilmi\u015f ve a\u015fa\u011f\u0131daki gibi <u>tek sat\u0131rl\u0131k i\u015flemler i\u00e7in<\/u> her t\u00fcrl\u00fc maliyeti d\u00fc\u015f\u00fcr\u00fcc\u00fc ve daha kullan\u0131\u015fl\u0131 yap\u0131lanma gelmi\u015ftir.<\/p>\n<p><a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-1.jpg\" alt=\"C# 8.0 - Switch Expression(Property - Tuple - Positional Patterns)\" width=\"369\" height=\"247\" class=\"aligncenter size-full wp-image-11111\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-1.jpg 369w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-1-300x201.jpg 300w\" sizes=\"auto, (max-width: 369px) 100vw, 369px\" \/><\/a><br \/>\nBu yap\u0131lanmada dikkat etmeniz gereken tek husus; switch blo\u011funun syntax&#8217;\u0131 biraz de\u011fi\u015ftirilmi\u015ftir. Kontrol\u00fc yap\u0131lan de\u011ferin yaz\u0131ld\u0131\u011f\u0131 parantez sa\u011f taraftan kald\u0131r\u0131lm\u0131\u015f ve switch keyword\u00fcn\u00fcn sol yan\u0131na yerle\u015ftirilmi\u015ftir. Tabi kontrol edilen de\u011fer tek oldu\u011fundan dolay\u0131 parantez koyup koymamak siz developerlar\u0131n karar\u0131na kalm\u0131\u015ft\u0131r. E\u011fer ki, birden fazla de\u011fer kontrol edilecekse i\u015fte ona yaz\u0131m\u0131z\u0131n devam\u0131nda ele alaca\u011f\u0131m\u0131z <em>Tuple Patterns<\/em> ismini verece\u011fiz&#8230;<\/p>\n<p>Son olarak default de\u011ferler i\u00e7in a\u015fa\u011f\u0131daki gibi <a href=\"https:\/\/www.gencayyildiz.com\/blog\/c-7-0-discard-kavrami\/\" rel=\"noopener noreferrer\" target=\"_blank\">Discard operat\u00f6r\u00fcn\u00fc<\/a> kullanmam\u0131z yeterli olacakt\u0131r.<br \/>\n<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-2.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-2.jpg\" alt=\"C# 8.0 - Switch Expression(Property - Tuple - Positional Patterns)\" width=\"340\" height=\"214\" class=\"aligncenter size-full wp-image-11113\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-2.jpg 340w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-2-300x189.jpg 300w\" sizes=\"auto, (max-width: 340px) 100vw, 340px\" \/><\/a><\/p>\n<h3>Property Patterns<\/h3>\n<p>Property patterns, nesnenin propertylerine girerek belirli durumlar\u0131 h\u0131zl\u0131 bir \u015fekilde kontrol etmemizi ger\u00e7ekle\u015ftiren ve bunu farkl\u0131 de\u011ferler i\u00e7in birden fazla kez tekrarl\u0131 bir \u015fekilde yapmam\u0131za olanak sa\u011flayan g\u00fczel bir geli\u015fimdir.<\/p>\n<table>\n<thead>\n<tr>\n<th>Standart Pattern<\/th>\n<th>Property Pattern<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\n<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-3.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-3.jpg\" alt=\"C# 8.0 - Switch Expression(Property - Tuple - Positional Patterns)\" width=\"237\" height=\"563\" class=\"aligncenter size-full wp-image-11123\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-3.jpg 237w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-3-126x300.jpg 126w\" sizes=\"auto, (max-width: 237px) 100vw, 237px\" \/><\/a>\n<\/td>\n<td>\n<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-4.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-4.jpg\" alt=\"C# 8.0 - Switch Expression(Property - Tuple - Positional Patterns)\" width=\"285\" height=\"434\" class=\"aligncenter size-full wp-image-11121\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-4.jpg 285w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-4-197x300.jpg 197w\" sizes=\"auto, (max-width: 285px) 100vw, 285px\" \/><\/a>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Ayriyetten yukar\u0131daki g\u00f6rseldeki yap\u0131ya ek olarak Property Patterns&#8217;da birden fazla property a\u015fa\u011f\u0131daki gibi denetlenebilmekte ve bunun yan\u0131nda yine discard ifadesi ile default durum her zaman oldu\u011fu gibi en sona eklenebilmektedir.<br \/>\n<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-5.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-5.jpg\" alt=\"C# 8.0 - Switch Expression(Property - Tuple - Positional Patterns)\" width=\"328\" height=\"128\" class=\"aligncenter size-full wp-image-11126\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-5.jpg 328w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-5-300x117.jpg 300w\" sizes=\"auto, (max-width: 328px) 100vw, 328px\" \/><\/a><\/p>\n<h3>Tuple Patterns<\/h3>\n<p>Tuple patterns ise switch yap\u0131lanmas\u0131n\u0131 Tuple nesnelerini kontrol edebilecek \u015fekilde hem standart hemde yeni yap\u0131lanmayla bizlere sunmaktad\u0131r.<\/p>\n<table>\n<thead>\n<tr>\n<th>Standart Pattern<\/th>\n<th>Tuple Pattern<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\n<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-6.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-6.jpg\" alt=\"C# 8.0 - Switch Expression(Property - Tuple - Positional Patterns)\" width=\"219\" height=\"329\" class=\"aligncenter size-full wp-image-11129\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-6.jpg 219w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-6-200x300.jpg 200w\" sizes=\"auto, (max-width: 219px) 100vw, 219px\" \/><\/a>\n<\/td>\n<td>\n<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-7.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-7.jpg\" alt=\"C# 8.0 - Switch Expression(Property - Tuple - Positional Patterns)\" width=\"328\" height=\"224\" class=\"aligncenter size-full wp-image-11130\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-7.jpg 328w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-7-300x205.jpg 300w\" sizes=\"auto, (max-width: 328px) 100vw, 328px\" \/><\/a>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Positional Patterns<\/h3>\n<p>Positional patterns ise <a href=\"https:\/\/www.gencayyildiz.com\/blog\/c-7-0-deconstruct-metodu\/\" rel=\"noopener noreferrer\" target=\"_blank\">Deconstruct<\/a> \u00f6zelli\u011fi olan nesneleri k\u0131yaslamak yahut de\u011fersel kar\u015f\u0131la\u015ft\u0131rmak i\u00e7in kullan\u0131lan bir geli\u015fimdir.<\/p>\n<p><a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-8.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-8.jpg\" alt=\"C# 8.0 - Switch Expression(Property - Tuple - Positional Patterns)\" width=\"391\" height=\"552\" class=\"aligncenter size-full wp-image-11139\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-8.jpg 391w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-8-213x300.jpg 213w\" sizes=\"auto, (max-width: 391px) 100vw, 391px\" \/><\/a><\/p>\n<h3>When \u015eart\u0131 \u0130le Switch Yap\u0131s\u0131n\u0131 Zenginle\u015ftirmek<\/h3>\n<p>\u0130\u00e7eri\u011fimizde \u015fu ana kadar Property, Tuple ve Positional Patterns olmak \u00fczere \u00fc\u00e7 farkl\u0131 pattern ile switch expressionlar\u0131n\u0131 incelemi\u015f bulunmaktay\u0131z. Bu yap\u0131lar\u0131n \u00fc\u00e7\u00fcde farkl\u0131 yap\u0131lar ve durumlarda standart kontrollere nazaran daha pratik verisel k\u0131yaslama olana\u011f\u0131 sa\u011flamaktad\u0131rlar. De\u011finilen kullan\u0131m farklar\u0131n\u0131n d\u0131\u015f\u0131nda ayriyetten \u00fc\u00e7\u00fc i\u00e7in ortak olan <em>when<\/em> keyword\u00fc ile e\u015fitlik kontrol\u00fcne ayriyetten \u015fart ekleme ibareside s\u00f6z konusudur. \u015eimdi gelin tek tek t\u00fcm patternlere \u00f6zel switch kontrol\u00fcne ayriyetten \u015fart eklemeyide inceleyelim.<\/p>\n<table>\n<thead>\n<tr>\n<th>Switch Expressions<\/th>\n<th>Property Patterns<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\n<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-9.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-9.jpg\" alt=\"C# 8.0 - Switch Expression(Property - Tuple - Positional Patterns)\" width=\"425\" height=\"153\" class=\"aligncenter size-full wp-image-11146\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-9.jpg 425w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-9-300x108.jpg 300w\" sizes=\"auto, (max-width: 425px) 100vw, 425px\" \/><\/a>\n<\/td>\n<td>\n<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-10.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-10.jpg\" alt=\"C# 8.0 - Switch Expression(Property - Tuple - Positional Patterns)\" width=\"387\" height=\"533\" class=\"aligncenter size-full wp-image-11147\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-10.jpg 387w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-10-218x300.jpg 218w\" sizes=\"auto, (max-width: 387px) 100vw, 387px\" \/><\/a>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<table>\n<thead>\n<tr>\n<th>Tuple Patterns<\/th>\n<th>Positional Patterns<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\n<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-11.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-11.jpg\" alt=\"C# 8.0 - Switch Expression(Property - Tuple - Positional Patterns)\" width=\"405\" height=\"166\" class=\"aligncenter size-full wp-image-11149\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-11.jpg 405w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-11-300x123.jpg 300w\" sizes=\"auto, (max-width: 405px) 100vw, 405px\" \/><\/a>\n<\/td>\n<td>\n<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-12.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-12.jpg\" alt=\"C# 8.0 - Switch Expression(Property - Tuple - Positional Patterns)\" width=\"491\" height=\"560\" class=\"aligncenter size-full wp-image-11151\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-12.jpg 491w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2019\/06\/C-8.0-Switch-ExpressionProperty-Tuple-Positional-Patterns-12-263x300.jpg 263w\" sizes=\"auto, (max-width: 491px) 100vw, 491px\" \/><\/a>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Evet.. G\u00f6r\u00fcld\u00fc\u011f\u00fc gibi when \u015fart\u0131n\u0131 eklerken bir yandan da t\u00fcm varyasyonlar\u0131 yukar\u0131da resmetmi\u015f olduk.<\/p>\n<p>Dikkat ederseniz e\u011fer, bu yeni switch yap\u0131lanmalar\u0131(patternler) tek seferlik i\u015flemlere odaklanm\u0131\u015f yeni geli\u015ftirmelerdir. <\/p>\n<p>\u0130lgilenenlerin faydalanmas\u0131 dile\u011fiyle&#8230;<br \/>\nSonraki yaz\u0131lar\u0131mda g\u00f6r\u00fc\u015fmek \u00fczere&#8230;<br \/>\n\u0130yi \u00e7al\u0131\u015fmalar&#8230;<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>Merhaba, G\u00fcn\u00fcm\u00fczde bir\u00e7ok yaz\u0131l\u0131m dili de\u011fi\u015fmekte lakin bu de\u011fi\u015fim esintisinin alt\u0131nda bir\u00e7ok geli\u015fim ger\u00e7ekle\u015fmektedir. De\u011fi\u015fim ile geli\u015fim aras\u0131ndaki fark\u0131 tasavvur edersek e\u011fer; var olan bir \u00f6zelli\u011fe olmayan bir \u00f6zellik eklendi\u011finde yahut s\u0131f\u0131rdan yepyeni bir&#46;&#46;&#46;<!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":1,"featured_media":11028,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2857],"tags":[2858,2874,2873,2870,2875,2872],"class_list":["post-11088","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-c-8-0","tag-c-8-0","tag-positional-patterns","tag-property-patterns","tag-switch-expression","tag-switch-expressions","tag-tuple-patterns"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/11088","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/comments?post=11088"}],"version-history":[{"count":41,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/11088\/revisions"}],"predecessor-version":[{"id":11153,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/11088\/revisions\/11153"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/media\/11028"}],"wp:attachment":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/media?parent=11088"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/categories?post=11088"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/tags?post=11088"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}