Knjige i priručnici Računari/ Internet/ Programiranje Projektovanje softvera

Razvoj softvera orijentisanog na procese: DevOps mikroservisi kontejneri
Razvoj softvera orijentisanog na procese
Miloš Radenković, Zorica Bogdanović

Predmet analize i izlaganja gradiva u ovom udžbeniku je razvoj softvera orijentisanog na procese. Gradivo uključuje teorijske osnove, metode koje se koriste u projektovanju softvera, implementaciona okruženja, kao i alate i metode za upravljanje razvojem softvera. Cilj je da se u okviru knjige predstave najznačajniji procesi softverskog inženjerstva i njihova primena, počev od korisničkih zahteva koji se danas postavljaju pred informacione sisteme velikih preduzeća: distribuiranost, linearna skalabilnost i pouzdanost. Zatim, pregled teorijskih koncepata koji to omogućuju: paralelni procesi, servisi, događaji i metode za njihovo upravljanje, kao i metode za upravljanje softverskim procesom, gde je posebna pažnja posvećena DevOps-u.

S obzirom na to da je softversko inženjerstvo u najvećoj meri okrenuto praksi i konkretnoj primeni, deo ove knjige posvećen je implementacionim okruženjima i alatima za upravljanje životnim ciklusom kontejnera kao i njihovom orkestracijom. Udžbenik i praktikum laboratorijskih vežbi, koji je u pripremi, čine celinu nastavnih materijala za savlađivanje izloženog gradiva.

Cena: 1.430 rsd
Naučite GIT: Praktičan i vizuelan vodič za osnove Gita
Naučite GIT
Anna Skoulikari

Ova knjiga vas uči na jednostavan, vizuelan i praktičan način kako da izgradite čvrst mentalni model o tome kako Git sistem za kontrolu verzija funkcioniše. Kroz upotrebu slika, objašnjenja i praktičnih vežbi, naučićete kako da koristite GIT sa samopouzdanjem.

Informacije se uvode postepeno kako bi se izbegla zbrka sa nepoznatim pojmovima ili konceptima. Naučite Git je idealna knjiga za sve koji treba da koriste Git za lične ili profesionalne projekte: studente koji uče programiranje, mlade programere, stručnjake za podatke i autore tehničke dokumentacije.

Ova knjiga vas uči kako da:
• Preuzmete Git i da inicijalizujete lokalno skladište
• Dodate fajlove u područje pripreme i kako da pravite komite (commit)
• Pravite, premeštate i brišete grane
• Spajate i menjate bazu grana
• Radite sa udaljenim skladištima, uključujući kloniranje, slanje, povlačenje i dobijanje (cloning, pushing, pulling, and fetching)
• Koristite zahteve za povlačenje (pull requests) za saradnju sa drugima

Cena: 2.000 1.800 rsd
Priručnik za test inženjere
Priručnik za test inženjere
Jovan Popović

Naučite kako da na najbolji način automatizujete i kodirate testove u softverskim projektima

U ovoj knjizi ćete se upoznati sa tehnikama i alatima za pisanje programskog koda namenjenog testiranju softverskih aplikacija. Kodiranje i automatizacija testova su ključne komponente u radu test inženjera i igraju vitalnu ulogu u obezbeđivanju kvaliteta softvera. Kroz praktične primere, naučićete kako da na osnovu definisanih test slučajeva razvijete test kod koji će sistematski proveravati ispravnost rada softverske aplikacije. Ova knjiga će vam pomoći da shvatite procese i tehnike koje su vam potrebne za automatsko testiranje, što će vam omogućiti da budete uspešni u ulozi test inženjera.

Cena: 1.210 rsd
Podacijska pismenost (Data Literacy): veština prikupljanja, analize i korišćenja podataka
Podacijska pismenost (Data Literacy)
Angelika Klidas

Kome je namenjena knjiga:

  • studentima i postdiplomcima u oblasti podataka i analitike, kao i menadžmenta i marketinga
  • poslovnim  ljudima čiji biznis i profit zavise od kvaliteta podataka i njihovog tumačenja
  • rukovodiocima sektora marketinga, prodaje, ljudskih resursa i informacionih tehnologija
  • novinarima i svim ostalim pojedincima zainteresovanim za razumevanje savremenog sveta podataka

