Information on individual educational components (ECTS-Course descriptions) per semester

Degree programme:Bachelor Computer Science - Software and Information Engineering
Type of degree:FH BachelorĀ“s Degree Programme
 Summer Semester 2022

Course unit titleElective: Advanced Webapplications with Symfony
Course unit code0247606069
Language of instructionEnglish
Type of course unit (compulsory, optional)Elective
Semester when the course unit is deliveredSummer Semester 2022
Teaching hours per week3
Year of study2022
Level of course unit (e.g. first, second or third cycle)First Cycle (Bachelor)
Number of ECTS credits allocated5
Name of lecturer(s)Michael ZANGERLE

Prerequisites and co-requisites
  • Object oriented programming
  • HTML/CSS is an advantage
  • Computer network fundamentals
  • Database fundamentals, especially SQL
Course content
  • Introduction
    • PHP
    • Composer
    • Symfony
      • Routing
      • Controller
      • Templates with Twig
    • Translations
  • Doctrine ORM
    • Definition of entities
    • Entities loading and writing
    • DQL
  • Forms and validation
  • Security
    • Roles
    • Voter
  • Performance
    • HTTP-Cache: Esi, Varnish
    • CDN
    • Skalability: Heroku,
    • kernel.terminate
    • Messaging with Gearman/RabbitMQ
  • Event Dispatching
  • Bundle/System / Dependency Injection Container
    • Definition of Services
    • Using Services
      • Service Locator
      • Dependency Injection
    • Semantic Configuration
    • Compiler Passes
  • REST
    • FOSRestBundle
    • JMSSerializer
  • Testing
    • Unit-Testing: Mocks (Prohpecy)
    • Functional Testing: HTTP Request
    • End-to-End Tests (Selenium)
    • Test-Pyramide
Learning outcomes
  • Students Master the Symfony Framework
  • The students know the internal structure of Symfony
  • Students Master the Twig language
  • The students master the Doctrine ORM
  • The students have knowledge of the performance optimization
  • The students deepen their knowledge of design patterns by means of real examples
  • The students know the advantages and disadvantages of Dependency Injection
  • They are able to use the right techniques for individual customer projects or reusable components
  • The students know the basic principles of testing
  • They are able to read software documentation
Planned learning activities and teaching methods

Lecture and lab work.

Assessment methods and criteria

Assessment of lab work based on an oral exam.



Recommended or required reading
Mode of delivery (face-to-face, distance learning)

Classroom teaching

Summer Semester 2022go Top