Klayton,
Eu NÃO fiz esse curso do Windows Forms, mas se sobrar um tempo ainda pretendo fazer, embora eu programei mais de 10 anos em Windows Forms tanto em VB6, VB.Net e C#... além de que Windows Forms está COMPLETAMENTE obsoleto, pois tudo é dentro de um browser hoje em dia.
Vou passar minha experiência para você, mas é algo pessoal, okay?
No mercado de trabalho, principalmente em empresas "fundos de quintal", que é 90% das empresas de mercado excetuando-se as empresas-parasitas (empresas intermediárias que te colocam em outras empresas onde REALMENTE você vai atuar), tem MUITA MACARRONADA que é a técnica "GO HORSE" ("VAI CAVALA") também conhecida como "POG" (Programação Orientada a Gambiarras) que quer dizer absolutamente NADA de técnica, sentar na frente do teclado e sair tacando o dedo nas teclas) - eles confundiram o RAD (Rapid Application Designer) com a mais pura putaria. Códigos SEM técnicas de encapsulamento, sem designer patterns ou qualquer tipo de técnica ou conceito, como, por exemplo, o DDD (Domain Driven Design).
Alguns poucos lugares onde eu programei, usei 3 camadas que são basicamente estes quatro grupos:
- Domain ou Model – Domain Layer (Model) - Modelo da Classe;
- DAL ou DAO – Data Access Layer (Object) - Camada de Comunicação com o Banco de Dados);
- BLL – Business Logic Layer (Camada de Regras de Negócio);
- UI ou WS – Presentation Layer – User Interface – (Camada de Telas);
A técnica de 3 camadas ISOLA o código em UI (User Interface) da DAL, a camada de acesso ao banco de dados... isso já é um grande avanço.
NÃO vi nenhum curso de 3 camadas aqui na Alura... talvez porque já está obsoleto, sei lá.
Fora isso vi outra técnica dentro de uma espécie de "fábrica de software" que era de colocar duas entradas, uma no início e outra no fim de cada CLASSE para fazer uma espécie de enxerto no código personalizando para cada cliente... muito arcaico.
Também vi MVC (Model View Controler), mas SOMENTE para ASP.Net + C#.
Nunca vi em ambiente de trabalho o MVVM (Model-View-ViewModel).
CURIOSIDADE:
Este modelo só vi em uma palestra e nunca mais vi:
Legenda:
- V – 01 Presentation Layer – User Interface;
- F – 02 Domain Layer – Facade;
- E – 02 Domain Layer – Entities;
- M – 02 Domain Layer – Business Components;
- X – 03 Infrastructure Layer – Cross-Cutting – Cross-Cutting;
- S – 03 Infrastructure Layer – Data Persistence – Services Agents;
- D – 03 Infrastructure Layer – Data Persistence – Data Access Components;
[]'s,
Fabio I.
P.S.: POG, I am your father... KKKKK!!!