Scripting languages are widely used in the IT industry. Programming with scripting languages, also known as scripting, has several advantages compared to programming with other types of languages in that scripts facilitate rapid program development; can automate high-level jobs or tasks very effectively; and can be used to compose various software components, even binaries, into more complex and powerful applications. This course introduces the principles of scripting, covers one or two selected scripting languages in depth, and illustrates the advanced use of scripting by extensive case studies in application areas such as system administration, web application development, graphical user interface development, and text processing.
(https://www.cs.stonybrook.edu/students/Undergraduate-Studies/courses/CSE337)
(https://www.cs.stonybrook.edu/students/Undergraduate-Studies/courses/ISE337)
Instructor: Dr. Christopher Kane
Office: New Computer Science Building, Rm. 107
Office hours: Thursday: 4:00 - 6:00 PM, Friday: 3:30 - 5:00 PM, or by appoinment - on Zoom
Email: christopher.kane@stonybrook.edu
Week | Date | Lecture Topics/Notes | Readings |
1 | Mon. 01/23 | Course Intro | n/a |
Wed. 01/25 | Python: Variables, Values, and Datatypes | n/a | |
2 | Mon. 01/30 |
Python: Control Logic: Conditionals and Loops Programming Assignment 01 Assigned |
n/a |
Wed. 02/01 | Python: Functions and Data Structures | n/a | |
3 | Mon. 02/06 | Python: Functions and Data Structures | n/a |
Wed. 02/08 | Python: Data Structures and OOP | n/a | |
4 | Mon. 02/13 | Python: OOP and Miscellany | n/a |
Wed. 02/15 | Python: Application: Web Scraping | n/a | |
5 | Mon. 02/20 |
Regular Expressions Programming Assignment 01 Due Programming Assignment 02 Assigned |
n/a |
Wed. 02/22 | Regular Expressions in Python | n/a | |
6 | Mon. 02/27 |
Regular Expressions: Applications for Text Processing Midterm Exam 01 Review (If there is time) |
n/a |
Wed. 03/01 | Midterm Exam 01 | n/a | |
7 | Mon. 03/06 |
Introduction to Scripting for System Administration Programming Assignment 02 Due |
n/a |
Wed. 03/08 | Common Shell Commands | n/a | |
8 | Mon. 03/13 | Spring Break | n/a |
Wed. 03/15 | Spring Break | n/a | |
9 | Mon. 03/20 | Shell Scripting | n/a |
Wed. 03/22 |
Shell Scripting (cont.) Programming Assignment 03 Assigned |
n/a | |
10 | Mon. 03/27 | Windows Shell Scripting | n/a |
Wed. 03/29 | Windows Shell Scripting (cont.) | n/a | |
11 | Mon. 04/03 |
Application: GUI scripting in Python Programming Assignment 03 Due |
n/a |
Wed. 04/05 | Application: GUI scripting in Python (cont.) | n/a | |
12 | Mon. 04/10 | Application: Server-Side Scripting | n/a |
Wed. 04/12 |
Application: Server-Side Scripting in Python Programming Assignment 03 Assigned Programming Assignment 04 Assigned |
n/a | |
13 | Mon. 04/17 | Application: Server-Side Scripting Examples | n/a |
Wed. 04/19 | Midterm Exam 02 Review | n/a | |
14 | Mon. 04/24 | Midterm Exam 02 | n/a |
Wed. 04/26 | Application: Rapid Prototyping | n/a | |
15 | Mon. 05/01 | Application: Prototyping Distributed Algorithms | n/a |
Wed. 05/03 |
Application: Prototyping Distributed Algorithms Programming Assignment 04 Due |
n/a | |
Final | FINAL EXAM: Tuesday, May 16th, 2023, 2:15 - 5:00 PM |