Skip to content

Commit d3a31b8

Browse files
committed
Done proof-reading.
1 parent 8356946 commit d3a31b8

21 files changed

+73
-73
lines changed

doc/tr/array/constructor.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
## `Dizi` Oluşturucusu
1+
## `Array` Oluşturucusu
22

3-
`Dizi` oluşturucusunun parametrelerini nasıl değerlendirdiği belirsiz olduğu
4-
için, yeni diziler oluşturulurken her zaman dizi değişmezlerinin (`[]`
3+
`Array` oluşturucusunun parametrelerini nasıl değerlendirdiği belirsiz olduğu
4+
için, yeni diziler oluşturulurken her zaman dizi sabitlerinin (`[]`
55
notasyonu) kullanılması tavsiye olunur.
66

77
[1, 2, 3]; // Sonuç: [1, 2, 3]
@@ -11,14 +11,14 @@ notasyonu) kullanılması tavsiye olunur.
1111
new Array(3); // Sonuç: []
1212
new Array('3') // Sonuç: ['3']
1313

14-
`Dizi` oluşturucusuna tek bir argüman verildiğinde, ve bu argümanın türü
14+
`Array` oluşturucusuna tek bir argüman verildiğinde, ve bu argümanın türü
1515
`Number` ise, oluşacak *boş* dizinin `length` özelliği argümanın
1616
değerine eşit olacaktır. Bu şekilde oluşturulan bir dizinin **sadece**
1717
`length` özelliği belirlenmiş olup dizi indisleri tanımsız olacaktır.
1818

1919
var arr = new Array(3);
2020
arr[1]; // undefined
21-
1 in arr; // false, indisler ilklenmedi
21+
1 in arr; // false, indisler atanmadı
2222

2323
Dizinin uzunluğunu bu şekilde önceden belirlemek sadece bir iki durumda
2424
kullanışlıdır. Bunlardan birisi bir döngüye gerek olmadan bir karakter
@@ -28,8 +28,8 @@ katarını tekrarlamaktır.
2828

2929
### Sonuç
3030

31-
`Dizi` oluşturucusunun kullanılmasından mümkün olduğu kadar kaçınılmalıdır.
32-
Bunun yerine her zaman dizi değişmezleri tercih edilmelidir. Hem daha kısadırlar
33-
hem de daha anlaşılır bir sentaksa sahiptirler; bu nedenle programın okunabilirliğini
34-
de artırırlar.
31+
`Array` oluşturucusunun kullanılmasından mümkün olduğu kadar kaçınılmalıdır.
32+
Bunun yerine her zaman dizi sabitleri tercih edilmelidir. Hem daha kısadırlar
33+
hem de daha anlaşılır bir sentaksa sahiptirler; bu nedenle programın
34+
okunabilirliğini de artırırlar.
3535

doc/tr/array/general.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,15 @@ vardır.
1010
> Ve *associative* diziler eleman sıralamasını **korurlar** ama, nesneler
1111
> **korumazlar**.
1212
13-
`for in` döngüsü prototip zincirindeki tüm özellikleri saydığı için ve bunu
13+
`for in` döngüsü prototip zincirindeki tüm özellikleri dolaştığı için ve bunu
1414
engellemenin tek yolu [`hasOwnProperty`](#object.hasownproperty) kullanmak
1515
olduğu için `for in` döngüsü sıradan bir `for` döngüsünden **yirmi kata kadar**
1616
daha yavaştır.
1717

1818
### İterasyon
1919

20-
Dizilerde iterasyon yaparken en iyi performans için en iyi yol klasik `for`
21-
döngüsünü kullanmaktır.
20+
Dizilerde iterasyon yaparken en iyi performansı elde etmenin en iyi yolu klasik
21+
`for` döngüsünü kullanmaktır.
2222

2323
var list = [1, 2, 3, 4, 5, ...... 100000000];
2424
for(var i = 0, l = list.length; i < l; i++) {

doc/tr/core/eval.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
## Neden `eval` kullanılmamalı
1+
## Neden `eval` Kullanılmamalı
22

33
`eval` fonksiyonu bir JavaScript kodunu lokal kapsamda yürütür.
44

doc/tr/core/semicolon.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
## Otomatik noktalı virgül ilavesi
1+
## Otomatik Noktalı Virgül İlavesi
22

33
JavaScript sentaksı C'ye benzese de, noktalı virgül kullanılması
4-
zurunlu **değildir**.
4+
zorunlu **değildir**.
55

66
Fakat JavaScript noktalı virgül kullanmayan bir dil değildir, hatta
77
programı anlayabilmek için noktalı virgüllere ihtiyaç duyar. Bu yüzden
@@ -85,7 +85,7 @@ eklenmesi gerektiğini gramer çözümleyicinin karar vermesi gerekiyor.
8585

8686
})(window); //<- eklendi
8787

