Course detail

Multiplatform and mobile applications

FEKT-XPC-MMAAcad. year: 2024/2025

Students will acquire fundamental knowledge for creating mobile and cross-platform applications. Through computer exercises, they will gain an overview of the current state of technology and trends in the field of mobile applications, covering used technologies, design principles, development, and the publication process of an application. They will learn how to design an application and utilize AI for its efficient development.

Language of instruction

Czech

Number of ECTS credits

4

Mode of study

Not applicable.

Entry knowledge

Knowledge of high school mathematics is required.  Basic knowledge of object-oriented application design (one of the languages: C++, C#, Java, Kotlin, Python, Dart, Swift).

Basic familiarity with working in various operating systems.

Basic proficiency in terminal usage.

Basic knowledge of working with Git.

 

Rules for evaluation and completion of the course

The course is completed with a classified exam. Students may earn up to 100 points for the following activities:

  • 15 points – for mid-semester test (written part),
  • 25 points – for completing tasks on exercises (Weeks 1-10),
  • 60 points – for individual project.
 

Aims

The aim of the course is to familiarize students with the development of mobile and cross-platform applications. They will acquire skills in creating mobile applications covering design, graphic design, testing UX elements, implementation, verification, publication, and maintenance. In the first part of the course, students will delve into the development of simple applications for Android (Java) and iOS (Swift) with use of the AndroidStudio and Xcode environments. The second part of the course focuses on the development of cross-platform applications using the Flutter/VS Code environment in the Dart language. As part of the final project, students will create a functional application, demonstrate its operation on a selected mobile device, prepare project documentation, and defend the project. Students will learn:

  • the principles of user interface design with a focus on mobile applications,
  • basics of application development in Android/iOS systems,
  • how to create a cross-platform application in the Flutter/VS Code environment,
  • how to connect the application to the backend (database),
  • how to work efficiently with code using AI (ChatGPT and GitHub Copilot).
 

Study aids

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Not applicable.

Recommended reading

Not applicable.

Classification of course in study plans

  • Programme BPC-EKT Bachelor's, any year of study, summer semester, elective
  • Programme BPC-APE Bachelor's, any year of study, summer semester, elective

  • Programme MPC-AUD Master's

    specialization AUDM-TECH , any year of study, summer semester, elective
    specialization AUDM-ZVUK , any year of study, summer semester, elective

  • Programme MPC-BIO Master's, any year of study, summer semester, elective
  • Programme MPC-BTB Master's, any year of study, summer semester, elective
  • Programme MPC-TIT Master's, any year of study, summer semester, elective
  • Programme MPC-EVM Master's, any year of study, summer semester, elective
  • Programme MPC-EKT Master's, any year of study, summer semester, elective
  • Programme MPC-IBE Master's, any year of study, summer semester, elective
  • Programme MPC-EAK Master's, any year of study, summer semester, elective

Type of course unit

 

Exercise in computer lab

39 hours, compulsory

Teacher / Lecturer

Syllabus

Week 1: Introduction to mobile app development, introduction to Android Studio and Java language, GUI guidelines.

Week 2: Creating basic Android applications in Java, Gradle, libraries.

Week 3: Advanced techniques and concepts for Android app development in Java, Bluetooth interaction.

Week 4: Introduction to iOS app development and Swift language.

Week 5: Creating basic iOS applications in Swift.

Week 6: Introduction to cross-platform programming using Flutter and Dart language. Environment setup, compilation of a demo mobile app.

Week 7: Creating basic cross-platform applications using Flutter and Dart, building your own application.

Week 8: Advanced techniques and concepts for cross-platform app development using Flutter and Dart. Backend/database integration. Creating a server using Django and connecting it to the application.

Week 9: Start of the individual project, brainstorming, and planning.

Week 10: Working on the individual project, implementation.

Week 11: Working on the individual project, implementation and debugging.

Week 12: Completition of the individual project, testing, and debugging.

Week 13: Presentation of individual projects, evaluation, and feedback.