{"id":14000,"date":"2021-02-09T15:55:00","date_gmt":"2021-02-09T14:55:00","guid":{"rendered":"https:\/\/rafen.app\/uncategorized\/advanced-web-programming\/"},"modified":"2023-02-11T10:33:57","modified_gmt":"2023-02-11T09:33:57","slug":"advanced-web-programming","status":"publish","type":"post","link":"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/","title":{"rendered":"Advanced Web Programming"},"content":{"rendered":"<h5>Objectives and outcomes<\/h5>\n<p>Familiarity with the concepts of advanced programming of large-scale applications (Enterprise applications). Familiarity with the basic concepts on which advanced enterprise programming is based. Knowledge of the basic concepts of enterprise applications. Knowledge of multi-tiered applications. Familiarity with distributed programming and the concept of an application server. Knowledge of mechanisms for object-relational mapping. Knowledge of the concepts of transactions, isolation and locking. Knowledge of the mechanisms that enable developing enterprise applications, such as reflection, instrumentation and management of security mechanisms. Knowledge of the basics of aspect-oriented programming. Knowledge of LDAP technology. Knowledge of web service.<\/p>\n<h5>Lectures<\/h5>\n<p>Multitier applications and application servers. Java Enterprise Edition technologies. Enterprise JavaBeans technologies. Object-relational mapping. Transactions in Enterprise environment. Asynchronous messaging. Advanced and server-side JavaScript concepts. Reflection, annotations, class loaders, Security managers and instrumentation. Aspect-oriented programming. Web services. LDAP servers. Spring Boot environment.<\/p>\n<h5>Practical classes<\/h5>\n<p>Angular environment for client applications. Enterprise Java Beans and Java Enterprise Edition application servers. Writing session EJB beans. Writing entities, relations, and working with the JPA query language. Connection REST and EJB concepts. Consolidation of web and server applications. Using JMS concepts for asynchronous messaging. Use of Spring Boot environment for writing server (backend) side application. Writing own annotations, use of reflection. Writing class loaders. Writing Security Manager classes. The use of instrumentation to change the program during execution (run time).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Objectives and outcomes Familiarity with the concepts of advanced programming of large-scale applications (Enterprise applications). Familiarity with the basic concepts on which advanced enterprise programming is based. Knowledge of the basic concepts of enterprise applications. &#8230; <a title=\"Advanced Web Programming\" class=\"read-more\" href=\"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/\" aria-label=\"More on Advanced Web Programming\">Read more<\/a><\/p>\n <a href=\"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/\" class=\"more-link\" title=\"Read more\">Read more<\/a>","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[199],"tags":[],"class_list":["post-14000","post","type-post","status-publish","format-standard","hentry","category-subjects"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Advanced Web Programming - School of Computing<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Advanced Web Programming - School of Computing\" \/>\n<meta property=\"og:description\" content=\"Objectives and outcomes Familiarity with the concepts of advanced programming of large-scale applications (Enterprise applications). Familiarity with the basic concepts on which advanced enterprise programming is based. Knowledge of the basic concepts of enterprise applications. ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/\" \/>\n<meta property=\"og:site_name\" content=\"School of Computing\" \/>\n<meta property=\"article:published_time\" content=\"2021-02-09T14:55:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-02-11T09:33:57+00:00\" \/>\n<meta name=\"author\" content=\"RAF Admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"RAF Admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/advanced-web-programming\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/advanced-web-programming\\\/\"},\"author\":{\"name\":\"RAF Admin\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#\\\/schema\\\/person\\\/4e2166c781f2802c67414a1578c66a43\"},\"headline\":\"Advanced Web Programming\",\"datePublished\":\"2021-02-09T14:55:00+00:00\",\"dateModified\":\"2023-02-11T09:33:57+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/advanced-web-programming\\\/\"},\"wordCount\":227,\"publisher\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#organization\"},\"articleSection\":[\"Subjects\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/advanced-web-programming\\\/\",\"url\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/advanced-web-programming\\\/\",\"name\":\"Advanced Web Programming - School of Computing\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#website\"},\"datePublished\":\"2021-02-09T14:55:00+00:00\",\"dateModified\":\"2023-02-11T09:33:57+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/advanced-web-programming\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/advanced-web-programming\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/advanced-web-programming\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Homepage\",\"item\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Subjects\",\"item\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Advanced Web Programming\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/\",\"name\":\"School of Computing\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#organization\",\"name\":\"School of Computing\",\"url\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/cropped-raf-engleski.png\",\"contentUrl\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/cropped-raf-engleski.png\",\"width\":400,\"height\":66,\"caption\":\"School of Computing\"},\"image\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#\\\/schema\\\/person\\\/4e2166c781f2802c67414a1578c66a43\",\"name\":\"RAF Admin\",\"sameAs\":[\"https:\\\/\\\/raf.app\"],\"url\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/author\\\/rafadmin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Advanced Web Programming - School of Computing","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/","og_locale":"en_US","og_type":"article","og_title":"Advanced Web Programming - School of Computing","og_description":"Objectives and outcomes Familiarity with the concepts of advanced programming of large-scale applications (Enterprise applications). Familiarity with the basic concepts on which advanced enterprise programming is based. Knowledge of the basic concepts of enterprise applications. ... Read more","og_url":"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/","og_site_name":"School of Computing","article_published_time":"2021-02-09T14:55:00+00:00","article_modified_time":"2023-02-11T09:33:57+00:00","author":"RAF Admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"RAF Admin","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/#article","isPartOf":{"@id":"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/"},"author":{"name":"RAF Admin","@id":"https:\/\/raf.edu.rs\/en\/#\/schema\/person\/4e2166c781f2802c67414a1578c66a43"},"headline":"Advanced Web Programming","datePublished":"2021-02-09T14:55:00+00:00","dateModified":"2023-02-11T09:33:57+00:00","mainEntityOfPage":{"@id":"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/"},"wordCount":227,"publisher":{"@id":"https:\/\/raf.edu.rs\/en\/#organization"},"articleSection":["Subjects"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/","url":"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/","name":"Advanced Web Programming - School of Computing","isPartOf":{"@id":"https:\/\/raf.edu.rs\/en\/#website"},"datePublished":"2021-02-09T14:55:00+00:00","dateModified":"2023-02-11T09:33:57+00:00","breadcrumb":{"@id":"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/raf.edu.rs\/en\/subjects\/advanced-web-programming\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Homepage","item":"https:\/\/raf.edu.rs\/en\/"},{"@type":"ListItem","position":2,"name":"Subjects","item":"https:\/\/raf.edu.rs\/en\/subjects\/"},{"@type":"ListItem","position":3,"name":"Advanced Web Programming"}]},{"@type":"WebSite","@id":"https:\/\/raf.edu.rs\/en\/#website","url":"https:\/\/raf.edu.rs\/en\/","name":"School of Computing","description":"","publisher":{"@id":"https:\/\/raf.edu.rs\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/raf.edu.rs\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/raf.edu.rs\/en\/#organization","name":"School of Computing","url":"https:\/\/raf.edu.rs\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/raf.edu.rs\/en\/#\/schema\/logo\/image\/","url":"https:\/\/raf.edu.rs\/en\/wp-content\/uploads\/2023\/02\/cropped-raf-engleski.png","contentUrl":"https:\/\/raf.edu.rs\/en\/wp-content\/uploads\/2023\/02\/cropped-raf-engleski.png","width":400,"height":66,"caption":"School of Computing"},"image":{"@id":"https:\/\/raf.edu.rs\/en\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/raf.edu.rs\/en\/#\/schema\/person\/4e2166c781f2802c67414a1578c66a43","name":"RAF Admin","sameAs":["https:\/\/raf.app"],"url":"https:\/\/raf.edu.rs\/en\/author\/rafadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/posts\/14000","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/comments?post=14000"}],"version-history":[{"count":1,"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/posts\/14000\/revisions"}],"predecessor-version":[{"id":15246,"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/posts\/14000\/revisions\/15246"}],"wp:attachment":[{"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/media?parent=14000"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/categories?post=14000"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/tags?post=14000"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}