88-
> **Not:** JavaScript çözümleyicisi `return` ifadesinden heme sonra satır sonu
88+
> **Not:** JavaScript çözümleyicisi `return` ifadesinden hemen sonra satır sonu
8989
> gelmesi durumunu "doğru" değerlendirmez. Bu durum otomatik noktalı virgül
9090
> eklenmesinin istenmeyen bir yan etkisidir.
9191
@@ -110,7 +110,7 @@ bu nedenle, yukarıdaki satır `undefined is not a function` hata mesajı ile bi
110110

111111
### Sonuç
112112

113-
Noktalı virgüllerin **hiç bir zaman** ihmal edilmemesi tavsiye olunur, ayrıca
113+
Noktalı virgüllerin **hiç bir zaman** ihmal edilmemesi tavsiye edilir, ayrıca
114114
ayraçların kendilerinden önceki ifade ile aynı satırda tutulması ve tek satırlık
115115
`if` ve `else` ifadelerinde bile ayraçların ihmal edilmemesi önerilir. Her iki
116116
önlem de hem programın tutarlılığını artıracak, hem de JavaScript

doc/tr/core/undefined.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ JavaScript dilinde `undefined` geleneksel *null* yerine kullanılmaktadır, ası
6565
`null` (hem `null` değişmezi hem de değişken türü) ise kabaca başka bir
6666
veri türüdür.
6767

