COMP 205 - Fall - 2023 - Syllabus
COMP 205 - Fall - 2023 - Syllabus
COMP 205 - Fall - 2023 - Syllabus
COURSE RECORD
Code COMP 205
Name Mobile Programming
Hour per week 5 (3 + 2)
Credit 4
ECTS 7
Level/Year Undergraduate
Semester Fall
Type Compulsory
Prerequisites COMP 101 Art of Computing
Coordinator(s) Dr. Rifat KURBAN
Description The course aims to teach the essentials of mobile programming to students
who have some background on object-oriented programming. The students
will learn how to write cross-platform (iOS and Android) mobile
applications using Flutter framework in the Android Studio IDE. The course
introduces the fundamental components used in mobile programming such
as user interface components, routes and navigation, local and remote data
storage using databases, and data retrieval from the Web. The course has
both lecture and practice sessions. The lecture session covers theoretical
concepts whereas the practice sessions give students a hands-on
experience on the topics covered in the lecture sessions.
Objectives Students will be aware of requirements for developing applications for
resource-constrained and mobile devices.
Students will gain experience on using Android Studio IDE to develop
mobile applications.
Students will learn to develop fully-fledged mobile applications.
Learning Outcomes By the end of the course, the student will be able to
LO1. Identify components of a mobile application
LO2. Visualize routes in a mobile application by sketching each screen in
the application
LO3. Use Android Studio IDE to develop mobile applications
LO4. Analyze functional and non-functional requirements of a mobile
application
LO5. Debug their code to achieve bug-free applications
LO6. Create fully-fledged mobile applications
Additional Info
Requirements
Teaching Learners will be provided with as many opportunities of hands-on practice
Methodology as possible with the aim of striking a balance between learner-centeredness
and sufficient guidance. Various forms of interaction (i.e., pair work and
group work) will also be encouraged to cater for learners with different
learning styles. Additionally, individuals will be expected to produce both in-
class writings and homework assignments in addition to the reading tasks,
which will encourage them to reflect and think critically. Technology will
also be incorporated into the classroom procedures in order to create a
better learning environment.
1
AGU Department of Computer Engineering
2023-2024 Fall Semester
COMP 205 Mobile Programming
https://www.udemy.com/course/learn-flutter-dart-to-build-ios-android-
apps/
https://www.udemy.com/course/flutter-bootcamp-with-dart/
Youtube:
https://www.youtube.com/watch?v=C-fKAzdTrLU&t=1023s
https://www.youtube.com/watch?v=CD1Y2DmL5JM
https://www.youtube.com/watch?v=71AsYo2q_0Y
https://www.youtube.com/watch?v=1ukSR1GRtMU&list=PL4cUxeGkcC9jL
Yyp2Aoh6hcWuxFDX6PBJ
https://www.youtube.com/watch?v=VPvVD8t02U8
ASSESSMENT
Evaluation Criteria Weight (%)
Assignments 15%
Group Project & Presentation 40%
Midterm 20%
Final 25%
Total 100%
COURSE LOAD
Activity Duration Quantity Work Load
(hour) (hour)
In class activities 2 14 28
Async Materials (Videos, Readings, etc.) 1 13 13
Lab 2 13 26
Group work for project 40 1 40
Pre-work for Presentation 3 1 3
Pre-work for Midterm 30 1 30
Pre-work for Final 30 1 30
Assignments 2 13 26
General Sum 196
ECTS: 7 (Work Load/25-30)
2
AGU Department of Computer Engineering
2023-2024 Fall Semester
COMP 205 Mobile Programming
WEEKLY SCHEDULE
W Date Topic Activities/Assignments Outcomes
1 Oct 2-6 Introduction and Flutter Basics, Flipped learning, problem LO1, LO3,
Part 1 solving, Assignment 1 LO6
2 Oct 9-13 Dart Basics, Part2 Flipped learning, problem LO1, LO3,
solving, Assignment 2 LO5, LO6
3 Oct 16-20 Widgets, Styling, and Adding Flipped learning, problem LO1, LO2,
Logic, Part 1 solving, Assignment 3 LO3, LO6
4 Oct 23-27 Widgets, Styling, and Adding Flipped learning, problem LO1, LO2,
Logic, Part 2 solving, Project Proposal LO3, LO6
5 Oct 30- Nov 3 Responsive & Adaptive User Flipped learning, problem LO2, LO3,
Interfaces and Apps; Widget solving, Assignment 4 LO4, LO6
and Flutter Internals
6 Nov 6-10 Navigation & Multiple Screens Flipped learning, problem LO2, LO3,
solving, Assignment 5 LO6
10 Dec 4-8 Working with User Input & Flipped learning, problem LO3, LO4,
Forms solving, Midterm Exam LO6
11 Dec 11-15 From Web to App: Data & Flipped learning, problem LO3, LO4,
Backend solving, Assignment 7 LO6
12 Dec 18-22 Adding User Authentication Flipped learning, problem LO2, LO3,
solving, LO4, LO6
13 Dec 25-29 Using Native Device Features Flipped learning, problem LO3, LO4,
(Camera, Maps, Location, etc.) solving, Assignment 8 LO6
14 Jan 1-5 Firebase SDK and Push Flipped learning, problem LO3, LO4,
Notifications solving, Assignment 9 LO6
15 Jan 8-12 Running Native Java or Kotlin Flipped learning, problem LO4, LO6
Code, Publishing Android Apps, solving,
Adding Animations
**This syllabus is tentative (it can be altered at the discretion of the instructor)**