Timsort
Sigurno ste se pitali koji algoritam sortiranja se izvršava kada se pokrene ugrađena sort funkcija? Odgovor nije jednstven za sve implementacije ali jedan od najzastupljenijih je definitivno timsort. Timsort je hibridni, stabilni algoritam, izveden od merge sort i insertion sort algoritama. Razvio ga je Tim Peters 2002. godine za potrebe programskog jezika Python. Danas je […]
Pročitaj ostatak
Algoritmi sortiranja
Algoritmi sortiranja prestavljaju algoritme čiji je cilj da postave elemente kolekcije u ispravan redosled. Najčešće se redosled utvrđuje operatorom poređenja koji se definiše za elemente. Kod brojnih vrednosti to može biti operator < ili >, tekstualne tipove možemo sortirati leksikografski (u abedecnom redosledu) ili po dužini podatka… Sortiranje se primenjuje kako bi podaci bili pregledniji, […]
Pročitaj ostatak
Zašto je objektno-orijentisano programiranje (OOP) temelj modernog softverskog razvoja?
U svetu tehnologije i programiranja, objektno-orijentisano programiranje (OOP) je osnova na kojoj počiva moderni dizajn i razvoj softvera. OOP pristup stavlja pažnju na objekte umesto na funkcije i daje mogućnosti za kreiranje fleksibilnog, efikasnog i lako održivog koda. U nastavku su četiri osnovne karakteristike OOP: Modularnost i nasleđivanje Objektno-orijentisani programi karakteriše visok stepen modularnosti, što […]
Pročitaj ostatak
Pisanje “čistog” koda
Šta je to “čist” kod? Čist kod (clean code) predstavlja programski kod koji se lako čita, razume i menja. Potreba za pisanjem čistog koda postaje veoma izražena kako softverski sistemi rastu i postaju kompleksniji, te se javlja potreba za održavanjem. Visoko kvalitetan i čist kod znatno olakšava održavanje softverskih sistema. Čist kod: se lako održava […]
Pročitaj ostatak
Razlozi za učenje struktura podataka i algoritama
Razumevanje struktura podataka i algoritama (Engl. Data structures and algorithms, DSA) je ključno za bilo kog studenta ili profesionalca iz oblasti računarstva. Evo glavnih razloga za učenje algoritama i struktura podataka: Efikasnost u rešavanju problema Učenjem različitih struktura podataka možete skladištiti i organizovati podatke na način koji olakšava operacije poput pretrage, dodavanja, brisanja i prolaska. […]
Pročitaj ostatak
5 knjiga koje svaki programer treba da pročita
Svaki profesionalni programer treba da nastavi usavršavanje svojih veština nakon završenog kursa ili fakulteta. Ove veštine se ne odnose samo na pisanje koda, već i na organizaciju koda, pristup rešavanju problema, kao i kolaboraciju sa kolegama iz tima. Izučavanjem relevantne literature se mogu steći nova znanja koja unapređuju ove veštine. Izdvojili smo za vas 5 […]
Pročitaj ostatak