[{"data":1,"prerenderedAt":842},["ShallowReactive",2],{"post-\u002Ftr\u002Fgo-slice-veri-tipi":3},{"page":4,"translation":675,"nav":691,"related":821,"random":831},{"id":5,"title":6,"body":7,"categories":673,"category":675,"date":676,"description":677,"draft":678,"extension":679,"image":680,"kind":675,"lang":104,"meta":681,"navigation":222,"path":682,"readingTime":237,"seo":683,"slug":684,"stem":685,"tags":686,"translationKey":675,"type":674,"updated":689,"__hash__":690},"postsTr\u002Ftr\u002Fgo-slice-veri-tipi.md","Go Veri Tipleri: Slice",{"type":8,"value":9,"toc":666},"minimark",[10,43,52,59,66,69,89,92,97,187,189,194,197,200,271,274,282,289,367,370,376,379,430,437,443,445,449,452,459,513,516,522,525,527,531,534,601,604,610,612,616,623,638,644,647,649,654,662],[11,12,13,21],"blockquote",{},[14,15,16,17],"p",{},"💡 ",[18,19,20],"strong",{},"Özet (TL;DR):",[22,23,24,31,37],"ul",{},[25,26,27,30],"li",{},[18,28,29],{},"Nedir:"," Go dilinde dizilerin (array) aksine dinamik olarak büyüyüp küçülebilen, arka planda bir diziyi (underlying array) referans alan esnek bir veri yapısıdır.",[25,32,33,36],{},[18,34,35],{},"3 Temel Bileşeni:"," İşaretçi (pointer - verinin başladığı adres), Boyut (length - slice'taki eleman sayısı) ve Kapasite (capacity - slice'ın genişleyebileceği maksimum eleman sayısı).",[25,38,39,42],{},[18,40,41],{},"Kritik Davranış:"," Slice kapasitesi dolduğunda, Go arka planda yeni ve iki katı büyüklükte bir dizi tahsis eder (reallocation) ve eski verileri oraya kopyalar.",[14,44,45,46,51],{},"Bir önceki yazıda ",[47,48,50],"a",{"href":49},"\u002Ftr\u002Fgo-veri-tipleri-string-integer-float-complex-boolean-ve-array","Go'da string, integer, float, complex, boolean ve array veri tiplerini"," inceledik. Bundan sonraki veri tiplerimiz (slice, map, struct) biraz daha geniş içerikli olacağı için ayrı yazılarda ele alacağız.",[14,53,54,55,58],{},"Bu yazının konusu da Go'da en çok kullanacağımız veri tiplerinden biri olan ",[18,56,57],{},"Slice",". Slice'lar da Array'ler gibi aynı tipteki bir dizi elemanı saklamaya yarayan veri tipleridir. Fakat Array'lerin boyutu sabitken, Slice'ların boyutu çalışma esnasında değiştirilebilir.",[14,60,61,62,65],{},"Slice'lar, bir Array ya da bir başka Slice'ı temel alan veri tipleridir. Temel olarak bir Array ya da bir başka Slice'ın bir bölümüne atıfta bulunan, onun bir dilimini alan yapılardır. Kolaylık olması açısından buna ",[18,63,64],{},"\"atıfta bulunulan dizi\""," diyelim. Bir slice, atıfta bulunduğu dizinin sadece bir bölümünü ya da tamamını temsil ediyor olabilir.",[14,67,68],{},"Slice'lar 3 bileşenden oluşurlar:",[22,70,71,77,83],{},[25,72,73,76],{},[18,74,75],{},"Pointer (İşaretçi):"," Atıfta bulunulan dizideki erişilmek istenen ilk elemanın işaretçisidir. Bu, atıfta bulunulan dizinin ilk elemanı olmak zorunda değildir.",[25,78,79,82],{},[18,80,81],{},"Length (Boyut):"," Slice'ın içerdiği eleman sayısıdır.",[25,84,85,88],{},[18,86,87],{},"Capacity (Kapasite):"," Slice'ın temel aldığı dizinin başlangıç elemanından itibaren alabileceği maksimum eleman sayısıdır.",[90,91],"hr",{},[93,94,96],"h3",{"id":95},"goda-array-ve-slice-karşılaştırması","Go'da Array ve Slice Karşılaştırması",[98,99,100,117],"table",{},[101,102,103],"thead",{},[104,105,106,111,114],"tr",{},[107,108,110],"th",{"align":109},"left","Özellik",[107,112,113],{"align":109},"Array (Dizi)",[107,115,116],{"align":109},"Slice (Dilim)",[118,119,120,142,155,171],"tbody",{},[104,121,122,128,136],{},[123,124,125],"td",{"align":109},[18,126,127],{},"Boyut Tanımı",[123,129,130,131,135],{"align":109},"Sabittir, tanımlandıktan sonra değiştirilemez (Örn: ",[132,133,134],"code",{},"[5]int",").",[123,137,138,139,135],{"align":109},"Dinamiktir, çalışma zamanında büyüyebilir (Örn: ",[132,140,141],{},"[]int",[104,143,144,149,152],{},[123,145,146],{"align":109},[18,147,148],{},"Hafıza Yönetimi",[123,150,151],{"align":109},"Değer tipidir (value type). Fonksiyona geçildiğinde kopyalanır.",[123,153,154],{"align":109},"Referans tipidir (reference type). Arka plandaki diziye işaret eder.",[104,156,157,162,165],{},[123,158,159],{"align":109},[18,160,161],{},"Eleman Ekleme",[123,163,164],{"align":109},"Yapılamaz, boyutu sabittir.",[123,166,167,170],{"align":109},[132,168,169],{},"append()"," fonksiyonu ile dinamik olarak eklenir.",[104,172,173,178,181],{},[123,174,175],{"align":109},[18,176,177],{},"Kapasite Kontrolü",[123,179,180],{"align":109},"Gerek yoktur, boyutu neyse kapasitesi odur.",[123,182,183,186],{"align":109},[132,184,185],{},"cap()"," fonksiyonu ile öğrenilir, dolduğunda Go otomatik artırır.",[90,188],{},[190,191,193],"h2",{"id":192},"slice-nasıl-tanımlanır","Slice Nasıl Tanımlanır?",[14,195,196],{},"En basit haliyle, büyüklüğünü belirtmediğiniz bir array tanımladığınızda bir slice tanımlamış olursunuz.",[14,198,199],{},"Örnek bir slice tanımı yapalım:",[201,202,207],"pre",{"className":203,"code":204,"language":205,"meta":206,"style":206},"language-go shiki shiki-themes github-light github-dark","package main\n\nimport \"fmt\"\n\nfunc main() {\n    months := []string{\"Ocak\", \"Şubat\", \"Mart\", \"Nisan\", \"Mayıs\", \"Haziran\", \"Temmuz\", \"Ağustos\", \"Eylül\", \"Ekim\", \"Kasım\", \"Aralık\"}\n    fmt.Println(\"Aylar   :\", months)\n    fmt.Println(\"Boyut   :\", len(months))\n    fmt.Println(\"Kapasite:\", cap(months))\n}\n","go","",[132,208,209,217,224,230,235,241,247,253,259,265],{"__ignoreMap":206},[210,211,214],"span",{"class":212,"line":213},"line",1,[210,215,216],{},"package main\n",[210,218,220],{"class":212,"line":219},2,[210,221,223],{"emptyLinePlaceholder":222},true,"\n",[210,225,227],{"class":212,"line":226},3,[210,228,229],{},"import \"fmt\"\n",[210,231,233],{"class":212,"line":232},4,[210,234,223],{"emptyLinePlaceholder":222},[210,236,238],{"class":212,"line":237},5,[210,239,240],{},"func main() {\n",[210,242,244],{"class":212,"line":243},6,[210,245,246],{},"    months := []string{\"Ocak\", \"Şubat\", \"Mart\", \"Nisan\", \"Mayıs\", \"Haziran\", \"Temmuz\", \"Ağustos\", \"Eylül\", \"Ekim\", \"Kasım\", \"Aralık\"}\n",[210,248,250],{"class":212,"line":249},7,[210,251,252],{},"    fmt.Println(\"Aylar   :\", months)\n",[210,254,256],{"class":212,"line":255},8,[210,257,258],{},"    fmt.Println(\"Boyut   :\", len(months))\n",[210,260,262],{"class":212,"line":261},9,[210,263,264],{},"    fmt.Println(\"Kapasite:\", cap(months))\n",[210,266,268],{"class":212,"line":267},10,[210,269,270],{},"}\n",[14,272,273],{},"Kodu çalıştırdığımızda şu sonucu alacağız:",[201,275,280],{"className":276,"code":278,"language":279,"meta":206},[277],"language-text","Aylar   : [Ocak Şubat Mart Nisan Mayıs Haziran Temmuz Ağustos Eylül Ekim Kasım Aralık]\nBoyut   : 12\nKapasite: 12\n","text",[132,281,278],{"__ignoreMap":206},[14,283,284,285,288],{},"Burada aklınıza şu gelmiş olabilir: ",[18,286,287],{},"\"Slice boyutu ve kapasitesinin farkı nedir?\""," Bunu bir örnekle anlatmak daha kolay olacaktır:",[201,290,292],{"className":203,"code":291,"language":205,"meta":206,"style":206},"package main\n\nimport \"fmt\"\n\nfunc main() {\n    months := []string{\"Ocak\", \"Şubat\", \"Mart\", \"Nisan\", \"Mayıs\", \"Haziran\", \"Temmuz\", \"Ağustos\", \"Eylül\", \"Ekim\", \"Kasım\", \"Aralık\"}\n    quarter1 := months[0:3]\n    quarter2 := months[3:6]\n    quarter3 := months[6:9]\n    quarter4 := months[9:12]\n    fmt.Println(quarter1, len(quarter1), cap(quarter1))\n    fmt.Println(quarter2, len(quarter2), cap(quarter2))\n    fmt.Println(quarter3, len(quarter3), cap(quarter3))\n    fmt.Println(quarter4, len(quarter4), cap(quarter4))\n}\n",[132,293,294,298,302,306,310,314,318,323,328,333,338,344,350,356,362],{"__ignoreMap":206},[210,295,296],{"class":212,"line":213},[210,297,216],{},[210,299,300],{"class":212,"line":219},[210,301,223],{"emptyLinePlaceholder":222},[210,303,304],{"class":212,"line":226},[210,305,229],{},[210,307,308],{"class":212,"line":232},[210,309,223],{"emptyLinePlaceholder":222},[210,311,312],{"class":212,"line":237},[210,313,240],{},[210,315,316],{"class":212,"line":243},[210,317,246],{},[210,319,320],{"class":212,"line":249},[210,321,322],{},"    quarter1 := months[0:3]\n",[210,324,325],{"class":212,"line":255},[210,326,327],{},"    quarter2 := months[3:6]\n",[210,329,330],{"class":212,"line":261},[210,331,332],{},"    quarter3 := months[6:9]\n",[210,334,335],{"class":212,"line":267},[210,336,337],{},"    quarter4 := months[9:12]\n",[210,339,341],{"class":212,"line":340},11,[210,342,343],{},"    fmt.Println(quarter1, len(quarter1), cap(quarter1))\n",[210,345,347],{"class":212,"line":346},12,[210,348,349],{},"    fmt.Println(quarter2, len(quarter2), cap(quarter2))\n",[210,351,353],{"class":212,"line":352},13,[210,354,355],{},"    fmt.Println(quarter3, len(quarter3), cap(quarter3))\n",[210,357,359],{"class":212,"line":358},14,[210,360,361],{},"    fmt.Println(quarter4, len(quarter4), cap(quarter4))\n",[210,363,365],{"class":212,"line":364},15,[210,366,270],{},[14,368,369],{},"Kodun çıktısı şöyle olacaktır:",[201,371,374],{"className":372,"code":373,"language":279,"meta":206},[277],"[Ocak Şubat Mart] 3 12\n[Nisan Mayıs Haziran] 3 9\n[Temmuz Ağustos Eylül] 3 6\n[Ekim Kasım Aralık] 3 3\n",[132,375,373],{"__ignoreMap":206},[14,377,378],{},"Dikkat ederseniz her birinin boyutu 3 iken, kapasiteleri farklıdır. Slice'ı tanımlarken başlangıç pozisyonunu ve uzunluğunu belirtiyoruz. Slice boyutu belirlediğimiz boyutken, kapasitesi açık uçludur ve slice boyutumuzun nereye kadar uzayabileceğini gösterir. Örneğin:",[201,380,382],{"className":203,"code":381,"language":205,"meta":206,"style":206},"package main\n\nimport \"fmt\"\n\nfunc main() {\n    months := []string{\"Ocak\", \"Şubat\", \"Mart\", \"Nisan\", \"Mayıs\", \"Haziran\", \"Temmuz\", \"Ağustos\", \"Eylül\", \"Ekim\", \"Kasım\", \"Aralık\"}\n    quarter2 := months[3:6]\n    quarter2Extended := quarter2[:4]\n    fmt.Println(quarter2, len(quarter2), cap(quarter2))\n    fmt.Println(quarter2Extended, len(quarter2Extended), cap(quarter2Extended))\n}\n",[132,383,384,388,392,396,400,404,408,412,417,421,426],{"__ignoreMap":206},[210,385,386],{"class":212,"line":213},[210,387,216],{},[210,389,390],{"class":212,"line":219},[210,391,223],{"emptyLinePlaceholder":222},[210,393,394],{"class":212,"line":226},[210,395,229],{},[210,397,398],{"class":212,"line":232},[210,399,223],{"emptyLinePlaceholder":222},[210,401,402],{"class":212,"line":237},[210,403,240],{},[210,405,406],{"class":212,"line":243},[210,407,246],{},[210,409,410],{"class":212,"line":249},[210,411,327],{},[210,413,414],{"class":212,"line":255},[210,415,416],{},"    quarter2Extended := quarter2[:4]\n",[210,418,419],{"class":212,"line":261},[210,420,349],{},[210,422,423],{"class":212,"line":267},[210,424,425],{},"    fmt.Println(quarter2Extended, len(quarter2Extended), cap(quarter2Extended))\n",[210,427,428],{"class":212,"line":340},[210,429,270],{},[14,431,432,433,436],{},"Bu kodla ",[132,434,435],{},"quarter2","'yi ilk elemanından başlatarak uzunluğunu 3'ten 4'e çıkarabiliyoruz:",[201,438,441],{"className":439,"code":440,"language":279,"meta":206},[277],"[Nisan Mayıs Haziran] 3 9\n[Nisan Mayıs Haziran Temmuz] 4 9\n",[132,442,440],{"__ignoreMap":206},[90,444],{},[190,446,448],{"id":447},"slicea-eleman-eklemek","Slice'a Eleman Eklemek",[14,450,451],{},"Şu ana kadar Slice'ın Array'lere benzer olan kısımlarını ve bir Array'i temel alarak nasıl slice oluşturabileceğimizi öğrendik. Fakat Slice'ın Array'e göre en önemli farkı dinamik olmasıdır. Bir Slice oluşturduktan sonra bu Slice'a yeni elemanlar ekleyebilir ve boyutunu değiştirebilirsiniz.",[14,453,454,455,458],{},"Go'da slice'a bir eleman eklemek için ",[132,456,457],{},"append(slice, eleman)"," fonksiyonunu kullanıyoruz. Append fonksiyonuna değiştirilecek slice'ı ve eklenecek elemanı gönderdiğimizde, bize yeni eleman eklenmiş slice'ı geri döndürecektir.",[201,460,462],{"className":203,"code":461,"language":205,"meta":206,"style":206},"package main\n\nimport \"fmt\"\n\nfunc main() {\n    var numbers []int\n    for i := 0; i \u003C 10; i++ {\n        numbers = append(numbers, i)\n        fmt.Printf(\"%d\\tcap=%d\\t%v\\n\", i, cap(numbers), numbers)\n    }\n}\n",[132,463,464,468,472,476,480,484,489,494,499,504,509],{"__ignoreMap":206},[210,465,466],{"class":212,"line":213},[210,467,216],{},[210,469,470],{"class":212,"line":219},[210,471,223],{"emptyLinePlaceholder":222},[210,473,474],{"class":212,"line":226},[210,475,229],{},[210,477,478],{"class":212,"line":232},[210,479,223],{"emptyLinePlaceholder":222},[210,481,482],{"class":212,"line":237},[210,483,240],{},[210,485,486],{"class":212,"line":243},[210,487,488],{},"    var numbers []int\n",[210,490,491],{"class":212,"line":249},[210,492,493],{},"    for i := 0; i \u003C 10; i++ {\n",[210,495,496],{"class":212,"line":255},[210,497,498],{},"        numbers = append(numbers, i)\n",[210,500,501],{"class":212,"line":261},[210,502,503],{},"        fmt.Printf(\"%d\\tcap=%d\\t%v\\n\", i, cap(numbers), numbers)\n",[210,505,506],{"class":212,"line":267},[210,507,508],{},"    }\n",[210,510,511],{"class":212,"line":340},[210,512,270],{},[14,514,515],{},"Bu kodun çıktısı da şöyle olacaktır:",[201,517,520],{"className":518,"code":519,"language":279,"meta":206},[277],"0       cap=1   [0]\n1       cap=2   [0 1]\n2       cap=4   [0 1 2]\n3       cap=4   [0 1 2 3]\n4       cap=8   [0 1 2 3 4]\n5       cap=8   [0 1 2 3 4 5]\n6       cap=8   [0 1 2 3 4 5 6]\n7       cap=8   [0 1 2 3 4 5 6 7]\n8       cap=16  [0 1 2 3 4 5 6 7 8]\n9       cap=16  [0 1 2 3 4 5 6 7 8 9]\n",[132,521,519],{"__ignoreMap":206},[14,523,524],{},"Bu çıktıda dikkat çekici olan, slice kapasitesindeki değişimdir. Farkındaysanız slice boyutu yetersiz geldiğinde kapasite otomatik olarak artırılıyor; önce 1'den 2'ye, sonra 4'e, 8'e ve en son olarak da 16'ya çıkıyor. Görüldüğü üzere slice kapasitesi yetersiz olduğunda Go otomatik olarak kapasiteyi iki katına çıkarır.",[90,526],{},[190,528,530],{"id":529},"slicetan-eleman-çıkarmak","Slice'tan Eleman Çıkarmak",[14,532,533],{},"Go'da slice'lardan eleman çıkarmak için hazır bir fonksiyon yoktur. Bunun yerine işlemi, çıkaracağımız elemanın olmadığı yeni bir slice oluşturarak yaparız:",[201,535,537],{"className":203,"code":536,"language":205,"meta":206,"style":206},"package main\n\nimport \"fmt\"\n\nfunc main() {\n    letters := []string{\"A\", \"B\", \"C\", \"D\", \"E\"}\n    remove := 2\n\n    if remove \u003C len(letters) {\n        fmt.Println(\"Önce:\", letters)\n        letters = append(letters[:remove], letters[remove+1:]...)\n        fmt.Println(\"Sonra:\", letters)\n    }\n}\n",[132,538,539,543,547,551,555,559,564,569,573,578,583,588,593,597],{"__ignoreMap":206},[210,540,541],{"class":212,"line":213},[210,542,216],{},[210,544,545],{"class":212,"line":219},[210,546,223],{"emptyLinePlaceholder":222},[210,548,549],{"class":212,"line":226},[210,550,229],{},[210,552,553],{"class":212,"line":232},[210,554,223],{"emptyLinePlaceholder":222},[210,556,557],{"class":212,"line":237},[210,558,240],{},[210,560,561],{"class":212,"line":243},[210,562,563],{},"    letters := []string{\"A\", \"B\", \"C\", \"D\", \"E\"}\n",[210,565,566],{"class":212,"line":249},[210,567,568],{},"    remove := 2\n",[210,570,571],{"class":212,"line":255},[210,572,223],{"emptyLinePlaceholder":222},[210,574,575],{"class":212,"line":261},[210,576,577],{},"    if remove \u003C len(letters) {\n",[210,579,580],{"class":212,"line":267},[210,581,582],{},"        fmt.Println(\"Önce:\", letters)\n",[210,584,585],{"class":212,"line":340},[210,586,587],{},"        letters = append(letters[:remove], letters[remove+1:]...)\n",[210,589,590],{"class":212,"line":346},[210,591,592],{},"        fmt.Println(\"Sonra:\", letters)\n",[210,594,595],{"class":212,"line":352},[210,596,508],{},[210,598,599],{"class":212,"line":358},[210,600,270],{},[14,602,603],{},"Çıktı:",[201,605,608],{"className":606,"code":607,"language":279,"meta":206},[277],"Önce: [A B C D E]\nSonra: [A B D E]\n",[132,609,607],{"__ignoreMap":206},[90,611],{},[190,613,615],{"id":614},"sliceların-kopyalarını-oluşturmak","Slice'ların Kopyalarını Oluşturmak",[14,617,618,619,622],{},"Go'da slice'ların kopyalarını oluşturmak için hazır ",[132,620,621],{},"copy(dst, src []Type)"," fonksiyonunu kullanabilirsiniz. Copy fonksiyonuna hedef slice'ı ve kaynak slice'ı vererek kopyalayabilirsiniz:",[201,624,626],{"className":203,"code":625,"language":205,"meta":206,"style":206},"slice2 := make([]string, 3)\ncopy(slice2, letters[1:4])\n",[132,627,628,633],{"__ignoreMap":206},[210,629,630],{"class":212,"line":213},[210,631,632],{},"slice2 := make([]string, 3)\n",[210,634,635],{"class":212,"line":219},[210,636,637],{},"copy(slice2, letters[1:4])\n",[14,639,640,643],{},[18,641,642],{},"Neden Slice'ın kopyasını oluşturmalıyız?","\nBir slice'ta değişiklik yaptığınızda aslında slice'ın kendisini değil, arka planda işaret ettiği temel diziyi (array) değiştirirsiniz. Eğer o diziyi esas alan başka slice'larınız varsa onlar da değişmiş olur. Bunu istemediğimiz durumlarda Slice'ın bağımsız bir kopyasını oluşturup onun üzerinde çalışmalıyız.",[14,645,646],{},"Bir sonraki yazıda Go'da Map veri tipini inceleyeceğiz.",[90,648],{},[650,651,653],"h5",{"id":652},"bu-yazıda-yapılan-değişiklikler","Bu Yazıda Yapılan Değişiklikler",[22,655,656,659],{},[25,657,658],{},"11.05.2022: Yazı özeti düzenlendi.",[25,660,661],{},"21.06.2026: Yazım imla hataları (Boyut typo'su, bağlaç yazımları vb.) düzeltildi, kod renklendirmeleri eklendi, Go Array ve Slice kıyaslama tablosu ile TL;DR özet paneli eklendi.",[663,664,665],"style",{},"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);}",{"title":206,"searchDepth":219,"depth":219,"links":667},[668,669,670,671,672],{"id":95,"depth":226,"text":96},{"id":192,"depth":219,"text":193},{"id":447,"depth":219,"text":448},{"id":529,"depth":219,"text":530},{"id":614,"depth":219,"text":615},[674],"technical",null,"2021-10-10","Go dilinde Slice veri yapısı nedir, nasıl tanımlanır? Boyut (length) ve kapasite (capacity) farkı, eleman ekleme\u002Fçıkarma ve kopyalama işlemleri.",false,"md","\u002Fimages\u002Fhero\u002Fgo-slice.avif",{},"\u002Ftr\u002Fgo-slice-veri-tipi",{"title":6,"description":677},"go-slice-veri-tipi","tr\u002Fgo-slice-veri-tipi",[205,687,688],"golang","slice","2026-06-21","2CBGB6FcLw7shNelsubhlVuS4qWgxltkn_CsEXoRwXU",{"prev":692,"next":695,"others":697,"lucky":818,"readingTime":237},{"path":693,"title":694},"\u002Ftr\u002Fgo-veri-tipleri-map","Go Veri Tipleri - Map",{"path":49,"title":696},"Go Veri Tipleri - String, Integer, Float, Complex, Boolean ve Array",[698,701,704,707,710,713,716,719,722,725,728,731,734,737,740,743,746,749,752,755,758,761,764,767,770,773,776,779,782,785,788,791,794,797,800,803,806,809,812,815],{"path":699,"title":700},"\u002Ftr\u002Fstate-tasarim-deseni-nedir","State Tasarım Deseni Nedir?",{"path":702,"title":703},"\u002Ftr\u002Fstrategy-tasarim-deseni-nedir","Strategy Tasarım Deseni Nedir?",{"path":705,"title":706},"\u002Ftr\u002Fes13-nedir-ecmascript-2022-nedir","ES13 nedir? ECMAScript 2022 nedir?",{"path":708,"title":709},"\u002Ftr\u002Fwordpress-yonetici-sifresini-wp-cli-kullanarak-sifirlama","WordPress Yönetici Şifresini WP-CLI Kullanarak Sıfırlama",{"path":711,"title":712},"\u002Ftr\u002Fes10-nedir-ecmascript-2019-nedir","ES10 Nedir? ECMAScript 2019 Nedir?",{"path":714,"title":715},"\u002Ftr\u002Fdesign-patterns-tasarim-desenleri-nedir","Design Patterns \u002F Tasarım Desenleri nedir?",{"path":717,"title":718},"\u002Ftr\u002Fgo-ile-websockets-websocket-upgrader-nedir","Go ile WebSockets: Upgrader Nedir?",{"path":720,"title":721},"\u002Ftr\u002Fmerhaba-gluster","Merhaba Gluster: Dağıtık Dosya Sistemi Nedir?",{"path":723,"title":724},"\u002Ftr\u002Fcodeserver-nedir-codeserver-nasil-kurulur","Code-Server Nedir? Bulutta VS Code Geliştirme Ortamı Kurulumu",{"path":726,"title":727},"\u002Ftr\u002Ffull-stack-proje-gelistiriyoruz","Full Stack Proje Geliştiriyoruz",{"path":729,"title":730},"\u002Ftr\u002Fphp-generator-ve-iterator-farki","PHP'de Generator ve Iterator Arasındaki Temel Farklar",{"path":732,"title":733},"\u002Ftr\u002Fmutable-ve-immutable-kavrami","Mutable ve Immutable Kavramları Nedir?",{"path":735,"title":736},"\u002Ftr\u002Fes6-nedir-ecmascript-2015-nedir","ES6 Nedir? ECMAScript 2015 Nedir?",{"path":738,"title":739},"\u002Ftr\u002Fubuntu-24-04-uzerinde-cyberpanel-kurulumu","Ubuntu 24.04 LTS ve 22.04 LTS Üzerinde CyberPanel Kurulumu",{"path":741,"title":742},"\u002Ftr\u002Fjavascriptde-moduller","JavaScript'te Modüller",{"path":744,"title":745},"\u002Ftr\u002Frestful-api-bilesenleri","RESTful API Bileşenleri",{"path":747,"title":748},"\u002Ftr\u002Fobserver-tasarim-deseni-nedir","Observer Tasarım Deseni Nedir?",{"path":750,"title":751},"\u002Ftr\u002Frest-api-hata-yonetimi","REST Api Hata Yönetimi",{"path":753,"title":754},"\u002Ftr\u002Fbuilder-tasarim-deseni-nedir","Builder Tasarım Deseni Nedir?",{"path":756,"title":757},"\u002Ftr\u002Fwebpack-nedir","Webpack Nedir? Modern JavaScript Paketleyici Ekosistemi",{"path":759,"title":760},"\u002Ftr\u002Fadapter-tasarim-deseni-nedir","Adapter Tasarım Deseni Nedir?",{"path":762,"title":763},"\u002Ftr\u002Flitespeed-web-server-performans-artisi","Konfor Alanından Çıkıp, Konforlu Bir VPS'e Geçmek: LiteSpeed Web Server",{"path":765,"title":766},"\u002Ftr\u002Ftailwind-css-just-in-time-modu","Tailwind CSS Just-in-Time (JIT) Modu Nedir?",{"path":768,"title":769},"\u002Ftr\u002Fnostalji-ibibik-online","Nostalji: İbibik Online (1998'den Bir Web Macerası)",{"path":771,"title":772},"\u002Ftr\u002Fflyweight-tasarim-deseni-nedir","Flyweight Tasarım Deseni Nedir?",{"path":774,"title":775},"\u002Ftr\u002Fiterator-tasarim-deseni-nedir","Iterator Tasarım Deseni Nedir?",{"path":777,"title":778},"\u002Ftr\u002Fvue-3-hakkinda-bilmeniz-gerekenler-yenilikler","Vue 3 Hakkında Bilmeniz Gerekenler ve Yenilikler",{"path":780,"title":781},"\u002Ftr\u002Fmerhabadunya","Merhaba Dünya",{"path":783,"title":784},"\u002Ftr\u002Faws-ec2-uzerinde-docker-ve-full-stack-web-performansi","AWS EC2 Üzerinde Docker ve Full Stack Web Performansı",{"path":786,"title":787},"\u002Ftr\u002Fdocker-swarm-nedir","Docker Swarm Nedir?",{"path":789,"title":790},"\u002Ftr\u002Flinuxda-golang-kurulumu","Linux'ta Golang Kurulumu",{"path":792,"title":793},"\u002Ftr\u002Fubuntu-20-04-composer-kurulumu","Ubuntu 20.04 - Composer Kurulumu",{"path":795,"title":796},"\u002Ftr\u002Fmediator-tasarim-deseni-nedir","Mediator Tasarım Deseni Nedir?",{"path":798,"title":799},"\u002Ftr\u002Frest-api-guvenligi-nasil-saglanir","REST Api Güvenliği Nasıl Sağlanır?",{"path":801,"title":802},"\u002Ftr\u002Fgo-programlama-dilinin-ozellikleri","Go Programlama Dilinin Özellikleri",{"path":804,"title":805},"\u002Ftr\u002Fphp-8-0-yenilikler","Merhaba PHP 8: Modern PHP 8.x Çağı",{"path":807,"title":808},"\u002Ftr\u002Fheadless-wordpress-hakkinda-her-sey","Headless WordPress Hakkında Her Şey",{"path":810,"title":811},"\u002Ftr\u002Fgo-ve-degiskenler","Go ve Değişkenler",{"path":813,"title":814},"\u002Ftr\u002Fself-hosted-api-gateway-nasil-kurulur-kapsamli-rehber","Self-Hosted API Gateway Nasıl Kurulur? Kapsamlı Rehber",{"path":816,"title":817},"\u002Ftr\u002Fchain-of-responsibility-deseni-nedir","Chain of Responsibility Deseni Nedir?",{"path":819,"title":820},"\u002Ftr\u002Fdocker-ve-portainer-kurulumu","Docker ve Portainer Kurulumu",[822,826,828,829],{"path":823,"title":824,"date":825},"\u002Ftr\u002Fgo-veri-tipleri-struct","Go Veri Tipleri: Struct","2021-10-14",{"path":693,"title":694,"date":827},"2021-10-13",{"path":49,"title":696,"date":676},{"path":810,"title":811,"date":830},"2021-10-04",[832,834,838],{"path":798,"title":799,"date":833},"2021-02-16",{"path":835,"title":836,"date":837},"\u002Ftr\u002Fes11-nedir-ecmascript-2020-nedir","ES11 Nedir? ECMAScript 2020 Nedir?","2021-10-19",{"path":839,"title":840,"date":841},"\u002Ftr\u002Fprototype-tasarim-deseni-nedir","Prototype Tasarım Deseni Nedir?","2021-08-16",1782142002795]