Veze, linkovi
Kompjuter biblioteka
Korpa
Scala i funkcionalno programiranje, prevod drugog izdanja

Programiranje Programiranje

Scala i funkcionalno programiranje, prevod drugog izdanja

Autor: Michael Pilquist
Broj strana: 543
ISBN broj: 9781617299582
Izdavač: MANNING PUBLICATIONS MANNING PUBLICATIONS
Godina izdanja: 2023.

                 
Twitter   Facebook   Linkedin   Pinterest   Email
                 
Predlog za prevod

 

Otkrijte moć koju funkcionalno programiranje daje vašem Scala kodu. Ovaj međunarodni bestseler je revidiran novim vežbama, napomenama i kompletnim pregledom jezika Scala 3.

Prvo izdanje „Scala i funkcionalne programiranje“ pomoglo je više od 30.000 programera da otkriju moć funkcionalnog programiranja. Ovo drugo izdanje je u potpunosti ažurirano jezikom Scala 3 i najnovijim standardima FP-a. U knjizi ćete pronaći ozbiljan vodič za programere koji žele da primene funkcionalno programiranje kako bi poboljšali svoje svakodnevne tehnike pisanja koda.

U drugom izdanju knjige „Scala i funkcionalno programiranje“ ćete naučiti funkcionalno programiranje od prvih principa koristeći moćni Scala jezik. Razvićete jedinstvene veštine koje su vam potrebne da počnete da razmišljate funkcionalno pomoću praktičnih vežbi i izazova kodiranja. Novo u revidiranom drugom izdanju je da svaka vežba sadrži opsežne napomene koje će vam pomoći da bolje razumete funkcionalno programiranje.

Otkrijte moć koju funkcionalno programiranje daje vašem Scala kodu. Ovaj međunarodni bestseler je revidiran novim vežbama, napomenama i kompletnim pregledom jezika Scala 3.

DEO 1 - UVOD U FUNKCIONALNO PROGRAMIRANJE U SCALI

Poglavlje 1: Šta je funkcionalno programiranje?

  • Osnove funkcionalnog programiranja
  • Osnove objektno-orijentisanog programiranja
  • Osnovni koncepti funkcionalnog programiranja
  • Primeri funkcionalnog programiranja u Scali

Poglavlje 2: Početak rada u funkcionalnim programiranju u Scali

  • Postavljanje razvojnog okruženja
  • Pokretanje Scale
  • Osnove Scale
  • Pisanje jednostavnog Scala programa
  • Osnovna sintaksa
  • Izrazi i kontrolne strukture
  • Klase, objekti i svojstva
  • Osnovne kolekcije

Poglavlje 3: Funkcionalne strukture podataka i rekurzija

  • Uvod u funkcionalne strukture podataka
  • Liste
  • Rekurzija
  • Polimorfizam i funkcije višeg reda
  • Strukturalna indukcija
  • Više funkcija na listama
  • „Stabla“

Poglavlje 4: Podudaranje obrazaca i algebarski tipovi podataka

  • Uvod u podudaranje obrazaca (Pattern Matching)
  • Algebarski tipovi podataka
  • Ponovno pregledane liste
  • Ponovno pregledana „stabla“

DEO 2 - FUNKCIONALNI DIZAJN I BIBLIOTEKE KOMBINATORA

Poglavlje 5: Striktnost i lenjost

  • Strategije evaluacije
  • Striktnost i lenjost
  • Strimovi
  • Deljeno stanje i konkurentnost

Poglavlje 6: Čisto funkcionalno stanje

  • Nasumičnost i stanje
  • Čisto funkcionalno stanje
  • Korišćenje stanja u IO-u

Poglavlje 7: Rukovanje greškama

  • Izuzeci
  • Korišćenje Optiona za rukovanje greškama
  • Korišćenje Eithera za rukovanje greškama
  • Aplikativno rukovanje greškama pomoću validacije
  • Rešavanje višestrukih grešaka

Poglavlje 8: Funkcionalni dizajn i biblioteke kombinatora

  • Projektni obrasci
  • Biblioteke kombinatora
  • Primer: Jednostavan parser
  • Parseri

Poglavlje 9: IO i stvarni svet

  • Sporedni efekti i IO
  • IO monada
  • IO za strimovanje
  • Primer: Skladište ključ-vrednost

Poglavlje 10: Monoidi

  • Osnove monoida
  • Klasa monoidnog tipa
  • Monoidni kombinatori
  • Primer: Paralelni FoldMap

