Code::Blocks IDE - najbolja alternativa Microsoft Visual Studiju

Code::Blocks IDE - najbolja alternativa Microsoft Visual Studiju

Za razliku od operativnih sistema baziranih na linuxu, Microsoft-ovi i Apple-ovi sistemi imaju zaista malo izbora u ponudi kada su u pitanju razvojni alati. Naime, na ovim platformama ste vezani za razvojne alatke koje su i predviđene za samo te sisteme i proizvode ih isti oni koji kreiraju i sam sistem.
Nije problem u vezi kvaliteta tih alatki (na primer: za Windows programere Visual Studio nema premca) već su u pitanju i neki drugi faktori, kao na primer:
  • Mogućnost izbora između više mogućnosti,
  • Kreiranje multiplatformskih aplikacija,
  • Lakoća održavanja alata,
  • Sistemski resursi potrebni za čuvanje i pokretanje alata,
  • Lakoća korišćenja alata,
  • Lako podešavanje alata itd.
Većina ljudi koji rade na proizvodnim mašinama u nekoj firmi će se nasmejati na prethodne stavke jer se većina odgovora nađe u zahtevima klijenata. Ali postoje kategorije kojima ovo može bitno. Neke od njih su: učenici i studenti, developeri koji nisu zaposleni u nekom preduzeću, hobisti ili su to jednostavno ljudi koji vole da eksperimentišu i rade na zastarelom hardveru. Ove kategorije ne žele da preuzimaju desetine gigabajta podataka sa interneta, niti žele da čekaju par minuta da bi im se razvojni alat pokrenuo, kako bi kreirali "Hello world" program ili pak neki jednostavniji dll.
Za ljubitelje kodiranja u C++ postoje mnoge alternative, ali pronalazim da je Code::Blocks najbolja od njih. Nije da ne postoje neke poteškoće sa njegovim korišćenjem, ali ipak sam pokušao da odgovorim na par pitanja:
  • Lakoća instaliranja,
  • Sistemski resursi,
  • Veličina preuzimanja,
  • Lakoća podešavanja,
  • Mogućnosti pri radu itd.
U razmatranje su uzeti Code::Blocks, Qt Creator, Dev C++, Eclipse, CodeLite i (malo poznati, ali potencionalno kvalitetan) Ultimate++.
U poređenju sa Visual Studiom, svi ovi alati su manji, ne troše toliko resursa računara, brže se pokreću i lakše instaliraju. Međutim, u većoj ili manjoj meri, oni se nešto teže podešavaju za specifične zahteve i imaju nešto ograničenije mogućnosti pri radu.
Ali krenimo redom...

Dev C++

Dev C++ nam dolazi u dve varijante: Bloodshed i Orwell Dev C++. Bloodshed je onaj stari i originalni Dev C++ na koji obično ljudi misle kada se spomene taj naziv. Međutim, ovaj program se ne razvija već više od 10 godina! To znači da onaj ko radi na njemu ne može da očekuje nove mogućnosti niti da kodira u skladu sa novim standardima. Na žalost, ovaj razvojni alat je prilično zastupljen u obrazovnom sistemu (što dovodi i do poraznog zaključka da se određene obrazovne ustanove nisu uskladile sa najnovijim standardima). Umesto njega je u izvesnom trenutku uskočio Orwell Dev C++. U želji da se "probudi" jednostavan i kvalitetan ali u priličnoj meri zastareli softver, krenulo se u razvoj novog programa na staroj bazi. Međutim... I ovaj projekat je zamro pre dve-tri godine, tako da se može smatrati - zastarelim. Ne očekujte da će bagovi na ovom softveru biti ispravljani. Inače, odlika i jednog i drugog Dev C++ je lakoća instaliranja, mali sistemski zahtevi, brzo pokretanje, jednostavno proširivanje sa nekim dodacima i sl.

Eclipse