Oblasti zastupljene u knjizi:

  • Upravljanje podacima
  • Analitika podataka
  • Podaci i KPI kompanija
  • Vizuelizacija podataka
  • Komunikacija podataka
  • Razumevanje podataka
  • Rukovanje podacima
  • Odluke zasnovane na podacima
  • Projekti podataka i analitike
  • Edukacija za rad sa podacima
  • Šabloni za evaluacije
Cena: 2.860 2.517 rsd
Pravila programiranja
Pravila programiranja
Chris Zimmerman

Ovaj vodič za filozofiju programiranja predstavlja jedinstven i zabavan pogled na to kako treba razmišljati o programiranju. Zbirka od dvadeset jednog praktičnog pravila, od kojih je svako prikazano u samostalnom poglavlju, obuhvata suštinsku mudrost koju svaki novopečeni programer treba da zna i pruža uvide koji iskusne programere navode na razmišljanje.

Autor Chris Zimmerman, suosnivač studija za video igre Sucker Punch Productions, podučava osnovne istine programiranja kroz aforizme i primere dobijene iz stvarnog koda. Ovaj praktičan vodič daje menadžerima načine za obuku novih članova tima.
Pravila u ovoj knjizi sadrže:

• Što jednostavnije, ali ne i previše pojednostavljeno
• Neka vaš kôd priča svoju priču
• Lokalizujte složenost
• Generalizacija traži tri primera
• Radite unazad od rezultata, a ne unapred
• Prva lekcija optimizacije je ne optimizujte
• Dobro ime je najbolja dokumentacija
• Greške su zarazne
• Eliminišite slučajeve grešaka
• Kôd koji se ne izvršava, ne radi
• Ponekad samo treba da zakucate eksere

Cena: 1.700 1.530 rsd
Modelovanje softvera na jeziku UML: I deo: modelovanje strukture
Modelovanje softvera na jeziku UML
Igor Tartalja

Tema ove knjiga je modelovanje strukturnih aspekata objektno orijentisanog softvera i relevantnih aspekata hardvera na kojem se softver izvršava. Autor se odlučio na pisanje knjige nakon više od dvadeset godina iskustva držanja predmeta Projektovanje softvera (ranije pod nazivom Objektno orijentisani softver) na modulu Računarska tehnika i informatika i studijskom programu Softversko inženjerstvo na Elektrotehničkom fakultetu Univerziteta u Beogradu. Na predmetu se izučavaju principi projektovanja softvera uz njegovo modelovanje na jeziku UML i primenu poznatih projektnih uzoraka. Knjiga, čija je tema modelovanje strukturnih aspekata, pokriva samo jedan deo građe za ovaj predmet.
Primarni motiv autora za pisanje ove knjige je bio da svoja iskustva stečena kroz proces razvoja softvera, a naročito iskustva u prenošenju znanja na predmetu koji se bavi projektovanjem softvera, objedini i prenese čitaocu. Knjiga je namenjena svima koji nameravaju da se u karijeri bave projektovanjem softvera na profesionalan način. To su prevashodno studenti softverskog ili računarskog inženjerstva, kao i studenti drugih usmerenja u širokoj oblasti računarstva. Ali knjiga je namenjena i onima koji, iako već odavno nisu studenti, žele da prošire, unaprede i sistematizuju svoja znanja iz projektovanja softvera. Tu spadaju analitičari, projektanti, programeri, testeri i drugi neposredni učesnici u razvoju i održavanju softvera.

Cena: 2.750 2.695 rsd
Izgradnja mikroservisa: Dizajn sitno granuliranih sistema
Izgradnja mikroservisa
Sam Newman

Kako organizacije prelaze od monolitnih aplikacija na manje, samostalne mikroservise, distribuirani sistemi postaju finije granulirani. Ali razvijanje tih novih sistema unosi gomilu novih problema. Ovo prošireno drugo izdanje zauzima holistički pogled na teme koje morate da razmatrate prilikom građenja, upravljanja i skaliranja mikroservisnih arhitektura.

