[{"data":1,"prerenderedAt":2057},["ShallowReactive",2],{"navigation":3,"categories":339,"/dersler/javascript/object-oriented-nesne-yonelimli-javascript-programlama":577},[4,173,210,235],{"title":5,"path":6,"stem":7,"children":8,"page":102},"Dersler","/dersler","dersler",[9,103,116,137,146,155,164],{"title":10,"path":11,"stem":12,"children":13,"page":102},"Asp.Net Mvc","/dersler/asp-net-mvc","dersler/asp-net-mvc",[14,18,22,26,30,34,38,42,46,50,54,58,62,66,70,74,78,82,86,90,94,98],{"title":15,"path":16,"stem":17},"Asp.Net Mvc – Ajax ile Üye Girişi – Üyelik Sistemi 2 (Asp.Net Mvc Yazı Dizisi – 21)","/dersler/asp-net-mvc/asp-net-mvc-ajax-ile-uye-girisi-uyelik-sistemi-2-asp-net-mvc-yazi-dizisi-21","dersler/asp-net-mvc/asp-net-mvc-ajax-ile-uye-girisi-uyelik-sistemi-2-asp-net-mvc-yazi-dizisi-21",{"title":19,"path":20,"stem":21},"Asp.Net Mvc - Code First ile Veritabanı İşlemleri 2 (Asp.Net Mvc Yazı Dizisi – 12)","/dersler/asp-net-mvc/asp-net-mvc-code-first-ile-veritabani-islemleri-2-asp-net-mvc-yazi-dizisi-12","dersler/asp-net-mvc/asp-net-mvc-code-first-ile-veritabani-islemleri-2-asp-net-mvc-yazi-dizisi-12",{"title":23,"path":24,"stem":25},"Asp.Net Mvc - Code First ile Veritabanı İşlemleri 1 - Proje Başlangıcı (Asp.Net Mvc Yazı Dizisi – 11)","/dersler/asp-net-mvc/asp-net-mvc-code-first-ile-veritabani-islemleri-proje-baslangici-asp-net-mvc-yazi-dizisi-11","dersler/asp-net-mvc/asp-net-mvc-code-first-ile-veritabani-islemleri-proje-baslangici-asp-net-mvc-yazi-dizisi-11",{"title":27,"path":28,"stem":29},"Asp.Net Mvc - Controller ve View İşlemleri 1 (Asp.Net Mvc Yazı Dizisi – 13)","/dersler/asp-net-mvc/asp-net-mvc-controller-ve-view-islemleri-1-asp-net-mvc-yazi-dizisi-13","dersler/asp-net-mvc/asp-net-mvc-controller-ve-view-islemleri-1-asp-net-mvc-yazi-dizisi-13",{"title":31,"path":32,"stem":33},"Asp.Net Mvc - Controller ve View İşlemleri 2 (Asp.Net Mvc Yazı Dizisi – 14)","/dersler/asp-net-mvc/asp-net-mvc-controller-ve-view-islemleri-2-asp-net-mvc-yazi-dizisi-14","dersler/asp-net-mvc/asp-net-mvc-controller-ve-view-islemleri-2-asp-net-mvc-yazi-dizisi-14",{"title":35,"path":36,"stem":37},"Asp.Net Mvc – Controller ve View İşlemleri 3 (Asp.Net Mvc Yazı Dizisi – 15)","/dersler/asp-net-mvc/asp-net-mvc-controller-ve-view-islemleri-3-asp-net-mvc-yazi-dizisi-15","dersler/asp-net-mvc/asp-net-mvc-controller-ve-view-islemleri-3-asp-net-mvc-yazi-dizisi-15",{"title":39,"path":40,"stem":41},"Asp.Net Mvc – Html Helper'ler (Asp.Net Mvc Yazı Dizisi – 16)","/dersler/asp-net-mvc/asp-net-mvc-html-helperler-asp-net-mvc-yazi-dizisi-16","dersler/asp-net-mvc/asp-net-mvc-html-helperler-asp-net-mvc-yazi-dizisi-16",{"title":43,"path":44,"stem":45},"Asp.Net Mvc – Html Helper'lerin For Takılı Kullanım Örnekleri 1 (Asp.Net Mvc Yazı Dizisi – 18)","/dersler/asp-net-mvc/asp-net-mvc-html-helperlerin-for-takili-kullanim-ornekleri-1-asp-net-mvc-yazi-dizisi-18","dersler/asp-net-mvc/asp-net-mvc-html-helperlerin-for-takili-kullanim-ornekleri-1-asp-net-mvc-yazi-dizisi-18",{"title":47,"path":48,"stem":49},"Asp.Net Mvc – Html Helper'lerin For Takılı Kullanım Örnekleri 2 (Asp.Net Mvc Yazı Dizisi – 19)","/dersler/asp-net-mvc/asp-net-mvc-html-helperlerin-for-takili-kullanim-ornekleri-2-asp-net-mvc-yazi-dizisi-19","dersler/asp-net-mvc/asp-net-mvc-html-helperlerin-for-takili-kullanim-ornekleri-2-asp-net-mvc-yazi-dizisi-19",{"title":51,"path":52,"stem":53},"Asp.Net Mvc Layout Sayfaları (Asp.Net Mvc Yazı Dizisi – 4)","/dersler/asp-net-mvc/asp-net-mvc-layout-sayfalari-asp-net-mvc-yazi-dizisi-4","dersler/asp-net-mvc/asp-net-mvc-layout-sayfalari-asp-net-mvc-yazi-dizisi-4",{"title":55,"path":56,"stem":57},"Asp.Net Mvc Layout Sayfaları - Partial View (Asp.Net Mvc Yazı Dizisi – 7)","/dersler/asp-net-mvc/asp-net-mvc-layout-sayfalari-partial-view-asp-net-mvc-yazi-dizisi-7","dersler/asp-net-mvc/asp-net-mvc-layout-sayfalari-partial-view-asp-net-mvc-yazi-dizisi-7",{"title":59,"path":60,"stem":61},"Asp.Net Mvc Layout Sayfaları - Render Page (Asp.Net Mvc Yazı Dizisi – 6)","/dersler/asp-net-mvc/asp-net-mvc-layout-sayfalari-render-page-asp-net-mvc-yazi-dizisi-6","dersler/asp-net-mvc/asp-net-mvc-layout-sayfalari-render-page-asp-net-mvc-yazi-dizisi-6",{"title":63,"path":64,"stem":65},"Asp.Net Mvc Layout Sayfaları - Render Section (Asp.Net Mvc Yazı Dizisi – 5)","/dersler/asp-net-mvc/asp-net-mvc-layout-sayfalari-render-section-asp-net-mvc-yazi-dizisi-5","dersler/asp-net-mvc/asp-net-mvc-layout-sayfalari-render-section-asp-net-mvc-yazi-dizisi-5",{"title":67,"path":68,"stem":69},"Asp.Net Mvc Nedir? (Asp.Net Mvc Yazı Dizisi - 1)","/dersler/asp-net-mvc/asp-net-mvc-nedir-asp-net-mvc-yazi-dizisi-1","dersler/asp-net-mvc/asp-net-mvc-nedir-asp-net-mvc-yazi-dizisi-1",{"title":71,"path":72,"stem":73},"Asp.Net Mvc Razor View Engine Bölüm 1 (Asp.Net Mvc Yazı Dizisi – 8)","/dersler/asp-net-mvc/asp-net-mvc-razor-view-engine-bolum-1-asp-net-mvc-yazi-dizisi-8","dersler/asp-net-mvc/asp-net-mvc-razor-view-engine-bolum-1-asp-net-mvc-yazi-dizisi-8",{"title":75,"path":76,"stem":77},"Asp.Net Mvc Razor View Engine Bölüm 2 (Asp.Net Mvc Yazı Dizisi – 9)","/dersler/asp-net-mvc/asp-net-mvc-razor-view-engine-bolum-2-asp-net-mvc-yazi-dizisi-9","dersler/asp-net-mvc/asp-net-mvc-razor-view-engine-bolum-2-asp-net-mvc-yazi-dizisi-9",{"title":79,"path":80,"stem":81},"Asp.Net Mvc Razor View Engine Bölüm 3 (Asp.Net Mvc Yazı Dizisi – 10)","/dersler/asp-net-mvc/asp-net-mvc-razor-view-engine-bolum-3-asp-net-mvc-yazi-dizisi-10","dersler/asp-net-mvc/asp-net-mvc-razor-view-engine-bolum-3-asp-net-mvc-yazi-dizisi-10",{"title":83,"path":84,"stem":85},"Asp.Net Mvc Routing Mekanizması ve Mvc 5 ile Gelen Yenilikler","/dersler/asp-net-mvc/asp-net-mvc-routing-mekanizmasi-ve-mvc-5-ile-gelen-yenilikler","dersler/asp-net-mvc/asp-net-mvc-routing-mekanizmasi-ve-mvc-5-ile-gelen-yenilikler",{"title":87,"path":88,"stem":89},"Asp.Net Mvc – Web Helper'ler (Asp.Net Mvc Yazı Dizisi – 17)","/dersler/asp-net-mvc/asp-net-mvc-web-helperler-asp-net-mvc-yazi-dizisi-17","dersler/asp-net-mvc/asp-net-mvc-web-helperler-asp-net-mvc-yazi-dizisi-17",{"title":91,"path":92,"stem":93},"Asp.Net Mvc – Yeni Üye Kaydı ve Dosya Yükleme - Üyelik Sistemi 1 (Asp.Net Mvc Yazı Dizisi – 20)","/dersler/asp-net-mvc/asp-net-mvc-yeni-uye-kaydi-ve-dosya-yukleme-uyelik-sistemi-1-asp-net-mvc-yazi-dizisi-20","dersler/asp-net-mvc/asp-net-mvc-yeni-uye-kaydi-ve-dosya-yukleme-uyelik-sistemi-1-asp-net-mvc-yazi-dizisi-20",{"title":95,"path":96,"stem":97},"Asp.Net Mvc'nin Avantajları (Asp.Net Mvc Yazı Dizisi – 2)","/dersler/asp-net-mvc/asp-net-mvcnin-avantajlari-asp-net-mvc-yazi-dizisi-2","dersler/asp-net-mvc/asp-net-mvcnin-avantajlari-asp-net-mvc-yazi-dizisi-2",{"title":99,"path":100,"stem":101},"İlk Asp.Net Mvc Projesinin Oluşturulması (Asp.Net Mvc Yazı Dizisi – 3)","/dersler/asp-net-mvc/ilk-asp-net-mvc-projesinin-olusturulmasi-asp-net-mvc-yazi-dizisi-3","dersler/asp-net-mvc/ilk-asp-net-mvc-projesinin-olusturulmasi-asp-net-mvc-yazi-dizisi-3",false,{"title":104,"path":105,"stem":106,"children":107,"page":102},"Javascript","/dersler/javascript","dersler/javascript",[108,112],{"title":109,"path":110,"stem":111},"Jquery'den Yalın Javascript (Vanilla Js)'e Geçiş","/dersler/javascript/jqueryden-yalin-javascript-vanilla-jse-gecis","dersler/javascript/jqueryden-yalin-javascript-vanilla-jse-gecis",{"title":113,"path":114,"stem":115},"Object Oriented (Nesne Yönelimli) Javascript Programlama","/dersler/javascript/object-oriented-nesne-yonelimli-javascript-programlama","dersler/javascript/object-oriented-nesne-yonelimli-javascript-programlama",{"title":117,"path":118,"stem":119,"children":120,"page":102},"Orchard Cms","/dersler/orchard-cms","dersler/orchard-cms",[121,125,129,133],{"title":122,"path":123,"stem":124},"Orchard Project Nedir? (Orchard Cms Seri - 1)","/dersler/orchard-cms/orchard-project-nedir-orchard-cms-seri-1","dersler/orchard-cms/orchard-project-nedir-orchard-cms-seri-1",{"title":126,"path":127,"stem":128},"Orchard – Visual Studio ile Kurulumu? (Orchard Cms Seri – 3)","/dersler/orchard-cms/orchard-visual-studio-ile-kurulumu-orchard-cms-seri-3","dersler/orchard-cms/orchard-visual-studio-ile-kurulumu-orchard-cms-seri-3",{"title":130,"path":131,"stem":132},"Orchard - Web Matrix ile Kurulumu? (Orchard Cms Seri – 2)","/dersler/orchard-cms/orchard-web-matrix-kurulumu-orchard-cms-seri-2","dersler/orchard-cms/orchard-web-matrix-kurulumu-orchard-cms-seri-2",{"title":134,"path":135,"stem":136},"Orchard'ı Türkçeleştirme (Türkçe Dil Dosyaları Mevcut)","/dersler/orchard-cms/orchardi-turkcelestirme-turkce-dil-dosyalari","dersler/orchard-cms/orchardi-turkcelestirme-turkce-dil-dosyalari",{"title":138,"path":139,"stem":140,"children":141,"page":102},"RequireJs","/dersler/requirejs","dersler/requirejs",[142],{"title":143,"path":144,"stem":145},"RequireJs Nedir? (RequireJs ile Modüler JavaScript Programlama)","/dersler/requirejs/requirejs-nedir-requirejs-ile-moduler-javascript-programlama-1","dersler/requirejs/requirejs-nedir-requirejs-ile-moduler-javascript-programlama-1",{"title":147,"path":148,"stem":149,"children":150,"page":102},"Three.js ile WebGL","/dersler/three-js-ile-webgl","dersler/three-js-ile-webgl",[151],{"title":152,"path":153,"stem":154},"WebGL Nedir? (Three.js ile WebGL)","/dersler/three-js-ile-webgl/webgl-nedir-three-js-ile-webgl-1","dersler/three-js-ile-webgl/webgl-nedir-three-js-ile-webgl-1",{"title":156,"path":157,"stem":158,"children":159,"page":102},"Vue.js","/dersler/vue-js","dersler/vue-js",[160],{"title":161,"path":162,"stem":163},"Vue.js Nedir?","/dersler/vue-js/vue-js-nedir","dersler/vue-js/vue-js-nedir",{"title":165,"path":166,"stem":167,"children":168,"page":102},"Yazılım Mimarisi","/dersler/yazilim-mimarisi","dersler/yazilim-mimarisi",[169],{"title":170,"path":171,"stem":172},"Kurumsal Web Uygulamaları Geliştirme","/dersler/yazilim-mimarisi/kurumsal-web-uygulamalari-gelistirme","dersler/yazilim-mimarisi/kurumsal-web-uygulamalari-gelistirme",{"title":174,"path":175,"stem":176,"children":177,"page":102},"Duyurular","/duyurular","duyurular",[178,182,186,190,194,198,202,206],{"title":179,"path":180,"stem":181},"Asp.Net vNext ve Visual Studio 14","/duyurular/asp-net-vnext-ve-visual-studio-14","duyurular/asp-net-vnext-ve-visual-studio-14",{"title":183,"path":184,"stem":185},"Nop Commerce 3.20 Sürümü Çıktı","/duyurular/nop-commerce-3-20-surumu-cikti","duyurular/nop-commerce-3-20-surumu-cikti",{"title":187,"path":188,"stem":189},"Nop Commerce 3.30 Yenilikleri","/duyurular/nop-commerce-3-30-yenilikleri","duyurular/nop-commerce-3-30-yenilikleri",{"title":191,"path":192,"stem":193},"TypeScript Final Sürümüne Ulaştı","/duyurular/typescript-final-surumune-ulasti","duyurular/typescript-final-surumune-ulasti",{"title":195,"path":196,"stem":197},"Visual Studio 2013 Update 1 Final Çıktı","/duyurular/visual-studio-2013-update-1-final-cikti","duyurular/visual-studio-2013-update-1-final-cikti",{"title":199,"path":200,"stem":201},"Visual Studio 2013 Update 2 Final Çıktı","/duyurular/visual-studio-2013-update-2-final-cikti","duyurular/visual-studio-2013-update-2-final-cikti",{"title":203,"path":204,"stem":205},"Visual Studio 2013 Update 3 Final Çıktı","/duyurular/visual-studio-2013-update-3-final-cikti","duyurular/visual-studio-2013-update-3-final-cikti",{"title":207,"path":208,"stem":209},"Wordpress 3.8.1 Sürümü Çıktı","/duyurular/wordpress-3-8-1-surumu-cikti","duyurular/wordpress-3-8-1-surumu-cikti",{"title":211,"path":212,"stem":213,"children":214,"page":102},"Geliştirmelerim","/gelistirmelerim","gelistirmelerim",[215,219,223,227,231],{"title":216,"path":217,"stem":218},"ChatGPT Arayüz Projesi","/gelistirmelerim/chatgpt-arayuz","gelistirmelerim/chatgpt-arayuz",{"title":220,"path":221,"stem":222},"Orchard Bootstrap Eklentisi","/gelistirmelerim/orchard-bootstrap-eklentisi","gelistirmelerim/orchard-bootstrap-eklentisi",{"title":224,"path":225,"stem":226},"Orchard Localized Layer Eklentisi","/gelistirmelerim/orchard-localized-layer-eklentisi","gelistirmelerim/orchard-localized-layer-eklentisi",{"title":228,"path":229,"stem":230},"Orchard Responsive Flex Slider Eklentisi","/gelistirmelerim/orchard-responsive-flex-slider-eklentisi","gelistirmelerim/orchard-responsive-flex-slider-eklentisi",{"title":232,"path":233,"stem":234},"Vue.js Token Eklentisi","/gelistirmelerim/vue-js-token-eklentisi","gelistirmelerim/vue-js-token-eklentisi",{"title":236,"path":237,"stem":238,"children":239,"page":102},"İpuçları","/ipuclari","ipuclari",[240,249,258,266,275,284,292,309,317,330],{"title":241,"path":242,"stem":243,"children":244,"page":102},"Apache Cordova","/ipuclari/apache-cordova","ipuclari/apache-cordova",[245],{"title":246,"path":247,"stem":248},"Visual Studio'da Cordova Intellisense Aktif Etme","/ipuclari/apache-cordova/visual-studioda-cordova-intellisense-aktif-etme","ipuclari/apache-cordova/visual-studioda-cordova-intellisense-aktif-etme",{"title":250,"path":251,"stem":252,"children":253,"page":102},"Apache Server","/ipuclari/apache-server","ipuclari/apache-server",[254],{"title":255,"path":256,"stem":257},"Apache Sunucularda Açılış Sayfasını Değiştirmek","/ipuclari/apache-server/apache-sunucularda-acilis-sayfasini-degistirmek","ipuclari/apache-server/apache-sunucularda-acilis-sayfasini-degistirmek",{"title":10,"path":259,"stem":260,"children":261,"page":102},"/ipuclari/asp-net-mvc","ipuclari/asp-net-mvc",[262],{"title":263,"path":264,"stem":265},"Class Library Projelerine Razor Intellisense Desteği Eklemek","/ipuclari/asp-net-mvc/class-library-projelerine-razor-intellisense-destegi-eklemek","ipuclari/asp-net-mvc/class-library-projelerine-razor-intellisense-destegi-eklemek",{"title":267,"path":268,"stem":269,"children":270,"page":102},"Asp.Net Web Api","/ipuclari/asp-net-web-api","ipuclari/asp-net-web-api",[271],{"title":272,"path":273,"stem":274},"Asp.Net Web Api Dosya İndirme","/ipuclari/asp-net-web-api/asp-net-web-api-dosya-indirme","ipuclari/asp-net-web-api/asp-net-web-api-dosya-indirme",{"title":276,"path":277,"stem":278,"children":279,"page":102},"IIS","/ipuclari/iis","ipuclari/iis",[280],{"title":281,"path":282,"stem":283},"Visual Studio IIS Express Yüksek Cpu Kullanımı Sorunu","/ipuclari/iis/visual-studio-iis-express-yuksek-cpu-kullanimi-sorunu","ipuclari/iis/visual-studio-iis-express-yuksek-cpu-kullanimi-sorunu",{"title":104,"path":285,"stem":286,"children":287,"page":102},"/ipuclari/javascript","ipuclari/javascript",[288],{"title":289,"path":290,"stem":291},"Jquery width() - innerWidth() - outerWidth() Farkları","/ipuclari/javascript/jquery-width-innerwidth-outerwidth-farklari","ipuclari/javascript/jquery-width-innerwidth-outerwidth-farklari",{"title":293,"path":294,"stem":295,"children":296,"page":102},"Nop Commerce","/ipuclari/nop-commerce","ipuclari/nop-commerce",[297,301,305],{"title":298,"path":299,"stem":300},"Nop Commerce Eklentilerinde Kullanıcı Yetkilendirmesi","/ipuclari/nop-commerce/nop-commerce-eklenti-kullanici-yetkilendirmesi","ipuclari/nop-commerce/nop-commerce-eklenti-kullanici-yetkilendirmesi",{"title":302,"path":303,"stem":304},"Nop Commerce Eklenti Yazımında Intelli Sense Sorununu Düzeltme","/ipuclari/nop-commerce/nop-commerce-eklenti-yaziminda-intelli-sense-sorununu-duzeltme","ipuclari/nop-commerce/nop-commerce-eklenti-yaziminda-intelli-sense-sorununu-duzeltme",{"title":306,"path":307,"stem":308},"Nop Commerce Widget Konum Listesi","/ipuclari/nop-commerce/nop-commerce-widget-konum-listesi","ipuclari/nop-commerce/nop-commerce-widget-konum-listesi",{"title":117,"path":310,"stem":311,"children":312,"page":102},"/ipuclari/orchard-cms","ipuclari/orchard-cms",[313],{"title":314,"path":315,"stem":316},"Orchard 1.7.x Sürümlerinde Intellisense Hatasını Giderme","/ipuclari/orchard-cms/orchard-1-7-x-surumlerinde-intellisense-hatasini-giderme","ipuclari/orchard-cms/orchard-1-7-x-surumlerinde-intellisense-hatasini-giderme",{"title":318,"path":319,"stem":320,"children":321,"page":102},"Wordpress","/ipuclari/wordpress","ipuclari/wordpress",[322,326],{"title":323,"path":324,"stem":325},"Word Press Ftp Bilgisi Sormama Ayarı","/ipuclari/wordpress/word-press-ftp-bilgisi-sormama-ayari","ipuclari/wordpress/word-press-ftp-bilgisi-sormama-ayari",{"title":327,"path":328,"stem":329},"Wordpress Sidebar Meta - Wordpress.org Linkini Silme","/ipuclari/wordpress/wordpress-sidebar-meta-wordpress-org-linkini-silme","ipuclari/wordpress/wordpress-sidebar-meta-wordpress-org-linkini-silme",{"title":331,"path":332,"stem":333,"children":334,"page":102},"Xampp","/ipuclari/xampp","ipuclari/xampp",[335],{"title":336,"path":337,"stem":338},"Xampp Tüm Sürüm Listesi","/ipuclari/xampp/xampp-tum-surum-listesi","ipuclari/xampp/xampp-tum-surum-listesi",[340,357,368,379,390,401,412,423,434,445,456,467,478,489,500,511,522,533,544,555,566],{"id":341,"title":5,"body":342,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":351,"navigation":352,"path":353,"seo":354,"stem":355,"__hash__":356},"posts/dersler/.navigation.md",{"type":343,"value":344,"toc":345},"minimark",[],{"title":346,"searchDepth":347,"depth":347,"links":348},"",2,[],null,"md",{},true,"/dersler/.navigation",{"title":5,"description":346},"dersler/.navigation","Yo_9ZJtmvgLHf17cAHzvT06H3T1Ets_s-roHMTl3ZYI",{"id":358,"title":10,"body":359,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":363,"navigation":352,"path":364,"seo":365,"stem":366,"__hash__":367},"posts/dersler/asp-net-mvc/.navigation.md",{"type":343,"value":360,"toc":361},[],{"title":346,"searchDepth":347,"depth":347,"links":362},[],{},"/dersler/asp-net-mvc/.navigation",{"title":10,"description":346},"dersler/asp-net-mvc/.navigation","PTvSN66cD4508L31HdyDUIhOskLEnya90TKHQjGo994",{"id":369,"title":104,"body":370,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":374,"navigation":352,"path":375,"seo":376,"stem":377,"__hash__":378},"posts/dersler/javascript/.navigation.md",{"type":343,"value":371,"toc":372},[],{"title":346,"searchDepth":347,"depth":347,"links":373},[],{},"/dersler/javascript/.navigation",{"title":104,"description":346},"dersler/javascript/.navigation","bUttamdS6EWYvmoedNpErrdL_02OT9K6sHHmAD5kdXE",{"id":380,"title":117,"body":381,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":385,"navigation":352,"path":386,"seo":387,"stem":388,"__hash__":389},"posts/dersler/orchard-cms/.navigation.md",{"type":343,"value":382,"toc":383},[],{"title":346,"searchDepth":347,"depth":347,"links":384},[],{},"/dersler/orchard-cms/.navigation",{"title":117,"description":346},"dersler/orchard-cms/.navigation","vf9ZQxf2YUpNSH09JkDW8B80DJ8dutrwo13pM-L1naU",{"id":391,"title":138,"body":392,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":396,"navigation":352,"path":397,"seo":398,"stem":399,"__hash__":400},"posts/dersler/requirejs/.navigation.md",{"type":343,"value":393,"toc":394},[],{"title":346,"searchDepth":347,"depth":347,"links":395},[],{},"/dersler/requirejs/.navigation",{"title":138,"description":346},"dersler/requirejs/.navigation","3ee9nRLCD2baXpsVn9PyDaAus4--JiF-l-veIDcdruM",{"id":402,"title":147,"body":403,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":407,"navigation":352,"path":408,"seo":409,"stem":410,"__hash__":411},"posts/dersler/three-js-ile-webgl/.navigation.md",{"type":343,"value":404,"toc":405},[],{"title":346,"searchDepth":347,"depth":347,"links":406},[],{},"/dersler/three-js-ile-webgl/.navigation",{"title":147,"description":346},"dersler/three-js-ile-webgl/.navigation","nUfb_DUlupidc2LBy3L_59z47x2BhJi1-L6Ri78gMMI",{"id":413,"title":156,"body":414,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":418,"navigation":352,"path":419,"seo":420,"stem":421,"__hash__":422},"posts/dersler/vue-js/.navigation.md",{"type":343,"value":415,"toc":416},[],{"title":346,"searchDepth":347,"depth":347,"links":417},[],{},"/dersler/vue-js/.navigation",{"title":156,"description":346},"dersler/vue-js/.navigation","sM919oShzUaKXtAu2t6UxThzxjp88FIpEiCBtqjgMfM",{"id":424,"title":165,"body":425,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":429,"navigation":352,"path":430,"seo":431,"stem":432,"__hash__":433},"posts/dersler/yazilim-mimarisi/.navigation.md",{"type":343,"value":426,"toc":427},[],{"title":346,"searchDepth":347,"depth":347,"links":428},[],{},"/dersler/yazilim-mimarisi/.navigation",{"title":165,"description":346},"dersler/yazilim-mimarisi/.navigation","VaeC5tLP3Enl4njeu0Cen-C_KmQabvKhw7PxK_bMbAw",{"id":435,"title":174,"body":436,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":440,"navigation":352,"path":441,"seo":442,"stem":443,"__hash__":444},"posts/duyurular/.navigation.md",{"type":343,"value":437,"toc":438},[],{"title":346,"searchDepth":347,"depth":347,"links":439},[],{},"/duyurular/.navigation",{"title":174,"description":346},"duyurular/.navigation","4rzF9u-0UF1wDFh1PaKOGlrl47vkJ-eGm2YLWTQsWB8",{"id":446,"title":211,"body":447,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":451,"navigation":352,"path":452,"seo":453,"stem":454,"__hash__":455},"posts/gelistirmelerim/.navigation.md",{"type":343,"value":448,"toc":449},[],{"title":346,"searchDepth":347,"depth":347,"links":450},[],{},"/gelistirmelerim/.navigation",{"title":211,"description":346},"gelistirmelerim/.navigation","-rbnagzfm7EAv-3Wbx2RtTpnuOsf7PhFd1k8HWymFJs",{"id":457,"title":236,"body":458,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":462,"navigation":352,"path":463,"seo":464,"stem":465,"__hash__":466},"posts/ipuclari/.navigation.md",{"type":343,"value":459,"toc":460},[],{"title":346,"searchDepth":347,"depth":347,"links":461},[],{},"/ipuclari/.navigation",{"title":236,"description":346},"ipuclari/.navigation","zi0IIAkH6byWTX1v0PQqvoJGIN-QOgZPuFh46B3-Hbs",{"id":468,"title":241,"body":469,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":473,"navigation":352,"path":474,"seo":475,"stem":476,"__hash__":477},"posts/ipuclari/apache-cordova/.navigation.md",{"type":343,"value":470,"toc":471},[],{"title":346,"searchDepth":347,"depth":347,"links":472},[],{},"/ipuclari/apache-cordova/.navigation",{"title":241,"description":346},"ipuclari/apache-cordova/.navigation","XB8Y86jOhcbmfazjiAHT9ZBlLm-ELG_56cMZdlgVDeg",{"id":479,"title":250,"body":480,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":484,"navigation":352,"path":485,"seo":486,"stem":487,"__hash__":488},"posts/ipuclari/apache-server/.navigation.md",{"type":343,"value":481,"toc":482},[],{"title":346,"searchDepth":347,"depth":347,"links":483},[],{},"/ipuclari/apache-server/.navigation",{"title":250,"description":346},"ipuclari/apache-server/.navigation","nz2-tvhAoLZq5JoofxrB1Vce1Y0ZJxM5-aJy4UGGMBE",{"id":490,"title":10,"body":491,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":495,"navigation":352,"path":496,"seo":497,"stem":498,"__hash__":499},"posts/ipuclari/asp-net-mvc/.navigation.md",{"type":343,"value":492,"toc":493},[],{"title":346,"searchDepth":347,"depth":347,"links":494},[],{},"/ipuclari/asp-net-mvc/.navigation",{"title":10,"description":346},"ipuclari/asp-net-mvc/.navigation","yIDoFpgOrvcNkVOqKxihtoYUeqvtYWjqHMCSbvyyBM8",{"id":501,"title":267,"body":502,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":506,"navigation":352,"path":507,"seo":508,"stem":509,"__hash__":510},"posts/ipuclari/asp-net-web-api/.navigation.md",{"type":343,"value":503,"toc":504},[],{"title":346,"searchDepth":347,"depth":347,"links":505},[],{},"/ipuclari/asp-net-web-api/.navigation",{"title":267,"description":346},"ipuclari/asp-net-web-api/.navigation","lAXXpFakou4QFVT0fsneP_g0umpUlY7pPiW3AUj0iIg",{"id":512,"title":276,"body":513,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":517,"navigation":352,"path":518,"seo":519,"stem":520,"__hash__":521},"posts/ipuclari/iis/.navigation.md",{"type":343,"value":514,"toc":515},[],{"title":346,"searchDepth":347,"depth":347,"links":516},[],{},"/ipuclari/iis/.navigation",{"title":276,"description":346},"ipuclari/iis/.navigation","zl9qxvnrSEksXoGXqf4t3nm5q4tAsAUoQZN7O2Pj6l8",{"id":523,"title":104,"body":524,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":528,"navigation":352,"path":529,"seo":530,"stem":531,"__hash__":532},"posts/ipuclari/javascript/.navigation.md",{"type":343,"value":525,"toc":526},[],{"title":346,"searchDepth":347,"depth":347,"links":527},[],{},"/ipuclari/javascript/.navigation",{"title":104,"description":346},"ipuclari/javascript/.navigation","l3NHgRo-FsSkV-HcqIpwTPoxjwyiA_Er6lWUBa_iyKU",{"id":534,"title":293,"body":535,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":539,"navigation":352,"path":540,"seo":541,"stem":542,"__hash__":543},"posts/ipuclari/nop-commerce/.navigation.md",{"type":343,"value":536,"toc":537},[],{"title":346,"searchDepth":347,"depth":347,"links":538},[],{},"/ipuclari/nop-commerce/.navigation",{"title":293,"description":346},"ipuclari/nop-commerce/.navigation","J3gbuZvYk7B3_EWUoYX4qmWCvGsfciErCs_DkpZS3o4",{"id":545,"title":117,"body":546,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":550,"navigation":352,"path":551,"seo":552,"stem":553,"__hash__":554},"posts/ipuclari/orchard-cms/.navigation.md",{"type":343,"value":547,"toc":548},[],{"title":346,"searchDepth":347,"depth":347,"links":549},[],{},"/ipuclari/orchard-cms/.navigation",{"title":117,"description":346},"ipuclari/orchard-cms/.navigation","emBSh7WkN8FUKMOnKi3efkXnJMctE9nz-z5apX2Nk28",{"id":556,"title":318,"body":557,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":561,"navigation":352,"path":562,"seo":563,"stem":564,"__hash__":565},"posts/ipuclari/wordpress/.navigation.md",{"type":343,"value":558,"toc":559},[],{"title":346,"searchDepth":347,"depth":347,"links":560},[],{},"/ipuclari/wordpress/.navigation",{"title":318,"description":346},"ipuclari/wordpress/.navigation","se7piGHmA3YAlKnPNPqIRhyiTc-1cdlxvCE_WChWiNs",{"id":567,"title":331,"body":568,"coverImage":349,"createDate":349,"description":346,"extension":350,"meta":572,"navigation":352,"path":573,"seo":574,"stem":575,"__hash__":576},"posts/ipuclari/xampp/.navigation.md",{"type":343,"value":569,"toc":570},[],{"title":346,"searchDepth":347,"depth":347,"links":571},[],{},"/ipuclari/xampp/.navigation",{"title":331,"description":346},"ipuclari/xampp/.navigation","-Eggmae4KDrGpf_pbmsKkFN0yO5CtVI5ak5TYdCiNwI",{"id":578,"title":113,"body":579,"coverImage":2052,"createDate":2053,"description":591,"extension":350,"meta":2054,"navigation":352,"path":114,"seo":2055,"stem":115,"__hash__":2056},"posts/dersler/javascript/object-oriented-nesne-yonelimli-javascript-programlama.md",{"type":343,"value":580,"toc":2050},[581,585,592,599,610,616,621,624,627,633,640,647,650,706,709,724,727,732,739,742,807,818,821,876,889,892,895,901,1057,1066,1072,1075,1322,1329,1332,1337,1344,1351,1354,1617,1626,1632,1638,1641,1802,1805,1812,2020,2023,2026,2032,2043,2046],[582,583,113],"h1",{"id":584},"object-oriented-nesne-yönelimli-javascript-programlama",[586,587,588],"p",{},[589,590,591],"strong",{},"Merhaba Arkadaşlar,",[586,593,594,595,598],{},"1995 yılında piyasaya sürülen",[589,596,597],{},"JavaScript",", sadece html içeriğe sahip, durağan siteleri canlandırma amacı güdüyordu.\nAradan geçen uzun yıllar boyunca, basit bir script dili olarak görüldüğünden dolayı, ne yazıkki yeterince değer ve\nitibar görmedi.",[586,600,601,602,609],{},"Son bir kaç yılda ise, web uygulamalarının ortaya çıkışıyla birlikte, ciddi bir değer kazanarak, popüleritesini\ninanılmaz oranda arttırdı. Ne varki şu an piyasada, JavaScript'in doğru yazımıyla alakalı ciddi bir sıkıntı var. Halen\ndaha ciddi bir programlama dili gibi değil, basit bir script dili gibi görülmeye devam ediliyor. Bu yüzden C#, Java,\nC++, PHP vs. geliştiricilerinin aşina olduğu",[589,603,604,605,608],{},"Object Oriented (Nesne Yönelimli), Inheritance (Kalıtım)",[589,606,607],{},"gibi konular, ne\nyazıkki çoğu JavaScript geliştiricisinin ilgi alanında değil. Standart","Procedurel","programlama devam ediyor.",[586,611,612,613],{},"Ancak artık çok ciddi uygulamalar ortaya çıkıyor(Outlook,Gmail vs.)ve bunların yazımı, yönetimi için ciddi modülerliğe\nihtiyaç duyulmaktadır. Burada da aslında OOP kavramı devreye giriyor.",[589,614,615],{},"Peki OOP nedir?",[586,617,618],{},[589,619,620],{},"Object Oriented Programming (Nesne Yönelimli Programlama)",[586,622,623],{},"Programlama akışında kullanılacak her şeyin, nesne olarak kullanıldığı, ufak modüllere bölündüğü bir kod yönetim\nşeklidir. En büyük avantajı kod tekrarını ortadan kaldırmasıdır.",[586,625,626],{},"Mesela bir kediyi modellediğimizi düşünelim. Kedi bir hayvandır. Hayvanların ortak özellikleri vardır. Her hayvan\ntürüne, ayrı ayrı ortak özellikleri tanımlamak yerine bir seferde hayvanı tanımlayıp ortak özellikleri ekleriz. Daha\nsonra kedi, köpek vs. hayvan türlerini de hayvan nesnesinden türetiriz.",[628,629,630],"blockquote",{},[586,631,632],{},"Oop detaylı bir konudur. Ayrıntısına bu yazıda inmeyeceğim. Bilginiz yoksa, lütfen internetten araştırma yapınız.",[586,634,635,636,639],{},"JavaScript OOP bir dil olsa da, basit bir şekilde",[589,637,638],{},"inheritence","vs. kavramların kullanılmasına izin vermez. Bu tarz bir\nyapı için biraz emek harcamak gerekmektedir.",[586,641,642,643,646],{},"JavaScript'te metodlarımızı ",[589,644,645],{},"function"," ile tanımlamaktayız.",[586,648,649],{},"Aşağıda,",[651,652,656],"pre",{"className":653,"code":654,"language":655,"meta":346,"style":346},"language-js shiki shiki-themes material-theme-lighter github-light github-dark","function sample(){\n    alert('sample');\n}\n","js",[657,658,659,675,700],"code",{"__ignoreMap":346},[660,661,664,667,671],"span",{"class":662,"line":663},"line",1,[660,665,645],{"class":666},"sbsja",[660,668,670],{"class":669},"sGLFI"," sample",[660,672,674],{"class":673},"sP7_E","(){\n",[660,676,677,680,684,688,692,694,697],{"class":662,"line":347},[660,678,679],{"class":669},"    alert",[660,681,683],{"class":682},"skxfh","(",[660,685,687],{"class":686},"sjJ54","'",[660,689,691],{"class":690},"s_sjI","sample",[660,693,687],{"class":686},[660,695,696],{"class":682},")",[660,698,699],{"class":673},";\n",[660,701,703],{"class":662,"line":702},3,[660,704,705],{"class":673},"}\n",[586,707,708],{},"örnek bir function'u görmekteyiz. Bu function'u ise aşağıdaki gibi çağırırız.",[651,710,712],{"className":653,"code":711,"language":655,"meta":346,"style":346},"sample();\n",[657,713,714],{"__ignoreMap":346},[660,715,716,718,722],{"class":662,"line":663},[660,717,691],{"class":669},[660,719,721],{"class":720},"su5hD","()",[660,723,699],{"class":673},[586,725,726],{},"Bu, tarayıcı ekranında alert penceresini açacaktır.",[586,728,729],{},[589,730,731],{},"JavaScript Class",[586,733,734,735,738],{},"Peki server side dillerden alışkın olduğumuz",[589,736,737],{},"class","'larımızı nasıl kullanacağız?",[586,740,741],{},"Aşağıdaki gibi,",[651,743,745],{"className":653,"code":744,"language":655,"meta":346,"style":346},"function Person(name,surname){\n    this.name=name;\n    this.surname=surname;\n}\n",[657,746,747,769,788,802],{"__ignoreMap":346},[660,748,749,751,754,756,760,763,766],{"class":662,"line":663},[660,750,645],{"class":666},[660,752,753],{"class":669}," Person",[660,755,683],{"class":673},[660,757,759],{"class":758},"s99_P","name",[660,761,762],{"class":673},",",[660,764,765],{"class":758},"surname",[660,767,768],{"class":673},"){\n",[660,770,771,775,778,780,784,786],{"class":662,"line":347},[660,772,774],{"class":773},"s39Yj","    this",[660,776,777],{"class":673},".",[660,779,759],{"class":720},[660,781,783],{"class":782},"smGrS","=",[660,785,759],{"class":720},[660,787,699],{"class":673},[660,789,790,792,794,796,798,800],{"class":662,"line":702},[660,791,774],{"class":773},[660,793,777],{"class":673},[660,795,765],{"class":720},[660,797,783],{"class":782},[660,799,765],{"class":720},[660,801,699],{"class":673},[660,803,805],{"class":662,"line":804},4,[660,806,705],{"class":673},[586,808,809,812,813,762,815,817],{},[657,810,811],{},"Person","isimli bir class tanımladık ve ilk değişkenleri olan",[657,814,759],{},[657,816,765],{},"atamalarını parametre ile sağladık.",[586,819,820],{},"Daha sonra,",[651,822,824],{"className":653,"code":823,"language":655,"meta":346,"style":346},"var person=new Person('Abdurrahman','Güngör');\nalert(person.name);\n",[657,825,826,861],{"__ignoreMap":346},[660,827,828,831,834,837,839,841,843,846,848,850,852,855,857,859],{"class":662,"line":663},[660,829,830],{"class":666},"var",[660,832,833],{"class":720}," person",[660,835,836],{"class":782},"=new",[660,838,753],{"class":669},[660,840,683],{"class":720},[660,842,687],{"class":686},[660,844,845],{"class":690},"Abdurrahman",[660,847,687],{"class":686},[660,849,762],{"class":673},[660,851,687],{"class":686},[660,853,854],{"class":690},"Güngör",[660,856,687],{"class":686},[660,858,696],{"class":720},[660,860,699],{"class":673},[660,862,863,866,869,871,874],{"class":662,"line":347},[660,864,865],{"class":669},"alert",[660,867,868],{"class":720},"(person",[660,870,777],{"class":673},[660,872,873],{"class":720},"name)",[660,875,699],{"class":673},[586,877,878,879,881,882,885,886,888],{},"şeklinde class'ımızdan yeni bir nesne oluşturuyoruz. Ardından da",[657,880,865],{},"penceresinde",[657,883,884],{},"person","nesnesinin",[657,887,759],{},"değerini\ngösteriyoruz.",[586,890,891],{},"Oldukça tanıdık bir yapı, ancak ilginç olan kısım ise, metodu da, class'ı da aynı şekilde tanımladık.",[586,893,894],{},"İşte bu kısımda aslında tam da işlerin karıştığı kısım olarak karşımıza çıkıyor. Ne yazıkki server side dillerden sonra\nçokta hoş bir yapı gibi durmuyor.",[586,896,897,898,900],{},"Peki",[657,899,811],{},"class'ımıza nasıl metod ekleyeceğiz?",[651,902,904],{"className":653,"code":903,"language":655,"meta":346,"style":346},"function Person(name,surname){\n    this.name=name;\n    this.surname=surname;\n\n    //Yeni Ekledik\n    this.showVariable=function(){\n        alert(this.name);\n    }\n}\n\nvar person=new Person('Abdurrahman','Güngör');\nperson.showVariable();\n",[657,905,906,922,936,950,955,962,978,997,1003,1008,1013,1044],{"__ignoreMap":346},[660,907,908,910,912,914,916,918,920],{"class":662,"line":663},[660,909,645],{"class":666},[660,911,753],{"class":669},[660,913,683],{"class":673},[660,915,759],{"class":758},[660,917,762],{"class":673},[660,919,765],{"class":758},[660,921,768],{"class":673},[660,923,924,926,928,930,932,934],{"class":662,"line":347},[660,925,774],{"class":773},[660,927,777],{"class":673},[660,929,759],{"class":720},[660,931,783],{"class":782},[660,933,759],{"class":720},[660,935,699],{"class":673},[660,937,938,940,942,944,946,948],{"class":662,"line":702},[660,939,774],{"class":773},[660,941,777],{"class":673},[660,943,765],{"class":720},[660,945,783],{"class":782},[660,947,765],{"class":720},[660,949,699],{"class":673},[660,951,952],{"class":662,"line":804},[660,953,954],{"emptyLinePlaceholder":352},"\n",[660,956,958],{"class":662,"line":957},5,[660,959,961],{"class":960},"sutJx","    //Yeni Ekledik\n",[660,963,965,967,969,972,974,976],{"class":662,"line":964},6,[660,966,774],{"class":773},[660,968,777],{"class":673},[660,970,971],{"class":669},"showVariable",[660,973,783],{"class":782},[660,975,645],{"class":666},[660,977,674],{"class":673},[660,979,981,984,986,989,991,993,995],{"class":662,"line":980},7,[660,982,983],{"class":669},"        alert",[660,985,683],{"class":682},[660,987,988],{"class":773},"this",[660,990,777],{"class":673},[660,992,759],{"class":720},[660,994,696],{"class":682},[660,996,699],{"class":673},[660,998,1000],{"class":662,"line":999},8,[660,1001,1002],{"class":673},"    }\n",[660,1004,1006],{"class":662,"line":1005},9,[660,1007,705],{"class":673},[660,1009,1011],{"class":662,"line":1010},10,[660,1012,954],{"emptyLinePlaceholder":352},[660,1014,1016,1018,1020,1022,1024,1026,1028,1030,1032,1034,1036,1038,1040,1042],{"class":662,"line":1015},11,[660,1017,830],{"class":666},[660,1019,833],{"class":720},[660,1021,836],{"class":782},[660,1023,753],{"class":669},[660,1025,683],{"class":720},[660,1027,687],{"class":686},[660,1029,845],{"class":690},[660,1031,687],{"class":686},[660,1033,762],{"class":673},[660,1035,687],{"class":686},[660,1037,854],{"class":690},[660,1039,687],{"class":686},[660,1041,696],{"class":720},[660,1043,699],{"class":673},[660,1045,1047,1049,1051,1053,1055],{"class":662,"line":1046},12,[660,1048,884],{"class":720},[660,1050,777],{"class":673},[660,1052,971],{"class":669},[660,1054,721],{"class":720},[660,1056,699],{"class":673},[586,1058,1059,1060,1062,1063,1065],{},"Burada ise",[657,1061,811],{},"class'ına",[657,1064,971],{},"adında bir metod ekledik.",[586,1067,1068,1069,1071],{},"Daha sonra bu metodu",[657,1070,884],{},"nesnesi üzerinden çağırdık. Böylelikle aslında tam bir class'a sahip olmuş olduk.",[586,1073,1074],{},"Yalnız bir sorunumuz var. Aşağıdaki kodu inceleyelim,",[651,1076,1078],{"className":653,"code":1077,"language":655,"meta":346,"style":346},"function Person(name,surname){\n    this.name=name;\n    this.surname=surname;\n\n    //Yeni Ekledik\n    this.showVariable=function(){\n        alert(this.name);\n    }\n}\n\nvar person=new Person('Abdurrahman','Güngör');\nperson.showVariable();\n\nvar person2=new Person('Sinan','Yakar');\nperson2.showVariable();\n\nvar person3=new Person('Kemal','Şahin');\nperson3.showVariable();\n",[657,1079,1080,1096,1110,1124,1128,1132,1146,1162,1166,1170,1174,1204,1216,1221,1255,1269,1274,1308],{"__ignoreMap":346},[660,1081,1082,1084,1086,1088,1090,1092,1094],{"class":662,"line":663},[660,1083,645],{"class":666},[660,1085,753],{"class":669},[660,1087,683],{"class":673},[660,1089,759],{"class":758},[660,1091,762],{"class":673},[660,1093,765],{"class":758},[660,1095,768],{"class":673},[660,1097,1098,1100,1102,1104,1106,1108],{"class":662,"line":347},[660,1099,774],{"class":773},[660,1101,777],{"class":673},[660,1103,759],{"class":720},[660,1105,783],{"class":782},[660,1107,759],{"class":720},[660,1109,699],{"class":673},[660,1111,1112,1114,1116,1118,1120,1122],{"class":662,"line":702},[660,1113,774],{"class":773},[660,1115,777],{"class":673},[660,1117,765],{"class":720},[660,1119,783],{"class":782},[660,1121,765],{"class":720},[660,1123,699],{"class":673},[660,1125,1126],{"class":662,"line":804},[660,1127,954],{"emptyLinePlaceholder":352},[660,1129,1130],{"class":662,"line":957},[660,1131,961],{"class":960},[660,1133,1134,1136,1138,1140,1142,1144],{"class":662,"line":964},[660,1135,774],{"class":773},[660,1137,777],{"class":673},[660,1139,971],{"class":669},[660,1141,783],{"class":782},[660,1143,645],{"class":666},[660,1145,674],{"class":673},[660,1147,1148,1150,1152,1154,1156,1158,1160],{"class":662,"line":980},[660,1149,983],{"class":669},[660,1151,683],{"class":682},[660,1153,988],{"class":773},[660,1155,777],{"class":673},[660,1157,759],{"class":720},[660,1159,696],{"class":682},[660,1161,699],{"class":673},[660,1163,1164],{"class":662,"line":999},[660,1165,1002],{"class":673},[660,1167,1168],{"class":662,"line":1005},[660,1169,705],{"class":673},[660,1171,1172],{"class":662,"line":1010},[660,1173,954],{"emptyLinePlaceholder":352},[660,1175,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202],{"class":662,"line":1015},[660,1177,830],{"class":666},[660,1179,833],{"class":720},[660,1181,836],{"class":782},[660,1183,753],{"class":669},[660,1185,683],{"class":720},[660,1187,687],{"class":686},[660,1189,845],{"class":690},[660,1191,687],{"class":686},[660,1193,762],{"class":673},[660,1195,687],{"class":686},[660,1197,854],{"class":690},[660,1199,687],{"class":686},[660,1201,696],{"class":720},[660,1203,699],{"class":673},[660,1205,1206,1208,1210,1212,1214],{"class":662,"line":1046},[660,1207,884],{"class":720},[660,1209,777],{"class":673},[660,1211,971],{"class":669},[660,1213,721],{"class":720},[660,1215,699],{"class":673},[660,1217,1219],{"class":662,"line":1218},13,[660,1220,954],{"emptyLinePlaceholder":352},[660,1222,1224,1226,1229,1231,1233,1235,1237,1240,1242,1244,1246,1249,1251,1253],{"class":662,"line":1223},14,[660,1225,830],{"class":666},[660,1227,1228],{"class":720}," person2",[660,1230,836],{"class":782},[660,1232,753],{"class":669},[660,1234,683],{"class":720},[660,1236,687],{"class":686},[660,1238,1239],{"class":690},"Sinan",[660,1241,687],{"class":686},[660,1243,762],{"class":673},[660,1245,687],{"class":686},[660,1247,1248],{"class":690},"Yakar",[660,1250,687],{"class":686},[660,1252,696],{"class":720},[660,1254,699],{"class":673},[660,1256,1258,1261,1263,1265,1267],{"class":662,"line":1257},15,[660,1259,1260],{"class":720},"person2",[660,1262,777],{"class":673},[660,1264,971],{"class":669},[660,1266,721],{"class":720},[660,1268,699],{"class":673},[660,1270,1272],{"class":662,"line":1271},16,[660,1273,954],{"emptyLinePlaceholder":352},[660,1275,1277,1279,1282,1284,1286,1288,1290,1293,1295,1297,1299,1302,1304,1306],{"class":662,"line":1276},17,[660,1278,830],{"class":666},[660,1280,1281],{"class":720}," person3",[660,1283,836],{"class":782},[660,1285,753],{"class":669},[660,1287,683],{"class":720},[660,1289,687],{"class":686},[660,1291,1292],{"class":690},"Kemal",[660,1294,687],{"class":686},[660,1296,762],{"class":673},[660,1298,687],{"class":686},[660,1300,1301],{"class":690},"Şahin",[660,1303,687],{"class":686},[660,1305,696],{"class":720},[660,1307,699],{"class":673},[660,1309,1311,1314,1316,1318,1320],{"class":662,"line":1310},18,[660,1312,1313],{"class":720},"person3",[660,1315,777],{"class":673},[660,1317,971],{"class":669},[660,1319,721],{"class":720},[660,1321,699],{"class":673},[586,1323,1324,1325,1328],{},"Herşey normal gibi görünüyor. Ancak burada,",[657,1326,1327],{},"new Person()","ile oluşturduğumuz her nesne için, içindeki tüm metodlar ayrıca\nram'de yer kaplayacak şekilde oluşturuldu(burada showVariable metodu).",[586,1330,1331],{},"Bu, gözardı edilen bir sorun olsa da aslında iyi bir JavaScript yazılımcısının, bu sorunu gözardı etmemesi en doğrusu\nolacaktır.",[586,1333,1334],{},[589,1335,1336],{},"JavaScript Prototype Yapısı",[586,1338,1339],{},[1340,1341],"img",{"alt":1342,"src":1343},"Prototype","/images/2015/02/prototype-156x300.png",[586,1345,1346,1347,1350],{},"Bu sorunun çözümünde ise JavaScript'in",[589,1348,1349],{},"prototype","yapısı ile karşılaşıyoruz. Prototype bize tanımladığımız class'lara\nproperty ve metodlar ekleyerek genişletebilme imkanı sağlamaktadır.",[586,1352,1353],{},"Mesela,",[651,1355,1357],{"className":653,"code":1356,"language":655,"meta":346,"style":346},"function Person(name,surname){\n    this.name=name;\n    this.surname=surname;\n    this.showVariable=function(){\n        alert(this.name);\n    }\n}\n\nPerson.prototype.showSurname=function(){\n    alert(this.surname);\n}\n\nvar person=new Person('Abdurrahman','Güngör');\nperson.showSurname();\nvar person2=new Person('Sinan','Yılmaz');\nperson2.showSurname();\nvar person3=new Person('Kemal','Şahin');\nperson3.showSurname();\n",[657,1358,1359,1375,1389,1403,1417,1433,1437,1441,1445,1466,1482,1486,1490,1520,1532,1563,1575,1605],{"__ignoreMap":346},[660,1360,1361,1363,1365,1367,1369,1371,1373],{"class":662,"line":663},[660,1362,645],{"class":666},[660,1364,753],{"class":669},[660,1366,683],{"class":673},[660,1368,759],{"class":758},[660,1370,762],{"class":673},[660,1372,765],{"class":758},[660,1374,768],{"class":673},[660,1376,1377,1379,1381,1383,1385,1387],{"class":662,"line":347},[660,1378,774],{"class":773},[660,1380,777],{"class":673},[660,1382,759],{"class":720},[660,1384,783],{"class":782},[660,1386,759],{"class":720},[660,1388,699],{"class":673},[660,1390,1391,1393,1395,1397,1399,1401],{"class":662,"line":702},[660,1392,774],{"class":773},[660,1394,777],{"class":673},[660,1396,765],{"class":720},[660,1398,783],{"class":782},[660,1400,765],{"class":720},[660,1402,699],{"class":673},[660,1404,1405,1407,1409,1411,1413,1415],{"class":662,"line":804},[660,1406,774],{"class":773},[660,1408,777],{"class":673},[660,1410,971],{"class":669},[660,1412,783],{"class":782},[660,1414,645],{"class":666},[660,1416,674],{"class":673},[660,1418,1419,1421,1423,1425,1427,1429,1431],{"class":662,"line":957},[660,1420,983],{"class":669},[660,1422,683],{"class":682},[660,1424,988],{"class":773},[660,1426,777],{"class":673},[660,1428,759],{"class":720},[660,1430,696],{"class":682},[660,1432,699],{"class":673},[660,1434,1435],{"class":662,"line":964},[660,1436,1002],{"class":673},[660,1438,1439],{"class":662,"line":980},[660,1440,705],{"class":673},[660,1442,1443],{"class":662,"line":999},[660,1444,954],{"emptyLinePlaceholder":352},[660,1446,1447,1450,1452,1455,1457,1460,1462,1464],{"class":662,"line":1005},[660,1448,811],{"class":1449},"sZMiF",[660,1451,777],{"class":673},[660,1453,1349],{"class":1454},"s_hVV",[660,1456,777],{"class":673},[660,1458,1459],{"class":669},"showSurname",[660,1461,783],{"class":782},[660,1463,645],{"class":666},[660,1465,674],{"class":673},[660,1467,1468,1470,1472,1474,1476,1478,1480],{"class":662,"line":1010},[660,1469,679],{"class":669},[660,1471,683],{"class":682},[660,1473,988],{"class":773},[660,1475,777],{"class":673},[660,1477,765],{"class":720},[660,1479,696],{"class":682},[660,1481,699],{"class":673},[660,1483,1484],{"class":662,"line":1015},[660,1485,705],{"class":673},[660,1487,1488],{"class":662,"line":1046},[660,1489,954],{"emptyLinePlaceholder":352},[660,1491,1492,1494,1496,1498,1500,1502,1504,1506,1508,1510,1512,1514,1516,1518],{"class":662,"line":1218},[660,1493,830],{"class":666},[660,1495,833],{"class":720},[660,1497,836],{"class":782},[660,1499,753],{"class":669},[660,1501,683],{"class":720},[660,1503,687],{"class":686},[660,1505,845],{"class":690},[660,1507,687],{"class":686},[660,1509,762],{"class":673},[660,1511,687],{"class":686},[660,1513,854],{"class":690},[660,1515,687],{"class":686},[660,1517,696],{"class":720},[660,1519,699],{"class":673},[660,1521,1522,1524,1526,1528,1530],{"class":662,"line":1223},[660,1523,884],{"class":720},[660,1525,777],{"class":673},[660,1527,1459],{"class":669},[660,1529,721],{"class":720},[660,1531,699],{"class":673},[660,1533,1534,1536,1538,1540,1542,1544,1546,1548,1550,1552,1554,1557,1559,1561],{"class":662,"line":1257},[660,1535,830],{"class":666},[660,1537,1228],{"class":720},[660,1539,836],{"class":782},[660,1541,753],{"class":669},[660,1543,683],{"class":720},[660,1545,687],{"class":686},[660,1547,1239],{"class":690},[660,1549,687],{"class":686},[660,1551,762],{"class":673},[660,1553,687],{"class":686},[660,1555,1556],{"class":690},"Yılmaz",[660,1558,687],{"class":686},[660,1560,696],{"class":720},[660,1562,699],{"class":673},[660,1564,1565,1567,1569,1571,1573],{"class":662,"line":1271},[660,1566,1260],{"class":720},[660,1568,777],{"class":673},[660,1570,1459],{"class":669},[660,1572,721],{"class":720},[660,1574,699],{"class":673},[660,1576,1577,1579,1581,1583,1585,1587,1589,1591,1593,1595,1597,1599,1601,1603],{"class":662,"line":1276},[660,1578,830],{"class":666},[660,1580,1281],{"class":720},[660,1582,836],{"class":782},[660,1584,753],{"class":669},[660,1586,683],{"class":720},[660,1588,687],{"class":686},[660,1590,1292],{"class":690},[660,1592,687],{"class":686},[660,1594,762],{"class":673},[660,1596,687],{"class":686},[660,1598,1301],{"class":690},[660,1600,687],{"class":686},[660,1602,696],{"class":720},[660,1604,699],{"class":673},[660,1606,1607,1609,1611,1613,1615],{"class":662,"line":1310},[660,1608,1313],{"class":720},[660,1610,777],{"class":673},[660,1612,1459],{"class":669},[660,1614,721],{"class":720},[660,1616,699],{"class":673},[586,1618,1619,1620,1622,1623,1625],{},"burada, oluşturduğumuz",[657,1621,811],{},"class'ına sonradan",[657,1624,1459],{},"metodunu ekleyerek yeni bir özellik eklemiş oluyoruz.",[586,1627,1628,1629,1631],{},"Bununla birlikte",[657,1630,1459],{},"metodu artık ram'e bir kere yükleniyor ve her çağırımda, referansı üzerinden metod\nişletiliyor. Böylelikle ram sorununu da çözmüş oluyoruz.",[586,1633,1634,1635,1637],{},"Prorotype yapısıyla, metod ile birlikte property de eklemek mümkün. Ancak bu yöntemi tavsiye etmiyorum. Çünkü",[657,1636,811],{},"\nclass'ından her oluşan nesnedeki propertylerden biri değiştiğinde, aynı class'tan oluşan diğer nesnelerin property'\nlerinin değeri de değişecektir ki, bu genelde istenen birşey değildir.",[586,1639,1640],{},"Örnek;",[651,1642,1644],{"className":653,"code":1643,"language":655,"meta":346,"style":346},"function Person(name,surname){\n    this.name=name;\n    this.surname=surname;\n    this.showVariable=function(){\n        alert(this.name);\n    }\n}\n\nPerson.prototype.age=25;\n\nvar person=new Person('Abdurrahman','Güngör');\nperson.age=50;\n",[657,1645,1646,1662,1676,1690,1704,1720,1724,1728,1732,1753,1757,1787],{"__ignoreMap":346},[660,1647,1648,1650,1652,1654,1656,1658,1660],{"class":662,"line":663},[660,1649,645],{"class":666},[660,1651,753],{"class":669},[660,1653,683],{"class":673},[660,1655,759],{"class":758},[660,1657,762],{"class":673},[660,1659,765],{"class":758},[660,1661,768],{"class":673},[660,1663,1664,1666,1668,1670,1672,1674],{"class":662,"line":347},[660,1665,774],{"class":773},[660,1667,777],{"class":673},[660,1669,759],{"class":720},[660,1671,783],{"class":782},[660,1673,759],{"class":720},[660,1675,699],{"class":673},[660,1677,1678,1680,1682,1684,1686,1688],{"class":662,"line":702},[660,1679,774],{"class":773},[660,1681,777],{"class":673},[660,1683,765],{"class":720},[660,1685,783],{"class":782},[660,1687,765],{"class":720},[660,1689,699],{"class":673},[660,1691,1692,1694,1696,1698,1700,1702],{"class":662,"line":804},[660,1693,774],{"class":773},[660,1695,777],{"class":673},[660,1697,971],{"class":669},[660,1699,783],{"class":782},[660,1701,645],{"class":666},[660,1703,674],{"class":673},[660,1705,1706,1708,1710,1712,1714,1716,1718],{"class":662,"line":957},[660,1707,983],{"class":669},[660,1709,683],{"class":682},[660,1711,988],{"class":773},[660,1713,777],{"class":673},[660,1715,759],{"class":720},[660,1717,696],{"class":682},[660,1719,699],{"class":673},[660,1721,1722],{"class":662,"line":964},[660,1723,1002],{"class":673},[660,1725,1726],{"class":662,"line":980},[660,1727,705],{"class":673},[660,1729,1730],{"class":662,"line":999},[660,1731,954],{"emptyLinePlaceholder":352},[660,1733,1734,1736,1738,1740,1742,1745,1747,1751],{"class":662,"line":1005},[660,1735,811],{"class":1449},[660,1737,777],{"class":673},[660,1739,1349],{"class":1454},[660,1741,777],{"class":673},[660,1743,1744],{"class":720},"age",[660,1746,783],{"class":782},[660,1748,1750],{"class":1749},"srdBf","25",[660,1752,699],{"class":673},[660,1754,1755],{"class":662,"line":1010},[660,1756,954],{"emptyLinePlaceholder":352},[660,1758,1759,1761,1763,1765,1767,1769,1771,1773,1775,1777,1779,1781,1783,1785],{"class":662,"line":1015},[660,1760,830],{"class":666},[660,1762,833],{"class":720},[660,1764,836],{"class":782},[660,1766,753],{"class":669},[660,1768,683],{"class":720},[660,1770,687],{"class":686},[660,1772,845],{"class":690},[660,1774,687],{"class":686},[660,1776,762],{"class":673},[660,1778,687],{"class":686},[660,1780,854],{"class":690},[660,1782,687],{"class":686},[660,1784,696],{"class":720},[660,1786,699],{"class":673},[660,1788,1789,1791,1793,1795,1797,1800],{"class":662,"line":1046},[660,1790,884],{"class":720},[660,1792,777],{"class":673},[660,1794,1744],{"class":720},[660,1796,783],{"class":782},[660,1798,1799],{"class":1749},"50",[660,1801,699],{"class":673},[586,1803,1804],{},"JavaScript'te doğru OOP iskeleti prototype üzerine inşa edilmektedir.",[586,1806,1807,1808,1811],{},"Yalnız yukarıda farkedeceğiniz üzere görünüm bir class gibi olmadı, class'ı tanımladık, sonra dışarıdan ayrıca\nmetodlarımızı prototype vasıtasıyla ekledik. Bu class'ı metodlarıyla beraber bir",[589,1809,1810],{},"scope","(kapsayıcı)içerisine almak için\naşağıdaki yapıyı kullanabiliriz.",[651,1813,1815],{"className":653,"code":1814,"language":655,"meta":346,"style":346},"// Dış kapsayıcı (main scope)\nvar Person=(function(){\n\n// Oluşturucu (initializer) metod\nfunction Person(name,surname){\n    this.name=name;\n    this.surname=surname;\n}\n\nPerson.prototype.showName=function(){\n    alert(this.name);\n}\n\nPerson.prototype.showSurname=function(){\n    alert(this.surname);\n}\n\n//Propertylerini ve metodlarını eklediğimiz nesneyi en dıştaki Person değişkenine döndürüyoruz.\nreturn Person;\n\n//En sonda çağırdığımız \"()\" kısmı kodun otomatik olarak çalışması ve class'ın oluşturulması içindir.\n})();\n",[657,1816,1817,1822,1836,1840,1845,1861,1875,1889,1893,1897,1916,1932,1936,1940,1958,1974,1978,1982,1987,1998,2003,2009],{"__ignoreMap":346},[660,1818,1819],{"class":662,"line":663},[660,1820,1821],{"class":960},"// Dış kapsayıcı (main scope)\n",[660,1823,1824,1826,1828,1830,1832,1834],{"class":662,"line":347},[660,1825,830],{"class":666},[660,1827,753],{"class":720},[660,1829,783],{"class":782},[660,1831,683],{"class":720},[660,1833,645],{"class":666},[660,1835,674],{"class":673},[660,1837,1838],{"class":662,"line":702},[660,1839,954],{"emptyLinePlaceholder":352},[660,1841,1842],{"class":662,"line":804},[660,1843,1844],{"class":960},"// Oluşturucu (initializer) metod\n",[660,1846,1847,1849,1851,1853,1855,1857,1859],{"class":662,"line":957},[660,1848,645],{"class":666},[660,1850,753],{"class":669},[660,1852,683],{"class":673},[660,1854,759],{"class":758},[660,1856,762],{"class":673},[660,1858,765],{"class":758},[660,1860,768],{"class":673},[660,1862,1863,1865,1867,1869,1871,1873],{"class":662,"line":964},[660,1864,774],{"class":773},[660,1866,777],{"class":673},[660,1868,759],{"class":720},[660,1870,783],{"class":782},[660,1872,759],{"class":720},[660,1874,699],{"class":673},[660,1876,1877,1879,1881,1883,1885,1887],{"class":662,"line":980},[660,1878,774],{"class":773},[660,1880,777],{"class":673},[660,1882,765],{"class":720},[660,1884,783],{"class":782},[660,1886,765],{"class":720},[660,1888,699],{"class":673},[660,1890,1891],{"class":662,"line":999},[660,1892,705],{"class":673},[660,1894,1895],{"class":662,"line":1005},[660,1896,954],{"emptyLinePlaceholder":352},[660,1898,1899,1901,1903,1905,1907,1910,1912,1914],{"class":662,"line":1010},[660,1900,811],{"class":1449},[660,1902,777],{"class":673},[660,1904,1349],{"class":1454},[660,1906,777],{"class":673},[660,1908,1909],{"class":669},"showName",[660,1911,783],{"class":782},[660,1913,645],{"class":666},[660,1915,674],{"class":673},[660,1917,1918,1920,1922,1924,1926,1928,1930],{"class":662,"line":1015},[660,1919,679],{"class":669},[660,1921,683],{"class":682},[660,1923,988],{"class":773},[660,1925,777],{"class":673},[660,1927,759],{"class":720},[660,1929,696],{"class":682},[660,1931,699],{"class":673},[660,1933,1934],{"class":662,"line":1046},[660,1935,705],{"class":673},[660,1937,1938],{"class":662,"line":1218},[660,1939,954],{"emptyLinePlaceholder":352},[660,1941,1942,1944,1946,1948,1950,1952,1954,1956],{"class":662,"line":1223},[660,1943,811],{"class":1449},[660,1945,777],{"class":673},[660,1947,1349],{"class":1454},[660,1949,777],{"class":673},[660,1951,1459],{"class":669},[660,1953,783],{"class":782},[660,1955,645],{"class":666},[660,1957,674],{"class":673},[660,1959,1960,1962,1964,1966,1968,1970,1972],{"class":662,"line":1257},[660,1961,679],{"class":669},[660,1963,683],{"class":682},[660,1965,988],{"class":773},[660,1967,777],{"class":673},[660,1969,765],{"class":720},[660,1971,696],{"class":682},[660,1973,699],{"class":673},[660,1975,1976],{"class":662,"line":1271},[660,1977,705],{"class":673},[660,1979,1980],{"class":662,"line":1276},[660,1981,954],{"emptyLinePlaceholder":352},[660,1983,1984],{"class":662,"line":1310},[660,1985,1986],{"class":960},"//Propertylerini ve metodlarını eklediğimiz nesneyi en dıştaki Person değişkenine döndürüyoruz.\n",[660,1988,1990,1994,1996],{"class":662,"line":1989},19,[660,1991,1993],{"class":1992},"sVHd0","return",[660,1995,753],{"class":720},[660,1997,699],{"class":673},[660,1999,2001],{"class":662,"line":2000},20,[660,2002,954],{"emptyLinePlaceholder":352},[660,2004,2006],{"class":662,"line":2005},21,[660,2007,2008],{"class":960},"//En sonda çağırdığımız \"()\" kısmı kodun otomatik olarak çalışması ve class'ın oluşturulması içindir.\n",[660,2010,2012,2015,2018],{"class":662,"line":2011},22,[660,2013,2014],{"class":673},"}",[660,2016,2017],{"class":720},")()",[660,2019,699],{"class":673},[586,2021,2022],{},"Biraz karışık göründüğünün farkındayım, ancak en ideal Oop JavaScript yapısı budur.",[586,2024,2025],{},"Bir kaç kez kullanırsanız, bu yapıya hızlı bir şekilde uyum sağlayacağınızdan emin olabilirsiniz.",[586,2027,2028,2031],{},[589,2029,2030],{},"Inheritance","konusuna ise bu ders girmedim. Onu ayrı bir derste ele almayı düşünüyorum.",[586,2033,2034,2035,2038,2039,2042],{},"Bu yapıları bize çok daha rahat bir şekilde sunan",[589,2036,2037],{},"CoffeeScript","ve",[589,2040,2041],{},"TypeScript","gibi yapılar da mevcut. Bu yapılar\nbizim bu uğraşımızı minimuma indirerek, bazı hammaliyetleri arkada kendileri çözüyor. Bu ve benzeri yapılar\nJavaScript'in büyümesine büyük katkı sağlayacaktır. Bu yeni dünyaya hızlıca uyum sağlamamız, zaruri görünüyor.",[586,2044,2045],{},"Hepinize kolaylıklar diliyorum.",[2047,2048,2049],"style",{},"html pre.shiki code .sbsja, html code.shiki .sbsja{--shiki-light:#9C3EDA;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sGLFI, html code.shiki .sGLFI{--shiki-light:#6182B8;--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sP7_E, html code.shiki .sP7_E{--shiki-light:#39ADB5;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .skxfh, html code.shiki .skxfh{--shiki-light:#E53935;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sjJ54, html code.shiki .sjJ54{--shiki-light:#39ADB5;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .s_sjI, html code.shiki .s_sjI{--shiki-light:#91B859;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .su5hD, html code.shiki .su5hD{--shiki-light:#90A4AE;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s99_P, html code.shiki .s99_P{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#E36209;--shiki-default-font-style:inherit;--shiki-dark:#FFAB70;--shiki-dark-font-style:inherit}html pre.shiki code .s39Yj, html code.shiki .s39Yj{--shiki-light:#39ADB5;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .smGrS, html code.shiki .smGrS{--shiki-light:#39ADB5;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sutJx, html code.shiki .sutJx{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#6A737D;--shiki-default-font-style:inherit;--shiki-dark:#6A737D;--shiki-dark-font-style:inherit}html pre.shiki code .sZMiF, html code.shiki .sZMiF{--shiki-light:#E2931D;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .s_hVV, html code.shiki .s_hVV{--shiki-light:#90A4AE;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .srdBf, html code.shiki .srdBf{--shiki-light:#F76D47;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sVHd0, html code.shiki .sVHd0{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#D73A49;--shiki-default-font-style:inherit;--shiki-dark:#F97583;--shiki-dark-font-style:inherit}",{"title":346,"searchDepth":347,"depth":347,"links":2051},[],"2015/02/oop-js.png","2015-02-27T00:00:00.000Z",{},{"title":113,"description":591},"rnhR1YKX2WuA593jFtgpXqBwcWIQTI6DeBVrPDYqADs",1762871731986]