O KNJIZI

Predgovor drugom dopunjenom izdanju

Poštovani čitaoci,

pred vama je drugo dopunjeno izdanje knjige Osnove programiranja u Pajtonu. Zahvaljujući ubrzanom razvoju veštačke inteligencije, kao i sve većem značaju nauke o podacima, programski jezik Pajton je, u prethodnih pet godina, povećao svoju popularnost i predstavlja prvi izbor za jezik u kome se izučavaju osnovni koncepti programiranja. Zbog toga sam se odlučio da poboljšam tekst prethodnog izdanja, uklonim uočene greške i dodam glavu koja se bavi programskim paketima NumPy i Matplotlib. Ovi paketi objedinjavaju neophodne alate za sve one koji se bave kreiranjem i analizom matematičkih modela realnih sistema i analizom numeričkih podataka. NumPy se bavi matričnim izračunavanjima, dok Matplotlib predstavlja skup alata za grafičko predstavljanje podataka. Pored teksta nove glave koja nosi ime Pajton za inženjere: NumPy i Matplotlib, u okviru ovog izdanja dodati su i delovi teksta vezani za sledeće mogućnosti jezika:

  • uslovni izrazi - glava 3,
  • oblikovanje teksta pomoću formatirajućeg stringa - glava 5,
  • operatori raspakivanja - glava 5,
  • slučajno uzorkovanje pomoću odabira sa ponavljanjem - glava 6.

Nadam se da će učinjene izmene pomoći čitaocima da lakše savladaju neophodne tehnike programiranja.

Na kraju, zahvaljujem se kolegi Mladenu Nikoliću, kao i recenzentima Jelici Protić, Milu Tomaševiću i Branislavu Bajatu, koji su svojim vrednim komentarima pomogli da se tekst drugog izdanja što više poboljša. Posebno se zahvaljujem gospodinu Aleksandru Bakoču i kompaniji Daran Group, koji su omogućili štampanje kompletnog tiraža drugog izdanja.

Srećno!

Beograd, decembar 2023.

Predgovor prvom izdanju

Poštovani čitaoci,

pred vama je knjiga Osnove programiranja u Pajtonu, namenjena kako studentima prve godine Građevinskog fakulteta u Beogradu, tako i svima onima koji žele da pođu na ne tako lak, ali izazovan put ovladavanja veštinom programiranja. Kao i svaka druga veština, programiranje zahteva od početnika strpljenje i upornost. Olakšavajuća okolnost u procesu učenja ogleda se u mogućnosti da se uloženi rad vrlo brzo testira, tako što se novonastali program izvrši na računaru. Računar će, za razliku od čoveka, uvek izvršiti samo ono što mu se naredi. To često neće biti ono što se želelo, ali problem nije do računara već do programera koji svoje želje nije uspeo da pretoči u ispravan niz naredbi. Zato se u knjizi, pored programskog jezika, naglasak stavlja na osnovne tehnike za rešavanje pojedinih tipova problema.

Algoritmi, koji predstavljaju precizno definisane postupke za rešavanje problema na računaru, ilustrovani su putem kratkih programa realizovanih u Pajtonu. Jezik Pajton izabran je kako zbog svoje jednostavnosti, tako i zbog svoje otvorenosti i opšte prisutnosti, naročito u naučnoj i inženjerskoj zajednici. U knjizi se ne razmatraju sve mogućnosti i specifičnosti Pajtona. Za tu svrhu može se koristiti brojna literatura koja se bavi detaljnom specifikacijom jezika. Slično, rešenja pojedinih problema ne koriste uvek pristup svojstven stilu ekspertskog programiranja u Pajtonu. Ovo je učinjeno kako bi se naglasila opšta ideja nekog postupka rešavanja, primenjiva i u drugim modernim jezicima. Algoritamski pristup zahteva i izvesno poznavanje srednjoškolske matematike, što ne bi trebalo da predstavlja nepremostivu prepreku. Pojedini matematički problemi pružaju dobru podlogu za objašnjenje često korišćenih tehnika u inženjerskom programiranju. Jedostavan matematički aparat koristi se i prilikom analize složenosti pojedinih algoritama.

U Pajtonu se svi podaci, počevši od broja jedan pa do samog programa, predstavljaju objektima odgovarajućeg tipa. Objektima se mogu pridodati i željena ponašanja pa se, uz njihovu pomoć, mogu simulirati različiti realni sistemi. Zbog toga, knjiga pored proceduralnog, promoviše i objektno orijentisani pristup koji u centar rešavanja problema stavlja objekte kao apstrakcije podataka ili delove složenih sistema. Autor se nada da će čitaoci tako steći neophodnu inženjersku veštinu sagledavanja problema (sistema) kroz njegove jednostavnije potprobleme (podsisteme) i uočavanja veza između njih.

Programiranje se najbolje uči na primerima. Knjiga sadrži priličan broj ilustrativnih problema čija rešenja su detaljno objašnjena, a rad pridruženih programa ilustrovan na pogodan način. Čitaoci se ohrabruju da ih sve obavezno prostudiraju jer se u okviru njihovih rešenja ilustruju različiti teoretski i praktični koncepti.

Knjiga se ne bavi elementima programiranja koji se odnose na izgradnju korisničkog interfejsa, rad sa bazama podataka i drugim tehnikama za kreiranje poslovnih aplikacija. Ova odluka učinjena je u nameri da se pažnja čitaoca usmeri na osnovne tehnike koje se primenjuju u svim oblastima računarstva. Po savladavanju izložene materije biće daleko jednostavnije upustiti se u dublje programerske vode.

Na kraju, zahvaljujem se asistentima Dušanu Isailoviću i Mariji Petronijević na pomoći pri izradi slika, recenzentima Jelici Protić i Mladenu Nikoliću na uočenim nedostacima i korisnim predlozima u pogledu izložene materije, kao i Milosavi Mijović i Radmili Žeželj Ralić na lekturi i korekturi teksta. Njihovo zalaganje značajno je poboljšalo prvobitnu verziju knjige. Posebno se zahvaljujem Ministarstvu prosvete, nauke i tehnološkog razvoja Republike Srbije, koje je obezbedilo sredstva za štampanje knjige u okviru projekta ``Adaptacija master studija geoinformatike u skladu sa savremenim potrebama privrede i tržišta rada''.

Srećno!

Beograd, oktobar 2017.

O AUTORU

Kratka biografija

Miloš A. Kovačević rođen je 1968. godine u Beogradu. Diplomirao je na Elektrotehničkom fakultetu u Beogradu, odsek za računarsku tehniku i informatiku, 1995. godine. Na istom fakultetu magistrira 2001, a doktorira 2007. godine. Redovni je profesor na Građevinskom fakultetu u Beogradu. Bavi se mašinskim učenjem, veštačkom inteligencijom, kao i primenama informacionih tehnologija u građevinarstvu i geodeziji. Objavio je više naučnih radova u međunarodnim naučnim časopisima i na međunarodnim konferencijama. Za bibliografiju pogledati ovde. Oženjen je i otac je troje dece.

PAPIRNI FORMAT

Gde ga nabaviti?

Ako vam se dopada, knjigu možete nabaviti u papirnom formatu, od januara 2024. godine, u izdanju Akademske misli, na svim njihovim prodajnim mestima.

KOMENTARI

Imate primedbu ili komentar?

Ako imate primedbu, komentar ili ste otkrili grešku, možete pisati autoru na milos@grf.bg.ac.rs i na taj način poboljšati sledeće izdanje!