EFEKTYWNY KOTLIN

62.10

Na stanie

SPIS TREŚCI

Wprowadzenie – bądź pragmatyczny 7

CZĘŚĆ I. DOBRY KOD 17

Rozdział 1. Bezpieczeństwo 19

  • Temat 1. Ograniczaj modyfikowalność 20
  • Temat 2. Minimalizuj zasięg zmiennych 35
  • Temat 3. Jak najszybciej wyeliminuj typy z zewnętrznych platform 40
  • Temat 4. Nie udostępniaj wywnioskowanych typów 46
  • Temat 5. Określaj oczekiwania co do argumentów i stanu 48
  • Temat 6. Preferuj standardowe błędy zamiast niestandardowych 56
  • Temat 7. Preferuj wyniki null lub Failure, gdy możliwy jest brak wyników 58
  • Temat 8. Dbaj o odpowiednią obsługę wartości null 61
  • Temat 9. Zamykaj zasoby za pomocą funkcji use 70
  • Temat 10. Pisz testy jednostkowe 72

Rozdział 2. Czytelność 75

  • Temat 11. Projektuj z myślą o czytelności 77
  • Temat 12. Znaczenie operatora powinno być zgodne z jego nazwą 82
  • Temat 13. Unikaj zwracania wartości Unit? lub operowania nimi 86
  • Temat 14. Podawaj typ zmiennej, gdy nie jest on oczywisty 88
  • Temat 15. Rozważ bezpośrednie podawanie odbiorców 89
  • Temat 16. Właściwości powinny reprezentować stan, a nie działanie 95
  • Temat 17. Rozważ stosowanie nazw dla argumentów 99
  • Temat 18. Przestrzegaj konwencji programistycznych 104

CZĘŚĆ II. PROJEKTOWANIE KODU 107

Rozdział 3. Wielokrotne używanie kodu 109

  • Temat 19. Nie powtarzaj wiedzy 111
  • Temat 20. Nie powtarzaj wspólnych algorytmów 118
  • Temat 21. Stosuj delegaty właściwości do wyodrębniania powtarzających się wzorców dotyczących właściwości 122
  • Temat 22. Używaj typów generycznych, gdy implementujesz powtarzające się algorytmy 127
  • Temat 23. Unikaj zakrywania parametrów określających typ 130
  • Temat 24. Rozważ wariancję w typach generycznych 132
  • Temat 25. Wielokrotne używanie kodu na różnych platformach dzięki wyodrębnianiu wspólnych modułów 142

Rozdział 4. Projektowanie abstrakcji 147

  • Temat 26. Każdą funkcję pisz na jednym poziomie abstrakcji 151
  • Temat 27. Korzystaj z abstrakcji do ochrony kodu przed zmianami 157
  • Temat 28. Określaj stabilność API 169
  • Temat 29. Rozważ tworzenie nakładek na zewnętrzne API 173
  • Temat 30. Minimalizuj widoczność elementów 174
  • Temat 31. Definiuj kontrakty w dokumentacji 178
  • Temat 32. Przestrzegaj kontraktów abstrakcji 188

Rozdział 5. Tworzenie obiektów 191

  • Temat 33. Rozważ stosowanie funkcji fabrykujących zamiast konstruktorów 192
  • Temat 34. Rozważ tworzenie konstruktorów podstawowych z nazwanymi argumentami opcjonalnymi 204
  • Temat 35. Rozważ definiowanie języków dziedzinowych do tworzenia złożonych obiektów 212

Rozdział 6. Projektowanie klas 221

  • Temat 36. Preferuj kompozycję zamiast dziedziczenia 222
  • Temat 37. Stosuj modyfikator data, aby reprezentować zestaw danych 233
  • Temat 38. Do przekazywania operacji i akcji używaj typów funkcyjnych zamiast interfejsów 239
  • Temat 39. Preferuj hierarchie klas zamiast klas z trybami 242
  • Temat 40. Przestrzegaj kontraktu metody equals 247
  • Temat 41. Przestrzegaj kontraktu metody hashCode 258
  • Temat 42. Przestrzegaj kontraktu metody compareTo 265
  • Temat 43. Rozważ przeniesienie mniej istotnych fragmentów API do rozszerzeń 268
  • Temat 44. Unikaj tworzenia rozszerzeń jako składowych 272

CZĘŚĆ III. WYDAJNOŚĆ 275

Rozdział 7. Dbanie o niskie koszty 277

  • Temat 45. Unikaj niepotrzebnego tworzenia obiektów 278
  • Temat 46. Stosuj modyfikator inline dla funkcji z parametrami o typach funkcyjnych 289
  • Temat 47. Rozważ stosowanie klas z modyfikatorem inline 301
  • Temat 48. Usuwaj referencje do nieużywanych obiektów 308

Rozdział 8. Wydajne przetwarzanie kolekcji 315

  • Temat 49. Preferuj sekwencje dla dużych kolekcji z więcej niż jednym etapem przetwarzania 318
  • Temat 50. Ograniczaj liczbę operacji 331
  • Temat 51. Rozważ stosowanie tablic z elementami typu podstawowego w kodzie krytycznym ze względu na wydajność 333
  • Temat 52. Rozważ używanie modyfikowalnych kolekcji 336

Słowniczek 339

Autor

ISBN

978-83-283-6799-9

Liczba stron

Rok wydania

Wydawca

Opinie

Na razie nie ma opinii o produkcie.

Napisz pierwszą opinię o „EFEKTYWNY KOTLIN”

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *