We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7
Week 1: Introduction to Flutter & Dart
Day 1: Getting Started
- Overview of Mobile App Development - Introduction to Flutter & Dart - Installing Flutter (Windows, macOS, Linux) - Setting up IDE (VSCode, Android Studio)
Day 2: First Flutter App
- Understanding Flutter project structure - Running the default Flutter app - Hot Reload and Hot Restart
Day 3: Basics of Dart Programming
- Variables and Data Types - Functions and Control Flow (if/else, loops)
Day 4: Object-Oriented Programming in Dart
- Classes, Constructors, Inheritance - Hands-on: Building simple Dart programs
Week 2: Flutter Widgets & UI
Day 1: Widgets 101 - Introduction to Flutter Widgets - Stateless vs Stateful Widgets - Common Widgets: Text, Container, Row, Column
Day 2: Layout Basics
- Padding, Alignment, Flexbox - Layout creation using Rows and Columns - Building flexible UIs with Expanded and Flex
Day 3: Complex Widgets
- ListView and GridView - Images and Icons in Flutter - Hands-on: Creating a basic static UI with these widgets
Day 4: Hands-on Project
- Build a static UI for a simple mobile app (e.g., profile page or settings page)
Week 3: Building Interactive UI
Day 1: User Input and Forms - TextFields and Buttons - Handling form inputs and validation
Day 2: Navigation and Routing
- Navigating between screens (push/pop, Navigator) - Passing data between screens using arguments
Day 3: State Management Basics
- Introduction to State and setState - Handling user interactions: Clicks, Gestures, and Taps
Day 4: Hands-on Project
- Create a multi-screen app that captures user input and navigates between pages
Week 4: Working with Lists and Data
Day 1: Lists and Grids - Displaying dynamic lists using ListView.builder - Creating scrollable and interactive lists
Day 2: Handling User Actions on Lists
- Using GestureDetectors for interactivity - Handling swipe actions and clicks
Day 3: Dynamic Data and UI Updates
- Updating the UI in response to data changes - Using setState for dynamic updates
Day 4: Hands-on Project
- Create a dynamic list app (e.g., task manager) that updates based on user input
Week 5: Building Multi-Page Apps with Widgets
Day 1: Advanced Widgets - Using advanced widgets like Stack, Positioned, and Hero - Building layered UIs with Stack and Positioned
Day 2: Custom Widgets and Reusability
- Creating custom widgets for reusability - Passing data to custom widgets through constructors
Day 3: Navigating with Bottom Navigation and TabBar
- Implementing bottom navigation bars - Creating a TabBar with multiple tabs - Navigating between multiple pages using tabs
Day 4: Hands-on Project
- Build a multi-page app (e.g., e-commerce app, recipe app) using a combination of Stack, Tabs, and advanced widgets
Week 6: State Management and Local Storage
Day 1: Introduction to State Management - Understanding state in Flutter - Introduction to setState for managing simple state - When to use Stateful vs Stateless widgets
Day 2: State Management with Provider
- Introduction to the Provider package for global state management - Using ChangeNotifier and Consumer - Managing app-wide state efficiently Day 3: Local Storage Basics - Saving and retrieving data locally using SharedPreferences - Persisting simple data like user preferences - Introduction to SQLite for structured local storage
Day 4: Hands-on Project
- Build a small app (e.g., to-do app) that uses Provider for state management and SharedPreferences for saving user data persistently
Week 7: Building a To-Do App with Hive and Bloc
Day 1: Introduction to Hive Database - Overview of Hive as a lightweight and fast NoSQL database for Flutter - Setting up Hive in a Flutter project - Storing and retrieving data using Hive - Managing tasks with Hive boxes
Day 2: Introduction to Bloc for State Management
- Understanding the Bloc (Business Logic Component) pattern - Setting up Bloc in Flutter - Managing state transitions using Bloc and Cubit - Connecting UI with Bloc for better state management
Day 3: Integrating Hive with Bloc
- Combining Hive for data storage and Bloc for state management - Persisting and updating to-do items using Hive and Bloc - Implementing CRUD (Create, Read, Update, Delete) operations with Hive and Bloc
Day 4: Hands-on Project
- Build a complete to-do app using Hive for data persistence and Bloc for state management - Implement task addition, deletion, and modification with proper state management
Week 8: Networking and API Integration
Day 1: Introduction to REST APIs and Networking in Flutter - What is a REST API and how it works - Using the http package in Flutter for making HTTP requests - Fetching data from APIs using GET requests - Parsing and handling JSON data in Flutter
Day 2: Sending Data to APIs (POST, PUT, DELETE)
- Sending data to APIs using POST requests - Updating data using PUT requests - Deleting data using DELETE requests - Handling errors and retries in network requests
Day 3: Handling Asynchronous Data with Future and Stream
- Introduction to asynchronous programming in Flutter - Using Future, async, and await for API calls - Working with Streams for handling real-time data - Error handling in asynchronous operations
Day 4: Hands-on Project
- Build an app that fetches data from a public API (e.g., weather app, news app) - Allow users to submit data (e.g., search queries, form submissions) and update UI accordingly - Implement error handling and loading indicators for a smooth user experience
Week 9: Building a News App
Day 1: Setting Up the News App and Fetching Data - Introduction to a news API (e.g., NewsAPI, NY Times API) - Setting up API access (API keys, endpoints) - Structuring the Flutter project for the news app - Fetching top headlines or articles from the API using GET requests
Day 2: Displaying News Articles
- Parsing and displaying news articles in a ListView - Creating UI components to display article titles, descriptions, and images - Implementing lazy loading for images and articles Day 3: News Article Details Page and Navigation - Navigating from the article list to a detailed news article page - Passing article data between screens - Displaying full article details including the author, published date, and content - Adding the option to open the full article in an in-app browser (WebView)
Day 4: Hands-on Project
- Finalizing the news app by implementing search functionality to look up articles by keyword - Adding pagination or infinite scroll for continuous loading of articles - Handling API errors and loading states - Wrap-up: Testing, debugging, and optimizing the app with Version Control (GitHub/Git)
Week 10: Revision & Capstone Preparation
Day 1: Full Revision of Flutter Concepts - Review key topics: - Flutter and Dart basics - Widgets and UI layouts - State management techniques (setState, Provider, Bloc) - Networking and API integration - Local storage with Hive - Recap with Q&A and quick hands-on exercises - Discuss any unclear concepts
Days 2-4: Capstone Project Planning
- Introduce the Movie App as the capstone project - Outline the project scope and goals - Brainstorm and research Movie App UI/UX design - Review relevant documentation and best practices for app development - Divide roles (frontend, backend, API integration, UI/UX design) - Set up collaborative tools (GitHub, Trello, Figma, etc.)
Weeks 11-12: Team Project - Building a Movie App
Week 11: Team Collaboration and Development Day 1: Set up project repositories and development environment Day 2: Team divides roles and starts working on individual components (UI, API integration, state management) Day 3: Regular check-ins and debugging sessions as a team Day 4: Merge components and start testing the core features
Week 12: Final Touches and Deployment
Day 1: Finalize the app, conduct extensive testing (unit tests, UI tests) Day 2: Prepare for deployment (app store guidelines, submission processes) Day 3: Create project presentation materials (slides, demo video) Day 4: Present the final Movie App to the class and receive feedback
The Gongsun Longzi And Other Neglected Texts Aligning Philosophical And Philological Perspectives Rafael Suter Editor Lisa Indraccolo Editor Wolfgang Behr Editor pdf download