One Stop solutions for your career

Mobile Application Developer

Course Code : TCP-MAD

Course Code : TCP-MAD

Overview

Join TCP India and become an expert in Mobile Application Development! Our comprehensive curriculum covers the entire Software Development Life Cycle. In Core React, you'll explore React fundamentals, component lifecycles, and state management. Dive into Advanced React Native and learn to create cross-platform apps with Flutter. Master Dart programming language, Flutter widgets, navigation, and networking. Build UI layouts, handle user input, and work with local data storage. Gain hands-on experience in advanced Flutter topics like state management patterns, performance optimization, and testing. Get ready to develop real-world apps and deploy them to Play Store and App Store. Join now to shape a promising future in Mobile App Development!

Mobile app developers collaborate closely with designers, product managers, and backend developers to create and deliver high-quality mobile applications. They should have a solid understanding of mobile platform guidelines, performance optimization, security, and user privacy considerations. Additionally, effective communication and problem-solving skills are essential for successfully delivering mobile app projects.

React Native and Flutter are two popular frameworks for cross-platform mobile app development. They enable developers to build mobile applications that can run on multiple platforms, such as iOS and Android, using a single codebase. Here's an overview of React Native and Flutter:

  • React Native
    • Developed by Facebook, React Native uses JavaScript and the React framework to build native mobile apps
    • It allows developers to write code once and deploy it on both iOS and Android platforms, saving development time and effort.
    • React Native provides a rich set of pre-built UI components that closely resemble native app components, resulting in a native-like user experience.
  • Flutter
    • Developed by Google, Flutter is an open-source UI toolkit for building natively compiled applications for mobile, web, and desktop platforms.
    • Flutter uses Dart programming language, which is easy to learn and offers great performance.
    • It provides a rich set of customizable UI widgets, allowing developers to create beautiful and responsive user interfaces.