Koristeći jasne primere i praktične savete, autor Sam Newman daje svima, od arhitekata i programera do testera i IT operatera čvrstu osnovu u konceptima. Zaronićete u najnovija rešenja za modelovanje, integrisanje, testiranje, raspoređivanje i nadgledanje svojih vlastitih autonomnih servisa. Slučajevi iz realnog sveta otkrivaju kako organizacije danas uspevaju da najbolje iskoriste ove arhitekture.

Tehnologija mikroservisa se neprekidno razvija. Ova knjiga vam daje najnovije informacije

  • Dobijate nove informacije o korisničkim interfejsima, orkestraciji kontejnera i bez servera
  • Podesite dizajn sistema sa ciljevima vaše organizacije
  • Istražite opcije za uključivanje servisa u vaš sistem
  • Shvatite kako da nezavisno raspoređujete mikroservise
  • Ispitate složenost testiranja i nadgledanja distribuiranih servisa
  • Upravljate bezbednošću sa proširenim sadržajem oko modela korisnik-servis i servis-servis

 

Cena: 2.430 2.309 rsd
Pet linija koda: refaktorisanje, kada i kako
Pet linija koda
Christian Clausen

U knjizi Pet linija koda učićete o refaktorisanju koje je fokusirano na konkretna pravila svođenja bilo kog metoda na pet linija ili manje! Knjiga ne sadrži žargon niti su vam potrebne posebne veštine za automatsko testiranje. Ona sadrži samo jednostavne smernice i obrasce ilustrovane detaljnim primerima koda.

Obuhvaćene su sledeće teme:

  • Znaci lošeg koda
  • Bezbedno poboljšanje koda, čak i kada ga ne razumete
  • Balansiranje optimizacije i uopštenosti koda
  • Pravilne prakse kompajlera
  • Metod izdvajanja, uvođenje Strategy obrasca i mnogih drugih obrazaca refaktorisanja
  • Pisanje stabilnog koda koji omogućava promenu dodavanjem
  • Pisanje koda koji ne zahteva komentare
  • Praksa iz stvarnog sveta za sjajno refaktorisanje

Poboljšanje postojećeg koda – refaktorisanje – jedan je od najčešćih zadataka sa kojima ćete se suočiti kao programer. U knjizi Pet linija koda naučićete jasna i delotvorna pravila refaktorisanja koja možete da primenite bez oslanjanja na intuitivno mišljenje, kao što je „miris koda“. Prateći stručnu perspektivu autora – da se refaktorisanje i mirisi koda mogu naučiti praćenjem konkretnog skupa principa – naučićete kada da refaktorišete kod, koje obrasce da primenite na koji problem i karakteristike koda koje ukazuju da je vreme za preradu.

O tehnologiji

Svaka baza kodova sadrži greške i neefikasnost koje je potrebno da pronađete i ispravite. Refaktorišite na pravi način da bi kod postao elegantan, lak za čitanje i održavanje. Uz ovu knjigu ćete naučiti jedinstven pristup refaktoriranju koji implementira bilo koji metod u pet linija, ili manje. Takođe ćete otkriti tajnu koju većina starijih programera zna: ponekad je brže razraditi kod i ispraviti ga kasnije!

Kome je namenjena knjiga

Za programere svih nivoa veštine. Za primere je korišćen lako čitljiv Typescript, u istom stilu kao Java i C#.

Cena: 2.420 2.130 rsd
Priručnik za testiranje softvera: konkretne ideje, tehnike i recepti
Priručnik za testiranje softvera
Jovan Popović

U ovoj knjizi ćete naći praktična uputstva i savete koji će vam pomoći da shvatite kako se testiraju softverske aplikacije. Poznavanje ovakvih tehnika je prva stvar koju morate da naučite ako počinjete da se bavite testiranjem softverskih aplikacija. Čak i ako ste test-inženjeri koji imaju iskustva sa pisanjem testova, u ovoj knjizi ćete naći konkretne ideje i recepte, koje možete primeniti kako bi vaši testovi efikasnije testirali aplikacije i brže pronalazili probleme u njima.
Pred vama je priručnik koji vam omogućava da brzo naučite tehnike testiranja koje će vam biti bitne i za ručno i za automatsko testiranje.

