Preskoči do informacija o proizvodu
1 od 1

Stručna Knjižara

Funkcionalan dizajn, principi, obrasci i praksa – Robert C. Martin

Funkcionalan dizajn, principi, obrasci i praksa – Robert C. Martin

Redovna cijena €40,50
Redovna cijena €45,00 Prodajna cijena €40,50
Popust Rasprodano
Porez je uključen. Poštarina se obračunava prilikom završetka kupnje.
Kratki opis: autor: Robert C. Martin broj stranica: 384 godina izdanja: 2024. vrsta uveza: meki jezik: srpski, latinica ISBN 9788673105963

Funkcionalan dizajn, principi, obrasci i praksa – Robert C. Martin

Prijevod knjige “Functional design”

U knjizi “Funkcionalni dizajn”, poznati softverski inženjer Robert C. Martin (poznat kao “Ujka Bob”) objašnjava primenu funkcionalnog programiranja za izgradnju boljih sistema za krajnje korisnike. Martin poredi konvencionalne objektno-orijentisane strukture koda u Javi sa onima koje omogućava funkcionalno programiranje, identifikuje optimalne uloge za svaki pristup i demonstrira kako unaprediti sistem pažljivim korišćenjem oba pristupa u odgovarajućim kontekstima.

Martinov pristup je pragmatičan, s naglaskom na rešavanju stvarnih problema umesto teorijskog razmatranja. Kroz pristupačne primere, programeri će razumeti kako im jednostavan, semantički bogat jezik Clojure, može pomoći da unaprede čistoću koda, dizajn, disciplinu i rezultate. Martin istražuje poznate SOLID principe i Dizajnerske obrasce Četvoročlane Grupe iz funkcionalne perspektive, te otkriva zašto obrasci i dalje imaju veliku vrednost za funkcionalne programere i kako ih koristiti radi postizanja izuzetnih rezultata.

  • Razumevanje osnova funkcionalnog programiranja uključuje koncepte kao što su nemutabilnost (immutability), perzistentni podaci, rekurzija, iteracija, lenjost (laziness) i stanje (statefulness)
  • Kontrast funkcionalnog i objektnog pristupa programiranju kroz stručno osmišljene studije slučaja
  • Istraživanje funkcionalnih dizajnerskih tehnika za tok podataka
  • Korišćenje klasičnih SOLID principa za pisanje boljeg Clojure koda
  • Usavršavanje pragmatičnih pristupa funkcionalnom testiranju, korisničkim interfejsima i konkurentnosti
  • Upotreba dizajnerskih obrazaca u funkcionalnim okruženjima
  • Vodjenje kroz izgradnju enterprise-level Clojure aplikacije

“Funkcionalni dizajn” je klasik, od samog početka. Bob ističe kako elementi funkcionalnog programiranja čine dizajn softvera jednostavnim, ali i pragmatičnim. On to čini na način koji je prihvatljiv i koristan za programere koji već imaju iskustvo sa C#, C++, ili Javom.” Janet A. Carr, Independent Clojure Consultant

Sadržaj

Predgovor xiii

Uvod xv

Zahvalnosti xxi

O autoru xxiii

DEO I: Osnove funkcionalnog programiranja 1

Poglavlje 1: Nepromenljivost 3

Šta je funkcionalno programiranje? 4
Problem sa dodeljivanjem 7
Pa zašto ga nazivamo funkcionalno? 10
Bez promene stanja? 12
Nepromenljivost 15
Poglavlje 2: Trajnost podataka 17

O varanju 19
Pravljenje kopija 20
Strukturno deljenje 23
Poglavlje 3: Rekurzija i iteracija 27

Iteracija 28
Veoma kratak vodič za Clojure 29
Iteracija 32
TCO, Clojure i JVM 32
Rekurzija 32
Poglavlje 4: Lenjost 37

Lenjo akumuliranje 40
U redu, ali zašto? 41
Završetak 42
Poglavlje 5: Čuvanje stanja 43

Kada moramo da izvršimo promenu 47
Softverska transakcijska memorija (STM) 48
Život je težak, softver je još teži

Deo II: Komparativna analiza 53

Poglavlje 6: Prosti činioci 55

Verzija za Javu 56
Verzija za Clojure 60
Zaključak 63
Poglavlje 7: Igra kuglanja 65

Verzija za Javu 66
Verzija za Clojure 71
Zaključak 75
Poglavlje 8: Ogovaranje među vozačima autobusa 77

Java rešenje 78
Klasa Driver 84
Klasa Route 85
Klasa Stop 85
Klasa Rumor 86
Klasa Simulation 87
Clojure 88
Zaključak 93
Poglavlje 9: Objektno-orijentisano programiranje 95

