CSE335 Lab Mannual

Download as pdf or txt
Download as pdf or txt
You are on page 1of 16

Daffodil International University

Department of Computer Science and Engineering

Lab Manual
Version: 2022.01

Course Code: CSE 335


Course Title: Pervasive Computing and Mobile Application
Development
Table of Contents

Sessions Session Name Pages

1 Introduction to Mobile Application Development 3

2 Introduction to Dart 4

3 Object Oriented Programming with Dart 5

4 Introduction to Flutter 6

5 Introduce with basics classes-1 7

6 Introduce with basics classes-2 8

7 Develop A Simple Calculator-1 9

8 Develop A Simple Calculator-2 10

9 Gradient, Drawer, Bottom Navigation 11

10 Work with API 12

11 Work with Google Sheet 13

12 Firebase 14

13 Project integration and presentation 15


Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Session 1: Introduction to Mobile Application Development (Week-1)


Intended Learning Outcome:
By end the end of this session, students are expected to gain a brief knowledge on mobile application
development.
Session Topics:
▪ Introduction to Mobile Application development
▪ Importance of Application Development
▪ Types of Mobile Application Development

Expected Learning Outcome:


▪ Understand about the mobile application development
▪ Able to know its importance on business, user, and developer perspective
▪ Understand the different types of application development
Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Session 2: Introduction to Dart (Week-2)


Intended Learning Outcome:
By end the end of this session, students are expected to gain working knowledge on Dart programming
language.
Session Topics:
▪ Input / Output
▪ Datatype
▪ Variable
▪ If-else
▪ Loop
▪ List & Map

Expected Learning Outcome:


▪ Write basic program using Dart
▪ Able to solve problems using Dart

Lab Exercise:
▪ Solving 4/5 basic problems in dart language.

Tools:
▪ Android Studio
▪ Visual Studio Code
▪ Emulator
▪ Browser

Copyright © Daffodil International University, 2022 4


Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Session 3: Object Oriented Programming with Dart (Week-3)


Intended Learning Outcome:
By end the end of this session, students are expected to gain working knowledge on Object Oriented
Programming with Dart programming language.
Session Topics:
▪ Importance of OOP
▪ Class
▪ Object
▪ Encapsulation
▪ Constructor
▪ Inheritance
▪ Polymorphism

Expected Learning Outcome:


▪ Will be able to solve OOP related problems with dart.

Lab Exercise:
▪ Solving 2/3 basic OOP problems in dart language.

Tools:
▪ Android Studio
▪ Visual Studio Code
▪ Emulator
▪ Browser

Copyright © Daffodil International University, 2022 5


Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Session 4: Introduction to Flutter (Week-4)


Intended Learning Outcome:
By end the end of this session, students are expected to gain working knowledge on flutter basics.
Session Topics:
▪ Flutter project creation
▪ Hot Reload/Restart
▪ MaterialApp Class
▪ Scaffold Class
▪ Color Class
▪ Text Class
▪ TextStyle Class

Expected Learning Outcome:


▪ Will be able to create a flutter project
▪ Will be able to use the mentioned classes to solve problems

Lab Exercise:
▪ Create flutter project
▪ Use the classes to solve 1/2 problem

Tools:
▪ Android Studio
▪ Visual Studio Code
▪ Emulator
▪ Browser

Copyright © Daffodil International University, 2022 6


Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Session 5: Introduce with basics classes-1 (Week-5)


Intended Learning Outcome:
By end the end of this session, students are expected to gain working knowledge on flutter basic classes.
Session Topics:
▪ AppBar Class
▪ Icons Class
▪ Center Class
▪ Container Class
▪ Inkwell Class

Expected Learning Outcome:


▪ Will be able to use the mentioned classes to solve problems

Lab Exercise:
▪ Use the classes to solve 1/2 problem

Tools:
▪ Android Studio
▪ Visual Studio Code
▪ Emulator
▪ Browser

Copyright © Daffodil International University, 2022 7


Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Session 6: Introduce with basics classes-2 (Week-6)


Intended Learning Outcome:
By end the end of this session, students are expected to gain working knowledge on flutter basic classes.
Session Topics:
▪ Column Class
▪ Row Class
▪ Expanded Class
▪ SizedBox

Expected Learning Outcome:


▪ Will be able to use the mentioned classes to solve problems

Lab Exercise:
▪ Use the classes to solve 1/2 problem

Tools:
▪ Android Studio
▪ Visual Studio Code
▪ Emulator
▪ Browser