Cena: 1.155 rsd
Projektni obrasci: Um caruje
Projektni obrasci
Eric Freeman, Elisabeth Robson

Ne želite da izmišljate toplu vodu, pa se okrećete Projektnim obrascima – lekcijama koje su naučili drugi suočeni sa istim problemima pri projektovanju softvera. Pomoću Projektnih obrazaca možete da iskoristite praktične smernice i iskustava drugih i posvetite vreme nečem korisnijem. Ova knjiga vam objašnjava bitne obrasce, kako da ih primenite na sopstvene projekte, kao i prinicpe objektno orijentisanog projektovanja na kojima su obrasci zasnovani. Pridružite se stotinama hiljada programera koji su poboljšali svoje veštine objektno orijentisanog projektovanja pomoću knjige Um caruje: Projektni obrasci.
Šta je toliko posebno kod ove knjige?

Od edicije Um caruje, znate šta da očekujete – vizuelno bogat format osmišljen za način na koji funkcioniše vaš um. U ovom izdanju učićete pincipe projektova­nja i obrasce na način koji vas neće uspavati, tako da možete da krenete sa rešavanjem problema u dizajnu softvera i govorite jezikom obrazaca sa ostalim članovima svog tima.

„Knjiga mi je stigla juče i počeo sam da je čitam... i nisam mogao da prestanem. Odlična je. Zabavna, a ujedno obrađuje mnogo materijala i to onog najbitnijeg. Zaista sam impresioniran.“
– Erich Gamma ugledni inženjer u IBM-u, koautor knjige Design Patterns

„Osećam se kao da su mi knjige teške sto kila upravo skinute s glave.“
– Ward Cunningham izumitelj Wiki i osnivač organizacije Hillside Group

„Um caruje: Projektni obrasci uspeva da pomeša šalu, smeh, uvide, tehničku dubinu i odlične praktične savete u zabavno štivo koje podstiče razmišljanje.“
– Richard Helm koautor knjige Design Patterns

Cena: 2.800 2.520 rsd
Metaheuristike bazirane na inteligenciji roja
Metaheuristike bazirane na inteligenciji roja
Vesna Šešum-Čavić

Tema kojom se bavi ova knjiga spada u oblast kompjutacione inteligencije (engl. Computational Intelligence), koja beleži snažan i ubrzan razvoj u poslednjoj dekadi i objedinjuje brojne biološki inspirisane kompjutacione paradigme sa velikim brojem uspešnih aplikacija. Sama knjiga pruža osvrt na jedan deo algoritama iz ove oblasti, koji su zabeležili značajno interesovanje u istrazivačkim i naučnim krugovima i koji se bave kompjutacionom inteligencijom, a takođe su obezbedili inovativan pristup brojnim kompleksnim problemima iz prakse sa obećavajucm rezultatima. Algoritmi kojima se bavi ova knjiga su metaheuristike bazirane na inteligenciji roja. U poslednje vreme, veliki broj ovakvih algoritama je predložen i razvijen usled njihove popularnosti. Nažalost, jedan broj algoritama se je pojavio samo u cilju rešavanja određenog, specificiranog problema iz prakse, bez dovoljne kritičke analize, teorijske zasnovanosti i opravdanosti, tako da je njihov smisao, kao i primena na šire klase problema upitan. Zato je cilj ove knjige da predstavi sistematizaciju i kategorizaciju ovih algoritama po postavljenim kriterijumima, i istakne najprominentnije od njih. Knjiga se sastoji od 10 poglavlja.

Cena: 800 rsd
Testiranje JavaScript aplikacija
Testiranje JavaScript aplikacija
Lucas da Costa

