Course title, code: Web Programming 1, GAINBAN-WEBPROG1-1

Name and type of the study programme: Computer science engineering, BSc
Curriculum: 2021
Number of classes per week (lectures+seminars+labs): 2+0+2
Credits: 5
Theory: 50 %
Practice: 50 %
Recommended semester: 4
Study mode: full-time
Prerequisites: Programming 1
Evaluation type: term mark
Course category: compulsory
Language: english
Responsible instructor: Dr. Alvarez Gil Rafael Pedro
Responsible department: Department of Information Technologies
Instructor(s): Dr. Subecz Zoltán
Course objectives:
- Mastering the development of modern, complex web applications. - Understanding and using the architecture behind web-based applications. - Getting to know the basics of PHP-based server-side applications. - Mastering the basics of Frontend development.
Course content - lectures:

- How the Web works, understanding how standard websites work. - Getting to know the language elements of HTML. - Getting to know CSS syntax and form formatting. - Getting to know the syntax, variables and functions of PHP. - Principles of handling forms. - Theoretical foundations of session management using PHP. - Theory of PHP PDO database management. - Front Controller design pattern - The syntax and principles of the JAVASCRIPT language. - Presentation of JAVASCRIPT events, arrays, objects, functions. - JAVASCRIPT AJAX, fetch, Promise operation. - Overview of the newer standards of HTML and JAVASCRIPT. - Bootstrap basic, Responsive design with Bootstrap


Course content - labs:

- The operation of the Web, examination of the operation of standard websites. - Practical use of HTML language elements. - Application of CSS syntax and form formatting. - Use of PHP syntax, variables and functions. - Practicing the handling of forms. - Practical implementation of session management using PHP. - Core implementation of PHP PDO database management. - Front Controller design pattern - Practicing the basic use of the JAVASCRIPT language. - Application of JAVASCRIPT events, arrays, objects, functions. - Implementation of JAVASCRIPT AJAX, fetch, Promise examples. - Application of newer standards of HTML and JAVASCRIPT. - Bootstrap basic, Responsive design with Bootstrap

Acquired competences:
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.

Skills:

- 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.

Attitude:

- 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.

Autonomy and responsibilities:

- 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.

Additional professional competences:


Requirements, evaluation, grading:
Mid-term study requirements:
During the semester, the students create two computer based exams (for 25+35 points) in the laboratory and a 40-point Homework. Requirements for a successful semester: Achieving at least 20 points in the Homework and at least 30 points in the computer based exams. In the first week of the semester, the instructor informs the students about the venue and time of the exams and information about the Homework.
Exam requirements:

Study aids, laboratory background:

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.

Compulsory readings:

[1] David DuRocher: HTML and CSS QuickStart Guide, ClydeBank Media LLC, 2021, ISBN 1636100007 [2] Jon Duckett: PHP & MYSQL: Server-Side Web Development, John Wiley & Sons Inc, 2022 ISBN 1119149223 [3] David Flanagan: Javascript: The Definitive Guide, O'Reilly Media; 7th ed. edition, 2020 ISBN 1491952024

Recommended readings:

[1] https://www.w3schools.com/html/ [2] https://www.w3schools.com/css/ [3] https://www.w3schools.com/php/ [4] https://www.w3schools.com/js/ [5] https://www.w3schools.com/js/js_ajax_intro.asp