Web Application Development (ODAW)
The Web Application Development (ODAW) course covers core architecture concepts of the web, preparing students to build web interfaces and server-side services backed by relational databases.
The syllabus spans static page structure to dynamic server programming, covering accessibility, usability, responsive design, and basic security in web applications.
Course roadmap
Practical topics covered throughout the semester:
- Introduction and evolution: Internet fundamentals, web history, and the Internet of Things (IoT).
- Structuring and markup (HTML and HTML5):
- Lists, tables, and forms.
- Semantic elements, media (audio and video), and vector graphics (Canvas and SVG).
- Presentation and styling (CSS and CSS3):
- External, internal, and inline stylesheets.
- Responsive frameworks (Bootstrap, W3.CSS, Pure CSS).
- Flexbox and CSS Grid.
- Client-side programming (JavaScript):
- DOM tree manipulation and event handling.
- Form validation with regular expressions.
- Server-side programming (PHP):
- LAMP/WAMP server configuration (Apache, PHP, MySQL).
- Processing GET and POST requests, sessions, and cookies.
- Authentication flows and password hashing.
- Relational database integration.
- Student seminars on emerging frameworks and architectures.
- Final project: implementation of a full-stack web application.
Materials and environment
General information
- Classes: Tuesdays and Thursdays, 15:20
- Location: Lab F307
- Academic platform: Moodle UDESC
Development environment
- Reference guides: W3Schools documentation for HTML, CSS, JavaScript, and PHP.
- Local setup: Apache, PHP, and MySQL stack on Linux (Ubuntu) or Windows environments.
Practical exercises
The course follows a cumulative project format where each student selects a central domain (such as vehicle rentals, auto dealerships, or book catalogs) and completes ten sequential exercises:
1. Basic markup with HTML
- Exercises 1 to 3: page creation with text, images, and links. Progression into tables and forms, concluding with semantic HTML5 elements, audio, video, and Canvas.
2. Styling and layout with CSS
- Exercises 4 to 6: style organization using external sheets and reusable classes. Layout construction using Flexbox, CSS Grid, and utility frameworks such as Bootstrap.
3. DOM manipulation and logic with JavaScript
- Exercises 7 and 8: dynamic manipulation of DOM tree nodes, form event handling, and client-side input validation via regular expressions.
4. Server-side processing with PHP
- Exercises 9 and 10: PHP script setup, reading and writing text files for counters, session management with cookies, and handling GET/POST submissions with backend validation.
Seminars and complementary topics
As an auxiliary assignment, students research web technologies commonly used in industry:
| Category | Topics covered |
|---|---|
| Front-end and frameworks | Angular, Vue, CSS3, and TypeScript |
| Back-end and architecture | Python in web development, Laravel, and Lua |
| Standards and platforms | WebAssembly and the Semantic Web |
| Usability and security | Accessibility, responsive design, and application security |
About the professor
Prof. Dr. Débora Cabral Nazario
Contact: debora.nazario@udesc.br
Lattes Curriculum: http://lattes.cnpq.br/6905169880963398
Department: Computer Science (CCT-DCC)
Academic background:
- B.S. in Computer Science (UFSC, 2001)
- M.Sc. in Computer Science (UFSC, 2003)
- Ph.D. in Knowledge Engineering and Management (UFSC, 2015)
Tenured professor at Santa Catarina State University (UDESC), teaching in the department since 2004.