Curriculam

  • SDLC Introduction
  • SDLC Phase
    • Requirement Gathering or Planning
    • SRS (Software Requirement Specification)
    • Design
    • Implementation & Coding
    • Testing
    • Deployment
    • Maintenance
  • SDLC Models
    • Waterfall Model
    • V-Shaped Model
    • Prototype Model
    • Spiral Model
    • Iterative Incremental Model
    • Big Bang Model
    • Agile Model

  • Introduction
    • Overview
    • Advantages 
    • CLI
  • Environment Setup
    • Node Setup
    • Overview and Use of NPM
    • Overview of package.json
  • Project Setup
    • Installation
    • Code Architecture
  • Overview of JSX
    • Overview
    • JS vs JSX
    • Overview of Components
    • Containers and Components
    • Child Components
    • Namespaced Components
    • Nested Components
  • State Management
    • Overview
    • Props
    • Props Validation
    • States
  • COMPONENT LIFE CYCLES
    • Overview
    • Initial Render
    • Props Change
    • Stage Change
    • Component willMount
    • Component didMount
    • Component Unmount

 

  • Introduction
    • Overview
    • Advantages 
    • CLI
  • Concept for JavaScript
  • Environment Setup
  • Basic React Native App
  • State Management
    • Different between state & props
    •  setState
    •  Initialize State
  • Props
    • What are props
    • Use of props
    • Default Props
    • Container Component
    • Presentation Component
  • Multiple props rendering
    •  render multiple variables
  • Styling
    • Conditional Styling
    •  Styling using inline styles
    •  Styling using a stylesheet
    • Adding multiple styles
  • Component 
    • Basic
    • Stateful
    • Stateless
  • Refresh Control with List View
  • Custom Component
  • Expo
  • React Fundamentals
  •  Layout
    • Flexbox
  • List View
  • Text Input
  • Scroll View
  • Images
    • Image Module
    • Screen Density
    •  Image Example
    •  Conditional Image Source
    •  Using variable for image path
    •  To fit an Image
    • Network Images
  • React Native HTTP Requests
    •  Using Promises with the fetch API and Redux
    •  HTTP with the fetch API
    •  Networking with XMLHttpRequest
    • WebSockets
    •  Http with axios
    •  Web Socket with Socket.io
  •  Platform Module
    •  Find the OS Type/Version
  • React Native  - Buttons
    • Touchable Opacity
    • Touchable Highlight
    • Touchable Native Feedback
    • Touchable Without Feedback
  • Animations 
    • Animation Component
  • React Native – Debugging
  • React Native – Router
    • Install Router
    • Add Router
    • Create Component
  • Custom Fonts
    • Custom fonts for both Android and IOS
    • Steps to use custom fonts in React Native (Android)
    • Steps to use custom fonts in React Native (iOS)
  • Android - Hardware Back Button
    •  Detect Hardware back button presses in Android
    •  Example of BackAndroid along with Navigator
    •  Hardware back button handling using
    • BackHandler and Navigation Properties (without using deprecated BackAndroid & deprecated Navigator)
    • Example of Hardware back button detection using BackHandler
  • Linking Native API
    •  Outgoing Links
    •  Incomming Links
  • React Navigation
    • react-native Navigation with react-native-router-flux
  • React Native – Running Android
  • Components and APIs
  • React Native – View
  • React Native – WebView
  • React Native – Modal
  • React Native – Activity Indicator
  • React Native – Picker
  • React Native – Status Bar
  • React Native – Switch
  • React Native – Text
  • React Native – Alert
  • React Native – Async Storage
  • Create a shareable APK for android
    •  Create a key to sign the APK
    •  Once the key is generated, use it to generate the installable build
    • Generate the build using gradle
    •  Upload or share the generated APK
  • PushNotification
    •  Push Notification Simple Setup
    •  Navigating to scene from Notification
  • Render Best Practises
    • Functions in JSX
  •  Debugging
    •  Start Remote JS Debugging in Android
    •  Using console.log()
  •  Unit Testing
    •  Unit Test In React Native Using Jest

  • Introduction to Flutter
    • Overview of Flutter and its features
    • Understanding the benefits of using Flutter for cross-platform app development
    • Setting up a development environment for Flutter
  • Dart Programming Language
    • Introduction to Dart programming language
    • Basic syntax, data types, variables, and control flow
    • Functions, classes, and object-oriented programming concepts in Dart
  1. Flutter Widgets and Layouts
    • Understanding Flutter widgets and their role in building user interfaces
    • Exploring different types of widgets: stateless, stateful, and layout widgets
    • Building layouts using Flutter's widget hierarchy and layout widgets like Row, Column, and Container
  • Styling and Theming
    • Applying styles to Flutter widgets using themes and styles
    • Working with colors, fonts, and text styles
    • Customizing widget appearance and creating reusable custom styles
  • Navigation and Routing
    • Navigating between screens and managing app navigation
    • Using Flutter's navigation widgets and routes
    • Passing data between screens and handling navigation events
  • State Management
    • Understanding different approaches to state management in Flutter
    • Using Flutter's built-in state management options like setState and Provider
    • Exploring external state management solutions like BLoC, Redux, or MobX
  • Networking and API Integration
    • Fetching data from APIs using Flutter's HTTP client or third-party packages
    • Parsing JSON responses and handling asynchronous operations
    • Integrating API data into Flutter UI using future builders or stream builders
  • Persistence and Local Data Storage
    • Storing data locally on the device using Flutter's shared preferences or local database solutions like SQLite or Hive
    • Implementing CRUD (Create, Read, Update, Delete) operations on local data
  • Working with Device Hardware and Features
    • Accessing device features like camera, sensors, and geolocation
    • Integrating device-specific functionality using Flutter's platform channels
    • Utilizing third-party plugins for accessing native APIs and services
  • Flutter Animation and Gestures
    • Creating animations and transitions using Flutter's animation APIs
    • Responding to user input and gestures
    • Implementing complex animations and gesture-based interactions
  • Testing and Debugging
    • Writing unit tests and widget tests for Flutter apps
    • Using Flutter's debugging tools and techniques for diagnosing and fixing issues
    • Conducting UI testing and integration testing with Flutter's testing framework
  • Publishing and Distribution
    • Preparing Flutter app for release
    • Generating APK (Android) and IPA (iOS) files for distribution
    • Understanding the app publishing process for Google Play Store and Apple App Store

  • Introduction to Flutter
    • What is Flutter?
    • Flutter vs. Other Frameworks
    • Flutter Architecture
    • Setting up the Development Environment
    • Flutter Basics
  • Introduction to Dart
    • What is Dart?
    • Main() Function
    • Variables in Dart
    • Data Types in Dart
    • Input of Information to Dart Program
    • Writing Comments
    • Dart Conditional Operators
    • If Statement
    • If – Else Statement 
    • If…Else and Else…If... Statement
    • If Else and Logical Operators 
    • For Loops
    • While Loops
    • Do-while Loops
    • Break Statement
    • Switch Case Statement
  • Flutter Basics
    • Flutter Widgets
    • Stateless vs. Stateful Widgets
    • Building UI Layouts with Widgets
    • Handling User Input
    • Working with Text and Images
  • Navigation and Routing
    • Navigating between Screens
    • Named Routes
    • Passing Data between Screens
    • Handling Navigation Events
  • State Management
    • Understanding State in Flutter
    • setState and Rebuilding Widgets
    • InheritedWidget and InheritedModel
    • Scoped Model
    • Provider Package
    • Redux Architecture
  • Networking and API Integration
    • Making HTTP Requests
    • Parsing JSON Data
    • Handling API Errors and Exceptions
    • Authentication and Authorization
  • Persistence and Data Storage
    • Working with Local Data Storage
    • Using SQLite Database
    • Shared Preferences
    • File Operations
  • Flutter UI and Design
    • Customizing UI with Themes
    • Material Design and Cupertino Design
    • Animations and Transitions
    • Gestures and Touch Events
    • Responsive Layouts
  • Flutter Packages and Plugins
    • Introduction to Packages and Plugins
    • Popular Packages for Flutter Development
    • Integrating Native Code with Method Channels
  • Flutter Widgets Deep Dive
    • ListView and GridView
    • Form and TextFormField
    • ExpansionPanel and SliverAppBar
    • Custom Paint and Canvas
    • Flutter Animation Framework
  • Advanced Topics
    • Advanced State Management Patterns
    • Performance Optimization Techniques
    • Testing Flutter Applications
    • Localization and Internationalization
    • Flutter Web and Desktop Applications
  • Building Real-World Apps
    • Project-Based Learning
    • Building Complete Flutter Apps
    • Best Practices and App Architecture

  • Jira
    • Introduction to Jira

    • Creating and Managing Projects

    • Managing Issues

    • Agile Boards and Workflows

    • Managing Releases and Versions

    • Collaboration and Communication

    • Advanced Jira Configuration

    • Reporting and Dashboards

    • Jira Automation and Integrations

    • Best Practices and Advanced Topics

    • Project Work

  • Git
    • Overview
    • Installtion Envirement
    • Git Basics
    • Working with Repositories
    • Branching and Merging
    • Collaborative Workflows
    • Advanced Git Operations
    • Git Best Practices

  • Play Store
  • App Store

Send us Mobile Application Developer Inquiry

*
(optional)
*
*

Course Duration

15 Month

Training Type

Classroom

Internship

No

Get Inquiry
Be The Part of TCP India!
Drop us an email and explore the exciting opportunities waiting for you.