reklama - zainteresowany?

Java. Efektywne programowanie. Wydanie II - Helion

Java. Efektywne programowanie. Wydanie II
Autor: Joshua Bloch
Tytuł oryginału: Effective Java (2nd Edition)
ISBN: 978-83-283-3311-6
stron: 352, Format: 158x235, okładka: miękka
Data wydania: 2009-03-24
Księgarnia: Helion

Cena książki: 67,00 zł

Dodaj do koszyka Java. Efektywne programowanie. Wydanie II

Tagi: Java - Programowanie

Poznaj specyfikę języka Java i zostań mistrzem programowania

  • Jak korzystać z bibliotek języka Java?
  • Jak pisać funkcjonalny i klarowny kod?
  • Jak stworzyć profesjonalny i efektowny program?

Język Java jest językiem obiektowym z dziedziczeniem jednobazowym. Wewnątrz każdej metody korzysta on ze zorientowanego na instrukcje stylu kodowania. Aby dobrze poznać jakikolwiek język, należy nauczyć się posługiwać jego regułami, zasadami i składnią -- podobnie jest z językiem programowania. Jeśli chcesz zyskać możliwość efektywnego programowania w języku Java, powinieneś poznać struktury danych, operacje i udogodnienia, oferowane przez biblioteki standardowe, a także często stosowane i efektywne sposoby tworzenia kodu. Całą potrzebną Ci wiedzę znajdziesz właśnie w tym podręczniku.

W książce "Java. Efektywne programowanie" w sposób zrozumiały i klarowny przedstawiono zasady opisujące mechanizmy używane w najlepszych technikach programowania. Ten podręcznik podpowie Ci, jak najbardziej racjonalnie korzystać z języka Java oraz jego podstawowych bibliotek. Dowiesz się, jak stosować wyjątki przechwytywalne i wyjątki czasu wykonania, poznasz także zalety stosowania statycznych klas składowych. Opanujesz metody sprawdzania poprawności parametrów i projektowania sygnatur oraz wszelkie instrukcje, które pozwolą Ci na wydajne i profesjonalne programowanie.

  • Tworzenie i usuwanie obiektów
  • Klasy i interfejsy
  • Zapewnianie niezmienności obiektu
  • Projektowanie i dokumentowanie klas przeznaczonych do dziedziczenia
  • Zalety stosowania statycznych klas składowych
  • Typy ogólne
  • Typy wyliczeniowe i adnotacje
  • Metody
  • Programowanie
  • Wykorzystanie ogólnie przyjętych konwencji nazewnictwa
  • Wyjątki
  • Współbieżność i serializacja
  • Dokumentowanie bezpieczeństwa dla wątków

Nie wystarczy samo poznanie języka Java. Trzeba wiedzieć, jak z niego efektywnie korzystać!

Dodaj do koszyka Java. Efektywne programowanie. Wydanie II

Spis treści

