Cognixia Course - Dot Net Full Stack - CrimsonLogic
Cognixia Course - Dot Net Full Stack - CrimsonLogic
COURSE NAME
.Net Core (Jump)
COURSE OUTLINE
Overview of SDLC
Project Definition
Generic Project Life Cycle
Project Management Life Cycle
Project Management Methodologies Compatible with the SDLC
The Development Spectrum
Waterfall
Agile
IID Models
Industry Delivery Models
Spiral model, V Model, RUP, DSDM Models
Design Documents
Test Case Management
IIBA
BABOK Overview & Its Practices
Requirements
Project vs. Product Requirements
Levels of Requirements
Business
Stakeholder
Solution
Why Agile
The Triple Constraints in Agile
Agile Approach to Planning
Agile Manifesto 4 values vs. 12 sub principles
Various Agile Methodologies – IID Model
Scrum Process
XP 12 Practices
Agile Planning
Introduction
Version control systems
Local, Centralized and distributed
Installing Git
Installing on Linux
Installing on Windows
Initial setup
Git essentials
Creating a repository
Cloning, checking-in and committing
Fetch, pull and remote
Branching
Programming in C#
Creating Classes
Defining and Implementing Interfaces
Implementing Type-Safe Collections
Lab: Adding Data Validation and Type-Safety to the Application
Implementing the Teacher, Student, and Grade Structs as Classes
Adding Data Validation to the Grade Class
Displaying Students in Name Order
Enabling Teachers to Modify Class and Grade Data
Accessing a Database
Implementing Multitasking
Performing Operations Asynchronously
Synchronizing Concurrent Access to Data
Lab: Improving the Responsiveness and Performance of the Application
Ensuring That the UI Remains Responsive When Retrieving Teacher Data
Providing Visual Feedback During Long-Running Operations
Integrating with Unmanaged Code
HTML 5
Sectioning Content
Section
Article
Aside
Nav
Address
Outlines
Explicit Sections
Document Headings
Header and Footer
Sectioning Roots
Blockquote
Details
Figure
Grouping Elements
Paragraph
Horizontal Rule
Preformatted
Main
Division
Listing Elements
List
Description List
Inline Frames
Edits
Quoting
Span
Simple Table
Column and Row Headings
Column Groups
Table Heading and Footer
Spanning Cells
Anchor
Images
Multiple Sources
HTML5 Plug-Ins
Overview
Form Element
Form Action
Form Method
Additional Attributes
Input Elements
Labels
Output Element
Meter Element
Progress Element
Button Types
Organizing a Form
Validation
CSS
CSS Selectors
Selector Overview
Element Selectors
Class Selectors
ID Selectors
Attribute Selectors
Pseudo-Class Selectors
Pseudo-Elements
Using Combinators
Media Queries
Media Attributes
Using Media Queries
Positioning Content
Display
Defining Sizes
Absolute Size
Relative Size
Setting Maximum Values
Content-Based
Box Sizing
Float
Clearing Floats
Containing Floats
Inline Block
Position
Relative Positioning
Absolute Positioning
Fixed Positioning
Z-Index
Centering Content
Text Styles
Fonts
Obtaining Fonts
Font Families
Font Settings
Shorthand Notation
Text Formatting
Horizontal Alignment
Indent
Overflow
Quotes
Shadow
Capitalization
Handling Whitespace
Vertical Alignment
Break
Word Wrap
Page Break
Cursor
Flexbox
Container Configuration
Flex Direction
Flex Wrap
Justification
Aligning Items
Item Configuration
Overriding Alignment
Java Script
JavaScript Essentials
Introducing JavaScript
Objects
Constructors
Prototypes
Inheritance
Using Prototypes
Using Create
Using the Class Keyword
Overriding Members
Properties
Arrays
Attributes
Special Types
Miscellaneous Topics
Comparison Operators
Variable Scope
Strict Mode
Functions
Context
Immediately Invoked Functions
Namespaces
Exceptions
Promises
Array Methods
Accessing Elements
Outputting an Array
Manipulating Element
Searching
Creating Subsets
Processing
Browser Environment
Screen
Location
History
Navigator
DOM Elements
Element Inheritance
Simple Demonstration
Finding Elements
Creating Elements
Moving Elements
Modifying Elements
Dynamic Styling
Events
Initial Example
Event Registration
Event Propagation
Unregistering Events
Event Interface
o Common Event Properties
o Cancelling Events
Exploring Events
SQL
Creating relationships
Defining one-to-many relationships
Exploring one-to-one relationships
Exploring many-to-many relationships
Understanding relationship rules and referential integrity"
Understanding normalization
First normal form
Second normal form
Third normal form
Database de normalization
Creating computed columns"
Introduction to Transact-SQL
Using SELECT statements and SQL Syntax Overview
Formatting SQL
Dealing with nulls - ISNULL, COALESCE and CASE
Controlling column behaviours with constraints
Creating an ID column
Filtering data with WHERE, LIKE, and IN, BETWEEN, AND, OR, NOT
Removing duplicates with SELECT DISTINCT"
Grouping Data
TOP Clause
Simple Example of the TOP Clause
Using the PRECENT option of the TOP Clause
Using a Variable to Control the TOP Clause
USING the WITH TIES Option
USING the TOP clause with UPDATE, Insert and Delete Statement
Caution When Using TOP Clause in UNION, EXCEPT and INTERSECT Statements
SQL Functions
VIEWS
Variables
Declaring Variables
Assigning values to variables - SET versus SELECT
Incrementing and decrementing integer variables
The Scope of Variables
Uses of Variables in SQL
Global Variables in SQL - @@Identity, @@RowCount, @@Error, @@ServerName,
@@Trancount etc
Conditions in SQL
IF-ELSE
Syntax of a simple IF statement
Multiple IF conditions using ELSE
Using EXISTS to see if records exist
Using variables to compare two counts
Case when Statement
Loops
Error Handling
Error Functions in SQL
Debugging Options – Stepping over and Stepping out of the code
Changing the next statement executed
Using Breakpoints
Using Locals Window, Watch Window, Immediate Window, Call stack
Practical Example of Error Handling
Raising Errors – Using THROW, Using RAISE ERROR
Stored Procedures
Functions
Temporary Tables
Table Variables
Triggers in SQL
DDL Triggers
DML Triggers
Logon Triggers
Cursors
Creating backups
Creating differential backups and using backup compression
Restoring databases
Performance Tuning
Introduction
Installation
Version Management
Command-Line Interface (CLI)
Hello World Application
NuGet Packages
Application Startup
Hosting Environments
Middleware and the Request Pipeline
Services and Dependency Injection
MVC vs. Razor Pages
Application Configuration
Request Routing
RESTful Services
Endpoint Routing
Route Templates
Route Constraints
Attribute-Based Routing
Models
Persistence Ignorance
Object-Relational Mapping
Entity Framework (EF) Core
Dapper ORM
Controllers
Responsibilities
Requirements and Conventions
Dependencies
Action Results
Views
Responsibilities
Conventions
Razor Syntax
Layouts
ViewData and ViewBag
Strongly-Typed Views
Partial Views
HTML and URL Helpers
Tag Helpers
View Components
Client-Side Dependencies
Razor Pages
View Models
HTML Forms
Data Validation
Introduction
Data Annotations
Model Binding
Input Tag Helpers
Validation Tag Helpers
Application State
Client-Side vs. Server-Side
HttpContext.Items
Session State
TempData
Error Handling
Best Practices
HTTP Error Status Codes
Status Code Pages
Developer Exception Page
Logging
Configuration
ILogger
Serilog and Seq
.Net Core with Data Interaction Entity Framework Core () (EF Core)
Dependency Injection
Singleton
Transient
Scoped Objects
Filters
Understanding Filters
IFilter Factory
Custom Filters
In-Memory Cache
Distributed Cache
Response Caching
Customization
Authentication
Introduction
ASP.NET Core Identity
Cookie Middleware
Authorization
Claims-Based Authorization
Web APIs
API Controllers
Testing APIs
CRUD Operations
OpenAPI (Swagger)
Cross-Origin Resource Sharing (CORS)
Deployment
dotnet publish
Kestrel
IIS
Docker
Entity Framework
Entity Framework Introduction
CRUD Operations
Querying Database
LINQ Queries
Entity SQL Queries
Lazy Loading
Eager Loading
Explicit Loading
No-Tracking Queries
Additional Features
Inheritance Type
o Table Per Type inheritance
o Table Per Hierarchy inheritance
Modeling Techniques
o Database First
o Model First
o Code First
Web API
REST Architecture
REST Basics
Resources
Uniform Resource Locators
HTTP Methods
HTTP Status Codes
Resource Formats
MIME Types
Accept Header and Content Negotiation
Building and Using Media and Type Formatters
Browser-Based Clients
Hypermedia
HTTP Security
SSL/TLS
Basic Authentication
Forms Authentication
Integrated Authentication
Token-Based Security
OAuth and OAuth2
Amazon's S3 Authentication
Federated Security
Scalability
Filtering Data
HTTP Caching
MSTest
2. Naming conventions
2. Traits
Code Coverage
2. Testing Exceptions
4. Ordered Test
5. Generic Test
1. TestContext
Assestions
1. Asserts
2. Assert class
4. CollectionAssert
5. StringAssert
React JS Fundamentals
Introduction
npm
What is Node.js?
What is npm?
Using npm
npm Scripts
Working with HapiJS
Compiler Setup
Setup (Babel)
ES6/ES2015
Classes
Scope (var, let, const)
Arrow Functions
Modules
Template Literals
Default, Rest, Spread
Default
Rest
Spread
Destructuring
Optional Parameters
Object.assign()
Object Initializer
React Overview
Why React?
What it is?
Why it is useful?
Angular, React Compared
Web application architectures
Server-side web application architecture
Single-page web application architecture
React Architecture
Elements
JSX
Replacing create Element
Embedding Expressions
Specifying Attributes
Virtual DOM
Components
Creating an Element
Create a Function Component
Rendering a Component
Creating a Class Component
Composing & Reuse
Props
Read-only
String Literals vs. Expressions
Function vs. Class Components
Events
Listening/Subscribing/Wiring to an Event
In Vanilla JavaScript
In React: Function Component
In React: Class Component
Binding
Passing Parameters
Handling Events
Defining
Using State Correctly
Data Flows Down
Converting a Function Component to a Class Component
Lifecycle
Conditional Rendering
If, else
Conditional Operator (?)
Logical (&&) Operator
Lists
Component Architecture
Reuse
Component Communication
Design Patterns
Container and Presentation Components
Composition vs. Inheritance
Forms
Controlled Components
Reuse of Change Logic across Multiple Inputs
Handling Form Submission
Controlling Other Form Elements: select, textarea, number
Validation
Uncontrolled Components
HTTP
Axios library
Fetch API
Using with React (HTTP GET)
Refactoring for Reuse
HTTP POST, PUT, DELETE
Installation
Basics
Handling Not Found (404)
Parameters (Url & Query)
Nesting
Hooks
Defined
Why Hooks?
No Breaking API Changes
Hooks API
useState
useEffect
Custom Hooks
Rules of Hooks
Redux
What is Redux?
What is State?
Benefits Checklist
Principles of Redux
Core Concepts (Store, State, Reducers, Actions, Action Creators)
Complementary Packages
When do you need Redux?
Basic Redux Example (includes time traveling)
Gotchas/Tips
Using Redux with React (React Redux Library)
Overview
Async Actions (Thunks)
Installation
Your First Thunk
Full CRUD Example
Unit Testing
Introduction
Advanced React
JSX + Do Expressions
Composition vs. Inheritance
Component Tree Patterns
Using Synthetic Events
CSS Animations
Non-React UI Elements
Advanced Unit Testing
Advanced Redux
Principles of Routing
React Router
Connecting React Router to Redux
Capstone Project