TEORIJA KATEGORIJA KAO OSNOVA ZA RAZVOJ POSLOVNIH VEB APLIKACIJA
Ključne reči:
funkcionalno programiranje, teorija kategorija, funktor, monada, veb aplikacija, Scala
Apstrakt
Cilj ovog rada je da pokaže kako se striktni matematički formalizmi mogu iskoristiti kao osnova za razvoj produkcionih poslovnih veb aplikacija. Shodno tome, prvi deo rada, naslovljen teorijske osnove, daje pregled oblasti fundamenata matematike, konkretno teorije kategorija. Drugi deo rada, pregled stanja u oblasti, pokazuje kako se pojmovi teorije kategorija prevode u iskaze programskih jezika. Primeri su dati u programskom jeziku Scala, pre svega zbog široke upotrebe ovog programskog jezika. Treći deo rada je prikaz slučaja u kom je razvijena ilustrativna poslovna veb aplikacija namenjena testiranju učenika.
Reference
[1] Chiusano, P., & Bjarnason, R. (2014). Functional programming in Scala. Manning Publications Co.
[2] Adámek, J., Herrlich, H., & Strecker, G. E. (2004). Abstract and concrete categories. The joy of cats.
[3] Odersky, M., Altherr, P., Cremet, V., Emir, B., McDirmid, S., Micheloud, S., Mihaylov, N., Schinz, M., Stenman, E., & Zenger, M. (2006). An Overview of the Scala Programming Language Second Edition.
[4] Noel, W., & Dave, G. (2017). Scala with Cats.
[5] Lipovaca, M. (2011). Learn you a haskell for great good!: a beginner’s guide.
[6] „ZIO.dev. Summary.” URL: https://zio.dev/docs/overview/overview_index (pristupljeno u februaru 2020.)
[2] Adámek, J., Herrlich, H., & Strecker, G. E. (2004). Abstract and concrete categories. The joy of cats.
[3] Odersky, M., Altherr, P., Cremet, V., Emir, B., McDirmid, S., Micheloud, S., Mihaylov, N., Schinz, M., Stenman, E., & Zenger, M. (2006). An Overview of the Scala Programming Language Second Edition.
[4] Noel, W., & Dave, G. (2017). Scala with Cats.
[5] Lipovaca, M. (2011). Learn you a haskell for great good!: a beginner’s guide.
[6] „ZIO.dev. Summary.” URL: https://zio.dev/docs/overview/overview_index (pristupljeno u februaru 2020.)
Objavljeno
2020-08-27
Sekcija
Elektrotehničko i računarsko inženjerstvo