Automatizovano testiranje pomoći će vam da napišete visokokvalitetan softver za manje vremena, sa više samopouzdanja, manje grešaka i bez stalnog ručnog kontrolisanja. “Testiranje JavaScript aplikacija” je vodič za izgradnju sveobuhvatnog i pouzdanog paketa za testiranje JS aplikacija, koji opisuje kako da pišete testove i kako JS alati za testiranje rade “ispod haube”. Vaš učitelj je Lucas de Costa, glavni saradnik u popularnim JS bibliotekama za testiranje, koji vam predstavlja kvalitetan način razmišljanja za donošenje ispravnih odluka o testiranju koje daju stvarni doprinos vašem poslovanju. Imaćete koristi od informativnih objašnjenja i dijagrama, lako prenosivih primera koda i dobrih saveta u vezi sa upotrebom najnovijih biblioteka i radnih okvira JavaScript ekosistema.

O tehnologiji

Automatsko testiranje je neophodno za stalnu isporuku dobrih JavaScript aplikacija. Kompletna strategija testiranja trebalo bi da pokriva funkcije u izolaciji, integraciju različitih delova koda i ispravnost iz perspektive krajnjeg korisnika. Ova knjiga će vas naučiti kako da brzo i pouzdano isporučite pouzdan softver.

O knjizi

Testiranje JavaScript aplikacija” je udžbenik za implementaciju automatizovanih planova testiranja veb aplikacija zasnovanih na JavaScript-u. Opisuje praktične strategije testiranja, korisne alate i biblioteke i objašnjava kako da održavate visok kvalitet. Kroz jasne opise i brojne primere istražićete pristupe i za backend i za frontend aplikacije i naučićete da brže i pouzdanije testirate softver.

Cena: 2.750 2.420 rsd
Refaktorisanje: Poboljšanje dizajna postojećeg koda (II izd.)
Refaktorisanje
Martin Fowler

Već više od dvadeset godina iskusni programeri širom sveta se oslanjaju u svom radu na Refaktorisanje, knjigu koju je napisao Martin Fowler, kako bi unapredili dizajn postojećeg koda i na taj način ujedno unapredili i održavanje softvera, a sve u cilju da njihov postojeći kôd bude lakši za razumevanje.
Novo izdanje knjige, koje se čekalo sa nestrpljenjem, potpuno je ažurirano u cilju prikazivanja ključnih promena na polju programiranja. Knjiga Refaktorisanje, Drugo izdanje sadrži ažuriran katalog refaktorisanja i uključuje primere koda u JavaScript-u, kao i nove primere sa funkcijama koji prikazuju refaktorisanje bez klasa.
Poput prethodnog izdanja, ova knjiga objašnjava šta je refaktorisanje; zašto je potrebno refaktorisati; kako prepoznati kôd kojem je potrebno refaktorisanje; kako da uspešno primenite refaktorisanje bez obzira na to koji programski jezik koristite.
• Razumevanje procesa i opštih principa refaktorisanja.
• Brzo primenjivanje korisnih refaktorisanja kako bi bilo lakše razumeti i izmeniti program.
• Prepoznavanje mesta u kodu koja „zaudaraju” i koja nam zapravo daju signal da je potrebno uraditi refaktorisanje.
• Istraživanje refaktorisanja za koja su data objašnjenja, motivacija, mehanizam, kao i jednostavni primeri.
• Kreiranje testova za vaša refaktorisanja.
• Prepoznavanje kompromisa i prepreka u vezi sa refaktorisanjem.

Cena: 1.430 1.359 rsd
Testiranje softvera
Testiranje softvera
Dragan Bojić, Dražen Drašković

Ovaj udžbenik nastao je kao rezultat višegodišnjeg nastavnog rada autora na predmetu Testiranje softvera, na osnovnim akademskim studijama studijskog programa Softversko inženjerstvo na Elektrotehničkom fakultetu Univerziteta u Beogradu. Udžbenik treba da posluži bržem i potpunijem savladavanju teorijskih i praktičnih osnova iz oblasti testiranja softvera. Ciljevi knjige su upoznavanje čitaoca sa najčešće korišćenim tehnikama testiranja u različitim domenima primene softvera i ilustracija ovih tehnika na problemima čiji je stepen složenosti takav da omogućava praćenje rešenja bez većeg napora.

Cena: 2.200 2.156 rsd
Osnove softverskog inženjerstva
Osnove softverskog inženjerstva
Jovan Popović