Copyright © Daffodil International University, 2022 8


Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Session 7: Develop A Simple Calculator-1 (Week-7)


Intended Learning Outcome:
By end the end of this session, students are expected to gain working knowledge on flutter frontend
design.
Session Topics:
▪ Design the interface of the calculator

Expected Learning Outcome:


▪ Will be able to know how to design a basic app interface

Lab Exercise:
▪ Design the interface of the calculator according to student’s design sense

Tools:
▪ Android Studio
▪ Visual Studio Code
▪ Emulator
▪ Browser

Copyright © Daffodil International University, 2022 9


Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Session 8: Develop A Simple Calculator-2 (Week-8)


Intended Learning Outcome:
By end the end of this session, students are expected to gain working knowledge on how to build
functionalities based on the design.
Session Topics:
▪ Build functionality of the calculator

Expected Learning Outcome:


▪ Will be able to know how to add functionalities in an application

Lab Exercise:
▪ Build 1/2 functionalities for the calculator

Tools:
▪ Android Studio
▪ Visual Studio Code
▪ Emulator
▪ Browser

Copyright © Daffodil International University, 2022 10


Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Session 9: Gradient, Drawer, Bottom Navigation (Week-9)


Intended Learning Outcome:
By end the end of this session, students are expected to gain working knowledge on flutter classes
specially how to create menu in flutter.
Session Topics:
▪ Will be able to use the mentioned classes to solve problems

Expected Learning Outcome:


▪ Will be able to use the mentioned classes to solve problems

Lab Exercise:
▪ Use the classes to solve 1/2 problem

Tools:
▪ Android Studio
▪ Visual Studio Code
▪ Emulator
▪ Browser

Copyright © Daffodil International University, 2022 11


Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Session 10: Work with API(Week-10)


Intended Learning Outcome:
By end the end of this session, students are expected to gain working knowledge on API usage in flutter.
Session Topics:
▪ API Integration in flutter

Expected Learning Outcome:


▪ Will be able to use API in flutter application

Lab Exercise:
▪ Use API to solve 1/2 problem

Tools:
▪ Android Studio
▪ Visual Studio Code
▪ Emulator
▪ Browser

Copyright © Daffodil International University, 2022 12


Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Session 11: Work with Google Sheet (Week-11)


Intended Learning Outcome:
By end the end of this session, students are expected to gain working knowledge on how to use Google
Sheet to store data using flutter.
Session Topics:
▪ Google Sheet CRUD operation in flutter.

Expected Learning Outcome:


▪ Will be able to use Google sheet as database.

Lab Exercise:
▪ Use Google Sheet to solve 1/2 problem

Tools:
▪ Android Studio
▪ Visual Studio Code
▪ Emulator
▪ Browser

Copyright © Daffodil International University, 2022 13


Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Session 12: Firebase (Week-12 to Week-14)


Intended Learning Outcome:
By end the end of this session, students are expected to gain working knowledge on how to use Firebase
to store data using flutter.
Session Topics:
▪ Introduction to Firebase
▪ Firebase Authentication
▪ Firebase Push Notification
▪ Firebase firestore database
▪ Firebase real-time database

Expected Learning Outcome:


▪ Will be able to do Firebase CRUD operation in flutter

Lab Exercise:
▪ Use Firebase to solve 1/2 problem

Tools:
▪ Android Studio
▪ Visual Studio Code
▪ Emulator
▪ Browser

Copyright © Daffodil International University, 2022 14


Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Session 13: Project integration and presentation (Week-15 to Week-16)


Intended Learning Outcome:
Since this is the project demonstration session, teams will be able watch each other's work and gain
valuable knowledge on mobile application development.
Session Topics:
▪ Working for the team project and prepare demo
▪ Working for the team project

Expected Learning Outcome:


▪ Demonstration of the team project.
▪ Lab performance appraisal based on Project Work

Tools:
▪ Android Studio
▪ Visual Studio Code
▪ Emulator
▪ Browser

Copyright © Daffodil International University, 2022 15


Department of Computer Science and Engineering
CSE335: Pervasive Computing and Mobile Application Development
Credits: 02 Lab Manual v.1.0

Textbook(s)
1. Beginning Flutter: A Hands On Guide to App Development by Marco L. Napoli
2. Learn Google Flutter Fast: 65 Example Apps by Mark Clow

References:
1. Official Flutter Documentation: https://docs.flutter.dev/

Copyright © Daffodil International University, 2022 16

You might also like