Poglavlje 11: Monade

  • Osnove monada
  • Klasa tipa monada
  • Primer: Writer monada
  • Monadni transfomeri

Poglavlje 12: Aplikativni funktori i funktori kroz koje se može kretati

  • Aplikativni funktori
  • Funktori kroz koje se može kretati
  • Primer: Kretanje kroz „stabla“

Poglavlje 13: Eksterni efekti i sistemi efekata

  • Eksterni efekti
  • Sistemi efekata zasnovani na tipu
  • Primer: Sistem efekata

DEO 3 - NAPREDNA SCALA

Poglavlje 14: Napredni Scala koncepti

  • Implicitno
  • Klase tipa
  • Implicitne konverzije i parametri
  • Tipovi višeg reda
  • Kofunktori i kontravarijantni funktori

Poglavlje 15: Napredni monadni efekti

  • Napredni monadni efekti
  • Kleisli strelica
  • Generalizacija IO-a
  • Slobodne monade
  • Bezbednost steka i „trampoliranje“

Poglavlje 16: Testiranje zasnovano na svojstvima

  • Potreba za testiranjem
  • Uvod u testiranje zasnovano na svojstvima
  • Osnove ScalaChecka
  • Primer: Implementacija hipa

Poglavlje 17: IO za strimovanje

 

  • Uvod u IO-a za strimovanje
  • Osnove IO-a za strimovanje
  • Fragmentiranje (chunking) i povratni pritisak (back pressure)
  • Primer: Raščlanjivanje velikih datoteka

Poglavlje 18: Zaključak

  • Moć funkcionalnog programiranja
  • Početak rada
  • Dodatni resursi

Dodatak A: Obrazac klase tipa

  • Problem nasleđivanja
  • Klase tipa
  • Implementacija obrasca
  • Primer: JSON serijalizator

Dodatak B: Odgovori na vežbe

  • Odgovori na vežbe iz Poglavlja 2
  • Odgovori na vežbe iz Poglavlja 3
  • Odgovori na vežbe iz Poglavlja 4

Knjiga počinje uvodom u funkcionalno programiranje i objašnjenjem kako se ono razlikuje od objektno-orijentisanog programiranja. Zatim razmatramo osnove funkcionalnog programiranja u Scali, uključujući funkcionalne strukture podataka i funkcije kao vrednosti.

U drugom delu knjige razmatramo različite koncepte funkcionalnog dizajna i biblioteke kombinatora, odnosno rukovanje greškama bez izuzetaka, striktnost i lenjost, čisto funkcionalno stanje, čisto funkcionalni paralelizam, testiranje zasnovano na svojstvima i kombinatore parsera.

U trećem delu knjige razmatramo uobičajene strukture u funkcionalnom dizajnu, odnosno monoide, monade, aplikativne funktore i funktore kroz koje se može kretati, eksterne efekte i I/O, lokalne efekte i promenljivo stanje i obradu strima i inkrementalni I/O.

Na kraju, četvrtim delom knjige obuhvaćene su napredne teme, odnosno teorija kategorija i suština funkcionalnog programiranja, slobodne monade i tagless final obrazac, ali i zaključak o tome šta je sledeće.

Dodaci sadrže vodič za početak rada u Scali, referencu za API biblioteke i rešenja za vežbe.

  • Prepoznavanje i pisanje čisto funkcionalnog koda
  • Rukovanje greškama bez korišćenja izuzetaka
  • Korišćenje stanja i paralelnosti
  • Interakcija sa funkcionalnim strukturama koje definišu uobičajena ponašanja
  • Pisanje koda koji izvršava I/O bez „žrtvovanja“ funkcionalnog programiranja

 

Komentari

• Petar Petrovic
Da li je planiran prevod?

Ostavite komentar Ostavite komentar

 

Preporučujemo

Otkrivanje jednostavnosti - funkcionalno programiranje

Otkrivanje jednostavnosti - funkcionalno programiranje

Popust cena:
2370.00 rsd

Unity 2022 razvoj mobilnih igara

Unity 2022 razvoj mobilnih igara

Popust cena:
2200.00 rsd

Veze, linkovi
Linkedin Twitter Facebook
 
     
 
© Sva prava pridržana, Kompjuter biblioteka, Beograd, Obalskih radnika 4a, Telefon: +381 11 252 0 272
 
     
z