Basic programing skill, basics HTML ,css, java Script
This training program will help participants to learn complete Full Stact Developer. Its End to end traing of a complete projects.
Introduction to Databases,
Understanding SELECT queries,
Controlling and Manipulating Data,
• INSERT statement
• UPDATE statement
• DELETE statement
Programming Objects,
• Declaring Variables and Objects
• Creating and Using VIEWs
• Stored Procedures
• User-Defined Functions
Introduction to HTML5,
• Key HTML5 concepts
• Form Controls, Introduction to CSS, • Understanding CSS concepts
• Defining CSS for
o Identity
o Element
o Class
• Referring to External CSS documents
• Working with CDN
• Working with CSS Fonts
Introduction to JavaScript and jQuery,
• Introduction to JavaScript concepts
• Understanding the DOM
• DHTML and manipulating the HTML5 Document
• Validating UI
• Working with external JavaScript libraries like jQuery and jQueryUI
Introduction to GitHub,
• What is Source Code Versioning (SVN)
• Introduction to Git and GitHub
• Understanding Markdown Documents and MD Formatting
• Understanding how GitHub works, Setting up the GitHub Repo ,
• Setting up the GitHub Project
• Configuring Visual Studio , Basic Git Concepts ,
• GIT INIT
• GIT CLONE
• Basic Git Workflow (ADD, COMMIT, PULL and PUSH)
• Ignoring and Deleting Files , Tracking Changes ,
• Tracking Files and Git History
• Comparing Files using the Visual Merge/Diff Tool
• Working Directory Vs. Staging Area Vs. Git Repository
TASKS,
• Understand and Define the Project Scope
• Planning the Timeline and Milestones to the Project Scope using JIRA
• Defining the GitHub Repo for the project
• Designing the Database Structure and Test Data
• Designing the UI (using HTML5, CSS3, BootStrap5, and jQuery)
• Reviewing each participant’s project repo
• Conduct a Comprehensive POST TRAINING TEST for HTML5, CSS3, BootStrap5 and jQuery
Introduction to Development Models ,
• Application Development Models
o The Desktop model
o The Client-Server model
o The Web model
• Advantages of the Web Application Model
• Client-Side Scripting Vs. Server-Side Scripting
• Tools and Environments for developing a Web Application
• Role of the IIS
Introduction to the .NET,
• Overview of ASP.NET
o Introduction to Common Language Runtime (CLR)
o Introduction to the Common Type System (CTS)
o Introduction to the Common Language Specifications (CLS)
o Compilation
o Just-In-Time (JIT) Compilation
• Managed Code Vs. Unmanaged Code
• .NET Platform Vs..NET Framework Vs. .NET Standard Vs..NET CORE
Using Microsoft Visual Studio .NET ,
• Overview of Visual Studio .NET
• Creating a Console Application Project
• Creating a desktop Windows Forms Project
• Recommended Practices
o Comments and Documentation
o Naming Conventions
• Compiling, Running, and Debugging
• Using Built-In Data Types
• Creating User-Defined Data Types
• Converting Data Types
• Typecasting
• Checked and Unchecked
• Boxing and Un-boxing data types
Methods and Parameters using C#
• Using Methods
• Using Parameters
• Using Overloaded methods
Essentials of Object-Oriented Programming in C#
• Classes and Objects
• Using Encapsulation
• C# and Object-Orientation
• Defining Object-Oriented Systems
o Namespace
o Class
o Data Field
o Property
o Method
o Indexer
o Constructor
o Destructor
Language Enhancements in C# - Advanced concepts, continued
• Managing inheritance and Polymorphism
o Sealed
o Abstract
• Partial Classes
• Understanding Class Libraries
• Understanding and working with NuGet packages
Key Language Enhancements in the C# 3.0
• Implicitly typed local variables
• Extension methods
• Object Initialization Syntax
• Collection Initialization Syntax
o Working with Custom Collections
• Lambda expressions
• Query expressions
• Expression Trees
• Anonymous Types
• Partial Methods
• Generics
• LINQ
Key Language Enhancements in the C# 4.0
• Dynamic Data Types
• Named Arguments
• Optional Arguments
Multi-Threading and Parallelism in C#
• Understanding Threads
• Handling Multi-Threaded Code
o Addressing Thread Safety
• Working with Object Locks
Introduction to Windows Forms
• Introduction to Windows Forms Project
• Designing the UI
• Handling events
• Designing User Controls
Advanced Multi-Threading Concepts
• Understanding the UI Thread
• Working with Background Worker
• Working with the Dispatcher
• Handling Application Level Exceptions
Key Language Enhancements in C# 5.0
• Working with the Task Parallel Library (TPL)
o Parallel Extensions
o Parallel Extensions into LINQ
• Tasks
• Understanding and working with the Async / Await Feature
• Caller Information
Understanding Component Development LEVEL 4
• IDisposable
• INotifyPropertyChanged
• INotifyCollectionChanged
• Understanding and Implementing Custom Observable Collections
Key Language Enhancements in C# 6.0
• Expression Bodied Methods
• ?-Conditional Access Operator
• Auto-Property Initializers
• Primary Constructor
• OUT Parameter Declaration During Method Call
• Await in the Catch Block
• Exception Filters
• Using <StaticClass>
• String Interpolation
Key Language Enhancements in C# 7.0
• out Variables
• New Tuples feature
• Discards
• Pattern matching
o is expression
o switch expression
• Ref locals and returns
• Local functions
• Expression-bodied members
• Throw expressions
Key Language Enhancements in C#
• Readonly members
• Default interface methods
• Pattern matching enhancements:
o Switch expressions
o Property patterns
o Tuple patterns
o Positional patterns
• Using declarations
• Static local functions
• Nullable reference types
• Indices and ranges
• Null-coalescing assignment
TASKS
• Using the C# concepts, design a comprehensive Project demonstrating concepts learnt so far.
• Add the needed documentation to the project code repo
• Review each participant’s project
• Conduct a Comprehensive POST TRAINING TEST for C# concepts
TASKS
• Using the C# concepts, design a comprehensive Project demonstrating concepts learnt so far.
• Add the needed documentation to the project code repo
• Review each participant’s project
• Conduct a Comprehensive POST TRAINING TEST for C# concepts
• Visual Studio Project Templates
o Web Site
o Web Application
o .NET Core Web App
o SPA
• Understanding the Project Template Structures
• Web Configuration Files
Understanding and Working with Controllers
• Understanding Patterns: MVC Vs. MVP Vs. MVVM
• Introduction to Controllers
• Routes and Controllers
• Actions and Parameters
• Action Results
• Action Filters
Views
• Introduction to Razor View Engine
• Razor Basics
o PageModel (Razor Pages)
o PageViewModel (Razor Views)
• Code Expressions
• Code Blocks
• Layout Views
• Partial Views
Module 32: Key ASP.NET Layout Concepts
• Working with Bootstrap 4.x and 5
• Understanding and working with the ASP.NET Layout Views
• Understanding the Site Design and working with Bootstrap
o Responsive Designing with HTML5 using BootStrap5 and jQuery
o Layout components (Page design, Menu, Header, Footer, and Sections)
o HTML5 Form Layout concepts
o HTML Helpers
o ASP.NET Tag Helpers
Advanced ASP.NET Layout Concepts
• Client Libraries and LIBMAN
o Leveraging JavaScript and jQuery client libraries
o Bundling and Minification
• Key Nuget Package references
Unit Testing and Test-Driven Development (TDD) of the UI - Using Cypress
• Testing the UI using Cypress.JS
• Creating and Automating Tests using the Browser
Understanding EF Core and Models and Validation
• Key Entity Classes
o Data Context
o Data Models
• Attributes and using Data Annotations for Validation
• Creating Custom Validation Attributes
Model Binding and View Model
• The role of the Model Binder
• View Model Vs. Domain Model Vs. Data Model
• State Management in ASP.NET 5 – ViewData, ViewBag, and ViewModel
Advanced Concepts in Entity Framework Core
• Key Entity Classes revisited
• Understanding the differences between Database-First and Model-First Approach
• Understanding and working with Data Migrations and addressing Versioning of Data
o Importance of Code Migrations
o Working with Enumerations in EF Core
o Seeding the Database
o Data Versioning
• Working with Stored Procedures
TASKS
• Implement the concepts covered in previous modules into the Project
• Design the Data Models as per the Database Structure defined in Project #1
• Define the Seed Data using the Test Data defined in Project #1
• Designing the UI using Razor Views
• Define the UI Tests using Cypress JS
• Conduct a Comprehensive Project on .NET, ASP.NET, and EF CORE
Integration with API
• JavaScript, AJAX, and JSON
o AJAX and working with Remote API
o Leveraging upon HTML5 Location API
• Defining an API
o Implementing the API to handle HTTP REST API for CRUD operations
• Providing Swagger documentation to the API using Swashbuckle
Integrating to the API using Vanilla Browser Technologies
o Designing a Static Content Web Project using HTML5, CSS3, JavaScript, jQuery, Bootstrap
o Data binding the UI and performing CRUD operations with the Web API using Native JavaScript
Unit Testing and Test-Driven Development (TDD)
• Understanding Test Driven Development using xUnit
• Test-Driven Design
• Controller Tests
• Creating Action Tests
• Creating and Automating Tests using the Visual Studio Test Studio
Advanced xUnit Concepts
• Understanding the need for Mocking
• Setting up the Mocking Framework
• Running Scenario-based Tests to the ASP.NET Application and the API
• Understanding the Test Results
Securing the Application Using OWIN
• Understanding OWIN and OAuth
• Wiring up the Security Model for the Application
o Authentication
o Authorization using Roles
o Introduction to Claims and Permissions
• Adopting Key Security Features
o Handling Cross-Site Request Forgery (XSRF) attacks
o Addressing SQL Injection Attacks
o Defining Cross-Origin Resource Sharing (CORS) policies
o Adopting GDPR Compliance
• Logging and Audit Procedures
• Configuring an Email Provider Service
TASKS
• Add API to the Project
• Add documentation to the API using Swagger
• Secure the Application using OWIN
• Implement xUnit Tests
• Conduct a Comprehensive POST TRAINNIG TEST on WEB API and xUNIT
TypeScript and ECMAScript (ES6)
• Understanding TypeScript and ECMAScript
• Understanding Prototypes
• Classes
• Properties, Methods, Events, and Constructors
• Scoping and Modules
• Understanding and Working with Promise
• Transpiling TypeScript
Introduction to Angular
• What is Angular?
• Project Setup
o Typical Angular Project Setup
o Angular 8 in Visual Studio 2022
• How Angular works
• Angular Modules
• Angular Components
• Templates and Styles
Advanced Angular Concepts
• Routing
• Observables
• Components and Databinding
• Services and Dependency Injection
Advanced Angular Concepts
• Data binding the UI and performing CRUD operations with the Web API using Angular
• Enriching the UX
TASKS
• Design the Client-Side Stack using Angular 8 for the API implemented in Project #4
• Finish the Project
• Complete the Documentation associated to the Project
• Conduct a Comprehensive POST TRIANING TEST on Angular
TASKS
• Design the Client-Side Stack using Angular 8 for the API implemented in Project #4
• Finish the Project
• Complete the Documentation associated to the Project
• Conduct a Comprehensive POST TRIANING TEST on Angular
TASKS
• Review the Application Stack for each of the participants.