An Introduction to the Rust Programming Language (CS4381.01)

Michael Corey

Rust is a new programming language focused on reliability and efficiency. Rust uses very specific approaches to types, memory-safety, and inheritance which make it an increasingly popular language for backend and system programming. In this course we will start by working through the the core learning documentation offered by the language community. After getting a firm footing in the language, we’ll pivot to writing working programs in the language. These programs can be tailored to the student’s individual plans and may include command line, gaming, or embedded programming. For the final part of the class, students will be offered the chance to contribute code to open issues in the open-source Rust community or work through a sizable project that relates to their plan or other interests.

While this course is an introduction to Rust, it is NOT an introductory programming course. Interested students should have experience programming in at least one other language (preferably Python, JavaScript, C/C++, or Java/C#) and have a firm understanding of many or most of the following topics: classes; inheritance; scope; types; functions; flow-control; Object Oriented programming; async; concurrency.

 


Learning Outcomes:
* Students will inquire as to why static typing, inheritance, and compiling create safe and reliable software.
* Students will create working Rust programs to put on their Github and use in their day-to-day programming life.
* Students will engage with a growing and vocal developer community.


Delivery Method: Hybrid
Prerequisites:
Interested students should have experience programming in at least one other language (preferably Python, JavaScript, C/C++, or Java/C#) and have a firm understanding of many or most of the following topics: classes; inheritance; scope; types; functions; flow-control; Object Oriented programming; async; concurrency. Contact Michael Corey (michaelcorey@bennington.edu) for additional information.
Course Level: 4000-level
Credits: 4
M/W 7:00PM-8:50PM (Full-term)
Maximum Enrollment: 12
Course Frequency: Every 2-3 years

Categories: 4000 , All courses , Computer Science , Four Credit , Hybrid
Tags: