Web aplikacija je softver čiji se kod nalazi na web serveru. Korisnik pristupa aplikaciji pomoću web brauzera, preko mreže, najčešće interneta ili intraneta. Web aplikacije su postale sastavni deo života. Npr. retko koja osoba danas, ne koristi internet poštu tj. email (Gmail, Yahoo, Hotmail, ...), koji zapravo predstavljaju web aplikacije. Kada na internetu čitate novine, taj web sajt pokreće web aplikacija. Društvene mreže(facebook, twitter itd.) su takođe web aplikacije. Kupovina polovnih automobila na internetu, čitanje novina ili dnevnog horoskopa elektronskim putem, takođe su web aplikacije. Web sajtovi se izrađuju raznim tehnologijama i u raznim programskim jezicima. Mogu se praviti potpuno “od početka” korišćenjem HTML-a i css-a, ali obično se koristi odgovarajući okvir(engl. framework) koji već ima neke svoje elemente programa koji se pišu po odgovarajućom pravilima i programer dalje samo razvija aplikaciju na taj postojeći okvir. Takođe postoje programi koji olakšavaju razvoj i administraciju web sajta, a to su tzv. CMS(Control Management System) pomoću kojih je kreirana većina postojećih websajtova. Primeri za CMS su: Wordpress, Joomla, Drupal, Magento i sl. Programi koji su najpopularniji za izradu web aplikacija su: HTML/CSSKoriste se za dizajn web sajtova. HTML je markap jezik za kreiranje izgleda stranica web sajta i koristi se u kombinaciji sa CSS-om. Sa znanjem ova dva jezika moguće je praviti statičke web sajtove. Da bi dobili bolju funkcionalnost treba koristiti i javascript. JavascriptPostoji verzija za server i za klijentsku stranu web aplikacije. Serverska verzija je Node javascript. Pomoću ovog jezika možemo dodati funkcionalnost web sajtu, tj. napraviti dinamički web sajt. Jednostavnija verzija javascripta je jquerry. JAVA programiranjeProgramski jezik Java se koristi osim za desktop aplikacije i za pravljenje web aplikacija. Koristi se za izgradnju server aplikacija za video igre i mobilne aplikacije. Ujedno i kamen temeljac za razvoj Android aplikacija, što ga čini miljenikom velikog broja programera. Sa svojim mantrom (pisati jednom, izvoditi bilo gde), dizajniran je da bude prenosiv i lako pokretljiv sa više softverskih platformi. PHP PHP zajedno sa bazama podataka kao što je MySQL predsatvlja esencijalani alat za izgranju web aplikacija. Pruža veliku moć i predstavlja samo srce orgomnih sajtova kao što su WordPress i Facebook. Predstavlja open-source jezik pa postoji gomila besplatnih pre-instaliranih modula koje možete prisvojiti i modifikovati, kako biste dobili najbolje rezultate. Spada u lakše jezike, zahtevajući od programera da jednostavno embenduju (ugrade) kod u HTML. Postoje brojni okviri(engl. framework) koji pomažu izradu web aplikacije u PHP-u, od kojih su najpopularniji Laravel, Zend Simphony, Yii itd. RubyOvaj jezik je osmislio Japanac Yukihiro Matsumoto sa idejom da napravi jezik koji je lak za upotrebu, dakle, pravljen je za potrebe programera a ne za potrebe kompjutera. Perl.Kreirao ga je Larry Wall, u početku dizajniran za tekst procesing. To je jezik opšte namene između ostalog i za mrežno programiranje i administraciju sistema. Perl je bio jezik izbora za razvoj WWW aplikacija sredinom 90-ih godina. Od samih svojih početaka to je jezik Unix i Linux sistemskih administratora koji ga koriste u svakodnevnom radu prvenstveno za automatizaciju procesa. Danas postoji i čitav niz korisničkih komercijalnih aplikacija pisanih u Perlu. Programiranje mobilnih aplikacija:Mobilna aplikacija je aplikacijski softver namenjen za rad sa pametnim telefona(smartphone), tablet računarima i drugim mobilnim uređajima. Ovde razlikujemo:
Trendovi u programiranju1. Mašinsko učenje i veštačka inteligencija (AI) - Sve veća primena u različitim industrijama, od zdravstva do finansija. - Alati i okviri kao što su TensorFlow i PyTorch su vrlo popularni. 2. Razvoj u oblaku (Cloud Computing) - Povećana upotreba platformi kao što su AWS, Azure i Google Cloud. - Fokus na skalabilne i fleksibilne aplikacije. 3. Internet stvari (IoT) - Rastuća potreba za softverom koji može upravljati povezanim uređajima. - Jezici poput Python-a i C-a su često korišćeni. 4. Kontejnerizacija i mikroservisi - Korišćenje alata kao što su Docker i Kubernetes za skalabilne aplikacije. - Arhitektura mikroservisa postaje standard za kompleksne sisteme. 5. DevOps - Integracija razvoja i operacija radi bržeg isporučivanja softvera. - Alati poput Jenkins-a, GitLab CI/CD i Ansible-a su široko korišćeni. 6. Razvoj mobilnih aplikacija - Popularnost okvira kao što su React Native i Flutter raste. - Fokus na hibridne aplikacije koje rade na više platformi. 7. Bezbednost softvera - Povećan fokus na bezbednost zbog rastućih pretnji. - Prakse kao što su DevSecOps (integracija bezbednosti u DevOps) su u porastu. Ovi trendovi i jezici pokazuju kako se tehnologija razvija i kako programeri moraju stalno da se prilagođavaju novim alatima i tehnikama.
0 Comments
Motivi ljudi da se bave programiranjem su različiti — neko želi da započne programersku karijeru, dok je nekome programiranje samo koristan dodatak veštinama u drugoj oblasti. Ima i onih koji ga uče kako bi mogli da pokrenu onlajn biznis, ili automatizuju neki dosadan posao. Programiranje aplikacija je veoma širok pojam jer postoji veliki broj aplikacija različite namene, tako da imamo aplikacije koje rade na lokalnom računaru(desktop ili native) aplikacije kao npr. Mozzila Firefox, CCliner, MSWord. Sa druge strane imamo programe vezane za operativni sistem, programe koji upravljaju raznim hardverskim uređajima (driwer). Programi koji se nalaze na nekom udaljenom serveru, a pristupa im se putem klijenta na lokalnom računaru(klijent program je program koji sa lokalnog računara komunicira sa serverom preko interneta) predstavljaju web aplikacije. Sve više je popularno pisanje programa za komunikaciju između raznih uređaja koji šalju podatke na zajedničku platformu(Internet of things-skraćeno IoT). Postoji dakle, veliki broj raznih programskih jezika koji se koriste za programiranje aplikacija. Jedan programski jezik nije pogodan za sve te brojne aplikacije već za određenu vrstu aplikacija, tako da programske jezike možemo svrstati na nekoliko grana: Programiranje desktop aplikacija:Čak i u današnje vreme, kada je internet signal dostupan skoro na svakom koraku, postoje trenuci kada nismo na mreži. Na primer, u vozu, autobusu ili avionu možemo ostati bez interneta, a vreme dok putujemo možemo iskoristiti da uradimo deo posla. Možda radimo na udaljenom gradilištu gde nema signala mobilne telefonije? Šta ako odemo u inostranstvo, nemamo WiFi pristup, a ne želimo da plaćamo roming? To su takođe situacije kada posao možemo da završimo samo pomoću desktop ili native aplikacija. Inženjeri u svakodnevnom radu za modeliranje, projektovanje i simulaciju različitih procesa koriste aplikacije koje zahtevaju veliku računarsku snagu. Pogađate, to su desktop aplikacije. Prograski jezik CJezik C je odličan ako ste još u školi, ako ste veoma mladi i imate puno vremena, i ako želite da počnete da učite od samog korena. To bilo kao da strane jezike počnete da učite sa latinskim ili staroslovenskim. Imaćete široko obrazovanje i sve dalje će vam biti mnogo lakše. Ipak, ovo je jedan od najtežih jezika, nije neophodan i sigurno nije najsrećniji izbor za prvi jezik, ako do sada niste imali nikakvog programerskog iskustva. Programski jezik C++ On je u samom vrhu popularnosti i veoma je tražen ne berzi poslova. Ipak, prilično je težak i opet nije najbolji izbor za početnike. Dobar je za programiranje kompjuterskih igrica, memorijski zahtevnih desktop aplikacija, konzola i mobilnih uređaja Programski jezik JAVAProšlo je 20 godina od njenog nastanka i u poslednjih 10-tak godina beleži rast popularnosti. Na najpoznatijoj listi što se tiče prisutnosti programski jezika, drži ubedljivo prvo mesto već dugo vremena. Jezik ne spada u najlakše za učenje, ali nije preterano težak. Programski jezik C#C# je primarni jezik za razvoj na Microsoft platformama i servisima. Bez Koristi se za pravljenje modernih web aplikacija koristeći Azure ili.NET, ali i aplikacije za Windows uređaje kao i desktop aplikacije za sopstvene potrebe. PythonSpada u jezike za opšte namene, ali se koristi i za programiranje web aplikacija. Za Python se često kaže da je jedan od najlakših jezika za učenje zbog svojih jednostavnih sintaksi. Python je kreiran 1991, lak je za učenje i ima odličnu biblioteku za razvijanje softwera u naučne svrhe, npr. za razvoj “veštačke inteligencije”.
|
AuthorSlobodan Tršek |