Training Details

12 Weeks
10am to 1pm (Morning)

Weekdays (Tue and Thur) Weekends (Sat)

1st Floor, Nikky Africana Plaza, 70c Allen Avenue, Obasa Close, Opp UBA, Ikeja, Lagos

Mobile App Development Training In Lagos Nigeria

Our mobile app development training is beginner-friendly, practical and project-based. It is tailored to help you gain real-world experience that can get you a job and grow your career.

Who should attend

  • Those who are switching career to tech industry.
  • Those who have programming skills but want to take their skill to next level with hands-on projects in order to get promotion or higher paying jobs
  • Those planning to travel abroad and seeking hands-on skill that can make them relevant.
  • Those in managerial position seeking to have knowledge of how software is built

Technologies covered


Learning outcomes

Real-World Project

Build any of the following apps - product management system, user authentication, news app, e-commerce, clone of existing app

Interface Design

Have an understanding of how to conceptualize app design and workflow. Color theory, UI element


Learn how to collaborate with other software developers on source code management and version control. Deployment to an online server.

Career Positioning

CV review, interview preparation, LinkedIn profile update, job alert, mentorship and support community

Course Curriculum

Introduction to UX Design

UI/UX Fundermentals

  • Overview of UI/UX
  • Principles of Design Fundamental
  • Figma Software Download and Setup
  • Getting Started with Figma Interface
  • Understanding The Tool (Toolbars)
  • Understanding Some Basic Operations and Actions
  • Wireframe
  • Mobile Structure & Design
  • Prototyping

Dart Programming


  • Introduction to dart
  • Installation of Dart
  • Installing VS Code

Dart basics

  • input and Output
  • Variables
  • Comments
  • Const and final variables
  • type casting


  • Arithmetic Operators
  • Comparison Operators
  • Assignment Operators
  • Logical Operators
  • Null Aware Operators

Conditional statement

  • If Statements
  • Switch Statements
  • Ternary Conditional operator


  • For Loop
  • While loop
  • Nested loop


  • Functions Types
  • Default, Optional Parameter
  • Passing Array through Function
  • Recursion
  • through Exception
  • Lambda Expression
  • Higher Order Functions (HOF)
  • Where Functions
  • Map Function
  • Typedef

Data types

  • Number Methods
  • String Methods
  • Booleans
  • Iterable
  • Lists
  • 2D Lists
  • Sets
  • Maps

Object oriented programming (OOP)

  • Introduction to OOP
  • Classes
  • Objects
  • Constructor
  • Properties and methods
  • Static & this
  • Setter & Getter
  • Inheritance
  • Super
  • Super Constructor
  • Factory methods
  • Singletons
  • Override & Abstract
  • Final vs Const
  • Enum
  • Generic
  • Math Library
  • DateTime
  • Operator Overloading
  • Polymorphism

Key takeaway:

  • Understand dart and being able to build functional terminal based programs like student grading system, loan calculator and a mini ATM.

Flutter for mobile app development

Flutter outline

  • Introduction to flutter
  • Installation of flutter SDK
  • Flutter doctor
  • Installing Android Studio
  • Installing the Android emulator
  • Running Flutter from the command line
  • Installing Visual Studio Code
  • A tour of the project folders
  • Running the Android emulator

Introduction to widgets

  • The MaterialApp widget
  • The Scaffold widget
  • The AppBar widget
  • Adding a Column layout
  • Adding some padding
  • Text, TextStyle and FontWeight
  • Updating the counter with setState
  • Adding the MaterialApp
  • Common Widget in Flutter
  • Containers and their role.
  • Importing images from a network.
  • Importing images as assets.
  • Adding icons to widgets.
  • Understanding Row and Column.
  • ListView and ListTile.
  • Building views using ListView.builder.
  • Inkwell and its importance.

Introduction to buttons

  • Adding the first button
  • Customising button colors
  • MaterialColor explained
  • Changing button shapes
  • Making code reusable
  • Creating a reusable custom RaisedButton
  • Creating a reusable SignInButton
  • Setting default values
  • Adding images
  • Updating the pubspec.yaml file
  • Arranging widgets horizontally in a Row
  • The Opacity widget

Firebase for Storage

Introduction to Firebase

  • Creating a Firebase project
  • Configuring Firebase for Android
  • Installing the firebase_core and firebase_auth packages
  • Initializing the Firebase App
  • Futures, async and await
  • Signing in anonymously with Firebase
  • Error handling with try/catch
  • sign-in and sign-out flow
  • Creating a landing page widget
  • Adding a Firebase User to the LandingPage
  • Creating the home page
  • Adding the sign-out functionality
  • State Management & App Architecture
  • Overview of the Firebase sign-in methods

