Back to site
Since 2004, our University project has become the Internet's most widespread web hosting directory. Here we like to talk a lot about web servers, web development, networking and security services. It is, after all, our expertise. To make things better we've launched this science section with the free access to educational resources and important scientific material translated to different languages.

Optimizing C++ - WWW verzija


____________________________________________________________________________________________


Zamislite da ste blizu da završite relativno veliki program,neki za koji je trebalo nekoliko nedelja ili meseci da ga napišete i otklonite greške.Baš kada stavljate finalne detalje u njega,otkrijete da je ili prespor ili ponestaje memorije kada ga napajate realnim setom ulaznih podataka.Uzdahnete,pa otpočnete zadatak optimiziranja istog.

Ali zašto optimizirati(poboljšati)?Ako se vaš program ne uklapa u memoriju,možete prosto nabaviti još memorije;ako je prespor,možete nabaviti brži processor.

Ja sam napisao Optimizing C++ ,jer verujem da je ovakav opšti stav neispravan,i da je poznavanje optimizacije ključno za profesionalnog programera.Veoma bitan razlog je što mi često imamo vrlo malu kontrolu nad hardware-om na kojem naši programi treba da rade.U ovoj situaciji,pojednostavljeni pristup dodavanja još hardware-a nije izvodljiv.

Optimizing C++ aktivnim programerima i onima koji nameravaju da to budu pruža praktični,realni ovozemaljski pristup optimizaciji programa.Mnoge od predstavljenih tehnika optimizacije potiču od mog čitanja akademskih časopisa koji su,na žalost,malo znani u “programerskoj zajednici”.U ovoj knjizi je takođe iskorišćeno mojih blizu 30 godina iskustva kao programer na različitim poljima primene,tokom kojih sam postajao sve zabrinutiji zbog količine napora potrošenog na ponovno smišljanje tehnika optimizacije,pre nego na primenu onih već razvijenih.

Prvo pitanje na koje treba da odgovorite je da li je vašem programu uopšte potrebna optimizacija.Ukoliko jeste,morate odrediti koji deo programa je krivac,a koji izvor je bio preterano korišćen.Poglavlje 1 ukazuje na metod napada na ove probleme,kao i primer iz realnog života.

Svi primeri u ovoj knjizi su sabrani sa Microsoft's Visual C++ 5.0 i DJGPP kompajlerima, napisani i zaštićeni autorskim pravima od strane DJ Delorie-a. Poslednji kompajler(prevodilac)je dostupan ovde .Lozinka izvora za primere je dostupna ovde .Ako želite da koristite DJGPP,preporučujem da nabavite i RHIDE,integrisani razvojni režim rada za DJGPP kompajler,napisan i zaštićen autorskim pravima od strane Roberta Hoehne-a,koji je dostupan ovde .

Sva statistika profilisanja i tempiranja vremena,osim ako je napomenuto drugačije,bila je rezultat rada korespodentnog programa sabranog sa Visual C++ 5.0 na mojoj Pentium II 233 Megahertz mašini sa 64 megabajta memorije.

Još jedna tema koja se često previdi je rezervno kopiranje(backup) u vašem kompjuteru .Treba uvek da se uverite da imate skorašnji backup,jer je gubljenje podataka poslednja stvar o kojoj biste morali da brinete.Ali i sa skorašnjim backup-om,i dalje biste mogli da izgubite neke podatke,stoga je dobro znati da(zavisno od tačnog rasporeda vašeg skladištenja)postoje opcije kao što je RAID data recovery koje možete iskoristiti kao pomoć da povratite vaše informacije.Sprovođenje ovih mera opreza se može učiniti nepotrebnim,ali to je dobra stvar koju treba uraditi kad god pravite suštinske izmene u vašem računaru.

Uvek mi je drago da primim prepisku od čitalaca.Ako želite da me kontaktirate,najbolji način je da posetite my WWW home page.

Ako vam više odgovara, možete mi poslati email .

U slučaju da uživate u ovoj knjizi i želeli biste da kažete drugima za nju,možda biste hteli da napišete on-line kritiku na Amazon.com,što možete uraditi ovde .

Takođe bi trebalo da vam kažem kako se razni tipovi znakova koriste u knjizi. HelveticaNarrow se koristi za programske listinge,termine korišćene u programima,i za reči definisane putem C++ jezika.Italic znakovi se koriste prvenstveno za tehničke termine nađene u rečniku,iako se koriste takođe i za naglašavanja na nekim mestima.Prvi put da koristim određeni tehnički termin koji vi možda ne znate,biće u bold obliku.

A sada, nastavljamo šou!



Published (Last edited): 05-09-2012 , source: http://www.steveheller.com/opt/