{"id":358,"date":"2015-07-09T11:34:26","date_gmt":"2015-07-09T08:34:26","guid":{"rendered":"https:\/\/gokhan-gokalp.com\/?p=358"},"modified":"2015-07-09T11:35:12","modified_gmt":"2015-07-09T08:35:12","slug":"c-memento-pattern-kullanimi","status":"publish","type":"post","link":"https:\/\/gokhan-gokalp.com\/tr\/c-memento-pattern-kullanimi\/","title":{"rendered":"C# Memento Pattern Kullan\u0131m\u0131"},"content":{"rendered":"<p>G\u00fczel bir konu ile tekrar merhaba arkada\u015flar.<br \/>\nBu makalemde sizlere nesnenin hallerini tutma ihtiyac\u0131 duydu\u011funuzda yani nesnenin <strong>farkl\u0131 halleri<\/strong>\u00a0aras\u0131nda ge\u00e7i\u015f yapabilmeniz gerekti\u011fi durumlarda kullanabilece\u011finiz g\u00fczel bir tasar\u0131m deseni olan Memento Pattern&#8217;inin kullan\u0131m\u0131ndan bahsedece\u011fim.<\/p>\n<p>A\u00e7\u0131kcas\u0131 GOF tasar\u0131m desenleri hakk\u0131ndaki makalelerime\u00a0ba\u015flang\u0131c\u0131m\u0131 uzun zamand\u0131r d\u00fc\u015f\u00fcn\u00fcyorum fakat bir t\u00fcrl\u00fc f\u0131rsat bulamam\u0131\u015ft\u0131m, bir projem \u00fczerinde kullanmam gerekince bu bana ad\u0131 \u00fcst\u00fcnde <strong>Hat\u0131rlay\u0131c\u0131<\/strong>(Memento) bana ba\u015flamam\u0131 hat\u0131rlatt\u0131. :)<\/p>\n<p>Kendisi <strong>Behavioral<\/strong> tasar\u0131m kal\u0131plar\u0131 gurubunda olan bir tasar\u0131m desenidir. Yukar\u0131da da bahsetti\u011fimiz \u00fczere nesnenin baz\u0131 \u00f6zelliklerinin veya tamam\u0131n\u0131 tutabilmemizi\u00a0sa\u011flamaktad\u0131r.<\/p>\n<p>H\u0131zl\u0131ca\u00a0UML Diagram\u0131na bakmak gerekirse:<\/p>\n<p><a href=\"\/wp-content\/uploads\/2015\/07\/MementoDiagram.gif\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-359 lazyload\" data-src=\"\/wp-content\/uploads\/2015\/07\/MementoDiagram.gif\" alt=\"MementoDiagram\" width=\"442\" height=\"157\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 442px; --smush-placeholder-aspect-ratio: 442\/157;\" \/><\/a><\/p>\n<p><strong>Originator<\/strong>: Bu s\u0131n\u0131f durumu tutulacak olan nesnemiz oluyor, eski veya yeni halini tutmam\u0131z\u0131 sa\u011flayacak metotlar burada yer alacak.<br \/>\n<strong>Memento<\/strong>: Bu s\u0131n\u0131f ise, as\u0131l nesnemizin istedi\u011fimiz alanlar\u0131\u00a0tutan s\u0131n\u0131ft\u0131r.<br \/>\n<strong>Caretaker<\/strong>: Geri d\u00f6n\u00fc\u015f ad\u0131mlar\u0131m\u0131z\u0131 Memento tipinden tutacak olan s\u0131n\u0131ft\u0131r.<\/p>\n<p>UML diagram\u0131n\u0131 inceledi\u011fimize g\u00f6re peki\u015ftirmek i\u00e7in hemen basit bir \u00f6rnek yapal\u0131m.<\/p>\n<p>Web veya Windows tabanl\u0131 bir uygulama geli\u015ftirdi\u011fimizi d\u00fc\u015f\u00fcnelim. Uygulamam\u0131zda kullan\u0131c\u0131n\u0131n kendi ayarlar\u0131n\u0131 yapabilece\u011fi bir <strong>Settings<\/strong> b\u00f6l\u00fcm\u00fc bulunsun. Memento desenini uygulayaca\u011f\u0131m\u0131z nokta ise: <strong>Get Default Settings<\/strong> tarz\u0131nda bir buton koyaca\u011f\u0131z ve kullan\u0131c\u0131 de\u011fi\u015ftirdi\u011fi ayar\u0131 <strong>orjinal<\/strong> haline geri d\u00f6nd\u00fcrebilmesini sa\u011fl\u0131yor olaca\u011f\u0131z.<\/p>\n<p>\u00d6ncelikle <strong>Settings<\/strong> s\u0131n\u0131f\u0131m\u0131z\u0131 olu\u015ftural\u0131m ve bu bizim <strong>Originator<\/strong>&#8216;umuzu temsil edecek yani ayarlar\u0131n tutulaca\u011f\u0131 s\u0131n\u0131f\u0131m\u0131z.<\/p>\n<pre class=\"lang:c# decode:true\">    \/\/\/ &lt;summary&gt;\r\n    \/\/\/ Originator - Ayarlar\u0131m\u0131z\u0131n tutuldu\u011fu s\u0131n\u0131f\u0131m\u0131z. \r\n    \/\/\/ &lt;\/summary&gt;\r\n    public class Settings\r\n    {\r\n        \/\/ Kullan\u0131c\u0131n\u0131n g\u00fcncelleyebilece\u011fi ayarlar propertyleri.\r\n        public string UserName { get; set; }\r\n        public string Password { get; set; }\r\n        public string Email { get; set; }\r\n        public bool RememberMe { get; set; }\r\n\r\n        \/\/ \u00c7a\u011f\u0131r\u0131ld\u0131\u011f\u0131nda Settings nesnemizin kopyas\u0131n\u0131 olu\u015fturacak olan metotumuz.\r\n        public SettingsMemento Backup()\r\n        {\r\n            SettingsMemento settingsMemento = new SettingsMemento\r\n            {\r\n                UserName = this.UserName,\r\n                Password = this.Password,\r\n                Email = this.Email,\r\n                RememberMe = this.RememberMe\r\n            };\r\n            return settingsMemento;\r\n        }\r\n\r\n        \/\/ \u00c7a\u011f\u0131r\u0131ld\u0131\u011f\u0131nda daha \u00f6nceden kopyas\u0131n\u0131 ald\u0131\u011f\u0131m\u0131z Memento s\u0131n\u0131f\u0131ndaki bilgileri Settings nesnemize geri at\u0131yoruz.\r\n        public void GetDefaultSettings(SettingsMemento settingsMemento)\r\n        {\r\n            this.UserName = settingsMemento.UserName;\r\n            this.Password = settingsMemento.Password;\r\n            this.Email = settingsMemento.Email;\r\n            this.RememberMe = settingsMemento.RememberMe;\r\n        }\r\n\r\n        public override string ToString()\r\n        {\r\n            return string.Format(\"UserName: {0} Password: {1} Email: {2} RememberMe: {3}\", this.UserName, this.Password, this.Email, this.RememberMe.ToString());\r\n        }\r\n    }<\/pre>\n<p>Settings s\u0131n\u0131f\u0131m\u0131z\u0131 olu\u015fturdu\u011fumuza g\u00f6re \u015fimdi <strong>Memento<\/strong>&#8216;yu \u00fcstlenecek olan <strong>SettingsMemento<\/strong> s\u0131n\u0131f\u0131m\u0131z\u0131 haz\u0131rlayal\u0131m.<\/p>\n<pre class=\"lang:c# decode:true \">    \/\/\/ &lt;summary&gt;\r\n    \/\/\/ Memento - As\u0131l nesnemizin alanlar\u0131n\u0131 tutan memento s\u0131n\u0131f\u0131m\u0131z.\r\n    \/\/\/ &lt;\/summary&gt;\r\n    public class SettingsMemento\r\n    {\r\n        public string UserName { get; set; }\r\n        public string Password { get; set; }\r\n        public string Email { get; set; }\r\n        public bool RememberMe { get; set; }\r\n    }<\/pre>\n<p>\u015eimdi <strong>SettingsCareTaker<\/strong> s\u0131n\u0131f\u0131m\u0131z\u0131 olu\u015fturarak geri d\u00f6n\u00fc\u015f ad\u0131mlar\u0131m\u0131z\u0131 <strong>Memento<\/strong> tipinden tutacak olan s\u0131n\u0131f\u0131m\u0131z\u0131 haz\u0131rlayal\u0131m.<\/p>\n<pre class=\"lang:c# decode:true \">    \/\/\/ &lt;summary&gt;\r\n    \/\/\/ Caretaker - Geri d\u00f6n\u00fc\u015f ad\u0131mlar\u0131m\u0131z burada tutulacak.\r\n    \/\/\/ &lt;\/summary&gt;\r\n    public class SettingsCaretaker\r\n    {\r\n        public SettingsMemento Memento { get; set; }\r\n    }<\/pre>\n<p>Ever her\u00a0\u015fey haz\u0131r oldu\u011funa g\u00f6re \u015fimdi kullan\u0131m\u0131na bakal\u0131m.<\/p>\n<pre class=\"lang:c# decode:true \">            SettingsCaretaker settingsCaretaker = new SettingsCaretaker();\r\n\r\n            Settings settings = new Settings();\r\n            settings.UserName = \"GokGokalp\";\r\n            settings.Password = \"123456\";\r\n            settings.Email = \"gok.gokalp@yahoo.com\";\r\n            settings.RememberMe = true;\r\n\r\n            Console.WriteLine(settings.ToString() + Environment.NewLine);\r\n\r\n            \/\/ Kopyas\u0131n\u0131 al\u0131yoruz.\r\n            settingsCaretaker.Memento = settings.Backup();\r\n\r\n            settings.Password = \"654321\";\r\n            settings.RememberMe = false;\r\n\r\n            Console.WriteLine(settings.ToString() + Environment.NewLine);\r\n\r\n            \/\/ Caretaker \u00fczerinde bulunan kopyas\u0131ndan orjinaline geri d\u00f6nd\u00fcr\u00fcyoruz nesnemizi.\r\n            settings.GetDefaultSettings(settingsCaretaker.Memento);\r\n\r\n            Console.WriteLine(settings.ToString());\r\n            Console.ReadLine();<\/pre>\n<p>\u0130\u015fte bu kadar basit. Umar\u0131m anla\u015f\u0131lmas\u0131 kolay bir \u00f6rnek olmu\u015ftur.<\/p>\n<p>Di\u011fer makalelerimde g\u00f6r\u00fc\u015fmek dile\u011fiyle.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>G\u00fczel bir konu ile tekrar merhaba arkada\u015flar. Bu makalemde sizlere nesnenin hallerini tutma ihtiyac\u0131 duydu\u011funuzda yani nesnenin farkl\u0131 halleri\u00a0aras\u0131nda ge\u00e7i\u015f yapabilmeniz gerekti\u011fi durumlarda kullanabilece\u011finiz g\u00fczel bir tasar\u0131m deseni olan Memento Pattern&#8217;inin kullan\u0131m\u0131ndan bahsedece\u011fim. A\u00e7\u0131kcas\u0131 GOF tasar\u0131m desenleri hakk\u0131ndaki makalelerime\u00a0ba\u015flang\u0131c\u0131m\u0131 uzun zamand\u0131r d\u00fc\u015f\u00fcn\u00fcyorum fakat bir t\u00fcrl\u00fc&#8230;<\/p>\n<div class=\"more-link-wrapper\"><a class=\"more-link\" href=\"https:\/\/gokhan-gokalp.com\/tr\/c-memento-pattern-kullanimi\/\">Devam\u0131n\u0131 okuyun<span class=\"screen-reader-text\">C# Memento Pattern Kullan\u0131m\u0131<\/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":[47],"tags":[85,84,83],"class_list":["post-358","post","type-post","status-publish","format-standard","hentry","category-tasarim-kaliplari-design-patterns","tag-memento","tag-memento-design-pattern","tag-memento-tasarim-deseni","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>C# Memento Pattern Kullan\u0131m\u0131 - 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\/c-memento-pattern-kullanimi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"C# Memento Pattern Kullan\u0131m\u0131 - G\u00f6khan G\u00f6kalp\" \/>\n<meta property=\"og:url\" content=\"https:\/\/gokhan-gokalp.com\/c-memento-pattern-kullanimi\/\" \/>\n<meta property=\"og:site_name\" content=\"G\u00f6khan G\u00f6kalp\" \/>\n<meta property=\"article:published_time\" content=\"2015-07-09T08:34:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2015-07-09T08:35:12+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=\"3 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/c-memento-pattern-kullanimi\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/c-memento-pattern-kullanimi\\\/\"},\"author\":{\"name\":\"G\u00f6khan G\u00f6kalp\",\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/#\\\/schema\\\/person\\\/7e2a7fa98babd22a5fdae563c4b8cdbe\"},\"headline\":\"C# Memento Pattern Kullan\u0131m\u0131\",\"datePublished\":\"2015-07-09T08:34:26+00:00\",\"dateModified\":\"2015-07-09T08:35:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/c-memento-pattern-kullanimi\\\/\"},\"wordCount\":386,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/#\\\/schema\\\/person\\\/7e2a7fa98babd22a5fdae563c4b8cdbe\"},\"keywords\":[\"Memento\",\"Memento Design Pattern\",\"Memento Tasar\u0131m Deseni\"],\"articleSection\":[\"Tasar\u0131m Kal\u0131plar\u0131 (Design Patterns)\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/gokhan-gokalp.com\\\/c-memento-pattern-kullanimi\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/c-memento-pattern-kullanimi\\\/\",\"url\":\"https:\\\/\\\/gokhan-gokalp.com\\\/c-memento-pattern-kullanimi\\\/\",\"name\":\"C# Memento Pattern Kullan\u0131m\u0131 - G\u00f6khan G\u00f6kalp\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/#website\"},\"datePublished\":\"2015-07-09T08:34:26+00:00\",\"dateModified\":\"2015-07-09T08:35:12+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/c-memento-pattern-kullanimi\\\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/gokhan-gokalp.com\\\/c-memento-pattern-kullanimi\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/gokhan-gokalp.com\\\/c-memento-pattern-kullanimi\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/gokhan-gokalp.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"C# Memento Pattern Kullan\u0131m\u0131\"}]},{\"@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":"C# Memento Pattern Kullan\u0131m\u0131 - 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\/c-memento-pattern-kullanimi\/","og_locale":"tr_TR","og_type":"article","og_title":"C# Memento Pattern Kullan\u0131m\u0131 - G\u00f6khan G\u00f6kalp","og_url":"https:\/\/gokhan-gokalp.com\/c-memento-pattern-kullanimi\/","og_site_name":"G\u00f6khan G\u00f6kalp","article_published_time":"2015-07-09T08:34:26+00:00","article_modified_time":"2015-07-09T08:35:12+00:00","author":"G\u00f6khan G\u00f6kalp","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"G\u00f6khan G\u00f6kalp","Tahmini okuma s\u00fcresi":"3 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/gokhan-gokalp.com\/c-memento-pattern-kullanimi\/#article","isPartOf":{"@id":"https:\/\/gokhan-gokalp.com\/c-memento-pattern-kullanimi\/"},"author":{"name":"G\u00f6khan G\u00f6kalp","@id":"https:\/\/gokhan-gokalp.com\/#\/schema\/person\/7e2a7fa98babd22a5fdae563c4b8cdbe"},"headline":"C# Memento Pattern Kullan\u0131m\u0131","datePublished":"2015-07-09T08:34:26+00:00","dateModified":"2015-07-09T08:35:12+00:00","mainEntityOfPage":{"@id":"https:\/\/gokhan-gokalp.com\/c-memento-pattern-kullanimi\/"},"wordCount":386,"commentCount":0,"publisher":{"@id":"https:\/\/gokhan-gokalp.com\/#\/schema\/person\/7e2a7fa98babd22a5fdae563c4b8cdbe"},"keywords":["Memento","Memento Design Pattern","Memento Tasar\u0131m Deseni"],"articleSection":["Tasar\u0131m Kal\u0131plar\u0131 (Design Patterns)"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/gokhan-gokalp.com\/c-memento-pattern-kullanimi\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/gokhan-gokalp.com\/c-memento-pattern-kullanimi\/","url":"https:\/\/gokhan-gokalp.com\/c-memento-pattern-kullanimi\/","name":"C# Memento Pattern Kullan\u0131m\u0131 - G\u00f6khan G\u00f6kalp","isPartOf":{"@id":"https:\/\/gokhan-gokalp.com\/#website"},"datePublished":"2015-07-09T08:34:26+00:00","dateModified":"2015-07-09T08:35:12+00:00","breadcrumb":{"@id":"https:\/\/gokhan-gokalp.com\/c-memento-pattern-kullanimi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/gokhan-gokalp.com\/c-memento-pattern-kullanimi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/gokhan-gokalp.com\/c-memento-pattern-kullanimi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/gokhan-gokalp.com\/"},{"@type":"ListItem","position":2,"name":"C# Memento Pattern Kullan\u0131m\u0131"}]},{"@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\/358","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=358"}],"version-history":[{"count":4,"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/posts\/358\/revisions"}],"predecessor-version":[{"id":363,"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/posts\/358\/revisions\/363"}],"wp:attachment":[{"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/media?parent=358"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/categories?post=358"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gokhan-gokalp.com\/tr\/wp-json\/wp\/v2\/tags?post=358"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}