- Ocena:
- 5.4/6 Opinie: 7
- Stron:
- 304
- Druk:
- oprawa miękka
- Dostępny format:
-
PDF
![Wyłącznie](https://static01.helion.com.pl/ebookpoint/img/img_wylacznie.png)
Opis ebooka: Scala od podszewki
Scala to słowo, które ostatnio nie schodzi z ust programistów Javy. Pod tą nazwą kryje się język łączący światy programowania funkcyjnego i obiektowego. Jego ogromną zaletą jest działanie w oparciu o wirtualną maszynę Javy. Pozwala to między innymi na bezproblemową komunikację i współdzielenie kodu między oboma językami. James Gosling, twórca Javy, zapytany o to, jakiego języka oprogramowania działającego w ten sposób użyłby obecnie (gdyby nie mógł wykorzystać Javy), odparł bez zastanowienia: „Scala!”. To chyba najlepszy dowód na to, że ten język wart jest Twojego czasu!
Dzięki tej książce opanujesz Scalę szybko i bezboleśnie, więc będziesz mógł wykorzystać jej zalety już w najbliższym projekcie. W trakcie lektury poznasz składnię, fundamentalne zasady tworzenia oprogramowania w Scali oraz konwencje kodowania w tym języku. W kolejnych rozdziałach dowiesz się, czym są niejawne widoki, jakie typy danych masz do dyspozycji i jakie są ich ograniczenia. Co jeszcze? Integracja Scali z Javą to niezwykle istotny temat, dający Ci pole do popisu! Ponadto poznasz wzorce stosowane w programowaniu funkcyjnym. Słowo wstępne do tej niezwykłej książki napisał sam Martin Odersky - twórca języka Scala! Niniejsza książka jest najlepszym kompendium wiedzy na temat programowania w tym języku. Musisz ją mieć!
Poznaj:
- konwencje obowiązujące w Scali
- składnię języka
- najlepsze wzorce projektowe stosowane w programowaniu funkcyjnym
- potencjał języka Scala!
Poznaj i wykorzystaj potęgę programowania funkcyjnego!
Scala to język programowania ogólnego przeznaczenia, łączący elementy funkcyjne i obiektowe, działający na maszynie wirtualnej Javy (JVM). Bez problemu znajdziesz książki i strony internetowe oferujące wprowadzenie do języka, trudniej jednak dotrzeć do wartościowych przykładów i opinii doświadczonych praktyków. Te właśnie elementy zawiera ta książka.
Co znajdziesz w środku
- Zwięzły, ekspresywny, czytelny styl kodowania
- Integracja Scali z istniejącymi projektami w języku Java
- API do obsługi kolekcji
- Wykorzystanie aktorów w programowaniu współbieżnym
- Omówienie systemu typów Scali
- Obiektowość Scali: dziedziczenie składowych typu, dziedziczenie wielokrotne, kompozycja
- Pojęcia i wzorce funkcyjne: niemodyfikowalność, funktory aplikowalne i monady
Niewiele tu przyciężkiej teorii. Zamiast niej książka zawiera dziesiątki świeżych, praktycznych przykładów kodowania i dobrych praktyk w Scali. Książka powstała z myślą o czytelnikach, którzy znają już Javę, Scalę albo inny język obiektowy. Josh Suereth pracuje jako programista w firmie Typesafe. Udziela się w pracach nad językiem Scala, jest kierownikiem scala-tools.org
Zaawansowana i przystępnaMartin Odersky,
twórca Scali
Zrozumiesz działanie Scali od samego środkaJohn C. Tyler,
PROS Pricing
Bez wątpienia najlepsze przykłady, jakie widziałem w jakimkolwiek podręczniku programistycznymEric Weinberg,
Wagger Designs
Olśnienie! Wreszcie zrozumiałem, dlaczego Scala zachowuje się właśnie takJohn Griffin,
współautor Hibernate Search in Action
![Rozpoczynamy zaczytane lato - ebooki -50%, książki -40%, audiobooki po 12,90zł](https://static01.helion.com.pl/ebookpoint/img/promocje/bannery/19570/Ebp_rozpoczynamy_zaczytane_l_Sonia_86f79f0d5_1180x419_.png)
Wybrane bestsellery
-
To drugie wydanie przewodnika dla programistów, którzy chcą efektywnie budować atrakcyjne złożone front-endy aplikacji. Uwzględniono tu nowe elementy Reacta 18, w tym hooki, biblioteki do zarządzania stanem, jak również najnowszą wersję języka TypeScript. Dzięki tej książce nauczysz się tworzyć p...
React i TypeScript. Reaktywne tworzenie stron internetowych dla początkujących. Wydanie II React i TypeScript. Reaktywne tworzenie stron internetowych dla początkujących. Wydanie II
(53.40 zł najniższa cena z 30 dni)53.40 zł
89.00 zł(-40%) -
Ta książka pomoże Ci się przygotować do pracy na stanowisku testera w zwinnym zespole programistów. Znajdziesz tu szczegółowe informacje na temat kolejnych etapów testowania, dzięki czemu zrozumiesz, jak w projektach agile te działania są planowane, przeprowadzane i monitorowane. Dowiesz się też,...
Tester samouk w zwinnym zespole. Testowanie agile krok po kroku na podstawie rzeczywistego projektu Tester samouk w zwinnym zespole. Testowanie agile krok po kroku na podstawie rzeczywistego projektu
(35.40 zł najniższa cena z 30 dni)35.40 zł
59.00 zł(-40%) -
Firmy z branży IT prześcigają się w tworzeniu rozwiązań zwiększających wydajność pracy, jak również podnoszących poziom specjalizacji pracowników w określonych dziedzinach. Od kilku już lat pozycja full stack developera, który wykonywał wszystkie prace programistyczne, jest wielką rzadkością. Obe...
Postman i SQL. Kurs video. Metody testowania REST API i przeszukiwania baz danych Postman i SQL. Kurs video. Metody testowania REST API i przeszukiwania baz danych
(71.55 zł najniższa cena z 30 dni)79.49 zł
159.00 zł(-50%) -
Testowanie oprogramowania to jedna z najdynamiczniej rozwijających się dziedzin inżynierii oprogramowania. Zarobki doświadczonych testerów są porównywalne z wynagrodzeniem, jakie otrzymują dobrzy programiści. Aby rozpocząć karierę w tym zawodzie, trzeba się legitymować odpowiednimi umiejętnościam...
Certyfikowany tester ISTQB®. Poziom podstawowy. Wydanie II Certyfikowany tester ISTQB®. Poziom podstawowy. Wydanie II
(65.40 zł najniższa cena z 30 dni)65.40 zł
109.00 zł(-40%) -
To książka przeznaczona dla tych, którzy chcą dogłębnie zrozumieć istotę TDD. Omówiono tu wszystkie aspekty TDD, włączając w to podstawy, dzięki którym średnio zaawansowany programista komfortowo rozpocznie budowę aplikacji zgodnie z tym paradygmatem. Przedstawiono zasady definiowania i testowani...
TDD z wykorzystaniem C# 7. Programowanie sterowane testami TDD z wykorzystaniem C# 7. Programowanie sterowane testami
(34.50 zł najniższa cena z 30 dni)34.50 zł
69.00 zł(-50%) -
Dzięki lekturze tej publikacji przemienisz się ze sprawnego programisty w pewnego siebie inżyniera — stosującego najlepsze praktyki programistyczne, pracującego szybko i solidnie. Autorzy przedstawiają praktyczne problemy i użyteczne rozwiązania, które zaprowadzą Cię na szczyt kariery! Jeśl...(24.50 zł najniższa cena z 30 dni)
24.50 zł
49.00 zł(-50%) -
Spring Boot 3.0 Cookbook demonstrates the latest features of this popular framework. You'll learn how to apply them to overcome challenges when building modern cloud applications.
Spring Boot 3.0 Cookbook. Proven recipes for building modern and robust Java web applications with Spring Boot Spring Boot 3.0 Cookbook. Proven recipes for building modern and robust Java web applications with Spring Boot
(92.88 zł najniższa cena z 30 dni)
Ebooka "Scala od podszewki" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka "Scala od podszewki" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "Scala od podszewki" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły ebooka
- Tytuł oryginału:
- Scala in Depth
- Tłumaczenie:
- Justyna Walkowska
- ISBN Książki drukowanej:
- 978-83-246-5188-7, 9788324651887
- Data wydania książki drukowanej:
- 2013-06-07
- ISBN Ebooka:
- 978-83-246-6062-9, 9788324660629
- Data wydania ebooka:
-
2013-07-02
Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Format:
- 168x237
- Numer z katalogu:
- 13404
- Rozmiar pliku Pdf:
- 4.7MB
- Pobierz przykładowy rozdział PDF
- Przykłady na ftp
Ebook zawiera materiały dodatkowe, które możesz pobrać z serwera FTP - link znajdziesz na stronie redakcyjnej.
- Zgłoś erratę
- Serie wydawnicze: Od podszewki
Spis treści ebooka
- Słowo wstępne (7)
- Przedmowa (9)
- Podziękowania (11)
- O książce (13)
- 1.1. Programowanie funkcyjne i obiektowe w jednym (18)
- 1.1.1. Koncepty funkcyjne (20)
- 1.1.2. Analiza konceptów funkcyjnych w Google Collections (22)
- 1.2. Statyczne typowanie a ekspresywność kodu (23)
- 1.2.1. Zamiana stron (24)
- 1.2.2. Wnioskowanie na temat typów (24)
- 1.2.3. Uproszczona składnia (25)
- 1.2.4. Wartości i konwersje domniemane (26)
- 1.2.5. Słowo kluczowe implicit (27)
- 1.3. Wygodna współpraca z JVM (28)
- 1.3.1. Java w Scali (28)
- 1.3.2. Scala w Javie (29)
- 1.3.3. Zalety JVM (30)
- 1.4. Podsumowanie (31)
- 2.1. Eksperymenty w środowisku REPL (33)
- 2.1.1. Programowanie sterowane eksperymentami (34)
- 2.1.2. Obejście zachłannego parsowania (36)
- 2.1.3. Elementy języka niedostępne w REPL (37)
- 2.2. Myślenie wyrażeniami (38)
- 2.2.1. Unikanie instrukcji return (39)
- 2.2.2. Modyfikowalność (41)
- 2.3. Obiekty niemodyfikowalne (43)
- 2.3.1. Równoważność obiektów (44)
- 2.3.2. Współbieżność (48)
- 2.4. None zamiast null (51)
- 2.4.1. Zaawansowane techniki wykorzystania klasy Option (52)
- 2.5. Równoważność polimorficzna (55)
- 2.5.1. Przykład: biblioteka obsługująca kalendarz (55)
- 2.5.2. Polimorficzna implementacja metody equals (57)
- 2.6. Podsumowanie (59)
- 3.1. Unikanie konwencji pochodzących z innych języków (62)
- 3.1.1. Porażka z blokami kodu (63)
- 3.2. Wiszące operatory i wyrażenia w nawiasach (66)
- 3.3. Znaczące nazwy zmiennych (67)
- 3.3.1. Unikanie w nazwach znaku $ (68)
- 3.3.2. Parametry nazwane i wartości domyślne (71)
- 3.4. Oznaczanie przesłaniania metod (73)
- 3.5. Adnotacje optymalizacyjne (78)
- 3.5.1. Optymalizacja tableswitch (79)
- 3.5.2. Optymalizacja wywołań ogonowych (81)
- 3.6. Podsumowanie (84)
- 4.1. W ciele obiektu lub cechy - tylko kod inicjalizujący (86)
- 4.1.1. Opóźniona inicjalizacja (86)
- 4.1.2. Wielokrotne dziedziczenie (87)
- 4.2. Puste implementacje metod abstrakcyjnych w cechach (89)
- 4.3. Kompozycja może obejmować dziedziczenie (93)
- 4.3.1. Kompozycja i dziedziczenie razem (96)
- 4.3.2. Klasyczne konstruktory... z niespodzianką (97)
- 4.4. Wydzielenie interfejsu abstrakcyjnego do postaci osobnej cechy (99)
- 4.4.1. Interfejsy, z którymi można porozmawiać (101)
- 4.4.2. Nauka płynąca z przeszłości (102)
- 4.5. Określanie typów zwracanych przez publiczne API (103)
- 4.6. Podsumowanie (105)
- 5.1. Słowo kluczowe implicit (108)
- 5.1.1. Identyfikatory (dygresja) (109)
- 5.1.2. Zakres i wiązania (111)
- 5.1.3. Wyszukiwanie wartości domniemanych (115)
- 5.2. Wzmacnianie klas za pomocą domniemanych widoków (119)
- 5.3. Parametry domniemane i domyślne (124)
- 5.4. Ograniczanie zakresu encji domniemanych (130)
- 5.4.1. Przygotowywanie encji domniemanych do zaimportowania (131)
- 5.4.2. Parametry i widoki domniemane bez podatku od importu (133)
- 5.5. Podsumowanie (137)
- 6.1. Typy (140)
- 6.1.1. Typy i ścieżki (141)
- 6.1.2. Słowo kluczowe type (143)
- 6.1.3. Typy strukturalne (144)
- 6.2. Ograniczenia typów (151)
- 6.3. Parametry typu i typy wyższego rzędu (153)
- 6.3.1. Ograniczenia parametrów typu (153)
- 6.3.2. Typy wyższego rzędu (155)
- 6.4. Wariancja (156)
- 6.4.1. Zaawansowane adnotacje wariancji (160)
- 6.5. Typy egzystencjalne (163)
- 6.5.1. Formalna składnia typów egzystencjalnych (165)
- 6.6. Podsumowanie (167)
- 7.1. Ograniczenia kontekstu i ograniczenia widoku (170)
- 7.1.1. Kiedy stosować domniemane ograniczenia typu? (171)
- 7.2. Dodawanie typów do parametrów domniemanych (172)
- 7.2.1. Manifesty (172)
- 7.2.2. Korzystanie z manifestów (173)
- 7.2.3. Ograniczenia typu (175)
- 7.2.4. Wyspecjalizowane metody (177)
- 7.3. Klasy typu (178)
- 7.3.1. FileLike jako klasa typu (181)
- 7.3.2. Zalety klas typu (184)
- 7.4. Egzekucja warunkowa z użyciem systemu typów (185)
- 7.4.1. Heterogeniczne listy typowane (187)
- 7.4.2. Cecha IndexedView (190)
- 7.5. Podsumowanie (196)
- 8.1. Wybór odpowiedniego rodzaju kolekcji (198)
- 8.1.1. Hierarchia kolekcji (198)
- 8.1.2. Traversable (200)
- 8.1.3. Iterable (203)
- 8.1.4. Seq (204)
- 8.1.5. LinearSeq (205)
- 8.1.6. IndexedSeq (207)
- 8.1.7. Set (208)
- 8.1.8. Map (208)
- 8.2. Kolekcje niemodyfikowalne (210)
- 8.2.1. Vector (210)
- 8.2.2. List (212)
- 8.2.3. Stream (213)
- 8.3. Kolekcje modyfikowalne (216)
- 8.3.1. ArrayBuffer (217)
- 8.3.2. Nasłuchiwanie zdarzeń zmiany kolekcji za pomocą domieszek (217)
- 8.3.3. Synchronizacja z użyciem domieszek (218)
- 8.4. Zmiana czasu ewaluacji za pomocą widoków i kolekcji równoległych (218)
- 8.4.1. Widoki (219)
- 8.4.2. Kolekcje równoległe (221)
- 8.5. Pisanie metod, które można wykorzystać na wszystkich typach kolekcji (223)
- 8.5.1. Optymalizacja algorytmów dla różnych typów kolekcji (226)
- 8.6. Podsumowanie (229)
- 9.1. Kiedy stosować aktorów? (232)
- 9.1.1. Zastosowanie aktorów do wyszukiwania (232)
- 9.2. Typowane, przezroczyste referencje (235)
- 9.2.1. Realizacja algorytmu rozprosz-zgromadź przy użyciu OutputChannel (236)
- 9.3. Ograniczanie błędów do stref (240)
- 9.3.1. Strefy błędu w przykładzie rozprosz-zgromadź (240)
- 9.3.2. Ogólne zasady obsługi awarii (243)
- 9.4. Ograniczanie przeciążeń za pomocą stref planowania (244)
- 9.4.1. Strefy planowania (245)
- 9.5. Dynamiczna topologia aktorów (247)
- 9.6. Podsumowanie (251)
- 10.1. Różnice językowe pomiędzy Scalą a Javą (254)
- 10.1.1. Różnice w opakowywaniu typów prostych (255)
- 10.1.2. Widoczność (259)
- 10.1.3. Nieprzekładalne elementy języka (260)
- 10.2. Uwaga na domniemane konwersje (263)
- 10.2.1. Tożsamość i równoważność obiektów (263)
- 10.2.2. Łańcuchy domniemanych widoków (265)
- 10.3. Uwaga na serializację w Javie (267)
- 10.3.1. Serializacja klas anonimowych (269)
- 10.4. Adnotowanie adnotacji (271)
- 10.4.1. Cele adnotacji (272)
- 10.4.2. Scala i pola statyczne (273)
- 10.5. Podsumowanie (274)
- 11.1. Teoria kategorii w informatyce (278)
- 11.2. Funktory i monady oraz ich związek z kategoriami (281)
- 11.2.1. Monady (284)
- 11.3. Rozwijanie funkcji i styl aplikacyjny (286)
- 11.3.1. Rozwijanie funkcji (286)
- 11.3.2. Styl aplikacyjny (288)
- 11.4. Monady jako przepływy pracy (291)
- 11.5. Podsumowanie (295)
Rozdział 1. Scala: język mieszany (17)
Rozdział 2. Podstawowe zasady (33)
Rozdział 3. Parę słów na temat konwencji kodowania (61)
Rozdział 4. Obiektowość (85)
Rozdział 5. Domniemane wartości i widoki podstawą ekspresywnego kodu (107)
Rozdział 6. System typów (139)
Rozdział 7. Łączenie typów z wartościami i widokami domniemanymi (169)
Rozdział 8. Wybór odpowiedniej kolekcji (197)
Rozdział 9. Aktorzy (231)
Rozdział 10. Integracja Scali z Javą (253)
Rozdział 11. Wzorce w programowaniu funkcyjnym (277)
Skorowidz (297)
Oceny i opinie klientów: Scala od podszewki Joshua Suereth D. (7)
Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.
(4)
(2)
(1)
(0)
(0)
(0)
więcej opinii