Course Details

MOBILE PROGRAMMING

COMP205

Course Information
SemesterCourse Unit CodeCourse Unit TitleT+P+LCreditNumber of ECTS Credits
3COMP205MOBILE PROGRAMMING3+2+047

Course Details
Language of Instruction English
Level of Course Unit Bachelor's Degree
Department / Program COMPUTER ENGINEERING
Type of Program Formal Education
Type of Course Unit Compulsory
Course Delivery Method Face To Face
Objectives of the Course 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.
Course Content 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.
Course Methods and Techniques Learners will be provided with as many opportunities of hands-on practice 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.
Prerequisites and co-requisities ( COMP101 )
Course Coordinator Associate Prof.Dr. RİFAT KURBAN https://avesis.agu.edu.tr/rifat.kurban rifat.kurban@agu.edu.tr
Name of Lecturers Associate Prof.Dr. RİFAT KURBAN https://avesis.agu.edu.tr/rifat.kurban rifat.kurban@agu.edu.tr
Assistants Research Assist. AYŞEGÜL KOÇAK - aysegul.kocak@agu.edu.tr
Work Placement(s) No

Recommended or Required Reading
Resources https://www.udemy.com/course/learn-flutter-dart-to-build-ios-android-apps/
Flutter Docs: https://docs.flutter.dev/
Dart Docs: https://dart.dev/guides
Will be shared on CANVAS
Will be shared on CANVAS
Will be shared on CANVAS

Course Category
Mathematics and Basic Sciences %0
Engineering %100
Engineering Design %0
Social Sciences %0
Education %0
Science %0
Health %0
Field %0

Planned Learning Activities and Teaching Methods
Activities are given in detail in the section of "Assessment Methods and Criteria" and "Workload Calculation"

Assessment Methods and Criteria
In-Term Studies Quantity Percentage
Yarıyıl İçi Çalışmalarının Başarı Notunun Katkısı 1 % 20
Yarıl yılSonu Sınavı/Dönem Projesinin Başarı Notuna Katkısı 1 % 25
Proje/Çizim 1 % 40
Laboratuar 10 % 15
Total
13
% 100

 
ECTS Allocated Based on Student Workload
Activities Quantity Duration Total Work Load
Yazılı Sınav 1 20 20
Grup Projesi 1 80 80
Takım/Grup Çalışması 1 10 10
Yüz Yüze Ders 14 5 70
Final Sınavı 1 30 30
Total Work Load   Number of ECTS Credits 7 210

Course Learning Outcomes: Upon the successful completion of this course, students will be able to:
NoLearning Outcomes
1 Identify components of a mobile application
2 Visualize routes in a mobile application by sketching each screen in the application
3 Use Android Studio IDE to develop mobile applications
4 Analyze functional and non-functional requirements of a mobile application
5 Debug their code to achieve bug-free applications
6 Create fully-fledged mobile applications


Weekly Detailed Course Contents
WeekTopicsStudy MaterialsMaterials
1 Introduction and Flutter Basics, Part 1 Flipped learning, problem solving, Assignment 1 -
2 Dart Basics, Part2 Flipped learning, problem solving, Assignment 2 -
3 Widgets, Styling, and Adding Logic, Part 1 Flipped learning, problem solving, Assignment 3 -
4 Widgets, Styling, and Adding Logic, Part 2 Flipped learning, problem solving, Project Proposal -
5 Responsive & Adaptive User Interfaces and Apps; Widget and Flutter Internals Flipped learning, problem solving, Assignment 4 -
6 Navigation & Multiple Screens Flipped learning, problem solving, Assignment 5 -
7 State Management Flipped learning, problem solving, Assignment 6 -
8 Active Study Week Active Study Week -
9 Working with User Input & Forms Flipped learning, problem solving, Midterm Exam -
10 From Web to App: Data & Backend Flipped learning, problem solving, Assignment 7 -
11 Adding User Authentication Flipped learning, problem solving, -
12 Using Native Device Features (Camera, Maps, Location, etc.) Flipped learning, problem solving, Assignment 8 -
13 Firebase SDK and Push Notifications Flipped learning, problem solving, Assignment 9 -
14 Running Native Java or Kotlin Code, Publishing Android Apps, Adding Animations Flipped learning, problem solving, -
15 Final Exam Project Submission -


Contribution of Learning Outcomes to Programme Outcomes
P1
C1 4
C2 5
C3 4
C4 5
C5 4
C6 5

Contribution: 1: Very Slight 2:Slight 3:Moderate 4:Significant 5:Very Significant


https://sis.agu.edu.tr/oibs/bologna/progCourseDetails.aspx?curCourse=74938&lang=en