BCA Mobile Programming
Mobile Programming
Subject Code: CACS351
Course Title: Mobile Programming
Course No: CACS351
Nature of Course: Theory & Practical
Full Marks: 60+20+20
Pass Marks: 24+8+8
Credit Hours: 3
Course Description
Course Objective
Course Contents
Unit 1. Introduction to Mobile and Mobile Programming 2 Hrs.
Mobile Device (Features, Categories, History, Brands, Models and Platforms), Introduction to Mobile Programming
Unit 2. Introduction to Android Programming 4 Hrs.
Android Platform, History of Android, Environment Setup, Creating an android project, Laying out the user interface (The view hierarchy, widget attributes, creating string resources, previewing the layout), Creating a new class, Setting up the project, Running on the Emulator
Unit 3. Designing the User Interface 5 Hrs.
Android layout types (Linear, Relative, Table, Absolute, Constraint), Layout attributes, Android widgets (Textview, Edittext, Checkbox, Radiobutton, Spinner etc.) and its attributes, Event Handling, working with string, string array and colors, working with resources and drawable, adding icon to the project
Unit 4. Android Activity 4 Hrs.
The Activity life cycle, Creating multiple activities, Declaring activities in the manifest, Connecting activities with intents, Passing data between activities, Getting a result back from a child activity, Getting and setting data to/from the layout file
Unit 5. UI Fragments, Menus and Dialogs 6 Hrs.
The need for UI flexibility, Introduction to fragments, Lifecycle of fragment, Creating a UI fragment, Creating a fragment class, Wiring widgets in fragment, Introduction to fragment manager, Difference between Activity and Fragments, Menus (Introduction, Types, Implementing menu in an application), Dialogs (Introduction, Creating a dialog fragment, Setting a dialog's content)
Unit 6. Listview, Gridview and Recyclerview 6 Hrs.
Listview (Introduction, Features, Implementing listview in an application), Gridview (Introduction, Features, Implementing gridview in an application), Recyclerview (Introduction, Features, Implementing recyclerview in an application)
Unit 7. Advance Android Concepts 10 Hrs.
Local database with SQLite (Establishing connection, creating database and tables, data manipulation), Introduction to API, API Types, Introduction to JSON, Retrieving contents from remote server, Sending contents to remote server, Implementing Google Maps in android application, Procedure for publishing application on Google Play Store
Unit 8. Introduction to ios Programming 8 Hrs.
Introduction to ios and ios programming, ios platform, Environment setup, Creating an Xcode project, Building the interface, Making connections, Running on the simulator, Introduction to Swift language, Views and the view hierarchy, Storyboard and view controllers, working with widgets and its attributes, Creating a simple ios application
Text Books
- Bill Phillips, Chris Stewart, Brian Hardy, and Kristin Marsicano, Android Programming: The Big Nerd Ranch Guide, Big Nerd Ranch LLC, 2nd edition, 2015.
- Christian Keur and Aaron Hillegass, iOS Programming: The Big Nerd Ranch Guide, 5th edition, 2015.
- Brian Fling, Mobile Design and Development, O'Reilly Media, Inc., 2009.
- Maximiliano Firtman, Programming the Mobile Web, O'Reilly Media, Inc., 2nd ed., 2013.
Lab Works
Laboratory works should be done covering all the topics listed above and a small project work should be carried out using the concept learnt in this course. Project should be assigned on individual basis.
