Mobile Applications I (SPA development with Angular and React)
- Why Web App Development
- Setting up the Development Environment
- Web App Technologies
- Single-page Web Apps
- Including JavaScript Libraries
- Selecting Elements with jQuery
- Manipulating the DOM with jQuery
- Handling Events with jQuery
- NodeJS, NPM and JSON
- Introduction to TypeScript
- Explicitly Defining Data Types
- Object-Oriented Programming – Classes
- Exporting and Importing
- Prototyping with jQueryMobile
- Introduction to Angular
- Adding Angular Libraries
- Importing Angular Modules
- Adding Existing Angular Components
- Editing the Appearance of Angular Components
- Creating New Angular Components
- Interpolation in HTML Templates
- Simulating Pages with an Angular Router
- Inline HTML Template Variables
- Handling Events
- More Angular Material Components – Part 1 of 2
- More Angular Material Components – Part 2 of 2
- One-way Binding from Output Properties
- One-way Binding to Input Properties
- Two-way Binding with NgModel
- Conditional Display with NgIf
- Repetitious Display with NgFor
- Material Form Components
- Validating Form Fields with Reactive Forms
- Handling Form Submissions
- Angular Services and Dependency Injection
- Data Persistence with Local Storage
- Data Persistence with Web SQL
- Child Component Access with ViewChild
- Running Angular Project Tests
- Coding Basic Angular Project Tests
- Device Hardware Access
- Setting up Cordova
- Generating and Deploying APKs
Mobile Applications II (Native Android application development with Java)
- Install Android Studio
- Set up an emulator or device for testing
- Create, edit, build and run an Android project
- Create a splash screen
- How Android Interprets Code
- Interpret what each XML and Java statement does
- Debugging techniques Part 1 of 2
- Debugging techniques Part 2 of 2
- Linear layouts for view alignment – Part 1 of 3
- Linear layouts for view alignment – Part 2 of 3
- Linear layouts for view alignment – Part 3 of 3
- Events and listeners – Part 1 of 4
- Events and listeners – Part 2 of 4
- Events and listeners – Part 3 of 4
- Events and listeners – Part 4 of 4
- Define a style and apply it to a widget
- Define and apply themes to the app or an activity
- Save and restore shared preferences via OnPause and OnResume – Part 1 of 3
- Save and restore shared preferences via OnPause and OnResume – Part 2 of 3
- Save and restore shared preferences via OnPause and OnResume – Part 3 of 3
- Single-pane and Multi-pane Layouts
- Create Fragments and Activities and Set Preferences – Part 1 of 5
- Create Fragments and Activities and Set Preferences – Part 2 of 5
- Create Fragments and Activities and Set Preferences – Part 3 of 5
- Create Fragments and Activities and Set Preferences – Part 4 of 5
- Create Fragments and Activities and Set Preferences – Part 5 of 5
- Extending the Application Class – Part 1 of 2
- Extending the Application Class – Part 2 of 2
- SQLite Databases – Part 1 of 5
- SQLite Databases – Part 2 of 5
- SQLite Databases – Part 3 of 5
- SQLite Databases – Part 4 of 5
- SQLite Databases – Part 5 of 5
- Timers and Intervals – Part 1 of 2
- Timers and Intervals – Part 2 of 2
- Passing data through Intents
- Material Design and Basic Animations – Part 1 of 2
- Material Design and Basic Animations – Part 2 of 2
- Local Notifications – Part 1 of 2
- Local Notifications – Part 2 of 2
- Services – Part 1 of 2
- Services – Part 2 of 2
- Implementing Menus – Part 1 of 2
- Implementing Menus – Part 2 of 2
- Downloading Data from the Internet – Part 1 of 2
- Downloading Data from the Internet – Part 2 of 2
- Broadcasts – Part 1 of 2
- Broadcasts – Part 2 of 2
- Publishing an App
- Custom Controls – Part 1 of 2
- Custom Controls – Part 2 of 2
- Drag and Drop – Part 1 of 2
- Drag and Drop – Part 2 of 2
- Push Notifications
- Displaying Lists with RecyclerView – Part 1 of 2
- Displaying Lists with RecyclerView – Part 2 of 2
Relational Databases (Database programming with SQL)
- SQL Scripts and Backups
- SQL Coding Guidelines
- The USE statement
- SELECT Statement Basics Part 1 of 2
- SELECT Statement Basics Part 2 of 2
- SELECT Statement Continued Part 1 of 2
- SELECT Statement Continued Part 2 of 2
- Joining Tables Basics
- Subqueries
- Explicit Inner, Outer and Self Joins
- Common Table Expressions
- DML: INSERT, UPDATE, DELETE
- Designing Relational Databases – Steps 1 to 4
- Designing Relational Databases – Step 5 Normalization
- DDL: CREATE, DROP, ALTER
- DDL Continued (Constraints and Indexes) Part 1 of 2
- DDL Continued (Constraints and Indexes) Part 2 of 2
- Batches and Variables
- Views
- Stored Procedures
- Transactions
- Big Data