[{"data":1,"prerenderedAt":911},["ShallowReactive",2],{"post-\u002Ftr\u002Fjavascriptde-moduller":3},{"page":4,"translation":753,"nav":767,"related":896,"random":902},{"id":5,"title":6,"body":7,"categories":751,"category":753,"date":754,"description":755,"draft":756,"extension":757,"image":758,"kind":753,"lang":96,"meta":759,"navigation":313,"path":760,"readingTime":329,"seo":761,"slug":762,"stem":763,"tags":764,"translationKey":753,"type":752,"updated":765,"__hash__":766},"postsTr\u002Ftr\u002Fjavascriptde-moduller.md","JavaScript'te Modüller",{"type":8,"value":9,"toc":741},"minimark",[10,64,70,73,81,84,89,185,187,192,195,213,220,281,288,344,346,350,354,361,381,384,429,432,436,439,534,540,581,583,587,590,596,623,630,665,697,700,702,706,709,717,719,724,737],[11,12,13,21],"blockquote",{},[14,15,16,17],"p",{},"💡 ",[18,19,20],"strong",{},"Özet (TL;DR):",[22,23,24,31,50],"ul",{},[25,26,27,30],"li",{},[18,28,29],{},"Nedir:"," JavaScript kod tabanını işlevsel parçalara ayırarak yeniden kullanılabilir, bağımsız dosyalar (modüller) halinde organize etme yöntemidir.",[25,32,33,36,37,41,42,45,46,49],{},[18,34,35],{},"Kritik Hata Düzeltmeleri:"," Kod örneklerindeki template literal tek tırnak hatası (interpolation için backtick ",[38,39,40],"code",{},"`"," kullanılmalıdır) ve import alias'larındaki hatalı büyük harf kullanımı (",[38,43,44],{},"AS"," yerine ",[38,47,48],{},"as",") düzeltilmiştir.",[25,51,52,55,56,59,60,63],{},[18,53,54],{},"ES6 Standardı:"," Tarayıcı veya Node.js ortamlarında ",[38,57,58],{},"import"," ve ",[38,61,62],{},"export"," anahtar kelimeleriyle yerel (native) olarak desteklenir.",[14,65,66,69],{},[18,67,68],{},"Üst Edit:"," Türkçede script'e karşılık olarak \"betik\" kelimesi kullanılıyor; fakat script yazılımcıların diline tamamen yerleştiği için bu yazıda script kelimesini kullanmaya devam edeceğim.",[14,71,72],{},"JavaScript'te modül kullanımı, basit ve küçük boyutlu scriptlerin yeterli olduğu eski dönemlerde çok özel durumlar hariç bir ihtiyaç değildi. Ancak JavaScript'in web uygulamalarında sadece yardımcı bir araç olmaktan çıkıp neredeyse kullanıcı arayüzünün temeli haline gelmesiyle birlikte modüllere olan ihtiyaç arttı. JavaScript topluluğu, ilk dönemlerde harici kütüphaneler yardımıyla (CommonJS, AMD vb.) bu sorunu aşacak çözümler üretti.",[14,74,75,80],{},[76,77,79],"a",{"href":78},"\u002Ftr\u002Fes6-nedir-ecmascript-2015-nedir","ECMAScript 6 (ES6)"," ile birlikte modüller JavaScript'in bütünleşik bir parçası haline geldi. Günümüzde modern tarayıcılar ve Node.js bu yapıyı yerel (native) olarak desteklemektedir. Artık eski tarayıcılara özel destek vermeniz gerekmiyorsa, modül işlevi sağlayan üçüncü parti kütüphanelerin adını bile bilmenize gerek yoktur.",[82,83],"hr",{},[85,86,88],"h3",{"id":87},"default-export-vs-named-export-karşılaştırması","Default Export vs. Named Export Karşılaştırması",[90,91,92,109],"table",{},[93,94,95],"thead",{},[96,97,98,103,106],"tr",{},[99,100,102],"th",{"align":101},"left","Özellik",[99,104,105],{"align":101},"Default Export (Varsayılan)",[99,107,108],{"align":101},"Named Export (İsimlendirilmiş)",[110,111,112,133,150,169],"tbody",{},[96,113,114,120,127],{},[115,116,117],"td",{"align":101},[18,118,119],{},"Dosya Başına Sınır",[115,121,122,123,126],{"align":101},"Her dosya\u002Fmodül için ",[18,124,125],{},"yalnızca 1 adet"," tanımlanabilir.",[115,128,129,130,126],{"align":101},"Her dosyada ",[18,131,132],{},"dilediğiniz sayıda",[96,134,135,140,145],{},[115,136,137],{"align":101},[18,138,139],{},"Dışa Aktarma Sözdizimi",[115,141,142],{"align":101},[38,143,144],{},"export default function merhaba() {}",[115,146,147],{"align":101},[38,148,149],{},"export const name = 'Evren';",[96,151,152,157,163],{},[115,153,154],{"align":101},[18,155,156],{},"İçe Aktarma Sözdizimi",[115,158,159,162],{"align":101},[38,160,161],{},"import merhaba from '.\u002Ffile.js';"," (Süslü parantez kullanılmaz).",[115,164,165,168],{"align":101},[38,166,167],{},"import { name } from '.\u002Ffile.js';"," (Süslü parantez zorunludur).",[96,170,171,176,179],{},[115,172,173],{"align":101},[18,174,175],{},"İsim Özgürlüğü",[115,177,178],{"align":101},"İçe aktarırken istenilen herhangi bir isim verilebilir.",[115,180,181,182,184],{"align":101},"Yalnızca ",[38,183,48],{}," takısı ile takma ad (alias) atanabilir.",[82,186],{},[188,189,191],"h2",{"id":190},"_1-modül-nedir","1. Modül Nedir?",[14,193,194],{},"Kabaca, bağımsız bir dosyadan belirli bir script'i çağırırız ve buna bir modül deriz (bazen bir script içerisinde birden fazla modül de olabilir). JavaScript modüllerini kullanırken ihtiyacımız olan iki temel ifade vardır:",[22,196,197,205],{},[25,198,199,204],{},[18,200,201,203],{},[38,202,62],{}," (Dışa Aktarma):"," Mevcut modülün dışarıdan çağrılabilecek sabit, değişken ve fonksiyonlarını tanımlamak için kullanılır.",[25,206,207,212],{},[18,208,209,211],{},[38,210,58],{}," (İçe Aktarma):"," Dışarıdaki bir modülü mevcut dosya içerisine dahil etmek için kullanılır.",[14,214,215,216,219],{},"Örneğin, ",[38,217,218],{},"merhaba.js"," adında bir dosya oluşturup bir fonksiyonu dışa aktaralım:",[221,222,227],"pre",{"className":223,"code":224,"language":225,"meta":226,"style":226},"language-javascript shiki shiki-themes github-light github-dark","export function merhaba(isim) {\n    alert(`Merhaba, ${isim}!`);\n}\n","javascript","",[38,228,229,255,275],{"__ignoreMap":226},[230,231,234,237,240,244,248,252],"span",{"class":232,"line":233},"line",1,[230,235,62],{"class":236},"szBVR",[230,238,239],{"class":236}," function",[230,241,243],{"class":242},"sScJk"," merhaba",[230,245,247],{"class":246},"sVt8B","(",[230,249,251],{"class":250},"s4XuR","isim",[230,253,254],{"class":246},") {\n",[230,256,258,261,263,267,269,272],{"class":232,"line":257},2,[230,259,260],{"class":242},"    alert",[230,262,247],{"class":246},[230,264,266],{"class":265},"sZZnC","`Merhaba, ${",[230,268,251],{"class":246},[230,270,271],{"class":265},"}!`",[230,273,274],{"class":246},");\n",[230,276,278],{"class":232,"line":277},3,[230,279,280],{"class":246},"}\n",[14,282,283,284,287],{},"Daha sonra ",[38,285,286],{},"index.js"," dosyamız içerisine bu modülü alıp kullanalım:",[221,289,291],{"className":223,"code":290,"language":225,"meta":226,"style":226},"import { merhaba } from '.\u002Fmerhaba.js';\n\nalert(merhaba);   \u002F\u002F function...\nmerhaba('Evren'); \u002F\u002F Merhaba, Evren!\n",[38,292,293,309,315,327],{"__ignoreMap":226},[230,294,295,297,300,303,306],{"class":232,"line":233},[230,296,58],{"class":236},[230,298,299],{"class":246}," { merhaba } ",[230,301,302],{"class":236},"from",[230,304,305],{"class":265}," '.\u002Fmerhaba.js'",[230,307,308],{"class":246},";\n",[230,310,311],{"class":232,"line":257},[230,312,314],{"emptyLinePlaceholder":313},true,"\n",[230,316,317,320,323],{"class":232,"line":277},[230,318,319],{"class":242},"alert",[230,321,322],{"class":246},"(merhaba);   ",[230,324,326],{"class":325},"sJ8bj","\u002F\u002F function...\n",[230,328,330,333,335,338,341],{"class":232,"line":329},4,[230,331,332],{"class":242},"merhaba",[230,334,247],{"class":246},[230,336,337],{"class":265},"'Evren'",[230,339,340],{"class":246},"); ",[230,342,343],{"class":325},"\u002F\u002F Merhaba, Evren!\n",[82,345],{},[188,347,349],{"id":348},"_2-export-türleri","2. Export Türleri",[85,351,353],{"id":352},"a-default-export-varsayılan-dışa-aktarma","A. Default Export (Varsayılan Dışa Aktarma)",[14,355,356,357,360],{},"Bir dosyadaki varsayılan modül ",[38,358,359],{},"default"," kelimesi ile belirlenir. Her dosyada sadece bir tane default modül tanımlanabilir:",[221,362,364],{"className":223,"code":363,"language":225,"meta":226,"style":226},"export default function deneme() {}\n",[38,365,366],{"__ignoreMap":226},[230,367,368,370,373,375,378],{"class":232,"line":233},[230,369,62],{"class":236},[230,371,372],{"class":236}," default",[230,374,239],{"class":236},[230,376,377],{"class":242}," deneme",[230,379,380],{"class":246},"() {}\n",[14,382,383],{},"Bu modülü başka bir dosyada içe aktarırken süslü parantez kullanmamıza gerek yoktur ve istediğimiz ismi verebiliriz:",[221,385,387],{"className":223,"code":386,"language":225,"meta":226,"style":226},"import deneme from '.\u002Fexportdeneme.js';\nimport baskaBirOrnek from '.\u002Fexportdeneme.js';\nimport merhaba from '.\u002Fexportdeneme.js';\n",[38,388,389,403,416],{"__ignoreMap":226},[230,390,391,393,396,398,401],{"class":232,"line":233},[230,392,58],{"class":236},[230,394,395],{"class":246}," deneme ",[230,397,302],{"class":236},[230,399,400],{"class":265}," '.\u002Fexportdeneme.js'",[230,402,308],{"class":246},[230,404,405,407,410,412,414],{"class":232,"line":257},[230,406,58],{"class":236},[230,408,409],{"class":246}," baskaBirOrnek ",[230,411,302],{"class":236},[230,413,400],{"class":265},[230,415,308],{"class":246},[230,417,418,420,423,425,427],{"class":232,"line":277},[230,419,58],{"class":236},[230,421,422],{"class":246}," merhaba ",[230,424,302],{"class":236},[230,426,400],{"class":265},[230,428,308],{"class":246},[14,430,431],{},"Derleyici, dosya içindeki default modülü otomatik olarak atadığınız değişken ismiyle eşleştirecektir.",[85,433,435],{"id":434},"b-named-export-i̇simlendirilmiş-dışa-aktarma","B. Named Export (İsimlendirilmiş Dışa Aktarma)",[14,437,438],{},"Tek bir dosyada birden fazla değişken veya fonksiyonu dışarıya aktarmak için kullanılır:",[221,440,442],{"className":223,"code":441,"language":225,"meta":226,"style":226},"export const isim1 = \"Evren\";\nexport const isim2 = \"Hüseyin\";\n\nexport function merhaba() {\n    \u002F\u002F ...\n}\n\nexport class Kullanici {\n    \u002F\u002F ...\n}\n",[38,443,444,463,479,483,494,500,505,510,524,529],{"__ignoreMap":226},[230,445,446,448,451,455,458,461],{"class":232,"line":233},[230,447,62],{"class":236},[230,449,450],{"class":236}," const",[230,452,454],{"class":453},"sj4cs"," isim1",[230,456,457],{"class":236}," =",[230,459,460],{"class":265}," \"Evren\"",[230,462,308],{"class":246},[230,464,465,467,469,472,474,477],{"class":232,"line":257},[230,466,62],{"class":236},[230,468,450],{"class":236},[230,470,471],{"class":453}," isim2",[230,473,457],{"class":236},[230,475,476],{"class":265}," \"Hüseyin\"",[230,478,308],{"class":246},[230,480,481],{"class":232,"line":277},[230,482,314],{"emptyLinePlaceholder":313},[230,484,485,487,489,491],{"class":232,"line":329},[230,486,62],{"class":236},[230,488,239],{"class":236},[230,490,243],{"class":242},[230,492,493],{"class":246},"() {\n",[230,495,497],{"class":232,"line":496},5,[230,498,499],{"class":325},"    \u002F\u002F ...\n",[230,501,503],{"class":232,"line":502},6,[230,504,280],{"class":246},[230,506,508],{"class":232,"line":507},7,[230,509,314],{"emptyLinePlaceholder":313},[230,511,513,515,518,521],{"class":232,"line":512},8,[230,514,62],{"class":236},[230,516,517],{"class":236}," class",[230,519,520],{"class":242}," Kullanici",[230,522,523],{"class":246}," {\n",[230,525,527],{"class":232,"line":526},9,[230,528,499],{"class":325},[230,530,532],{"class":232,"line":531},10,[230,533,280],{"class":246},[14,535,536,537,539],{},"Bu modüllerden hiçbiri varsayılan (default) olmadığı için, içe aktarırken hangi değişkenleri çağırdığımızı süslü parantez içinde açıkça belirtmemiz gerekir. Ayrıca ",[38,538,48],{}," anahtar kelimesini kullanarak içe aktarılan modüllere takma ad (alias) atayabiliriz:",[221,541,543],{"className":223,"code":542,"language":225,"meta":226,"style":226},"import { merhaba } from '.\u002Fexportdeneme2.js';\nimport { merhaba as selamla } from '.\u002Fdeneme2.js'; \u002F\u002F Takma ad kullanımı\n",[38,544,545,558],{"__ignoreMap":226},[230,546,547,549,551,553,556],{"class":232,"line":233},[230,548,58],{"class":236},[230,550,299],{"class":246},[230,552,302],{"class":236},[230,554,555],{"class":265}," '.\u002Fexportdeneme2.js'",[230,557,308],{"class":246},[230,559,560,562,565,567,570,572,575,578],{"class":232,"line":257},[230,561,58],{"class":236},[230,563,564],{"class":246}," { merhaba ",[230,566,48],{"class":236},[230,568,569],{"class":246}," selamla } ",[230,571,302],{"class":236},[230,573,574],{"class":265}," '.\u002Fdeneme2.js'",[230,576,577],{"class":246},"; ",[230,579,580],{"class":325},"\u002F\u002F Takma ad kullanımı\n",[82,582],{},[188,584,586],{"id":585},"_3-modüller-tekil-singleton-yapıdadır","3. Modüller Tekil (Singleton) Yapıdadır",[14,588,589],{},"Projenizde aynı modülü farklı noktalarda birden fazla kez import edebilirsiniz; fakat modül yalnızca ilk çağrılışında derlenir ve çalıştırılır.",[14,591,215,592,595],{},[38,593,594],{},"admin.js"," dosyamız olsun:",[221,597,599],{"className":223,"code":598,"language":225,"meta":226,"style":226},"export let admin = { name: \"John\" };\n",[38,600,601],{"__ignoreMap":226},[230,602,603,605,608,611,614,617,620],{"class":232,"line":233},[230,604,62],{"class":236},[230,606,607],{"class":236}," let",[230,609,610],{"class":246}," admin ",[230,612,613],{"class":236},"=",[230,615,616],{"class":246}," { name: ",[230,618,619],{"class":265},"\"John\"",[230,621,622],{"class":246}," };\n",[14,624,625,626,629],{},"Bu dosya ilk import edildiğinde bellek üzerinde tek bir ",[38,627,628],{},"admin"," nesnesi oluşturulur. Diğer dosyalardaki import işlemleri yeni bir nesne oluşturmaz, doğrudan aynı referansı paylaşır:",[221,631,633],{"className":223,"code":632,"language":225,"meta":226,"style":226},"\u002F\u002F birinci-dosya.js\nimport { admin } from '.\u002Fadmin.js';\nadmin.name = \"Evren\";\n",[38,634,635,640,654],{"__ignoreMap":226},[230,636,637],{"class":232,"line":233},[230,638,639],{"class":325},"\u002F\u002F birinci-dosya.js\n",[230,641,642,644,647,649,652],{"class":232,"line":257},[230,643,58],{"class":236},[230,645,646],{"class":246}," { admin } ",[230,648,302],{"class":236},[230,650,651],{"class":265}," '.\u002Fadmin.js'",[230,653,308],{"class":246},[230,655,656,659,661,663],{"class":232,"line":277},[230,657,658],{"class":246},"admin.name ",[230,660,613],{"class":236},[230,662,460],{"class":265},[230,664,308],{"class":246},[221,666,668],{"className":223,"code":667,"language":225,"meta":226,"style":226},"\u002F\u002F ikinci-dosya.js\nimport { admin } from '.\u002Fadmin.js';\nalert(admin.name); \u002F\u002F Sonuç: Evren\n",[38,669,670,675,687],{"__ignoreMap":226},[230,671,672],{"class":232,"line":233},[230,673,674],{"class":325},"\u002F\u002F ikinci-dosya.js\n",[230,676,677,679,681,683,685],{"class":232,"line":257},[230,678,58],{"class":236},[230,680,646],{"class":246},[230,682,302],{"class":236},[230,684,651],{"class":265},[230,686,308],{"class":246},[230,688,689,691,694],{"class":232,"line":277},[230,690,319],{"class":242},[230,692,693],{"class":246},"(admin.name); ",[230,695,696],{"class":325},"\u002F\u002F Sonuç: Evren\n",[14,698,699],{},"Export edilen nesneler bir kez oluşturulur ve tüm sistem genelinde paylaşılır. Bu özellik, modülleri ilk çağrıldıklarında yapılandırıp (configure) projenin geri kalanında aynı durum (state) ile kullanmamıza olanak tanır.",[82,701],{},[188,703,705],{"id":704},"sonuç-olarak","Sonuç Olarak",[14,707,708],{},"Modüller, ES6 ile birlikte JavaScript'e yerleşik olarak dahil olan; eski tarayıcılarda ise derleyiciler yardımıyla kullanılan, büyük projeleri anlamlı parçalara bölerek kod kalitesini artıran harika bir yöntemdir.",[14,710,711,712,716],{},"Modül kullanımını gerektirecek ölçekte büyük bir proje geliştirecekseniz, sonraki aşamada ihtiyacınız olan ",[76,713,715],{"href":714},"\u002Ftr\u002Fwebpack-nedir","Webpack"," gibi bir modül paketleyicisi olacaktır.",[82,718],{},[720,721,723],"h5",{"id":722},"bu-yazıda-yapılan-değişiklikler","Bu Yazıda Yapılan Değişiklikler",[22,725,726,729],{},[25,727,728],{},"11.05.2022: Yazı özeti düzenlendi.",[25,730,731,732,45,734,736],{},"21.06.2026: Türkçe imla hataları (JavaScript'te, Türkçede, arayüzünün, modül de vb.) düzeltildi. Kod örneklerindeki hatalı şablon dizesi kullanımı (tek tırnak yerine backtick) ve geçersiz import alias sözdizimi (",[38,733,44],{},[38,735,48],{},") düzeltildi. TL;DR özet paneli ve export türleri karşılaştırma tablosu eklendi.",[738,739,740],"style",{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":226,"searchDepth":257,"depth":257,"links":742},[743,744,745,749,750],{"id":87,"depth":277,"text":88},{"id":190,"depth":257,"text":191},{"id":348,"depth":257,"text":349,"children":746},[747,748],{"id":352,"depth":277,"text":353},{"id":434,"depth":277,"text":435},{"id":585,"depth":257,"text":586},{"id":704,"depth":257,"text":705},[752],"technical",null,"2020-12-11","JavaScript ES6 modül sistemi (ES Modules) nedir? export, import, default ve named export kavramları ile singleton modül yapısı.",false,"md","\u002Fimages\u002Fhero\u002Fjs-modules.avif",{},"\u002Ftr\u002Fjavascriptde-moduller",{"title":6,"description":755},"javascriptde-moduller","tr\u002Fjavascriptde-moduller",[225],"2026-06-21","9XyHuETwn_qqhmANKKJLhLMDoVmzzxexU0LR5YaSJ6k",{"prev":768,"next":770,"others":773,"lucky":893,"readingTime":329},{"path":714,"title":769},"Webpack Nedir? Modern JavaScript Paketleyici Ekosistemi",{"path":771,"title":772},"\u002Ftr\u002Fmerhaba-gluster","Merhaba Gluster: Dağıtık Dosya Sistemi Nedir?",[774,777,780,783,786,789,792,795,798,801,804,807,810,813,816,819,822,825,828,831,834,837,840,843,846,848,851,854,857,860,863,866,869,872,875,878,881,884,887,890],{"path":775,"title":776},"\u002Ftr\u002Fstrategy-tasarim-deseni-nedir","Strategy Tasarım Deseni Nedir?",{"path":778,"title":779},"\u002Ftr\u002Fgarbage-collection-ve-golang","Garbage Collection ve Go (Golang)",{"path":781,"title":782},"\u002Ftr\u002Fubuntu-guncellemesi-sonrasi-cyberpanele-ulasilamama-sorunlarini-giderme","Ubuntu Güncellemesi Sonrası CyberPanel'e Ulaşılamama Sorunlarını Giderme",{"path":784,"title":785},"\u002Ftr\u002Ffactory-method-ve-abstract-factory-farki-nedir","Factory Method ve Abstract Factory Farkı Nedir?",{"path":787,"title":788},"\u002Ftr\u002Fgo-veri-tipleri-struct","Go Veri Tipleri: Struct",{"path":790,"title":791},"\u002Ftr\u002Fadapter-tasarim-deseni-nedir","Adapter Tasarım Deseni Nedir?",{"path":793,"title":794},"\u002Ftr\u002Ftailwind-css-nerede-kullanilir-tailwind-css-nerede-kullanilmaz","Tailwind CSS Nerede Kullanılır? Tailwind CSS Nerede Kullanılmaz?",{"path":796,"title":797},"\u002Ftr\u002Fes7-nedir-ecmascript-2016-nedir","ES7 Nedir? ECMAScript 2016 Nedir?",{"path":799,"title":800},"\u002Ftr\u002Fdecorator-tasarim-deseni-nedir","Decorator Tasarım Deseni Nedir?",{"path":802,"title":803},"\u002Ftr\u002Fstate-tasarim-deseni-nedir","State Tasarım Deseni Nedir?",{"path":805,"title":806},"\u002Ftr\u002Fes15-nedir-ecmascript-2024-nedir","ES15 nedir? ECMAScript 2024 nedir?",{"path":808,"title":809},"\u002Ftr\u002Fes14-nedir-ecmascript-2023-nedir","ES14 nedir? ECMAScript 2023 nedir?",{"path":811,"title":812},"\u002Ftr\u002Fes13-nedir-ecmascript-2022-nedir","ES13 nedir? ECMAScript 2022 nedir?",{"path":814,"title":815},"\u002Ftr\u002Fdocker-ile-litespeed-enterprise-kurulumu","Docker ile LiteSpeed Enterprise Kurulumu",{"path":817,"title":818},"\u002Ftr\u002Fcodeserver-nedir-codeserver-nasil-kurulur","Code-Server Nedir? Bulutta VS Code Geliştirme Ortamı Kurulumu",{"path":820,"title":821},"\u002Ftr\u002Fdocker-nedir","Docker Nedir?",{"path":823,"title":824},"\u002Ftr\u002Fapi-gateway-nedir","API Gateway Nedir? Ne İşe Yarar?",{"path":826,"title":827},"\u002Ftr\u002Fbridge-tasarim-deseni-nedir","Bridge Tasarım Deseni Nedir?",{"path":829,"title":830},"\u002Ftr\u002Frestful-api-bilesenleri","RESTful API Bileşenleri",{"path":832,"title":833},"\u002Ftr\u002Fvue-3-hakkinda-bilmeniz-gerekenler-yenilikler","Vue 3 Hakkında Bilmeniz Gerekenler ve Yenilikler",{"path":835,"title":836},"\u002Ftr\u002Frabbitmq-nedir","RabbitMQ Nedir?",{"path":838,"title":839},"\u002Ftr\u002Fearly-return-erken-donus-nedir","Early Return \u002F Erken Dönüş nedir?",{"path":841,"title":842},"\u002Ftr\u002Fgo-slice-veri-tipi","Go Veri Tipleri: Slice",{"path":844,"title":845},"\u002Ftr\u002Fvite-nedir","Vite Nedir? Modern Web Geliştirme ve Paketleme Aracı",{"path":78,"title":847},"ES6 Nedir? ECMAScript 2015 Nedir?",{"path":849,"title":850},"\u002Ftr\u002Flitespeed-web-server-performans-artisi","Konfor Alanından Çıkıp, Konforlu Bir VPS'e Geçmek: LiteSpeed Web Server",{"path":852,"title":853},"\u002Ftr\u002Fgo-veri-tipleri-map","Go Veri Tipleri - Map",{"path":855,"title":856},"\u002Ftr\u002Fnext-js-on-bellegi-nasil-yenilenir-on-demand-cache-regeneration","Next.js Önbelleği Nasıl Yenilenir? \"On-Demand Cache Regeneration\"",{"path":858,"title":859},"\u002Ftr\u002Fes17-nedir-ecmascript-2026-nedir","ES17 nedir? ECMAScript 2026 nedir?",{"path":861,"title":862},"\u002Ftr\u002Fcommand-tasarim-deseni-nedir","Command Tasarım Deseni Nedir?",{"path":864,"title":865},"\u002Ftr\u002Fes16-nedir-ecmascript-2025-nedir","ES16 nedir? ECMAScript 2025 nedir?",{"path":867,"title":868},"\u002Ftr\u002Fubuntu-20-04-uzerinde-cyberpanel-kurulumu","Ubuntu 20.04 üzerinde CyberPanel kurulumu",{"path":870,"title":871},"\u002Ftr\u002Fheadless-wordpress-hakkinda-her-sey","Headless WordPress Hakkında Her Şey",{"path":873,"title":874},"\u002Ftr\u002Fvisitor-tasarim-deseni-nedir","Visitor Tasarım Deseni Nedir?",{"path":876,"title":877},"\u002Ftr\u002Fphp-generator-ve-iterator-farki","PHP'de Generator ve Iterator Arasındaki Temel Farklar",{"path":879,"title":880},"\u002Ftr\u002Frest-api-kimlik-dogrulama-nasil-yapilir","REST API Kimlik Doğrulama Nasıl Yapılır?",{"path":882,"title":883},"\u002Ftr\u002Fgraylog-nedir-docker-ile-nasil-kurulur","Graylog Nedir? Docker Compose ile Adım Adım Kurulum Rehberi",{"path":885,"title":886},"\u002Ftr\u002Fubuntu-24-04-uzerinde-cyberpanel-kurulumu","Ubuntu 24.04 LTS ve 22.04 LTS Üzerinde CyberPanel Kurulumu",{"path":888,"title":889},"\u002Ftr\u002Fdesign-patterns-tasarim-desenleri-nedir","Design Patterns \u002F Tasarım Desenleri nedir?",{"path":891,"title":892},"\u002Ftr\u002Fgo-ile-websockets-websocket-upgrader-nedir","Go ile WebSockets: Upgrader Nedir?",{"path":894,"title":895},"\u002Ftr\u002Fyeni-tema-honeywind","Yeni WordPress Temam Honeywind: Tailwind CSS ve Minimalizm",[897,898,900,901],{"path":844,"title":845,"date":765},{"path":811,"title":812,"date":899},"2026-06-20",{"path":808,"title":809,"date":899},{"path":805,"title":806,"date":899},[903,905,907],{"path":823,"title":824,"date":904},"2021-07-24",{"path":817,"title":818,"date":906},"2021-02-21",{"path":908,"title":909,"date":910},"\u002Ftr\u002Frest-api-dokumantasyonu-nasil-yapilir","REST Api Dokümantasyonu Nasıl Oluşturulur?","2021-02-16",1782142073133]