- Agile Methodology
- Tradicional model x Agile teams
- Agile Manifest
- What is Scrum?
- Scrum Roles
- Scrum Advantages
- Scrum: Rituals and Cerimonies
- Scrum: Artifacts
- Scrum Practices I
- Scrum Practices II
- Scrum: Backlog Refinement
- Kanban
- Presentation and introduction to the theme
- Installation and basic commands
- Github and Remote repository
- Branch and Merge
- Fork, Pull Request and Github Pages
- Review Basic JavaScript
- Exercises
- Review Basic JavaScript
- Template String
- Ternary Operator
- Arrow Functions
- Arrays, Spread & Methods
- Objects Destructuring
- SPA, PWA, and Web Components
- Project
- Angular CLI
- Angular: Generate new project
- Angular: Structure
- Angular: Components
- Data Binding
- Property Binding
- Exercise: Property Binding
- Event Binding
- Customized Event Binding
- Exercise: Counter
- Two Way Data Binding
- Augury
- Introduction to Directives
- Directive ngIf
- Directive ngFor
- Exercise: Directives ngIf and ngFor
- Exercise: Directives ngIf and ngFor
- Directive ngClass
- View Encapsulation
- Lifecycle Hooks
- Pipes I
- Pipes II
- Localization
- Exercise: Pipes I
- Exercise: Pipes II
- Reorganizing the Project
- Routes
- Routes: Router link
- Routes: Default route and Not found route
- Install Bootstrap
- Services and Dependency Injection I
- Services and Dependency Injection II
- Modules
- Module Review
- HTTP Requests I
- HTTP Requests II
- Creating Interfaces
- Environment variables
- Adding Loading and Error Handling
- Working with RxJS operators
- Observables and RxJS
- Adding pagination at Extract
- Exercise: Creating contacts screen
- Contact details screen with Parameterized Routes
- Exercise: Contact Details
- POST, PUT and DELETE Requests
- Introduction to Forms
- ngForm, ngSubmit and ngModel
- ngModel Directive
- Forms validation
- Displaying form errors
- Applying styles at fields validations
- Applying own styles at fields validations
- Using ViewChild decorator I
- Using ViewChild decorator II
- Correction of Form parameter type
- Login Service I
- Login Service II
- Adding loading validations on Login
- Creating Authentication Service I
- Creating Authentication Service II
- Upgrading Authentication Service
- Adding Route Guards I
- Adding Route Guards II
- Modularization and Lazy Loading
- Augury Routinging and Contacts Refactoring
- Son Routes: Logged Area Component I
- Son Routes: Logged Area Component II
- Modularizating Login and Logout Button
- Adding libraries to the project I
- Adding libraries to the project II
- Deleting a contact
- New Contact Component
- Reactive Forms
- Applying validation on form fields
- Applying CSS classes
- Creating a contact by POST request
- Create Edit Contact screen I
- Create Edit Contact screen II
- Grouped Forms
- Adding Headers with HTTP Interceptor
- Uploading an application in Firebase
- End of the Course
- .NET origins
- Servers to run .NET (Integration with systems)
- Resources
- .NET Versions
- Exercises
- Identity Server: Creating the Solution
- Identity Server: Setting the API
- Identity Server: Setting the Client
- Identity Server: Using Access Token
- Identity Server: Identity Server with Microservices
- Visual Studio: Productivity Resources
- Visual Studio: "Hello World"
- Visual Studio: Refactoring and IntelliSense
- Introduction to Object-oriented
- Classes, instances and encapsulation
- Solving a logical problem
- Creating lists
- Creating console application menu
- Function to register students
- Listing students and calculating grades average
- Refactoring code and encapsulated variables
- Creating methods at class Student
- Understanding the properties of a class
- Talking a little bit about methods
- Adding methods
- Static methods
- Contructor methods
- Overwritten inheritance and polymorphism
- Public, protected, internal and private
- Code documentation
- Interfaces
- Abstract classes and classes members
- Sealed classes and classes members
- Introduction to SOLID
- SPR - Single Responsibility Principle
- OCP - Open-Closed Principle
- LSP - Liskov Substitution Principle
- ISP - Interface Segregation Principle
- DIP - Dependency Inversion Principle
- Introduction to Best Practices
- Clean Code Principles
- Clean Code: Classes Name
- Clean Code: Methods Name
- Clean Code: Function Creation
- Clean Code: Code Sample
- Clean Code: Class Creation
- Database Selection: Reasons
- Normalized Databases x Non Normalized Databases
- Installing MySQL
- Creating database and tables with SQL I
- Creating database and tables with SQL II
- Creating tables at Workbench I
- Creating tables at Workbench II
- Altering structures and removing tables
- Inserting data at tables
- Making changes and understanding results
- Simple queries
- Groupings and totals
- Joins with 2 tables
- Joins with 3 or more tables
- Outer joins
- Subqueries
- MVC Pattern: WebForms vs MVC
- MVC Pattern: Introduction to MVC Pattern
- MVC Pattern: Routing
- MVC Pattern: Attribute Routing
- MVC Pattern: Action Result
- MVC Pattern: Views
- Models: Models Creation
- Models: Input I
- Models: Input II
- Models: HTTP Verbs
- Models: Model Validation I
- Models: Model Validation II
- Views: Partial Views
- Views: Layouts
- Unit of Work: Repository I
- Unit of Work: Repository II
- Unit of Work: Generic Repository
- Unity of Work
- Explaining Strategy pattern
- Creating Strategy pattern structure
- Strategy: Coupling strategies
- Singleton: The Sigleton pattern
- Singleton: Abstract Factory
- Building an API
- Entity Framework
- DTO
- Authentication
- Cookies X Session
- JWT: Json Web Token
- Presenting RabbitMQ
- Message Broker with Rebus and RabbitMQ
- Azure Service Bus: Sending Messages to the Queue
- Azure Service Bus: Receiving Queue Messages
- Virtualization: ASP.NET Core Microservices Project
- Traceability ID with Jaeger UI
- Idempotency in commands
- Circuit Breaker concept
- Setting Polly for HTTP Requests
- Demonstrating Circuit Breaker and retries with Polly
- Presenting Telemetry
- Using telemetry in ASP.NET Core I
- Using telemetry in ASP.NET Core II
- Telemetry: Introduction to Jaeger
- Tests: concepts and types
- Testing: Unit testing
- Testing: Integrated tests
- CI (continuous integration) & CD (Continuous delivery)
- Deploy application