68-
`null` JavaScript içindeki kapalı olarak kullanılır (mesela prototip zincirinin
68+
`null` JavaScript içinde kapalı olarak kullanılır (mesela prototip zincirinin
6969
sonuna gelindiği `Foo.prototype = null` ile belirtilir), fakat hemen her durumda
7070
bunun yerine `undefined` kullanılabilir.
7171

doc/tr/function/arguments.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
## `arguments` nesnesi
1+
## `arguments` Nesnesi
22

33
JavaScript'te her fonksiyon kapsamında `arguments` adlı özel bir nesne
44
tanımlıdır. Bu nesne fonksiyon çağrılırken verilen argümanların listesini

doc/tr/function/closures.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
## Closure ve Referanslar
22

3-
JavaScript'in en güçlü özelliklerinden biri de *closure* 'lara sahip olmasıdır.
3+
JavaScript'in en güçlü özelliklerinden biri de `closure` 'lara sahip olmasıdır.
44
Bunun anlamı her hangi bir kapsamın **her zaman** kendisini içeren kapsama
55
erişebilmesidir. JavaScript'te tek kapsam [fonksiyon kapsamı](#function.scopes)
66
olduğu için temelde tüm fonksiyonlar `closure` 'durlar.

doc/tr/function/constructors.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
JavaScript'te oluşturucular diğer dillerden farklıdır. Başında `new` bulunan
44
her fonksiyon çağrısı bir oluşturucudur.
55

6-
Oluşturucunun (çağırılan fonksiyonun) içinde `this` 'in değeri yeni yaratılan
6+
Oluşturucunun (çağrılan fonksiyonun) içinde `this` 'in değeri yeni yaratılan
77
`Object` 'dir. Bu **yeni** nesnenin [`prototipi`](#object.prototype) oluşturucu
88
olarak çağrılan fonksiyon nesnesinin prototipidir.
99

@@ -48,7 +48,7 @@ bu değer bir `Object` ise oluşturucu fonksiyon verilen değeri döndürür.
4848
Foo(); // undefined
4949

5050
Yukarıdaki örnek bazı durumlarda doğru çalışıyor gibi görünebilir, ama
51-
JavaeScript'te [`this`](#function.this) 'in çalışma şeklinden dolayı `this`
51+
JavaScript'te [`this`](#function.this) 'in çalışma şeklinden dolayı `this`
5252
'in değeri *global nesne* olacaktır.
5353

5454
### Nesne fabrikaları
@@ -72,19 +72,19 @@ döndürmesi gerekir.
7272
Bar();
7373

7474
Yukarıda `Bar` fonksiyonunu çağıran her iki ifade de aynı şeyi döndürecektir:
75-
`method` adında bir [Closure](#function.closures) özelliği olan yeni yaratılmış
75+
`method` adında bir [`closure`](#function.closures) özelliği olan yeni yaratılmış
7676
bir nesne.
7777

7878
Başka bir nokta da `new Bar()` fonksiyonunun döndürülen nesnenin prototipini
7979
**etkilememesidir**. Yeni nesnenin prototipi oluşturulacaktır ancak `Bar` bu
8080
nesneyi döndürmez.
8181

82-
Yukarıdaki örnekte `new` anahtar kelimesini kullanmakla kullanamamak arasında
82+
Yukarıdaki örnekte `new` anahtar kelimesini kullanmakla kullanmamak arasında
8383
hiçbir bir fark yoktur.
8484

8585
### Fabrikalar ile yeni nesneler oluşturmak
8686

87-
`new` anahtar kelimesinin **kullanılmaması** tavsiye olunur, çünkü unutulması
87+
`new` anahtar kelimesinin **kullanılmaması** tavsiye edilir, çünkü unutulması
8888
durumu hatalara sebep olabilir.
8989

9090
Bunun yerine yeni bir nesne oluşturmak için bir fabrika kullanılmalıdır.

doc/tr/function/general.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
## Fonksiyon Tanımlası ve Fonksiyon İfadesi
1+
## Fonksiyon Tanımlaması ve Fonksiyon İfadesi
22

33
Fonksiyonlar JavaScript'te birinci sınıf nesnelerdir, yani sıradan bir değer
44
gibi kullanılabilirler. Bu özellik sıklıkla bir *isimsiz fonksiyonu* başka bir
@@ -11,7 +11,7 @@ geçirmekte kullanılır.
1111

1212
Yukarıdaki fonksiyon tanımlaması program çalışmadan önce
1313
[yukarı taşınır](#function.scopes) ve böylece *tanımlandığı* kapsam içinde
14-
*her yerde* - hatta tanımlanmadan önce bile - kullanılabilir.
14+
*her yerde* (hatta tanımlanmadan önce bile) kullanılabilir.
1515

1616
foo(); // foo bu satır çalışmadan önce oluşturuldu
1717
function foo() {}

doc/tr/function/scopes.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ kapsamı **bulunmaz**; bu nedenle, dilde sadece *fonksiyon kapsamı* mevcuttur.
1616
> [otomatik noktalı virgül ilavesi](#core.semicolon) ile birleştiğinde fark
1717
> edilmesizor hatalara neden olabilir.
1818
19-
JavaScript'te isim uzayları kavramı da bulunmaz, tanımlanan herşey tek bir
20-
*genel olarak paylaşılmış* bir isim uzayının içindedir.
19+
JavaScript'te isim uzayları kavramı da bulunmaz, tanımlanan herşey
20+
*genel olarak paylaşılmış* tek bir isim uzayının içindedir.
2121

2222
Bir değişkene erişildiğinde, JavaScript değişkenin tanımını bulana dek yukarıya
2323
doğru tüm kapsamlara bakar. Genel kapsama ulaşıldığı halde hala değişkenin
@@ -50,7 +50,7 @@ kelimesini kullanmamanın önemli sonuçları olabilir.
5050
`test` fonksiyonun içinde `var` anahtar kelimesinin atlanması genel kapsamdaki
5151
`foo` değişkeninin değerini değiştirecektir. İlk bakışta bu önemsiz gibi görünse
5252
de, binlerce satırlık bir programda `var` kullanılmaması korkunç ve takibi güç
53-
hatalara neden olacaktor.
53+
hatalara neden olacaktır.
5454

5555
// genel kapsam
5656
var items = [/* bir dizi */];
@@ -121,7 +121,7 @@ ifadelerini ve `function` bildirimlerini içinde bulundukları kapsamın en üst
121121
taşır.
122122

123123
// var ifadeleri buraya taşınır
124-
var bar, someValue; // varsayılan olarak 'undefined' değerini alırlar
124+
var bar, someValue; // varsayılan değerleri 'undefined' olur
125125

126126
// function bildirimi de yukarı taşınır
127127
function test(data) {
@@ -204,15 +204,15 @@ Tek bir genel isim uzayının bulunmasının yol açtığı yaygın sonuç isim
204204

205205
})(); // fonksiyonu hemen çalıştır
206206

207-
İsim siz fonksiyonlar [ifade](#function.general) olarak değerlendirilir;
207+
İsimsiz fonksiyonlar [ifade](#function.general) olarak değerlendirilir;
208208
bu nedenle çağrılabilmeleri için önce değerlendirilmeleri gerekir.
209209

210210
( // parantezin içindeki fonksiyonu değerlendir
211211
function() {}
212212
) // ve fonksiyon nesnesini döndür
213213
() // değerlendirmenin sonucu fonksiyon nesnesini çağır
214214

215-
Bir fonksiyon ifadesini değerlendirip çağırmanın başka yolları da vadır ve
215+
Bir fonksiyon ifadesini değerlendirip çağırmanın başka yolları da vardır ve
216216
yukarıdaki ile aynı sonucu verirler.
217217

218218
// İki farklı yöntem
@@ -222,7 +222,7 @@ yukarıdaki ile aynı sonucu verirler.
222222
### Sonuç
223223

224224
Programı kendi isim uzayı ile kapsamak için her zaman *isimsiz fonksiyonların*
225-
kullanılması tavsiye olunur. Böylece hem isim çakışmalarından korunulmuş olunur,
225+
kullanılması tavsiye edilir. Böylece hem isim çakışmalarından korunulmuş olunur,
226226
hem de programlar daha modüler halde yazılmış olur.
227227

228228
Ayrıca, genel değişkenlerin kullanılması **kötü bir uygulamadır**. Genel

doc/tr/function/this.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ Burada `this` yine *global* nesneye işaret eder.
1919

2020
> **ES5 Notu:** Mutlak modda bu davranış **kaldırılmıştır**. Bu durumda `this`
2121
> kelimesinin değeri `undefined` olacaktır.
22-
Here `this` will again refer to the *global* object.
2322
2423
### Bir metod çağırma
2524

@@ -49,7 +48,7 @@ fonksiyonun içinde `this` 'in değeri ilk argümanın değeri olarak **atanır*
4948
Sonuç olarak, yukarıdaki örnekte *metod çağırma* durumu geçerli **olmayacak**,
5049
bunun yerine `foo` fonksiyonu içinde `this` 'in değeri `bar` olacaktır.
5150

52-
> **Not:** `this` kelimesi bir `Object` değişmezi içinde nesnenin kendisine
51+
> **Not:** `this` kelimesi bir `Object` sabiti içinde nesnenin kendisine
5352
> işaret etmek için **kullanılamaz**. Yani `var obj = {me: this}` gibi bir
5453
> ifadede `me`, `obj` nesnesine işaret **etmeyecektir**, `this` sadece yukarıda
5554
> açıklanan beş durumdan biri ile kullanılabilir.
@@ -83,7 +82,7 @@ değişken oluşturmaktır.
8382
}
8483

8584
`that` kelimesinin dilde özel bir anlamı yoktur, ama sıklıkla dış kapsamdaki
86-
`this` 'e işaret etmek için kullanılır. Bu yöntem [closure](#function.closures)
85+
`this` 'e işaret etmek için kullanılır. Bu yöntem [`closure`](#function.closures)
8786
kavramı ile birlikte kullanıldığında `this` değerini program içinde taşımaya da
8887
yarar.
8988

doc/tr/intro/authors.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
## Yazarlar
22

3-
Bu rehber, hoş birer Stack Overflow kullanıcısı olan [Ivo Wetzel][1] (Yazım) ve
4-
[Zhang Yi Jiang][2] (Tasarım) tarafından hazırlanmıştır.
3+
Bu rehber, sevimli birer Stack Overflow kullanıcısı olan [Ivo Wetzel][1] (Yazım)
4+
ve [Zhang Yi Jiang][2] (Tasarım) tarafından hazırlanmıştır.
55

66
[1]: http://stackoverflow.com/users/170224/ivo-wetzel
77
[2]: http://stackoverflow.com/users/313758/yi-jiang

doc/tr/intro/contributors.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
## Katkıda bulunanlar
1+
## Katkıda Bulunanlar
22

33
- [Caio Romão][1] (Yazım düzeltmeleri)
44
- [Andreas Blixt][2] (Dil düzeltmeleri)

doc/tr/intro/index.md

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
## Giriş
22

3-
**JavaScript Garden** JavaScript programlama dilinin acayiplik üzerine derlenmiş
4-
dökümanlardır. Henüz ustalaşmamış JavaScript programcılarının sıkça yaptığı
5-
yanlışlar, dile has ince hatalar ve performans sorunlarına karşı tavsiyeler
6-
içerir.
7-
8-
JavaScript Garden'ın amacı JavaScript öğretmek **değildir**. Bu rehberde
9-
anlatılan konuları anlamak için JavaScript dilini önceden biliyor olmak şiddetle
10-
tavsiye olunur. Eğer JavaScript dilinin temellerini öğrenmek istiyorsanız,
11-
lütfen Mozilla Programcı Ağı'nda bulunan mükemmel [rehbere][1] başvurun.
3+
**JavaScript Garden** JavaScript programlama dilinin acayiplikleri üzerine
4+
derlenmiş bir döküman koleksiyonudur. Henüz ustalaşmamış JavaScript
5+
programcılarının sıkça yaptığı yanlışlar, dile has ince hatalar ve performans
6+
sorunlarına karşı tavsiyeler içerir.
7+
8+
JavaScript Garden'ın amacı size JavaScript öğretmek **değildir**. Bu rehberde
9+
anlatılan konuları anlamak için JavaScript dilini önceden biliyor olmanız
10+
şiddetle tavsiye edilir. Eğer JavaScript dilinin temellerini öğrenmek
11+
istiyorsanız, lütfen Mozilla Programcı Ağı'nda bulunan mükemmel [rehbere][1]
12+
başvurun.
1213

1314
[1]: https://developer.mozilla.org/en/JavaScript/Guide
1415

doc/tr/object/general.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ JavaScript nesneleri aynı zamanda bir [*Hashmap*][1] olarak da kullanılabilir,
3030
nesneler temelde isimli özellikler ve bunlara karşılık gelen değerlerden
3131
ibarettir.
3232

33-
Nesne değişmezi (`{}` notasyonu) ile düz bir nesne yaratmak mümkündür. Bu yeni
33+
Nesne sabiti (`{}` notasyonu) ile düz bir nesne yaratmak mümkündür. Bu yeni
3434
nesne [kalıtım](#object.prototype) ile `Object.prototype` 'dan türüyecektir ve
3535
hiçbir [baz özelliğe](#object.hasownproperty) sahip olmayacaktır.
3636

@@ -80,18 +80,18 @@ kullanmaktır; özelliğe `undefined` veya `null` değerlerini atamak **sadece**
8080
}
8181

8282
Yukarıdaki örnek sonuç olarak hem `bar undefined` hem de `foo null` yazacaktır.
83-
Sadece `baz` özelliği kaldırılmışi olacak ve çıktıda görünmeyecektir.
83+
Sadece `baz` özelliği kaldırılmış olacak ve çıktıda görünmeyecektir.
8484

8585
### Anahtar notasyonu
8686

8787
var test = {
88-
'case': 'bir anahtar kelime olduğu için katar notasyonu ile girildi',
89-
delete: 'aynı şekilde katar notasyonu gerekiyordu' // SyntaxError hatası verir
88+
'case': 'anahtar kelime olduğu için katar olarak girildi',
89+
delete: 'yine bir anahtar kelime' // SyntaxError hatası
9090
};
9191

9292
Nesne özellikleri düz karakterler olarak da katar notasyonu ile de
93-
tanımlanabilir. Fakat JavaScript çzöümleyicisinin bir başka tasarım hatası
94-
yüzünden, yukarıdaki örnek ECMAScript 5 öncesinde bir `SyntaxError` hatasına
93+
tanımlanabilir. Fakat JavaScript çözümleyicisinin bir başka tasarım hatası
94+
yüzünden, yukarıdaki örnek ECMAScript 5 öncesinde bir `SyntaxError` hatası
9595
verecektir.
9696

9797
Bu hata `delete` 'in bir *anahtar kelime* olmasından kaynaklanır, bu nedenle

doc/tr/object/hasownproperty.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ doğru sonuç alabilmek için `hasOwnProperty `*haricen* kullanılmalıdır.
4242

4343
foo.hasOwnProperty('bar'); // her zaman false verir
4444

45-
// hasOwnProperty haricen kullanıldığında 'this' foo olarak atanır
45+
// hasOwnProperty haricen kullanıldığında 'this' foo olur
4646
{}.hasOwnProperty.call(foo, 'bar'); // true
4747

4848
### Sonuç

doc/tr/object/prototype.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,15 +56,15 @@ nesneyi kullanmasıdır; bu nedenle, tüm `Bar` nesneleri **aynı** `value`
5656
> **Not:** `Bar.prototype = Foo` gibi bir ifade **kullanmayın**, çünkü `Foo`
5757
> 'nun prototipine değil fonksiyon nesnesine işaret edecektir. Yani
5858
> prototip zinciri `Foo.prototype` değil `Function.prototype` üzerinden
59-
> gidecektir; ve bu yüzden, `method` prototip zincirinden bulunmayacaktır.
59+
> gidecektir; ve bu yüzden, `method` prototip zincirinde bulunmayacaktır.
6060
6161
### Özelliklere bulmak
6262

6363
Bir nesnenin özelliklerine erişildiğinde, JavaScript, istenen isimdeki özelliği
6464
bulana kadar prototip zincirinde **yukarı** doğru dolaşır.
6565

6666
Zincirin en üstüne ulaştığında (yani `Object.protype`) ve hala istenen özelliği
67-
bulamamışsa sonuç olarak [undefined](#core.undefined) verecektir.
67+
bulamamışsa sonuç olarak [`undefined`](#core.undefined) verecektir.
6868

6969
### prototype özelliği
7070

@@ -93,7 +93,7 @@ yapıldığında da prototip zinciri üzerindeki **tüm** özelliklere bakılaca
9393
Sıklıkla yapılan bir hata `Object.protype` 'ı veya diğer baz prototipleri
9494
genişletmektir.
9595

96-
Bu tekniğe [monkey patching][1] denir ve *kapsüllemeyi* bozar. Bu teknik
96+
Bu tekniğe [*monkey patching*][1] denir ve *kapsüllemeyi* bozar. Bu teknik
9797
[Prototype][2] gibi bazı popüler sistemlerde kullanılsa bile, temel nesne
9898
türlerine *standart olmayan* özellikler eklenmesinin geçerli iyi bir nedeni
9999
yoktur.

0 commit comments

Comments
 (0)