Abstract | Umjetna inteligencija (AI) obuhvaća širok spektar tehnika i algoritama koji omogućuju računalima da obavljaju zadatke koji tradicionalno zahtijevaju ljudsku inteligenciju, kao što su učenje, prepoznavanje uzoraka i donošenje odluka. U suvremenom programiranju, AI se sve više integrira u različite aspekte razvoja softvera, čime se otvaraju nove mogućnosti za stvaranje sustava koji mogu automatski učiti, prilagođavati se promjenjivim uvjetima, rješavati kompleksne probleme i optimizirati procese. Ovaj rad istražuje primjene AI u programiranju, s posebnim naglaskom na ključna područja kao što su strojno učenje, obrada prirodnog jezika, računalni vid i optimizacija. Strojno učenje omogućuje razvoj programa koji mogu analizirati velike količine podataka i učiti iz njih bez eksplicitnog programiranja svakog koraka. Obrada prirodnog jezika omogućuje sustavima da razumiju, interpretiraju i generiraju ljudski jezik, što se koristi u razvoju chatbotova, virtualnih asistenata i automatskog prevođenja. Računalni vid omogućuje računalima da "vide" i interpretiraju vizualne informacije, što se koristi u aplikacijama poput prepoznavanja lica, analize slika i autonomnih vozila. Optimizacija koristi AI algoritme za pronalaženje najboljih rješenja za kompleksne probleme, poput optimizacije ruta, rasporeda i resursa. Nadalje, rad analizira utjecaj ovih tehnologija na razvoj softvera, uključujući ubrzanje procesa programiranja, povećanje efikasnosti, smanjenje broja pogrešaka i omogućavanje razvoja sofisticiranih aplikacija koje prije nisu bile moguće. Također se razmatraju etički izazovi povezani s primjenom AI u programiranju, poput pristranosti u algoritmima, zaštite privatnosti i sigurnosti podataka. Cilj rada je pružiti sveobuhvatan pregled trenutnih i budućih primjena umjetne inteligencije u programiranju, ističući kako ove tehnologije mijenjaju način na koji se softver razvija i koristi. Očekivani doprinos rada ogleda se u boljem razumijevanju potencijala AI u programiranju te izazova s kojima se industrija suočava dok integrira ove napredne tehnologije u svakodnevnu praksu. |
Abstract (english) | Artificial Intelligence (AI) encompasses a wide range of techniques and algorithms that enable computers to perform tasks that traditionally require human intelligence, such as learning, pattern recognition, and decision-making. In modern programming, AI is increasingly integrated into various aspects of software development, opening up new possibilities for creating systems that can automatically learn, adapt to changing conditions, solve complex problems, and optimize processes. This paper explores the applications of AI in programming, with a particular emphasis on key areas such as machine learning, natural language processing, computer vision, and optimization. Machine learning enables the development of programs that can analyze large amounts of data and learn from it without explicitly programming every step. Natural language processing allows systems to understand, interpret, and generate human language, which is used in the development of chatbots, virtual assistants, and automatic translation. Computer vision enables computers to "see" and interpret visual information, which is used in applications such as facial recognition, image analysis, and autonomous vehicles. Optimization uses AI algorithms to find the best solutions for complex problems, such as route optimization, scheduling, and resource allocation. Furthermore, the paper analyzes the impact of these technologies on software development, including the acceleration of the programming process, increased efficiency, reduction of errors, and the enabling of sophisticated applications that were previously not possible. Ethical challenges related to the application of AI in programming are also considered, such as bias in algorithms, privacy protection, and data security. The aim of this paper is to provide a comprehensive overview of the current and future applications of artificial intelligence in programming, highlighting how these technologies are changing the way software is developed and used. The expected contribution of the paper lies in a better understanding of the potential of AI in programming and the challenges the industry faces as it integrates these advanced technologies into everyday practice. |