Veze, linkovi
Kompjuter biblioteka
Korpa
Funkcionalan dizajn, principi, obrasci i praksa

Preuzmite poglavlje   Preuzmite poglavlje

Serija Roberta C. Martina Serija Roberta C. Martina

Funkcionalan dizajn, principi, obrasci i praksa

Autor: Robert C. Martin
Broj strana: 384
ISBN broj: 9788673105963
Izdavač: Kompjuter biblioteka Kompjuter biblioteka
Godina izdanja: 2024.
Kataloški broj: 573.

                 
Twitter   Facebook   Linkedin   Pinterest   Email
                 
         
   
Naruči ili rezerviši sa 40 % popusta
 
         
         
Cena: 2530 rsd Vi plaćate: 1900 rsd

10% dodatnog popusta za 2 ili više knjiga, osim knjiga koje su u pretplati i kompleta knjiga.

• Isporuka za 24 časa (osim za knjige u pretplati)
• Plaćanje kuriru

 

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 kalsik, 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

 

 

 

 

Komentari

• Mladen Miljuš
Samo da ostavim komentar na samu dostavu i proces - odličan, sve preporuke, samo tako nastavite, pohvale od novog kupca. Knjiga će mi trebati vremena da pročitam, ja to polako, ali na prvi pogled (i miris) sve je super.

• Miljan Puzovic
Obavezno prevedite!

• Milan
Uzimam, slobodno prevedite. Takođe, bilo šta od Martin Flovera, možda Enterprise integration patterns, ili neki AWS cloud kompletan priručnik

Ostavite komentar Ostavite komentar

 

Preporučujemo

Čista arhitektura, Praktična rešenja softverske arhitekture legendarnog Roberta C. Martina,ujka Boba

Čista arhitektura, Praktična rešenja softverske arhitekture legendarnog Roberta C. Martina,ujka Boba

Popust cena:
2100.00 rsd

Funkcionalan dizajn, principi, obrasci i praksa

Funkcionalan dizajn, principi, obrasci i praksa

Popust cena:
1900.00 rsd

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