Course title, code: Web Programming 2, GAINBAN-WEBPROG2-1
The aim of the course is the introduction of the standards, methods and tools of the modern web applications development.
- Advanced PHP programming, OOP in PHP, - Namespaces in PHP. Presentation of PHP class libraries. - Implementing the MVC design pattern in PHP. - PHP based frameworks, presentation of a selected framework. - Laravel: MVC, Dependency injection, Artisan, Using databases, Eloquent: Object-Relational Mapping, Dynamic layout design, CRUD application, Authentication
Course content - labs:
- Server-side programming in JavaScript, Node.js. - Node.js: Routes, Forms, OOP JavaScript, Using databases, Authentication, RESTful web-service, SOAP web-service, Object-Relational Mapping, MVC, Generate PDF, Node.js frameworks.
Knowledge:
- He/she knows the main programming paradigms, programming languages, development tools. His/her knowledge covers the modelling of IT systems, creation of database based systems, as well as the structure, operation and implementation of computer networks. His/her knowledge covers the characteristics of intelligent systems, the specificity of mobile application development, the management of state-of-the art general purpose operating systems, as well as the aspects of IT security.
- He/she is familiar with the important software development methodologies, and the notation systems for IT designs and documentation.
- He knows the vocabulary and special terms of the engineering profession in the Hungarian and English languages at least on the basic level.
- He/she is able to develop applications, program client-server and WEB, mobile operating systems, develop multiplatform systems.
He/she can apply his/her knowledge acquired during his/her study to acquire deeper knowledge in the field of information engineering and to process special literature and solve problems related to information technology.
- He/she cooperates with other computer science engineers, electrical engineers during team work, and with other experts during the analysis and solution of a problems.
- He/she constantly improves his/her knowledge and keeps up with the development of the computer engineering profession.
- He/she genuinely represents the professional principles of engineering and information technology fields.
- He/she is open to acquire new methods, programming languages and develop skills to use them.
- He/she makes an effort to work efficiently and to high standards.
- He/she feels responsible for IT systems analysis, development and operation, both individually and as part of a team.
- He/she reveals the weaknesses of the technologies applied, risks of processes and initiates measures which reduce them.
- He/she has a security-conscious attitude in posession of his/her professional knowledge, and is aware of potential threats and opportunities for attack, as well as is prepared to prevent them.
Mid-term study requirements:
During the semester, students take two 20-point computer-based exams in the laboratory, and at home they complete a 30-point Homework assignment from the lecture topics and a 30-point Homework assignment from the laboratory topics. The conditions for a successful semester are: achieving a total of at least 20 points on the two computer-based exams, at least 15 points on the lecture Homework assignment, and at least 15 points on the lab Homework assignment. In the first week of the semester, the instructor informs the students about the venue and time of the exams and information about the Homeworks.
Exam requirements:
1st position: The use of GAI tools is not permitted when solving tasks. This means that GAI tools cannot be used when creating or solving formative or summative assessment elements, and the use of generative AI constitutes academic misconduct. The use of AI tools for language and spelling checking is not subject to the complete ban under the 1st position.
Learning materials uploaded to Teams. All students are provided with separate, modern computer access in the laboratories. Internet resources are available in the computer service room reserved for students.
[1] George Schlossnagle: Advanced PHP Programming, Pearson Education, 2023, ISBN: 0672325616 [2] Drishti Jain: Ultimate Laravel for Modern Web Development, Orange Education Pvt Limited, 2024, ISBN: 8196782659 [3] Sebastian Springer: Node.js: The Comprehensive Guide, Packt Publishing Ltd, 2024, ISBN 978-1-4932-2293-3
[1] Antonio López: Learning PHP 7, Packt Publishing, 2016, ISBN 9781785880544. [2] Gottdank Tibor: Webszolgáltatások. XML alapú kommunikáció az Interneten. Computerbooks, 2003, ISBN 9789636183059. [3] Lorna Jane Mitchell: PHP Web Services, O’Reilly Media, 2013, ISBN 9781449356569. [4] David Flanagan: JavaScript: The Definitive Guide, Sixth Edition, O’Reilly Media, Inc., 2011, ISBN 9780596805524. [5] Learning Laravel, Free unaffiliated eBook created from Stack Overflow contributors, 2019, letölthető: https://www.computer-pdf.com/web-programming/php/915-tutorial-learning-laravel.html [6] Online sources: https://tutorialspoint.com https://w3schools.com https://www.php.net https://developer.mozilla.org/en-US/docs/Web/JavaScript/About_JavaScript https://laravel.com/docs https://react.dev/learn https://vuejs.org/v2/guide/ https://angular.io/docs