COURSE INFORMATION
Course Title: MOBILE PROGRAMMING
Code Course Type Regular Semester Theory Practice Lab Credits ECTS
CEN 346 B 99 2 2 0 3 6
Language: English
Compulsory/Elective: Elective
Classroom and Meeting Time: E214
Course Description: Introduction to programming in Java language for mobile platforms and teamwork. Presentation of methods for developing applications for mobile devices using their hardware and system capabilities
Course Objectives: Introduction to mobile platforms and how to program these platforms. Introduction to programming in Java language for mobile platforms and teamwork. Presentation of methods for developing applications for mobile devices using their hardware and system capabilities
COURSE OUTLINE
Week Topics
1 Class creation syntax, interfaces and other code elements in C#. Collections.
2 Building Windows mobile application. Usage of emulator, differences between project types. Application lifecycle.
3 Designing user interface using controls and containers.
4 Creating data models. Transferring data between data model and user interface. Data binding.
5 Advanced usage of data binding, with conversion and formatting. Usage of styles and templates for elements of application view.
6 Geolocation. Using mobile device sensors in mobile applications
7 Network communication. Usage of network sockets, web services and collecting data from the Internet.
8 MIDTERM EXAM
9 Storing data on the device. Using embedded databases and handling file input and output
10 Sharing data between applications. Utilization of user data from the device
11 Localization and internationalization. Developing multilingual applications and customizing for regional settings.
12 Advanced user interface design
13 Preparing application for publication in the Store. Application deployment
14 Implementation of multilingual application and preparing it to be published for end users
Prerequisite(s): Algorithms and data structures Object programming Java language
Textbook: Burnette E.: Hello, Android: Introducing Google's Mobile Development Platform., Pragmatic Bookshelf , 2010 Steele J.: The Android Developer's Cookbook: Building Applications with the Android SDK., Addison-Wesley Professional, 2010
Other References: Murphy M.: Beginning Android 3., Apress, 2011 Friesen J.: Learn Java for Android Development, Apress, 2010
Laboratory Work: Yes
Computer Usage: YES
Others: No
COURSE LEARNING OUTCOMES
1 Student has basic and extended knowledge of programming in C# language for the Windows platform
2 Student has knowledge about user interface development in accordance of platform requirements
3 Student can use selected technologies for mobile application development
4 Student can design and develop mobile application for the Windows platform using data binding techniques
5 Student can use existing documentation to gather information
6 Student understands a need for lifelong developing his or her own abilities in new programming languages and development environments
COURSE CONTRIBUTION TO... PROGRAM COMPETENCIES
(Blank : no contribution, 1: least contribution ... 5: highest contribution)
No Program Competencies Cont.
Bachelor in Computer Engineering (3 years) Program
1 Engineering graduates with sufficient theoretical and practical background for a successful profession and with application skills of fundamental scientific knowledge in the engineering practice. 4
2 Engineering graduates with skills and professional background in describing, formulating, modeling and analyzing the engineering problem, with a consideration for appropriate analytical solutions in all necessary situations. 4
3 Engineering graduates with the necessary technical, academic and practical knowledge and application confidence in the design and assessment of machines or mechanical systems or industrial processes with considerations of productivity, feasibility and environmental and social aspects. 4
4 Engineering graduates with the practice of selecting and using appropriate technical and engineering tools in engineering problems, and ability of effective usage of information science technologies. 4
5 Ability of designing and conducting experiments, conduction data acquisition and analysis and making conclusions. 4
6 Ability of identifying the potential resources for information or knowledge regarding a given engineering issue. 4
7 The abilities and performance to participate multi-disciplinary groups together with the effective oral and official communication skills and personal confidence. 4
8 Ability for effective oral and official communication skills in foreign language. 4
9 Engineering graduates with motivation to life-long learning and having known significance of continuous education beyond undergraduate studies for science and technology. 4
10 Engineering graduates with well-structured responsibilities in profession and ethics. 4
11 Engineering graduates who are aware of the importance of safety and healthiness in the project management, workshop environment as well as related legal issues. 4
12 Consciousness for the results and effects of engineering solutions on the society and universe, awareness for the developmental considerations with contemporary problems of humanity. 4
COURSE EVALUATION METHOD
Method Quantity Percentage
Homework
5
5
Midterm Exam(s)
1
20
Project
1
30
Final Exam
1
25
Total Percent: 100%
ECTS (ALLOCATED BASED ON STUDENT WORKLOAD)
Activities Quantity Duration(Hours) Total Workload(Hours)
Course Duration (Including the exam week: 16x Total course hours) 16 6 96
Hours for off-the-classroom study (Pre-study, practice) 4 4 16
Mid-terms 1 5 5
Assignments 5 4 20
Final examination 1 5 5
Other 4 2 8
Total Work Load:
150
Total Work Load/25(h):
6
ECTS Credit of the Course:
6