Introduction to navigation

  • Navigator and routes.
  • Applying push() using MaterialPageRoute.
  • Applying pop().
  • Declaring parameter-less routes (pushNamed()) in MaterialApp widget.

Handling User Input.

  • Using TextField.
  • Handling changes to a TextField.
  • Pass retrieved values using Navigator.
  • User Interface
  • Applying ThemeData.
  • The Basic Screen Layout.
  • Applying Custom Font.

Introduction to Cloud Firestore

  • Getting started with Firestore
  • Managing private user data with Cloud Firestore
  • Installing Cloud Firestore
  • Adding a FloatingActionButton
  • Writing data to Firestore
  • Reading data from Firestore
  • Introduction to bottom navigation

Working with Remote Data

  • The ‘http’ package.
  • Model Class and JSON parsing.
  • Displaying Remote Data.
  • Using 3rd Party Packages
  • Other Useful Widgets
  • Deployment to paystore


     Introduction to JavaScript

  • Overview of JavaScript
  • Installing Code Editor
  • Developer console
  • Adding JavaScript into HTML
  • JavaScript Statements
  • Basic Syntax
  • Input and output
  • JavaScript Comments
  • Interaction: alert, prompt, confirm

     Variables in JavaScript

  • The use of variables?
  • JavaScript Let
  • JavaScript Const
  • JavaScript Reserved Words

     Data Types

  • Numbers
  • Strings
  • Boolean
  • Array
  • Objects
  • Null
  • Undefined

     JavaScript Operators

  • Arithmetic Operators
  • Assignment operators
  • Comparison Operators
  • JavaScript Unary Operators
  • Ternary Operator
  • Instanceof Operator


  • If-else
  • Switch Case in JavaScript
  • Break and Continue
  • Type Conversion

     Loops in JavaScript

  • For Loop
  • While Loop
  • For-in Loop
  • Differences between for( and for(..of)

     Javascript functions

  • Inbuilt Functions
  • User-defined functions
  • Anonymous Functions
  • Functions as First-Class Citizens
  • Callback Functions
  • Higher order function (map, filter, reduce, find)
  • Understanding variable scopes in JavaScript
  • JavaScript Hoisting
  • JavaScript Strict Mode
  • this in JavaScript

Arrays in JavaScript

  • Basic Array Methods
  • sort() Method
  • Array Iteration Methods

     JavaScript Strings

  • JavaScript String Methods
  • How to create multi-line strings in JavaScript?
  • How to sort strings in JavaScript?


     Javascript Form

  • How to Create a Form with the JavaScript?
  • Form validation 

     Event handling

  • Introduction to Events
  • Page Load Events
  • The onLoad Event
  • The DOMContent
  • Mouse Events
  • Keyboard Events
  • Scroll Events

     Storing data in the browser

  • Cookies
  • LocalStorage
  • sessionStorage


  • Template Literals
  • Object Literal Syntax 
  • Default Parameters
  • Rest Parameters
  • Spread Operator
  • Destructuring


  • What is the arrow function
  • Importing and
  • Exporting Modules

Asynchronous JavaScript

  • Promises
  • Async/await

     Error Handling

  • try…catch try…catch…finally
  • Throw an Exception

Key takeaway: Learn modern best practices and code patterns.

Get the skills and confidence to really understand JavaScript.

Follow a structured learning path to grow your skills more quickly.


  • What is Node.js
  • Node.js Process Model
  • Install Node.js
  • Node.js Console/REPL
  • Node.js Basics
  • Node.js Modules
  • Local Modules in Node.js
  • Export Modules in Node.js
  • Node Package Manager (NPM)
  • Create Web Server in Node.js
  • Node.js File System
  • Debugging Node.js Application
  • Node Inspector for Debugging
  • Node.js Application
  • Node.js EventEmitter
  • Serving Static Files from Node.js
  • Database Access
  • Node.js Database Access
  • Access MongoDB in Node.js


  • Overview
    HTTP Methods
    URL Building
    Static Files
    Form Data
    RESTful APIs
    Error handling



  • What is MongoDB
  • Install MongoDB
  • MongoDB Basics
  • MongoDB Shell
  • MongoDB Data Types

CRUD Operation

  • Inserting document
  • insertOne
  • insertMany

Selecting documents

  • findOne
  • find

Comparison query operation

  • $eq: Equal To Operator
  • $lt: Less Than Operator
  • $lte: Less Than or Equal To Operator
  • $gt: Greater Than Operator
  • $gte: Greater Than or Equal To Operator
  • $ne: Not Equal To Operator
  • $in: In Operator
  • $nin: Not In Operator

Logical query operator

  • $and: Logical AND Operator
  • $or: Logical OR Operator
  • $not: Logical NOT Operator
  • $nor: Logical NOR Operator

Element query operators

  • $exists
  • $type

Array query operators

  • $size
  • $all
  • $elemMatch

Sorting and limiting

  • sort(): Sorting documents
  • limit(): Limiting documents

Updating documents

  • updateOne: Update one Document
  • updateMany: Update Multiple Documents
  • $inc: Increase / Decrease Field Value
  • $min: Update Field Value
  • $max: Update Field Value
  • $mul: Mutiply Field By a Number
  • $unset: Remove Fields
  • $rename: Rename Fields

Deleting documents

  • deleteOne
  • deleteMany


  • Aggregation Pipeline
  • $avg
  • $count
  • $sum
  • $max
  • $min


  • MongoDB Indexes
  • Create Index
  • Unique Index
  • Compound index
  • Drop Index

Using Mongoose


56 reviews on
Emmanuel Ireke
Emmanuel Ireke
A beginner friendly place where everything is broken down bit by bit and I will highly recommend for anyone who is trying to enhance or about to start his/her tech journey.
Vincent Edokpayi
Vincent Edokpayi
Best training ever! With the highly experienced and patient teachers, they carefully nurtured me as I went from 0 to 100. The classes are interactive, flexible and exciting in a very cosy environment. I’ll recommend it to anyone out there who desires to learn a new skill, grow in their career or just become more knowledgeable; notwithstanding your present skill level or having none at all, Tech365 would guide you carefully step-by-step into that you dream of becoming. Well done Tech365!
Deborah Babarinsa
Deborah Babarinsa
Very knowledgeable and experienced tutor.
Akinyele Aje
Akinyele Aje
Tech 365 is a very excellent place to learn. The location is wonderful, the lecture rooms have cool ambience and the tutors are very experienced, knowledgeable and friendly. I came in as a pharmacist and I came out as a techie!
Dosa Comfort
Dosa Comfort
It’s a place where you’ll get value for your money, good teaching with project to improve your learning
ogbonna chidiogo
ogbonna chidiogo
Training in Tech 365 is one of the best decisions I've made so far. Did Data Analytics, I was a novice to Excel or anything Tech( I was unsure I would catch up with the lessons) but my first day in class was Wow!! And the rest like the say is history 😃 Kudos to the Mr Wale.
Bello Ololade
Bello Ololade
My training at tech365 is the best. The teaching, mentoring and everything is top notch!

Our students work at

Frequently Asked Questions

Yes we accept installment payment. You can discuss with our team members on available payment options.

No prior programming experience is required. However, you need to know how to operate the computer efficiently. Our training approach is beginner friendly, and we work on several real world projects to help our student have deeper understanding of each module. 

People prefer Tech365 because our training are:

  • Project-based training
  • Job recommendation
  • World-class support
  • Up-to-date curriculum
  • Career guidance and mentoring
  • Access to support community
  • Certificate of completion
  • Flexible payment plan
  • Flexible timing


Our training is

  • Globally relevant
  • Beginner friendly
  • Futuristic
  • Relevant across industries
  • In high demand
  • Financially rewarding

We do not guarantee job. However, we do refer our students for jobs as different organization do reach out to us to hire our students. Some of our students have gotten job through this process.

Yes, we offer weekend classes for those who can’t attend weekdays due to their job or other reasons

Our training schedule are around January, May and September. You can talk to one of our representative for more information.

Yes our training is physical at Ikeja, Lagos. However, those outside Nigeria or living far away can join us online via zoom. The experience is similar.

Yes. In fact, this is our strength. We are committed to supporting our students to ensure they succeed.

Yes, it is recommended to come with your own laptop as it will help you to practice whatever you are learning. However, we provide laptop that can be used only within our premises if need be.

Yes, we provide internet access to our students.

Depending on your budget, Core i7, 16 GB ram with SSD is best.

However, core i3 or i5 with 4gb or 8gb ram HDD will also work fine.

It can be HP, DELL, Mac or any other brand.

Our Pricing Plans

Best Mobile App Development Training

You can choose available options below based on your need.

Mobile App
  • Dart
  • Flutter
  • Firebase
Fullstack Mobile App
  • Dart
  • Flutter
  • JavaScript
  • Nodejs
  • Express
  • MongoDB


Tech365 is a register ICT Training company in Lagos Nigeria. Over the years, we have training several students in Canada, UK, United States, Nigeria and more

Contact Us
error: Content is protected !!