Ova knjiga objedinjuje i sažeto opisuje najvažnije koncepte za svakoga ko se bavi softverskim inženjerstvom, od studenata računarskih fakulteta i početnika u oblasti programiranja do iskusnih softverskih inženjera koji žele da upotpune svoje znanje u ovoj oblasti. Sadržaj knjige je aktuelan i obuhvata neophodno znanje koje bi profesionalni softverski inženjeri trebalo da poseduju. Za početnike u oblasti softverskog inženjerstva ova knjiga je najbrži put kojim mogu da nauče najbitnije neophodne koncepte u ovoj oblasti. Iskusni softverski inženjeri mogu da koriste knjigu za planiranje i razvoj projekta, kao i samo upravljanje projektom.

Cena: 1.470 1.397 rsd
Testiranje softvera u praksi
Testiranje softvera u praksi
Jovan Popović

Knjiga Testiranje softvera u praksi predstavlja doprinos upotpunjavanju relativno slabo pokrivene, a izuzetno značajne oblasti na našem tržištu stručne literature iz oblasti upravljanja informacijama i informacionim tehnologijama. Ona je namenjena širokom krugu čitalaca koji se bave testiranjem ili žele da nauče nešto o ovoj oblasti. Napisana je tako da je mogu koristiti svi od studenata i početnika, do iskusnih profesionalaca i predavača. Knjiga predstavlja koristan skup informacija za bilo koga ko se bavi ili namerava da se bavi testiranjem softvera.

U ovoj knjizi su kroz pet poglavlja opisani osnovni koncepti testiranja softvera. U prvom poglavlju možete videti šta je testiranje, zašto je ono bitno u procesu razvoja softvera, kako izgleda proces testiranja i koje su tipične uloge u timu za testiranje. U drugom poglavlju možete videti više detalja o aktivnostima u procesu testiranja, kao i o načinima kako se ove aktivnosti uklapaju u proces razvoja softvera. U trećem poglavlju je opisano kako se planiraju aktivnosti testiranja, koje su vrste, strategije i metode koje se koriste prilikom testiranja softvera. Četvrto poglavlje objašnjava kako možete identifikovati načine kojima se može testirati sistem na najefikasniji način, kako bi tim za testiranje pronašao što je moguće više problema u razumnom roku. Poslednje poglavlje govori o aktivnostima koje se vrše tokom testiranja sistema što uključuje izvršavanje testova prema planu i dizajnu, praćenje statusa problema koji se rešavaju i slično.

Pored teorije testiranja u knjizi možete naći veliki broj praktičnih primera teorije testiranja i iskustava iz prakse koja su uklopljena u jednu celinu kako bi se predstavio proces testiranja softvera. Primeri su uglavnom iz oblasti programiranja poslovnih aplikacija (većinom internet aplikacije) zato što se zahtevi mogu lako objasniti čak i čitaocima koji nemaju iskustva u ovakvim aplikacijama. Za druge domene kao što su naučne aplikacije, programiranje igara, distribuirano programiranje ili programiranje u realnom vremenu čitalac bi morao da ima više predznanja, a detaljnije objašnjavanje pravila u ovim domenima je van opsega ove knjige. Iako primeri ne pokrivaju ostale domene, teorijski koncepti koji su objašnjeni na primeru poslovnih aplikacija mogu se lako primeniti i na ostale domene. Iako su u knjizi predstavljeni razni alati i aplikacije koje se koriste prilikom testiranja, knjiga nije vezana za neki specifičan alat ili programski jezik.

Ova knjiga ne bi trebalo da bude samo literatura za učenje, nego i praktični priručnik koji bi bio od pomoći u svakodnevnom radu članova tima za testiranje. Zbog toga je dat veliki broj primera iz prakse kako bi čitaoci mogli lako da identifikuju slične probleme, vide kako su oni rešeni u prikazanim primerima i primene nešto slično u praksi. Procesi i metode testiranja koji su opisani u ovoj knjizi predstavljaju osnovu za uspostavljanje dobrog sistema kontrole kvaliteta u softverskim kompanijama.

Cena: 1.287 rsd
Python razvoj mikroservisa
Python razvoj mikroservisa
Tarek Ziadé

