Mobile Programming - Syllabus

Embark on a profound academic exploration as you delve into the Mobile Programming course () within the distinguished Tribhuvan university's BCA department. Aligned with the BCA Curriculum, this course (CACS351) seamlessly merges theoretical frameworks with practical sessions, ensuring a comprehensive understanding of the subject. Rigorous assessment based on a 60+20+20 marks system, coupled with a challenging passing threshold of , propels students to strive for excellence, fostering a deeper grasp of the course content.

This 3 credit-hour journey unfolds as a holistic learning experience, bridging theory and application. Beyond theoretical comprehension, students actively engage in practical sessions, acquiring valuable skills for real-world scenarios. Immerse yourself in this well-structured course, where each element, from the course description to interactive sessions, is meticulously crafted to shape a well-rounded and insightful academic experience.


Course Description

This course provides the comprehensive knowledge related to the Mobile programming, which encompasses integrated development environment, infrastructure, design, and develop and testing of mobile application, which communicate with database to solve real word problem.

Course Objectives:

The general objectives of this course is to develop mobile application that solve real word problem with use of current mobile technology.

Units

Introduction to Android Programming

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.


Designing the User Interface

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.


Android Activity

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.


UI Fragments, Menus and Dialogs

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)


Listview, Gridview and Recyclerview

Listview (Introduction, Features, Implementing listview in an application) Gridview (Introduction, Features, Implementing gridview in an application) Recyclerview (Introduction, Features, Implementing recyclerview in an application)


Advanced Android Concepts

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.


Introduction to ios and ios

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.


Lab works

Laboratory 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.