Base Knowledge
object-oriented programming concepts
Teaching Methodologies
The following teaching methodologies are used in this course:
1. Expository method: explanatory method where theoretical foundations and concepts are presented by the teacher and discussed with the class. Concepts and information will be presented to students through, for example, slide presentations or oral discussions. It will be used in classes to structure and outline the information.
2. Demonstrative method: based on the example given by the teacher of a technical or practical operation that one wishes to be learned. It focuses on how a given operation is carried out, highlighting the most appropriate techniques, tools and equipment. It will be used, for example, in practical and laboratory classes.
3. Interrogative method: process based on verbal interactions, under the direction of the teacher, adopting the format of questions and answers. It allows for greater dynamics in the classroom and consolidates learning. It will be used, for example, to remember elements of previous classes and in revisions of the lectured content.
4. Active methods: pedagogical techniques will be used in which the student is the center of the learning process, being an active participant and involved in his own training. The teacher assumes the role of facilitator, stimulating critical thinking, collaboration, creativity and student autonomy. They will be applied in classes to achieve a dynamic and more lasting learning environment.
Learning Results
At the end of the course, the student will be able to:
1. Identify technologies and operating systems for mobile devices;
2. Develop applications for mobile devices based on the Android operating system;
3. Evaluate the importance of usability on mobile interfaces.
Program
1. Introduction to Mobile Computing
– Mobile Devices
– Mobile Operating Systems
– Mobile Application Development: usability
2. Introduction to the Android Operating System
– History and Versions
– Software Architecture and Layers
– The Android Ecosystem
– Android Distributions
3. Android Development Tools
– Android Studio
– Android SDK
– Android Virtual Device (AVD)
– Creating and Configuring AVDs
4. Android Application Development
– Activity Lifecycle
– Graphical User Interface Elements: TextView, EditText, Buttons, etc.
– Graphical Interface Layout
5. Android Activities and Intents
– Activity Invocation
– Data Passing Between Activities
6. Background Processing in Android:
– Processes and Threads
– The User Interface Thread
– AsyncTask
8. State and Persistence:
– State-Related Callbacks
– SharedPreferences
– Android Databases: SQLite
9. Content Providers
– Native Content Providers
– Content Resolvers
10. Android REST Client
– Retrofit
– REST Interface Definition
– Framework Configuration and Initialization
– Synchronous and Asynchronous Invocations
Curricular Unit Teachers
Francisco Carlos AfonsoGrading Methods
Regarding assessment, the following methods are foreseen:
1. Periodic Evaluation
Final Grade = 3 practical assignments (60%) + test (40%)
a) each evaluation component requires a minimum grade of 40%, without rounding, in order to obtain approval in the course unit;
b) the assignments involve submitting programs and reports through the academic management platform (Inforestudante), and their respective defense.
2. Evaluation by Exam
Final Grade = exam (40%) + project (60%)
a) each evaluation component requires a minimum grade of 40%, without rounding, in order to obtain approval in the course unit;
b) the project involves submitting a program and report through the academic management platform (Inforestudante), and its respective defense
Internship(s)
NAO
Bibliography
Griffiths, D., & Griffiths, D. (2021). Head First Android Development: A Brain-Friendly Guide (3rd ed.). O’Reilly Media.
Darwin, I. F. (2017). Android Cookbook: Problems and Solutions for Android Developers (2nd. ed). “O’Reilly Media, Inc.”.
Meier, R., & Lake, I. (2018). Professional Android (4th. ed.). Wrox.
Wickham, M. (2018). Practical Android. Apress.