Praktičan pristup savladavanja složenosti mikroservisa pomoću Python alata.

Šta ćete naučiti
Istražićete šta su mikroservisi i kako da ih projektujete.
Upotrebićete Python 3, Flask, Tox i druge alatke za izgradnju servisa, koristeći najbolju praksu.
Naučićete kako da upotrebite TDD pristup.
Otkrićete kako se dokumentuju mikroservisi.
Konfigurisaćete i upakovaćete kod na najbolji način.
Vršićete interakciju sa drugim servisima.
Obezbedićete, pratićete i skaliraćete servise.
Rasporedićete servise u Docker kontejnere, CoreOS i Amazon Web Services.

 

Opis knjige
Često raspoređujemo veb aplikacije u Cloud i potrebno je da kod vrši interakciju sa mnogim nezavisnim servisima. Efikasan način da izgradimo aplikacije je korišćenje arhitekture mikroservisa. Međutim, u praksi je to teško uraditi zbog kompleksnosti svih delova koji međusobno vrše interakciju.
Ova knjiga će vas naučiti kako da prevaziđete te probleme i da kreirate aplikacije koje su građene kao male samostalne jedinice upotrebom dokazane najbolje prakse i izbegavanjem uobičajenih „zamki“. Ovo je praktičan vodič: sve ćete graditi korišćenjem Pythona 3 i njegovih fantastičnih alatki. Razumećete principe TDD-a i primenićete ih.
Upotrebićete Flask, Tox i druge alatke za izgradnju servisa, koristeći najbolju praksu. Naučićete kako da obezbedite konekcije između servisa i kako da skriptujete Nginx, koristeći jezik Lua za izgradnju funkcija zaštitnog zida veb aplikacije, kao što je ograničavanje brzine. Takođe ćete upoznati ulogu Dockera u mikroservisima i upotrebićete Docker kontejnere, CoreOS i Amazon Web Services za raspoređivanje servisa.
Ova knjiga će vas povesti na „putovanje“, a na kraju ćete kreirati kompletnu Python aplikaciju, zasnovanu na mikroservisima. Do kraja ove knjige steći ćete znanje i veštine potrebne za izgradnju, projektovanje, testiranje i raspoređivanje Python mikroservisa.

Cena: 1.980 1.742 rsd
Konkurentno i distribuirano programiranje: drugo dopunjeno izdanje - 2018
Konkurentno i distribuirano programiranje
Ikodinović Igor, Jovanović Zoran, Radivojević Zaharije

Oblast konkurentnog i distribuiranog programiranja se već duži niz godina proučava u okviru redovne nastave na Elektrotehničkom fakultetu u Beogradu na odseku za računarsku tehniku i informatiku i na odseku za softversko inženjerstvo. Proučavanjem ove oblasti prikupljen je i analiziran veći broj praktičnih problema sinhronizacije i komunikacije. Ovi problemi su jedinstveni i omogućavaju generalizaciju čestih problema u praksi Svakom od problema nosi jedinstveno ime radi lakšeg praćenja, ali u upoređivanja sa postojećim rešenjima iz ove oblasti. Neki problemi su tako koncipirani da na šaljiv način obrade dosta složene mehanizme sinhronizacije i komunikacije.

Kao polazna osnova za formiranje ove knjige poslužila je knjiga "Konkurentno programiranje: Teorijske osnove sa zbirkom rešenih zadataka" autora Igora Ikodinovića i Zorana Jovanovića. Ta knjiga je dopunjena i proširena novim problemima i oblastima, uočene greške su ispravljene, ali je način izlaganja i obrade zadataka ostao isti.

Prvi deo knjige je posvećen konkurentnom programiranju pomoću deljenih promenljivih. Drugi deo knjige obuhvata oblast distribuiranog programiranja Treći deo je posvećen modelu programiranja korišćenjem virtuelnih prostora. Četvrti deo se bavi programskim niti ma, kao koordinacionom modelu koji se danas najčešće primenjuje kod pisanja konkurentnih programa. Peri deo knjige se odnosi na mrežno programiranje,

