{"id":19153445,"url":"https://github.com/alexandrecpedro/code-of-the-future","last_synced_at":"2025-07-04T16:06:24.212Z","repository":{"id":62717431,"uuid":"561103540","full_name":"alexandrecpedro/code-of-the-future","owner":"alexandrecpedro","description":"Code of the Future Program","archived":false,"fork":false,"pushed_at":"2023-01-27T00:26:04.000Z","size":70658,"stargazers_count":8,"open_issues_count":0,"forks_count":5,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-05-07T06:36:13.596Z","etag":null,"topics":["agile-methodologies","angular","api","blazor","circuit-breaker","design-patterns","dotnet","git","jaeger","kanban","mongodb","mysql","net","opentelemetry","polly","rabbitmq","razor","restsharp","scrum","testing"],"latest_commit_sha":null,"homepage":"","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alexandrecpedro.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-11-03T00:31:11.000Z","updated_at":"2023-11-20T22:37:42.000Z","dependencies_parsed_at":"2023-02-15T03:30:54.393Z","dependency_job_id":null,"html_url":"https://github.com/alexandrecpedro/code-of-the-future","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/alexandrecpedro/code-of-the-future","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrecpedro%2Fcode-of-the-future","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrecpedro%2Fcode-of-the-future/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrecpedro%2Fcode-of-the-future/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrecpedro%2Fcode-of-the-future/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alexandrecpedro","download_url":"https://codeload.github.com/alexandrecpedro/code-of-the-future/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrecpedro%2Fcode-of-the-future/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263572870,"owners_count":23482534,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agile-methodologies","angular","api","blazor","circuit-breaker","design-patterns","dotnet","git","jaeger","kanban","mongodb","mysql","net","opentelemetry","polly","rabbitmq","razor","restsharp","scrum","testing"],"created_at":"2024-11-09T08:23:08.167Z","updated_at":"2025-07-04T16:06:19.198Z","avatar_url":"https://github.com/alexandrecpedro.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Código do Futuro (Code of the Future)\n\n## 🗂 Modules\n\n### 1 Front-end\n\n#### Class 01 | Agile Methodology\n    -  Agile Methodology\n    -  Tradicional model x Agile teams\n    -  Agile Manifest\n    -  What is Scrum?\n    -  Scrum Roles\n    -  Scrum Advantages\n    -  Scrum: Rituals and Cerimonies\n    -  Scrum: Artifacts\n    -  Scrum Practices I\n    -  Scrum Practices II\n    -  Scrum: Backlog Refinement\n    -  Kanban\n\n#### Class 02 | GIT\n    -  Presentation and introduction to the theme\n    -  Installation and basic commands\n    -  Github and Remote repository\n    -  Branch and Merge\n    -  Fork, Pull Request and Github Pages\n\n#### Class 03 | Introduction to JavaScript\n    -  Review Basic JavaScript\n    -  Exercises\n\n#### Class 04 | JavaScript Practice\n    -  Review Basic JavaScript\n    -  Template String\n    -  Ternary Operator\n    -  Arrow Functions\n    -  Arrays, Spread \u0026 Methods\n    -  Objects Destructuring\n    -  SPA, PWA, and Web Components\n    -  Project\n\n#### Class 05 | Angular: Components\n    -  Angular CLI\n    -  Angular: Generate new project\n    -  Angular: Structure\n    -  Angular: Components\n\n#### Class 06 | Angular: Properties and Events\n    -  Data Binding\n    -  Property Binding\n    -  Exercise: Property Binding\n    -  Event Binding\n    -  Customized Event Binding\n    -  Exercise: Counter\n    -  Two Way Data Binding\n    -  Augury\n\n#### Class 07 | Angular: Directives\n    -  Introduction to Directives\n    -  Directive ngIf\n    -  Directive ngFor\n    -  Exercise: Directives ngIf and ngFor\n    -  Exercise: Directives ngIf and ngFor\n    -  Directive ngClass\n\n#### Class 08 | Angular: Encapsulation and Pipes\n    -  View Encapsulation\n    -  Lifecycle Hooks\n    -  Pipes I\n    -  Pipes II\n    -  Localization\n    -  Exercise: Pipes I\n    -  Exercise: Pipes II\n    -  Reorganizing the Project\n\n#### Class 09 | Angular: Routes and Modules\n    -  Routes\n    -  Routes: Router link\n    -  Routes: Default route and Not found route\n    -  Install Bootstrap\n    -  Services and Dependency Injection I\n    -  Services and Dependency Injection II\n    -  Modules\n    -  Module Review\n    -  HTTP Requests I\n    -  HTTP Requests II\n\n#### Class 10 | Angular: Interfaces\n    -  Creating Interfaces\n    -  Environment variables\n    -  Adding Loading and Error Handling\n    -  Working with RxJS operators\n    -  Observables and RxJS\n    -  Adding pagination at Extract\n    -  Exercise: Creating contacts screen\n    -  Contact details screen with Parameterized Routes\n    -  Exercise: Contact Details\n\n#### Class 11 | Angular: Forms\n    -  POST, PUT and DELETE Requests\n    -  Introduction to Forms\n    -  ngForm, ngSubmit and ngModel\n    -  ngModel Directive\n    -  Forms validation\n    -  Displaying form errors\n    -  Applying styles at fields validations\n    -  Applying own styles at fields validations\n    -  Using ViewChild decorator I\n    -  Using ViewChild decorator II\n    -  Correction of Form parameter type\n    -  Login Service I\n    -  Login Service II\n    -  Adding loading validations on Login\n    -  Creating Authentication Service I\n    -  Creating Authentication Service II\n    -  Upgrading Authentication Service\n    -  Adding Route Guards I\n    -  Adding Route Guards II\n    -  Modularization and Lazy Loading\n    -  Augury Routinging and Contacts Refactoring\n    -  Son Routes: Logged Area Component I\n    -  Son Routes: Logged Area Component II\n    -  Modularizating Login and Logout Button\n\n#### Class 12 | Angular: Libraries and Deploy with Firebase\n    -  Adding libraries to the project I\n    -  Adding libraries to the project II\n    -  Deleting a contact\n    -  New Contact Component\n    -  Reactive Forms\n    -  Applying validation on form fields\n    -  Applying CSS classes\n    -  Creating a contact by POST request\n    -  Create Edit Contact screen I\n    -  Create Edit Contact screen II\n    -  Grouped Forms\n    -  Adding Headers with HTTP Interceptor\n    -  Uploading an application in Firebase\n    -  End of the Course\n\n### 2 Back-end\n\n#### Class 01 | Introduction to .NET\n    -  .NET origins\n    -  Servers to run .NET (Integration with systems)\n    -  Resources\n\n#### Class 02 | .NET Frameworks\n    -  .NET Versions\n    -  Exercises\n\n#### Class 03 | Identity Server and Visual Studio\n    -  Identity Server: Creating the Solution\n    -  Identity Server: Setting the API\n    -  Identity Server: Setting the Client\n    -  Identity Server: Using Access Token\n    -  Identity Server: Identity Server with Microservices\n    -  Visual Studio: Productivity Resources\n    -  Visual Studio: \"Hello World\"\n    -  Visual Studio: Refactoring and IntelliSense\n\n#### Class 04 | Object-oriented\n    -  Introduction to Object-oriented\n    -  Classes, instances and encapsulation\n    -  Solving a logical problem\n    -  Creating lists\n    -  Creating console application menu\n    -  Function to register students\n    -  Listing students and calculating grades average\n    -  Refactoring code and encapsulated variables\n    -  Creating methods at class Student\n    -  Understanding the properties of a class\n    -  Talking a little bit about methods\n    -  Adding methods\n    -  Static methods\n    -  Contructor methods\n    -  Overwritten inheritance and polymorphism\n    -  Public, protected, internal and private\n    -  Code documentation\n    -  Interfaces\n    -  Abstract classes and classes members\n    -  Sealed classes and classes members\n\n#### Class 05 | SOLID Principles\n    -  Introduction to SOLID\n    -  SPR - Single Responsibility Principle\n    -  OCP - Open-Closed Principle\n    -  LSP - Liskov Substitution Principle\n    -  ISP - Interface Segregation Principle\n    -  DIP - Dependency Inversion Principle\n\n#### Class 06 | Best pratices for software development and testing\n    -  Introduction to Best Practices\n    -  Clean Code Principles\n    -  Clean Code: Classes Name\n    -  Clean Code: Methods Name\n    -  Clean Code: Function Creation\n    -  Clean Code: Code Sample\n    -  Clean Code: Class Creation \n\n#### Class 07 | Database: Fundamentals\n    -  Database Selection: Reasons\n    -  Normalized Databases x Non Normalized Databases\n\n#### Class 08 | Database: MySQL\n    -  Installing MySQL\n    -  Creating database and tables with SQL I\n    -  Creating database and tables with SQL II\n    -  Creating tables at Workbench I\n    -  Creating tables at Workbench II\n    -  Altering structures and removing tables\n    -  Inserting data at tables\n    -  Making changes and understanding results\n    -  Simple queries\n    -  Groupings and totals\n    -  Joins with 2 tables\n    -  Joins with 3 or more tables\n    -  Outer joins\n    -  Subqueries\n\n#### Class 09 | MVC Pattern, Models and Views\n    -  MVC Pattern: WebForms vs MVC\n    -  MVC Pattern: Introduction to MVC Pattern\n    -  MVC Pattern: Routing\n    -  MVC Pattern: Attribute Routing\n    -  MVC Pattern: Action Result\n    -  MVC Pattern: Views\n    -  Models: Models Creation\n    -  Models: Input I\n    -  Models: Input II\n    -  Models: HTTP Verbs\n    -  Models: Model Validation I\n    -  Models: Model Validation II\n    -  Views: Partial Views\n    -  Views: Layouts\n\n#### Class 10 | Design Patterns\n    -  Unit of Work: Repository I\n    -  Unit of Work: Repository II\n    -  Unit of Work: Generic Repository\n    -  Unity of Work\n    -  Explaining Strategy pattern\n    -  Creating Strategy pattern structure\n    -  Strategy: Coupling strategies\n    -  Singleton: The Sigleton pattern\n    -  Singleton: Abstract Factory\n\n#### Class 11 | API's\n    -  Building an API\n    -  Entity Framework\n    -  DTO\n    -  Authentication\n    -  Cookies X Session\n    -  JWT: Json Web Token\n\n#### Class 12 | Message Brokers and Traceability ID\n    -  Presenting RabbitMQ\n    -  Message Broker with Rebus and RabbitMQ\n    -  Azure Service Bus: Sending Messages to the Queue\n    -  Azure Service Bus: Receiving Queue Messages\n    -  Virtualization: ASP.NET Core Microservices Project\n    -  Traceability ID with Jaeger UI\n\n#### Class 13 | Idempotence, Circuit Breaker and Telemetry\n    -  Idempotency in commands\n    -  Circuit Breaker concept\n    -  Setting Polly for HTTP Requests\n    -  Demonstrating Circuit Breaker and retries with Polly\n    -  Presenting Telemetry\n    -  Using telemetry in ASP.NET Core I\n    -  Using telemetry in ASP.NET Core II\n    -  Telemetry: Introduction to Jaeger\n\n#### Class 14 | Testing and Error handling\n    -  Tests: concepts and types\n    -  Testing: Unit testing\n    -  Testing: Integrated tests\n    -  CI (continuous integration) \u0026 CD (Continuous delivery)\n    -  Deploy application","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexandrecpedro%2Fcode-of-the-future","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falexandrecpedro%2Fcode-of-the-future","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexandrecpedro%2Fcode-of-the-future/lists"}