Developing Mobile Applications II. (GAINBAN-FEJLMOE2-1)

Basic data
Name and type of the study programme
Computer Science Engineering, undergraduate program
Curriculum
2022
Classes / consultation hours
2 + 0 + 2 (L+S+Labs)
Credits
5 credits
Theory – Practice
Theory: 50%, Practice: 50%
Recommended semester
Semester 6
Study mode
full-time
Prerequisites
Java Applications
Evaluation type
Mid-term evaluation
Course category
Compulsory elective in the specialization
Language
English
Instructors
Responsible instructor
Dr. Bolla Kálmán Milán
Responsible department
Department of Information Technologies
Instructor(s)
Dr. Bolla Kálmán Milán
Checked by
Kovács Márk
Course objectives

The aim of the course is to introduce the basics of application development for the Android platform using the Java programming language.

Course content
Lectures

Android Studio and SDK, emulator. Development options, introduction to Android application components (Activity, Service, Content provider, Broadcast receiver). Building an Android project, using IDE. Basic UI controls, layout management elements, user interface creation. Activity lifecycle model, creating and using fragments. Data binding, image management, creating lists. Architecture components. Using web services, connecting to REST API endpoints.

Labs

Creating user interfaces, UI controls. Activity lifecycle model. Using fragments. Creating a list-detail view. Using Android Architecture Components. Implementing connection to REST API endpoints.

Acquired competences
Knowledge

- He/she knows the main programming paradigms, programming languages, development tools. His/her knowledge covers the modelling of IT systems, creation of database based systems, as well as the structure, operation and implementation of computer networks. His/her knowledge covers the characteristics of intelligent systems, the specificity of mobile application development, the management of state-of-the art general purpose operating systems, as well as the aspects of IT security. - He/she is familiar with the important software development methodologies, and the notation systems for IT designs and documentation. - He knows the vocabulary and special terms of the engineering profession in the Hungarian and English languages at least on the basic level.

Skills

- He/she is able to develop applications, program client-server and WEB, mobile operating systems, develop multiplatform systems. He/she can apply his/her knowledge acquired during his/her study to acquire deeper knowledge in the field of information engineering and to process special literature and solve problems related to information technology. - He/she can communicate in Hungarian and in English about professional issues, he/she uses the terms of information technology in a creative way. - He/she constantly improves his/her knowledge and keeps up with the development of the computer engineering profession.

Attitude

- He/she genuinely represents the professional principles of engineering and information technology fields. - He/she is open to acquire new methods, programming languages and develop skills to use them. - He/she makes an effort to work efficiently and to high standards.

Autonomy and responsibilities

- He/she reveals the weaknesses of the technologies applied, risks of processes and initiates measures which reduce them. - He/she has a security-conscious attitude in posession of his/her professional knowledge, and is aware of potential threats and opportunities for attack, as well as is prepared to prevent them.

Requirements, evaluation and grading
Mid-term study requirements

Individual or group solution of a project assignments issued by the instructor (using git version manager), completion of mid-term milestones, presentation and defense of the project at the end of the semester. Completion of other mid-term assignments issued by the lecturer or instructor.

Generative AI usage

1st position: Use of GAI tools is not permitted for solving assignments. This means GAI tools cannot be used to complete formative or summative assessments, and using GAI constitutes academic misconduct. The use of AI tools for spelling and grammar checking does not fall under this prohibition.

Study aids, laboratory background

Android Studio és SDK: https://developer.android.com/studio/ Git: https://git-scm.com/ Gitlab: https://gitlab.com/ Sourcetree: https://www.sourcetreeapp.com/

Readings
Compulsory readings

[1] Google Android Developers: http://developer.android.com

Recommended readings

[1] Google Android Developers: http://developer.android.com