Eclipse je razvojni alat najviše okrenut ka Java programerima i veoma je moćan. Uz malo veći napor se može prilagoditi razvoju C++ aplikacija. Rezultat tog napora nije zadovoljavajuć: program "jede" sistemske resurse kao da su mu bogom dani. Iako ima pregršt mogućnosti, Eclipse po potrošnji resursa nije ništa bolji od Visual Studio-a, pa ga neću ni uzeti u razmatranje.

Qt Creator

Qt Creator je zgodan razvojni alat. Pre svega je namenjen razvoju grafičkih aplikacija pomoću C++ Qt framework-a. Qt Creator ima savremeni interfejs i gomilu zgodnih mogućnosti. Zbog Qt sistemskih zahteva u vezi grafičkog hardvera, postoji mogućnost da ovaj program neće raditi na starijim uređajima. Takođe, sa interneta se preuzima ono što želite. Ukoliko želite samo Qt Creator, birate najmanju instalaciju koja je "teška" samo oko 100 MB. Međutim, ova instalacija je "suva", što znači da joj je potrebno dodatno preuzimanje ili podešavanje kako bi ste počeli da išta radite sa njim. Iz tog razloga morate dodatno preuzeti kompajlere ili čak i čitav framework, što će za rezultat imati povlačenje od par stotina MB do čak više od dva GB podataka sa interneta. Zgodna stvar kod celog Qt-a kada je da kada se koristi zajedno sa MinGW kombinacijom alata preuzetih pomoću Maintrance tool-a, MinGW ne mora da bude podešen u PATH varijablama sistema, već samo u PATH varijablama QtCreatora, čime efikasno dobijamo neki vid virtuelnog razvojnog okruženja. Sem malo sporijeg pokretanja, Qt Creator ne zauzima preterano mnogo resursa što, u kombinaciji sa njegovim mogućnostima, čini veliki plus prilikom njegovog izbora kao razvojnog okruženja. Potrošnja resursa se znatno menja kada pokrenete grafički dizajner koji se nalazi u okviru Creatora, kada ćete iskusiti i onu lošu stranu ove priče. Takođe, licenciranje samog framework-a čine stvari mnogo komplikovanim, zbog čega ovo razvojno okruženje dobija jedan veliki minus. U čemu je stvar? Ukoliko koristite Qt biblioteke u svojem projektu, moraćete da ih ili dinamički linkujete ili da svoj projekat objavite pod nekom od licenci otvorenog koda. Ako to ne želite, onda morate da platite za komercijalnu licencu Qt framework-a. To se reflektuje i na sam Qt Creator. Da bi ste ga preuzeli sa interneta, morate da prođete kroz niz stranica koje Vas podsećaju na Vaše obaveze i odgovornosti. Prilično čudna odluka kreatora ovog alata, ali gledajući njegovu namenu - sasvim logična. Ogroman minus za to od mene.

Ultimate++

