Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
clean-code-javascript-tr
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
Ömer SAVAŞ
clean-code-javascript-tr
Commits
39ac87cf
Kaydet (Commit)
39ac87cf
authored
Ock 19, 2019
tarafından
Ali GOREN
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
Kodlar Türkçeleştirildi
üst
8f7b2c53
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
57 additions
and
59 deletions
+57
-59
README.md
README.md
+57
-59
No files found.
README.md
Dosyayı görüntüle @
39ac87cf
...
...
@@ -783,27 +783,26 @@ class Cessna extends Airplane {
```
**[⬆ en başa dön](#içindekiler)**
### Avoid type-checking (part 1)
JavaScript is untyped, which means your functions can take any type of argument.
Sometimes you are bitten by this freedom and it becomes tempting to do
type-checking in your functions. There are many ways to avoid having to do this.
The first thing to consider is consistent APIs.
### Tip Kontrolünden Kaçının (Bölüm 1)
JavaScript tip güvensiz bir dildir, yani fonksiyonlarınız herhangi bir tipte argüman alabilir.
Bazen bu özgürlük can yakıcı olabiliyor haliyle fonksiyonlarınızda tip kontrolü yapmak cazip hale gelebiliyor. Bundan kaçınmanın birçok yolu var.
Dikkate alınması gereken ilk şey tutarlı API'lar yazmanız.
**Kötü:**
```
javascript
function
travelToTexas
(
vehicle
)
{
if
(
vehicle
instanceof
Bicycle
)
{
vehicle
.
pedal
(
this
.
currentLocation
,
new
Location
(
'texas
'
));
}
else
if
(
vehicle
instanceof
Car
)
{
vehicle
.
drive
(
this
.
currentLocation
,
new
Location
(
'texas
'
));
function
nigdeyeZiyaret
(
arac
)
{
if
(
arac
instanceof
Bisiklet
)
{
arac
.
pedaliCevir
(
this
.
mevcutLokasyon
,
new
Lokasyon
(
'nigde
'
));
}
else
if
(
arac
instanceof
Araba
)
{
arac
.
sur
(
this
.
mevcutLokasyon
,
new
Lokasyon
(
'nigde
'
));
}
}
```
**İyi:**
```
javascript
function
travelToTexas
(
vehicle
)
{
vehicle
.
move
(
this
.
currentLocation
,
new
Location
(
'texas
'
));
function
nigdeyeZiyaret
(
arac
)
{
arac
.
hareketEt
(
this
.
mevcutLokasyon
,
new
Lokasyon
(
'nigde
'
));
}
```
**[⬆ en başa dön](#içindekiler)**
...
...
@@ -864,34 +863,33 @@ for (let i = 0; i < list.length; i++) {
```
**[⬆ en başa dön](#içindekiler)**
### Remove dead code
Dead code is just as bad as duplicate code. There's no reason to keep it in
your codebase. If it's not being called, get rid of it! It will still be safe
in your version history if you still need it.
### Ölü Kodları Silin
Ölü kod da tekrarlı kodlar kadar kötüdür. Kodlarınızda ölü kod saklamanız için herhangi bir neden yoktur.
Eğer herhangi bir yerde çağrılmıyorlarsa onlardan kurtulun. İhtiyacınız olduğunda, versiyon kontrol sisteminde bulabilirsiniz.
**Kötü:**
```
javascript
function
oldRequestModule
(
url
)
{
function
eskiHttpRequestModulu
(
url
)
{
// ...
}
function
newRequestModule
(
url
)
{
function
yeniHttpRequestModulu
(
url
)
{
// ...
}
const
req
=
newRequestModule
;
inventoryTracker
(
'apples'
,
req
,
'www.inventory-awesome.io
'
);
const
istek
=
yeniHttpRequestModulu
;
envanterTakibi
(
'elmalar'
,
istek
,
'www.envantertakibi.com
'
);
```
**İyi:**
```
javascript
function
newRequestModule
(
url
)
{
function
yeniHttpRequestModulu
(
url
)
{
// ...
}
const
req
=
newRequestModule
;
inventoryTracker
(
'apples'
,
req
,
'www.inventory-awesome.io
'
);
const
istek
=
yeniHttpRequestModulu
;
envanterTakibi
(
'elmalar'
,
istek
,
'www.envantertakibi.com
'
);
```
**[⬆ en başa dön](#içindekiler)**
...
...
@@ -1924,80 +1922,80 @@ yukarıdan aşağıya doğru okuruz. Bu nedenle, kodunuzun bu yolda okunabilmesi
**Kötü:**
```
javascript
class
Performan
ceReview
{
constructor
(
employee
)
{
this
.
employee
=
employee
;
class
Performan
sDegerlendirmesi
{
constructor
(
calisan
)
{
this
.
calisan
=
calisan
;
}
lookupPeers
()
{
return
db
.
lookup
(
this
.
employee
,
'peers
'
);
benzerleriniGetir
()
{
return
db
.
lookup
(
this
.
calisan
,
'benzer
'
);
}
lookupManage
r
()
{
return
db
.
lookup
(
this
.
employee
,
'manage
r'
);
mudurleriGeti
r
()
{
return
db
.
lookup
(
this
.
calisan
,
'mudu
r'
);
}
getPeerReviews
()
{
const
peers
=
this
.
lookupPeers
();
benzerDegerlendirmeler
()
{
const
benzerler
=
this
.
benzerleriniGetir
();
// ...
}
perf
Review
()
{
this
.
getPeerReviews
();
this
.
getManagerReview
();
this
.
getSelfReview
();
perf
ormansDegerlendirmesi
()
{
this
.
benzerDegerlendirmeler
();
this
.
mudurDegerlendirmeleri
();
this
.
kendiDegerlendirmeleriGetir
();
}
getManagerReview
()
{
const
m
anager
=
this
.
lookupManage
r
();
mudurDegerlendirmeleri
()
{
const
m
udur
=
this
.
mudurleriGeti
r
();
}
getSelfReview
()
{
kendiDegerlendirmeleriGetir
()
{
// ...
}
}
const
review
=
new
PerformanceReview
(
employee
);
review
.
perfReview
();
const
deegrlendirme
=
new
PerformansDegerlendirmesi
(
calisan
);
deegrlendirme
.
performansDegerlendirmesi
();
```
**İyi:**
```
javascript
class
Performan
ceReview
{
constructor
(
employee
)
{
this
.
employee
=
employee
;
class
Performan
sDegerlendirmesi
{
constructor
(
calisan
)
{
this
.
calisan
=
calisan
;
}
perf
Review
()
{
this
.
getPeerReviews
();
this
.
getManagerReview
();
this
.
getSelfReview
();
perf
ormansDegerlendirmesi
()
{
this
.
benzerDegerlendirmeler
();
this
.
mudurDegerlendirmeleri
();
this
.
kendiDegerlendirmeleriGetir
();
}
getPeerReviews
()
{
const
peers
=
this
.
lookupPeers
();
benzerDegerlendirmeler
()
{
const
benzer
=
this
.
benzerleriniGetir
();
// ...
}
lookupPeers
()
{
return
db
.
lookup
(
this
.
employee
,
'peers
'
);
benzerleriniGetir
()
{
return
db
.
lookup
(
this
.
calisan
,
'benzer
'
);
}
getManagerReview
()
{
const
m
anager
=
this
.
lookupManage
r
();
mudurDegerlendirmeleri
()
{
const
m
udur
=
this
.
mudurleriGeti
r
();
}
lookupManage
r
()
{
return
db
.
lookup
(
this
.
employee
,
'manage
r'
);
mudurleriGeti
r
()
{
return
db
.
lookup
(
this
.
calisan
,
'mudu
r'
);
}
getSelfReview
()
{
kendiDegerlendirmeleriGetir
()
{
// ...
}
}
const
review
=
new
PerformanceReview
(
employee
);
review
.
perfReview
();
const
degerlendirme
=
new
PerformansDegerlendirmesi
(
calisan
);
degerlendirme
.
performansDegerlendirmesi
();
```
**[⬆ en başa dön](#içindekiler)**
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment