SylabUZ

Generate PDF for this page

Scripting languages - course description

General information
Course name Scripting languages
Course ID 11.3-WE-INFD-ScripLang-Er
Faculty Faculty of Computer Science, Electrical Engineering and Automatics
Field of study Computer Science
Education profile academic
Level of studies Second-cycle Erasmus programme
Beginning semester winter term 2021/2022
Course information
Semester 2
ECTS credits to win 5
Course type optional
Teaching language english
Author of syllabus
  • dr inż. Grzegorz Bazydło
  • dr hab. inż. Remigiusz Wiśniewski, prof. UZ
  • dr inż. Iwona Grobelna
Classes forms
The class form Hours per semester (full-time) Hours per week (full-time) Hours per semester (part-time) Hours per week (part-time) Form of assignment
Lecture 15 1 - - Credit with grade
Laboratory 30 2 - - Credit with grade
Project 15 1 - - Credit with grade

Aim of the course

  • Familiarize students with scripting languages for their practical use.
  • Shaping basic skills for improving daily computer tasks (at home, work) using scripting languages.

Prerequisites

Basic knowledge of operating systems (Windows, Linux), computer networks and websites design.

Scope

  • Virtualization, virtual machines, run the system environment from another operating system.
  • Tips and tricks of process management and automation tasks in Linux and Windows systems, practical use of the command line and scripting languages (e.g., Bash, CMD) in order to improve the efficiency of the usage of an operation system. Lifehacking.
  • Improve performance of the use of MS Office software, introduction to the VBA language. Markup languages (XML, HTML, XHTML). Websites design using Cascading Style Sheets (CSS), design of the document structure, using block elements, inserting embedded hyperlinks, tables and forms, validation of the HTML source.
  • Using scripting languages in design of websites and web services. Using PHP language in applications embedded on the server, data structures, fundamentals of the web applications design using frameworks, data transfer using GET and POST method, session control using cookies. Animating websites using JavaScript language, data operations, using Document Object Model (DOM), dynamic modification of Cascading Style Sheets (CSS).
  • Introduction to Python language: areas of application (from command line to web services), using data structures and files, implementation of the scripts using command prompt (data security, streamline daily tasks using scripts), using Python language (e.g., Django framework).
  • Security of web applications based on scripting languages (e.g., PHP). Threats from inappropriate use of cookies, data transfer using POST or GET methods. Protection against injection of malicious code (e.g., Code Injection, Cross-Site Scripting, SQL-Injection attacks).

Teaching methods

Lecture: conventional lecture, discussion.

Laboratory: laboratory exercises, work in groups.

Project: project method, discussion.

Learning outcomes and methods of theirs verification

Outcome description Outcome symbols Methods of verification The class form

Assignment conditions

Lecture – the passing condition is to obtain a positive mark from the final test.

Laboratory – the passing condition is to obtain positive marks from all laboratory exercises to be planned during the semester.

Project – the passing condition is to obtain a positive mark from all projects conducted during the semester.

Final mark components: lecture 30% + laboratory 40% + project 30%.

 

Recommended reading

  1. C. Albing, JP Vossen, C. Newham, bash Cookbook: Solutions and Examples for bash Users, O'Reilly Media, 2007.
  2. Chromatic, D. Conway, C. Poe, Perl Hacks: Tips & Tools for Programming, Debugging, and Surviving, O'Reilly Media, 2006.
  3. S. Stefanov, JavaScript for PHP Developers, O'Reilly Media, 2013.
  4. P. Barry, Head First Python: A Brain-Friendly Guide, 2nd Edition, O'Reilly Media, 2016.
  5. E. Freeman, E. Freeman, Head First HTML and CSS: A Learner's Guide to Creating Standards-Based Web Pages, O'Reilly Media, 2012.
  6. A. Pash, G. Trapani, Lifehacker: The Guide to Working Smarter, Faster, and Better, Third Edition, Wiley, 2011.
  7. A. Pash, Gina Trapani, Lifehacker: The Guide to Working Smarter, Faster, and Better, part 2, Wiley, 2011.

Further reading

  1. M. Lutz, Learning Python, 5th Edition, O'Reilly Media, 2013.
  2. J. Forcier, P. Bissex, W. Chun, Python Web Development with Django (Developer's Library), Addison-Wesley Professional, 2008.
  3. M. Dawson, Python Programming for the Absolute Beginner, 3rd Edition, Course Technology, 2010.
  4. E. T. Freeman, E. Robson, Head First HTML5 Programming: Building Web Apps with JavaScript, O'Reilly Media, 2011.
  5. L. Welling, L. Thomson, PHP i MySQL. PHP and MySQL Web Development (5th Edition), Addison-Wesley Professional, 2016.
  6. S. Armand, Extending Symfony 2 Web Application Framework, Packt Publishing, 2014.

Notes


Modified by dr inż. Grzegorz Bazydło (last modification: 17-07-2021 00:10)