Java. Efektywne programowanie. Wydanie II -- spis treści

  • Opinie o pierwszym wydaniu
  • Słowo wstępne
  • Przedmowa
    • Przedmowa do drugiego wydania
    • Przedmowa do pierwszego wydania
  • Podziękowania
    • Podziękowania do drugiego wydania
    • Podziękowania do pierwszego wydania
  • 1 Wprowadzenie
  • 2 Tworzenie i usuwanie obiektów
    • Temat 1. Tworzenie statycznych metod factory zamiast konstruktorów
    • Temat 2. Zastosowanie budowniczego do obsługi wielu parametrów konstruktora
    • Temat 3. Wymuszanie właściwości singleton za pomocą prywatnego konstruktora
    • Temat 4. Wykorzystanie konstruktora prywatnego w celu uniemożliwienia utworzenia obiektu
    • Temat 5. Unikanie powielania obiektów
    • Temat 6. Usuwanie niepotrzebnych referencji do obiektów
    • Temat 7. Unikanie finalizatorów
  • 3 Metody wspólne dla wszystkich obiektów
    • Temat 8. Zachowanie założeń w trakcie przedefiniowywania metody equals
    • Temat 9. Przedefiniowywanie metody hashCode wraz z equals
    • Temat 10. Przedefiniowywanie metody toString
    • Temat 11. Rozsądne przedefiniowywanie metody clone
    • Temat 12. Implementacja interfejsu Comparable
  • 4 Klasy i interfejsy
    • Temat 13. Ograniczanie dostępności klas i ich składników
    • Temat 14. Stosowanie metod akcesorów zamiast pól publicznych w klasach publicznych
    • Temat 15. Zapewnianie niezmienności obiektu
    • Temat 16. Zastępowanie dziedziczenia kompozycją
    • Temat 17. Projektowanie i dokumentowanie klas przeznaczonych do dziedziczenia
    • Temat 18. Stosowanie interfejsów zamiast klas abstrakcyjnych
    • Temat 19. Wykorzystanie interfejsów jedynie do definiowania typów
    • Temat 20. Zastępowanie oznaczania klas hierarchią
    • Temat 21. Zastosowanie obiektów funkcyjnych do reprezentowania strategii
    • Temat 22. Zalety stosowania statycznych klas składowych
  • 5 Typy ogólne
    • Temat 23. Nie korzystaj z typów surowych w nowym kodzie
    • Temat 24. Eliminowanie ostrzeżeń o braku kontroli
    • Temat 25. Korzystanie z list zamiast tablic
    • Temat 26. Stosowanie typów ogólnych
    • Temat 27. Stosowanie metod ogólnych
    • Temat 28. Zastosowanie związanych szablonów do zwiększania elastyczności API
    • Temat 29. Wykorzystanie heterogenicznych kontenerów bezpiecznych dla typów
  • 6 Typy wyliczeniowe i adnotacje
    • Temat 30. Użycie typów wyliczeniowych zamiast stałych int
    • Temat 31. Użycie pól instancyjnych zamiast kolejności
    • Temat 32. Użycie EnumSet zamiast pól bitowych
    • Temat 33. Użycie EnumMap zamiast indeksowania kolejnością
    • Temat 34. Emulowanie rozszerzalnych typów wyliczeniowych za pomocą interfejsów
    • Temat 35. Korzystanie z adnotacji zamiast wzorców nazw
    • Temat 36. Spójne użycie adnotacji Override
    • Temat 37. Użycie interfejsów znacznikowych do definiowania typów
  • 7 Metody
    • Temat 38. Sprawdzanie poprawności parametrów
    • Temat 39. Defensywne kopiowanie
    • Temat 40. Projektowanie sygnatur metod
    • Temat 41. Rozsądne korzystanie z przeciążania
    • Temat 42. Rozsądne korzystanie z metod varargs
    • Temat 43. Zwracanie pustych tablic lub kolekcji zamiast wartości null
    • Temat 44. Tworzenie komentarzy dokumentujących dla wszystkich udostępnianych elementów API
  • 8 Programowanie
    • Temat 45. Ograniczanie zasięgu zmiennych lokalnych
    • Temat 46. Stosowanie pętli for-each zamiast tradycyjnych pętli for
    • Temat 47. Poznanie i wykorzystywanie bibliotek
    • Temat 48. Unikanie typów float i double, gdy potrzebne są dokładne wyniki
    • Temat 49. Stosowanie typów prostych zamiast opakowanych typów prostych
    • Temat 50. Unikanie typu String, gdy istnieją bardziej odpowiednie typy
    • Temat 51. Problemy z wydajnością przy łączeniu ciągów znaków
    • Temat 52. Odwoływanie się do obiektów poprzez interfejsy
    • Temat 53. Stosowanie interfejsów zamiast refleksyjności
    • Temat 54. Rozważne wykorzystywanie metod natywnych
    • Temat 55. Unikanie optymalizacji
    • Temat 56. Wykorzystanie ogólnie przyjętych konwencji nazewnictwa
  • 9 Wyjątki
    • Temat 57. Wykorzystanie wyjątków w sytuacjach nadzwyczajnych
    • Temat 58. Stosowanie wyjątków przechwytywanych i wyjątków czasu wykonania
    • Temat 59. Unikanie niepotrzebnych wyjątków przechwytywanych
    • Temat 60. Wykorzystanie wyjątków standardowych
    • Temat 61. Zgłaszanie wyjątków właściwych dla abstrakcji
    • Temat 62. Dokumentowanie wyjątków zgłaszanych przez metodę
    • Temat 63. Udostępnianie danych o błędzie
    • Temat 64. Zachowanie atomowości w przypadku błędu
    • Temat 65. Nie ignoruj wyjątków
  • 10 Współbieżność
    • Temat 66. Synchronizacja dostępu do wspólnych modyfikowalnych danych
    • Temat 67. Unikanie nadmiarowej synchronizacji
    • Temat 68. Stosowanie wykonawców i zadań zamiast wątków
    • Temat 69. Stosowanie narzędzi współbieżności zamiast wait i notify
    • Temat 70. Dokumentowanie bezpieczeństwa dla wątków
    • Temat 71. Rozsądne korzystanie z późnej inicjalizacji
    • Temat 72. Nie polegaj na harmonogramie wątków
    • Temat 73. Unikanie grup wątków
  • 11 Serializacja
    • Temat 74. Rozsądne implementowanie interfejsu Serializable
    • Temat 75. Wykorzystanie własnej postaci serializowanej
    • Temat 76. Defensywne tworzenie metody readObject
    • Temat 77. Stosowanie typów wyliczeniowych zamiast readResolve do kontroli obiektów
    • Temat 78. Użycie pośrednika serializacji zamiast serializowanych obiektów
  • A Tematy odpowiadające pierwszemu wydaniu
  • B Zasoby

Dodaj do koszyka Java. Efektywne programowanie. Wydanie II

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2025 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.