Java Programcıları İçin İpuçları

☁️ Ümit Eroğlu 🌍🛰
4 min readMay 12, 2022

--

https://unsplash.com/photos/BMpBW2476wQ

1 — İhtiyacınız olan tek şey Java.
2 — Onaylama testi. (Approval Testing)
3 — Konteyner ortamınıza ve onun çevresine dikkat edin.
4 — Behavior “Kolay”, State “Zor”dur.
5 — Benchmarking zordur. JMH yardım eder. (Java Microbenchmark Harness)
6 — Codifying’in faydaları ve mimari kaliteyi değerlendirme.
7 — Problemleri ve görevleri küçük parçalara bölün.
8 — Javadoc’u AsciiDoc’a ekleyin.
9 — Farklı takımlar oluşturun.
10 — Build’in yavaş ya da güvenilmez olması gerekmez.
11 — “Ama benim makinemde çalışıyor!”
12 — Şişman JAR’lara karşı bir senaryo. (Java ARchive File)
13 — Kod Restore Edici. (Restorer)
14 — JVM’de (Java Virtual Machine) Concurrency (Eş zamanlılık/Aynı anda)
15 — CountDownLatch — Dost mu? Düşman mı?
16 — Dekleratif ifade, paralelizme giden bir yoldur. (Declarative Expressions)
17 — Daha iyi yazılımı, daha hızlı şekilde sağlayın.
18 — Ne zamanı olduğunu biliyor musunuz?
19 — Araçlarınızı (IDE) saklamayın. (Don’t hIDE your tools)
20 — Değişkenlerinizi çeşitlendirmeyin. (Don’t vary your variables)
21 — SQL tarzı düşünmeyi benimseyin.
22 — Java komponentleri arasındaki Event’ler.
23 — Feedback döngüleri. (Feedback Loops)
24 — Tüm Engine’leri ateşlemek.
25 — Sıkıcı standartları takip edin.
26 — Sık yayına çıkmak, (Release) riskleri azaltır.
27 — Bulmacalardan ürünlere doğru. (From Puzzles to Products)
28 — “Full Stack Geliştirme” bir anlayıştır.
29 — Garbage Collection arkadaşınızdır.
30 — Null’den nasıl kaçınmalı?
31 — Hey Fred, Bana HashMap’i uzatır mısın?
32 — Adlandırmada daha iyi hale gelin.
33 — JVM’yi nasıl bozabilirsiniz?
34 — Sürekli dağıtım ile tekrarlanabilirlik ve denetlenebilirliği geliştirmek.
35 — Programlama dili savaşlarında, Java kendi yerini tutar.
36 — Inline tarzı düşünme.
37 — Kotlin ile Interop. (Beraber çalışma)
38 — Tamamlandı ama…
39 — Java Sertifikasyonları: Teknolojideki bir mihenk taşı.
40 — Java 90'ların çocuğudur.
41 — JVM Performans Perspektifinden, Java Programlama.
42 — Java, eğlenceli hissetirmelidir.
43 — Javanın konuşulmayan Tipleri (Types)
44 — JVM, Multi-paradigm (yaklaşımlı) bir platformdur: Bunu programlamanızı geliştirmek için kullanın.
45 — Parmaklarınızı nabzın üstünde tutun.
46 — Açıklama metni (Comments) çeşitleri.
47 — flatMap’inizi iyi bilin.
48 — Koleksiyonlarınızı iyi bilin. (Collections)
49 — Kotlin bir şeydir. (Kotlin Is a Thing)
50 — Java Idiom’larını öğrenin ve onları beyninizde “Cache” edin.
51 — Öğrenmek için Kata ve Kata için öğrenme.
52 — Legacy kodu sevmeyi öğrenin.
53 — Yeni Java özelliklerini kullanmayı öğrenin.
54 — Bilişsel yükü (Cognitive Load) azaltmak için IDE’nizi iyi öğrenin.
55 — Haydi bir kontrat yapalım: Java API tasarlama sanatı.
56 — Kodu basit ve okunabilir hale getirin.
57 — Java’yı daha ritimli (Groovier) hala getirin.
58 — Minimal Constructor’lar.
59 — Tarihi isimlendirin. (Name the date)
60 — Endüstriyel güçteki teknolojilerin gerekliliği.
61 — Sadece değişen parçaları inşa edin ve geri kalanı tekrar kullanın.
62 — Açık kaynak projeleri sihir değildir.
63 — Opsiyonel sözcüğü, kuralları çiğneyen (lawbreaking) ama iyi bir tipte bir organizmadır. (Monad)
64 — Varsayılan Erişim Düzenleyicisi (Default Acess Modifier) ile özelliğe göre paket. (Package-by-Feature)
65 — Production, (Canlı) dünyadaki en mutlu yerdir.
66 — GUT’lar ile programlayın.
67 — Open JDK’yı (Java Development Kit) günlük olarak okuyun.
68 — Gerçekten makinenin içine bakmak. (Looking Under the Hood)
69 — Java’nın yeniden doğuşu.
70 — Clojure ile JVM’yi tekrar keşfedin.
71 — Boolean değerleri, Enümerasyonlara (enums) refaktör edin.
72 — Hızlı okumaya göre refaktör etme. (Yeniden Düzenleme)
73 — Basit değer objeleri. (Simple Value Objects)
74 — Modül deklerasyonlarınıza dikkat edin.
75 — Dependency’lere iyi bakın.
76 — Sorunlar ayrımını (Separation of Concerns) ciddiye alın.
77 — Teknik mülakat yapmak, geliştirmeye değer bir yetenektir.
78 — Test-Odaklı Geliştirme. (Test Driven Development)
79 —” bin/” Dizininizde harika araçlar bulunur.
80 — Java Sandbox’ının dışında düşünün.
81 — Coroutine’leri düşünmek. (Subroutines)
82 — İş parçacıkları (Threads) altyapıdır. Onlara yaraşır şekilde davranın.
83 — Gerçekten, ama gerçekten iyi geliştiricilerin üç özelliği.
84 — Mikroservis mimarisindeki değiş-tokuşlar. (Trade-offs)
85 — Exception’ları kaldırın.
86 — Konteyner kullanarak, entegrasyon testinin gizli potansiyelini keşfetmek.
87 — Fuzz Testinin mantıksız etkinliği. (Unreasonable Effectiveness)
88 — Birim (Unit) testlerinizi geliştirmek için “Coverage” kullanın.
89 — Özel kimlik açıklamalarını özgürce kullanın. (Custom Identity Annotations)
90 — Daha iyi yazılımı daha hızlı hale getirmek için testleri kullanın.
91 — Test kodunda Obje-Yönelimli Prensiplerini kullanmak.
92 — Kariyerinizi geliştirmek için toplulukların gücünü kullanmak.
93 — JCP Programı nedir ve nasıl katılabilirsiniz? (Java Community Process)
94 — Neden sertifikalara değer vermiyorum?
95 — Tek cümlelik dokümantasyon açıklamaları yazın.
96 — “Okunablir Kod” yazın.
97 — “Genç”, “Yaşlı” ve “Garbage”.

Kaynak:

Amazon:

Diğer yazılarıma ulaşmak için:

--

--

☁️ Ümit Eroğlu 🌍🛰
☁️ Ümit Eroğlu 🌍🛰

Written by ☁️ Ümit Eroğlu 🌍🛰

Software, Cloud, DevOps, IoT, GIS, Remote Sensing.

No responses yet