Funkcionalan platni spisak 98
Prostori imena i izvorne datoteke 107
Zaključak
Poglavlje 10: Tipovi 109

Deo III: Funkcionalni dizajn 115

Poglavlje 11: Protok podataka 117

Poglavlje 12: SOLID 125

Princip jedinstvene odgovornosti (SRP) 126
Princip otvorenosti i zatvorenosti (OCP) 131
Funkcije 133
Objekti sa virtuelnim tabelama 134
Multimetodi 135
Nezavisna implementacija 136
Liskovin princip zamene (LSP) 138
ISA pravilo 142
Nipošto! 145
Pravilo reprezentacije 146
Princip razdvajanja interfejsa (ISP) 147
Nemojte da zavisite od stvari koje vam nisu potrebne 150
Zašto? 151
Zaključak 151
Princip inverzije zavisnosti (DIP) 152
Povratak u prošlost 155
Kršenje DIP principa 165
Zaključak

Deo IV: Funkcionalni pragmatizam 181

Poglavlje 13: Testovi 183

A REPL? Šta ćemo sa tim? 184
Šta je sa lažnim objektima? 184
Testiranje zasnovano na svojstvima 186
Tehnika dijagnostike 190
Funkcionalno 197
Poglavlje 14: Grafički korisnički interfejs 199

Crtanje uz pomoć kornjače za biblioteku Quil
Poglavlje 15: Konkurentnost 215

Zaključak 225

Deo V: Projektni obrasci 227

Poglavlje 16: Pregled projektnih obrazaca 229

Obrasci u funkcionalnom programiranju 233
Obrazac Apstraktan poslužitelj 233
Obrazac Adapter 236
Da li je to zaista objekat adapter? 241
Obrazac Komanda 242
Poništi 245
Obrazac Sastav 249
Funkcionalno? 254
Obrazac Dekorater 260
Obrazac Posetilac 264
Zatvoriti ili Clojure? 267
Problem 90 stepeni 270
Obrazac Apstraktna fabrika 274
Ponovo 90 stepeni 279
Sigurnost tipova? 281
Zaključak 281
Dodatak: OO otrov? 282

Deo VI: Studija slučaja 285

Poglavlje 17: Wa-Tor 287

Počeši se 309
Tuš je rešenje problema 312
Faza intenzivne reprodukcije 322
Šta ćemo sa ajkulama? 324
Zaključak 335
Pogovor 337

Indeks 339

Informatika Kompjuter Biblioteka Programiranje Sve knjige

Česta pitanja

Koji su Načini plaćanja?

- Kreditnom ili debitnom karticom
- Pouzećem – plaćanje po primitku paketa direktno djelatniku pošte
- Virmanom (uplata na žiro račun) -plaćanje Internet bankarstvom, uplatnicom u pošti, banci

Koliki su troškovi poštarine i koji je rok isporuke?

Iznos narudžbe (vrijednost košarice) i troškovi slanja na adrese u Republici Hrvatskoj
Do 150,00 € -> 7,00 €
Iznad 150,00 € -> Gratis
Iznos narudžbe (vrijednost košarice) i troškovi slanja u inozemstvo
Do 26,54 € -> 20,97 €
Za svakih slijedećih 26,54 € vrijednosti košarice (do maksimalne vrijednosti košarice 132,72 €) dodaje se 5,30 €
Od 132,72 € vrijednosti košarice nadalje trošak dostave iznosi 46,18 €
Rok isporuke je od 14 do 30 radnih dana (u radne dane ne spadaju vikendi, blagdani i državni praznici).
U slučaju nepredviđene situacije, rok dostave može se produljiti, ali o tome ćete biti naknadno obaviješteni (mailom ili telefonski).

Da li je moguće osobno preuzimanje naručenih knjiga na adresi?

Kada su knjige dostupne, moguće je osobno preuzimanje knjiga na adresi ureda Ivane Brlić Mažuranić 72 (Malešnica), 10090 Zagreb uz obaveznu prethodnu najavu na telefon 00385 (0)1 3731 748.

Trebate pomoć oko kupovine putem naše internet stranice www.strucnaknjizara.com?

Slobodno nas kontaktirajte putem naše e-mail adrese: info@strucnaknjizara.com ili telefonski na broj: 00385 (0)1 3731 748.
Ako se ne snalazite ili ne želite naručiti knjige preko internet trgovine, slobodno nam pošaljite direktan upit/narudžbu na e-mail na info@strucnaknjizara.com.
Za narudžbu su potrebni sljedeći podaci:
Točan naslov željene knjige i količina,
ime i prezime,
adresa dostave,
e-mail adresa i
telefonski broj.

Prikaži sve pojedinosti