Teaching / Mobile Programming 1
Mobile Programming 1
Introductory course covering Kotlin fundamentals and Android app development with Jetpack Compose.
About the course
Mobile Programming 1 introduces students to the Android platform, the Kotlin language, and the basic tools and patterns used in mobile application development. The course combines language fundamentals with practical work in Android Studio, project structure, application lifecycle, user interface components and Jetpack Compose.
The current page collects lectures, laboratory assignments and the manuscript. Assignments and the manuscript are available as HTML pages, while the original Polish source notebooks remain downloadable as working materials.
Audience
The course is intended for students of Applied Computer Science and Measurement Systems, first-cycle studies, second year, summer term. The course consists of 15 lecture hours and 30 laboratory hours.
The prerequisite is basic object-oriented programming. The course assumes that students already know basic programming constructs and can move toward practical work with Kotlin, Android tooling and simple mobile applications.
Learning Outcomes
After completing the course, students should be able to:
- understand structural and object-oriented programming principles
- use
Kotlinand basic tools for mobile device programming - work with
Android Studioand version control tools - program efficiently in
Kotlin - build functional mobile applications
- apply new technologies and design patterns while developing an application
Organization and Assessment
The laboratory component is based on 6 assignment lists. Each list has its own grade, deadline and score. Solutions are submitted and discussed during laboratory classes, and the source code should be delivered through a GitHub repository.
Passing the course requires a minimum average grade of 3.0 across all assignment lists. The final grade is calculated as the arithmetic mean of the list grades. One missing or failed list is allowed; that list receives a 2.0 grade.
Scope
In practice, the course covers:
- syntax and core constructs of the
Kotlinlanguage - memory management and
Garbage Collection - functions, collections, classes, objects and interfaces
- initialization, delegation and object-oriented programming concepts
Androidapplication fundamentals: activity, lifecycle and project structure- basic graphical and functional application components
Jetpack Compose: composition, recomposition, state, lists and UI structure- navigation in
Compose - common design patterns used in mobile applications
Technical Requirements
The main working environment remains local Android Studio with Kotlin and Jetpack Compose support. A GitHub repository is required for assignment submissions because source code is part of the laboratory assessment.
Material Structure
The course page currently includes:
- the Polish PDF manuscript in two parts
- an HTML manuscript with a chapter menu
- a separate lecture page with PDF previews
- 6 assignment lists as HTML pages
- a link to the course materials repository