Efektywny Kotlin. Najlepsze praktyki - Helion
Tytuł oryginału: Effective Kotlin: Best Practices
TÅ‚umaczenie: Tomasz Walczak
ISBN: 978-83-283-6799-9
stron: 344, Format: 168x237, okładka: miękka
Data wydania: 2020-11-03
Księgarnia: Helion
Cena książki: 44,85 zł (poprzednio: 69,00 zł)
Oszczędzasz: 35% (-24,15 zł)
Projektanci Kotlina postawili na pragmatyzm. Oznacza to, że do dziÅ› wszystkie decyzje zwiÄ…zane z rozwojem jÄ™zyka sÄ… podejmowane z uwzglÄ™dnieniem potrzeb biznesowych: produktywnoÅ›ci, skalowalnoÅ›ci, prostej konserwacji, niezawodnoÅ›ci i wydajnoÅ›ci. Od poczÄ…tku szczególnÄ… uwagÄ™ zwraca siÄ™ również na bezpieczeÅ„stwo, czytelność, wielokrotne używanie kodu, Å‚atwość użycia narzÄ™dzi i możliwoÅ›ci wspóÅ‚dziaÅ‚ania z innymi jÄ™zykami. Bardzo ważna okazaÅ‚a siÄ™ też wydajność zarówno dziaÅ‚ania kodu, jak i pracy programisty. Konsekwentne przestrzeganie tych zaÅ‚ożeÅ„ daÅ‚o znakomite efekty. DziÅ› Kotlin jest Å›wietnym wyborem dla programisty - pod jednym warunkiem: że zna specyfikÄ™ jÄ™zyka i korzysta z niego we wÅ‚aÅ›ciwy sposób.
Ta książka jest przeznaczona dla doÅ›wiadczonych programistów Kotlina, którzy chcÄ… opanować ten jÄ™zyk na wysokim poziomie. WyjaÅ›niono w niej sposoby korzystania ze szczególnych funkcji Kotlina, aby możliwe byÅ‚o uzyskanie bezpiecznego, czytelnego, skalowalnego i wydajnego kodu. ZnalazÅ‚y siÄ™ w niej informacje o najlepszych praktykach pisania kodu w Kotlinie ze szczególnym uwzglÄ™dnieniem praktyk wysokiego poziomu, zalecanych przez autorytety i twórców jÄ™zyka. WyczerpujÄ…co omówiono też kwestie zwiÄ…zane z wÅ‚aÅ›ciwoÅ›ciami i typami specyficznymi dla platformy oraz tworzenie jÄ™zyków dziedzinowych, a także klasy i funkcje wewnÄ…trzwierszowe. Jest to praktyczny przewodnik zawierajÄ…cy zbiór wytycznych, których uwzglÄ™dnienie pozwoli pisać dobry i idiomatyczny kod w Kotlinie.
W tej książce między innymi:
- reguły pisania kodu o wysokiej jakości
- programowanie dla różnych platform oraz aplikacje mobilne
- wzorce i konwencje programistyczne
- konwencje i kontrakty dla programistów wspólnie tworzÄ…cych projekt
- zapewnianie wysokiej wydajności aplikacji i bibliotek
Kotlin: wydajność, bezpieczeństwo, radość z programowania!
Osoby które kupowały "Efektywny Kotlin. Najlepsze praktyki", wybierały także:
- Learning Java Lambdas 373,75 zł, (29,90 zł -92%)
- The DevOps 2.1 Toolkit: Docker Swarm 332,22 zł, (29,90 zł -91%)
- Securing Network Infrastructure 199,33 zł, (29,90 zł -85%)
- Mastering Linux Security and Hardening 186,88 zł, (29,90 zł -84%)
- Blockchain Development with Hyperledger 175,88 zł, (29,90 zł -83%)
Spis treści
Efektywny Kotlin. Najlepsze praktyki -- 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