Ultimate++ (U++) je razvojno okruženje namenjeno kreiranju grafičkih aplikacija u Ultimate++ framework-u. Iako sam framework datira iz 2004-te godine i licencirano je pod BSD licencom (što je veoma zgodna stvar prilikom izbora razvojnog alata), ovo okruženje nikada nije doživelo neki veliki uspeh ili slavu. Razlozi za to su raznoliki, ali jedan od najvećih je taj što se U++ framework u velikoj meri bazira na korišćenju C++ šablona, što programerima znatno otežava debagovanje, uočavanje i otkrivanje grešaka u programu. Pa ipak, mnogo ljudi zaista vole ovaj koncept tako da je Ultimate++ oko sebe izgradio prilično kvalitetnu zajednicu. Samo U++ razvojno okruženje je portabl i dolazi u veličini od malo više od 100 MB zajedno sa MinGW skupom alata. Iako je pokrenuto okruženje malo, lagano sa resursima, brzo i puno različitih opcija (od kojih mnoge ne možete pronaći na mnogim "proslavljenijim" razvojnim okruženjima), utisak je da je rad na njemu pomalo neintuitivno. Naime, postoji navika da se u razvojnim okruženjima radi sa projektima, solucijama ili fajlovima. Kod Ultimate++ se to nazivaju paketi (packages - projekti ali i neki vid međustanice između projekata i solucija, jer se jedan paket može sastojati od mnoštva drugih nezavisnih paketa 😀) i asemblijima (assembly) koji predstavljaju skupove paketa, slično kao što su solucije skupine projekata. Sem ove konfuzije sa načinom upotrebe razvojnog okruženja postoji samo još jedna nebitna stavka: ovo razvojno okruženje nema savremeni interfejs što Vam, ako želite da radite, neće smetati, ali može biti znatno odbojno onima koji se prvi put susreću sa ovim IDE-om. Da nije ovih sitnijih zamerki, verovatno bih stavio Ultimate++ kao najbolju zamenu za Visual Studio C++ programerima, jer ovaj prilično potcenjen alat ima mnogo izvanrednih mogućnosti koje se ne ponašaju alavo prema resursima računara, ali je potrebno neko vreme navikavanja na njega.
U++ u akciji (screenshoot)

Code Lite

Code Lite je savremeni razvojni alat kreiran kako bi bio lep na oko i lak za korišćenje. Međutim... Code Lite ne dolazi sa kompajlerima, već njih zasebno morate instalirati i podesiti. Takođe, iako to nije preterano teško, svaku malo važniju sitnicu morate podesiti i dosta često konsultovati njihovu wiki stranicu. Ali... Budući da ćete želeti da koristite razne verzije biblioteka koje se razvijaju nekom brzinom, kao i sam Code Lite koji se isto tako brzo razvija, uputstva koja pronađete mogu biti - zastarela i samim tim - beskorisna. Neki put se jednostavan problem nepotrebno iskomplikuje i to je jedan od razloga zašto ovaj razvojni alat nije ni blizu konkurenciji. Ali, bože moj, Code Lite je mlad projekat i lepa budućnost je pred njim. Verovatno ovo moje opažanje neće biti validno nakon samo par meseci, ali sada je situacija ovakva.
I konačno...

Code::Blocks

Code::Blocks je razvojni alat koji dosta dugo koristi ljudima širom sveta za projekte veće ili manje važnosti. Iza sebe ima bogatu istoriju i u toku njegovog razvoja su implementirane najpotrebnije stvari koje omogućavaju da se projekti završavaju brzo i efikasno. Iako ga možete preuzeti sa MinGW skupom alata, Code::Blocks će kvalitetno obavljati posao i sa bilo kojim drugim kompajlerom. Sem za C/C++, možete ga koristiti i za programiranje u Fortranu. Najnovija verzija ovog razvojnog okruženja je 17.12 (što znači da je iz decembra 2017. godine). Instalacioni fajl (MinGW + Fortran kompajler) je nešto malo manji od 100 MB. U ovu veličinu je već ubačeno mnoštvo korisnih dodataka i, otprilike, sve što može biti potrebno pri radu. Za bilo koji problem postoje dobri wiki tutorijali, a ako se tamo ne pronađe rešenje, postoji kvalitetan forum. Iako je malo sporiji prilikom pokretanja (koje se može ubrzati na par načina) ne troši puno resursa računara. Brzo obrađuje projekte sa mnoštvom fajlova i prilično je brz i udoban pri radu. Interfejs nije preterano savremen, ali to nije ni bitno, jer su sve potrebne stavke tamo gde ste i navikli da budu.
Zbog svega iznesenog, smatram da je Code::Blocks trenutno najbolja alternativa Visual Studiu na Windowsu (iako držim oko na U++-u).
Ukoliko imate neko drugačije mišljenje ili iskustvo, slobodno ga ostavite u komentarima ispod teksta.

Коментари