Programske paradigme su predstavljene na Jedan od tri načina: 1) korišćenjem postojećih programskih biblioteka i jezika za konkurentno programiranje, 2) proširivanjem sekvencijalnih programskih jezika odgovaraJućim sintaksnim elementima i 3) preko formalnih programskih modela. Izbor načina na koji su određene paradigme predstavljene bazi ran je pre svega na kriterijumima njihove jednostavnosti, razumljivosti i opštosti. U slučaju da praksa zahteva primenu odgovarajućih paradigmi korišćenjem nekih drugih implementacija od onih odabranih za njihov prikaz u knjizi, u većini slučajeva je moguće izvršiti direktnu sintaksnu translaciju. Razumevanje osnovnih koncepata iz knjige će čak i u slučajevima kada direktna sintaksna translacija nije moguća taj posao znatno olakšati.

Od postojećih programskih jezika za konkurentno programiranje u okviru ove knjige su korišćeni: Ada za demonstraciju mehanizma randevua, Java za demonstraciju koncepta programskih niti, kao konkretan primer implementacije monitora, i kao primer mrežnog programiranja koristeći razmenu poruka i udaljene pozive metoda i CONIC za demonstraciju paradigme asinhronog prosleđivanja poruka sa indirektnim imenovanjem procesa pomoću portova, U drugim slučajevima su korišćena proširenja postojećih sekvencijalnih programskih jezika: prošireni Pascal za demonstraciju koncepta semafora, uslovnih kritičnih regiona i monitora i C-Linda za demonstraciju programiranja pomoću virtuelnih prostora. Od formalnih programskih modela, BSP je korišćen za demonstraciju paradigme prosleđivanja poruka putem javnog emitovanja, a CSP za demonstraciju paradigme prosleđivanja poruka sa sinhronim slanjem i prijemom.

Jedan od problema kod upoznavanja sa oblašću konkurentnog i distribuiranog programiranja je što čitalac mora značajan deo svoje pažnje da usmeri na učenje sintakse i semantike vezanih za implementacije raznih paradigmi. Da bi se taj problem ublažio, u uvodnom delu svakog poglavlja je pored pregleda karakteristika odgovarajuće paradigme, dat i opis i analiza korišćene sintakse. Nakon uvodnog dela dati su i zadaci. Zadaci koji se nalaze na početku obično su izabrani tako da demonstriraju neke od glavnih osobina paradigme i da pokažu kako se pomoću nje rešavaju tipični problemi. Oni su posebno detaljno razmotreni, kako sa teorijskog tako i sa praktičnog aspekta, jer predstavljaju osnov za razumevanje materije u okviru poglavlja. Iza njih slede zadaci koji su po prirodi nešto složeniji i čija rešenja obično zahtevaju dublju i dugotrajniju analizu, sintetišući stečeno znanje na višem nivou i dajući adekvatnu predstavu o veličini i složenosti realnih problema. Nakon pojedinih zadataka i na kraju poglavlja se mogu naći i zadaci za samostalan rad. Preporučuje se njihoso rešavanje kao najbolja vežba za proveru usvojenog znanja.

Knjiga je pisana na ćirilici, što je doprinos očuvanju našeg jezika i pisma u oblasti gde su engleski jezik i latinica često dominantni. Nije se, međutim, moglo izbeći korišćenje specifičnih stranih stručnih izraza i naziva. U tom smislu korIŠćena terminologija odražava zatečeno stanje u ovoj oblasti kod nas. Gde je to bilo svrsishodno i moguće korišćeni su termini našeg jezika, uz navođenje odgovarajućih izraza koji se koriste u stranoj literaturi. Programi i primeri su pisani sa imenima promenljivih, procedura i programskim komentarima koji se oslanjaju na reči engleskog jezika, jer je to danas već standardna praksa uvedena zbog potrebe za komunikacijom u široj stručnoj javnosti Ovo ne bi trebalo da ima uticaja na razumljivost rešenja, s obzirom da su ona praćena detaljnim objašnjenjima ...

Cena: 2.750 2.695 rsd

NASLOV ...

Naslov
Autor
Cena: 12.356 rsd


USPEŠNO DODATO U KORPU


 
KORPA:
- Artikala: 0
- Iznos: 0 rsd