CM1102: Web Applications
School | Cardiff School of Computer Science and Informatics |
Department Code | COMSC |
Module Code | CM1102 |
External Subject Code | 100373 |
Number of Credits | 20 |
Level | L4 |
Language of Delivery | English |
Module Leader | DR Martin Caminada |
Semester | Double Semester |
Academic Year | 2017/8 |
Outline Description of Module
This module introduces Internet and web technologies in the context of the revolution in communications that has taken place in the worlds of business, education, leisure, and society as a whole. Students are provided with the practical skills, knowledge, and understanding needed to create modern web applications.
On completion of the module a student should be able to
1. Design, build, and test front-end web pages using HTML, CSS, JavaScript according to specifications.
3. Design, build, and test server-side software according to specifications.
4. Describe the structure of the Internet and the role of some of the network protocols (e.g. HTTP), and the client-server architecture.
5. Understand some of the legal and ethical and constraints on web development.
6. Apply security techniques to mitigate common threats to systems on the Internet.
How the module will be delivered
The module will be delivered through a combination of lectures, supervised lab sessions, example classes and tutorials as appropriate.
Skills that will be practised and developed
Front-end website construction using HTML, CSS, and JavaScript.
Server side development using scripting languages (e.g. Python) and frameworks (e.g. Django).
Awareness of the main network protocols and the structure of the Internet.
Effective use of third-party libraries to aid development.
Using browser developer tools and plug-ins to analyse and debug website performance.
Effectively using on-line API documentation.
Using version control software to manage and track individual work.
Understanding modern web development, including developing for multiple screen sizes and device capabilities.
How the module will be assessed
Continual assessment/Lab assessment: Continual assessment will aid progress towards achieving the learning outcomes of the module.
Coursework: The coursework will allow the student to demonstrate their knowledge and practical skills and to apply the principles taught in lectures.
Exam: A written exam (2 h) will test the student's knowledge and understanding as elaborated under the learning outcomes.
Assessment Breakdown
Type | % | Title | Duration(hrs) |
---|---|---|---|
Exam - Spring Semester | 50 | Web Applications | 2 |
Practical-Based Assessment | 20 | Four 5% Exercises In Front-End And Back-End Development | N/A |
Written Assessment | 30 | Web Site Development Large Project | N/A |
Syllabus content
Web programming
HTML5, CSS3, JavaScript
Web standards
Front-end frameworks and third party CSS/JS libraries
Creating dynamic web pages using JavaScript
Server-side development using frameworks (e.g. Django)
Using database systems
Privacy and security
Legal and ethical issues in data protection, accessibility
Commercial and Economic context of the web and web applications
Visual design and usability of websites, e.g.:
understanding the selection of fonts, colours, navigation
building responsive websites, mobile-first design
Knowledge of fundamental Internet technologies for communication
Essential Reading and Resource List
Please see Background Reading List for an indicative list.
Background Reading and Resource List
R. W. Sebesta (2012) Programming the World Wide Web, 7th Edition. Addison Wesley / Pearson.
R. J. Deitel and H. M. Deitel (2011) Internet & World Wide Web How to Program, 5th Edition. Pearson.
J. E. Kurose and K. W. Ross (2013) Computer Networking: A Top-Down Approach, 6th Edition. Pearson / Addison-Wesley.
R. Nixon (2009) PHP, MySQL & JavaScript. O’Reilly.
J. Duckett and R. Larsen (2013) Beginning HTML and CSS, Wiley.
C. Bates (2006) Web Programming: Building Internet Applications. Wiley.
H. E. Williams and D. Lane (2004) PHP and MySQL. O’Reilly.
J. Fawcett, L. R. E. Quin, D. Ayers (2012) Beginning XML, 5th edition, Wiley.
Adrian Holovaty, Jacob Kaplan-Moss (2007) The Definitive Guide to Django: Web Development Done Right.
Daniel Roy Greenfeld, Audrey Roy Greenfeld (2015) Two Scoops of Django: Best Practices for Django 1.8
PLEASE NOTE THAT THE READING LIST IS PRELIMINARY AND IS LIKELY TO CHANGE