CMSC 436, Fall2022

Programming Handheld Systems

Time and Location TTh 12:30pm-1:45pm / ESJ 1224
Name Office E-mail Office Hours
Adam Porter 5212 IRB by appt.
Sai Yerramreddy AVW 4166 M:10:00am-12:00pm Zoom link
Suhas Sharma AVW 4166 T:10:00am-11:am, F:10:00am-11:am Zoom link
Rohith Chandrashekar Aralikatti AVW 4166 Th: 3:00pm-5:00pm Zoom link
Eun Jegal AVW 4166 T: 3:00pm-5:00pm Zoom link


  • TBD
  • Overview

    This course will teach fundamental programming principles with a focus on the mobile environment and the Android Platform. The course will emphasize practical application of numerous academic concepts.

    This course is intended to be a project-based course. The introductory weeks focus on essentials needed to work on these projects. Students will complete multiple weekly assignments and one final team project. Each student will work with a team to design and implement an application for the final project. Designing applications for a mobile device presents unique challenges. User interface, mobile-specific technologies, and the importance of performance require special consideration. The Android SDK has it's own interesting aspects to learn: the multi-touch model, accelerometer, important APIs will receive attention. Students will learn important development concepts applicable to any environment as well as Android specific APIs.

    Students should already have familiarity with Object Oriented Programming, and have studied basic algorithms and data structures. Course projects will be written in Kotlin using the Android SDK. Some smartphone and tablet devices will be available for student use at various times during the course.

    I will make PDF copies of the lecture slides and some in-class assignments available on the Lectures page of the website. There is no assigned textbook.

    I strongly encourage students to participate in class discussions on the class Discussion Forum.

    Class Links

    Web Accessibility