Estudando na Quarentena

Saudações Devs e futuros programadores!

Nos dias 19 e 20 de Abril o ebook “Desenvolvimento em Camadas com C# .NET: 2ª Edição” estará disponível para download GRÁTIS na Amazon.

Amanhã é Domingo então dá pra acordar devagar, tomar um café com calma, ler as notícias… e fazer o download do livro!

https://bityli.com/FQLWu

Espero que você e sua família estejam bem.

Ah! E se puder… #FiqueEmCasa

Devido ao número de downloads registrado nas últimas 48 horas, a promoção de download grátis foi estendida até Quinta-feira, dia 23 de Abril de 2020.

Com a palavra, Prof. Dr. Hugo Paredes

A transformação digital é atualmente uma realidade e o acesso à tecnologia e a ferramentas que nos apoiam, em grande parte das nossas tarefas quotidianas, é uma necessidade. A tecnologia é uma “commodity” da sociedade da informação da qual dependemos no nosso dia a dia, fornecendo um conjunto de funcionalidades imprescindíveis em atividades profissionais e de lazer. A dependência da tecnologia representa também um conjunto de requisitos para as aplicações, que devem responder a uma nova geração de utilizadores, ágil e dinâmica, em constante mudança.

A agilidade e resiliência são duas das principais características nas aplicações, refletindo-se na sua arquitetura. A capacidade de se adaptar às constantes mudanças de um ecossistema altamente volátil, com utilizadores exigentes, obriga a que as arquiteturas das aplicações privilegiem soluções versáteis e flexíveis. A Engenharia de Software apresenta diversas soluções para estes requisitos, sendo que na base de todas elas está a modularidade e separação de conceitos, introduzido por Dijkstra(¹).

Neste livro, Carlos Camacho introduz o conceito do desenvolvimento em camadas com C#. Este conceito é a base para o desenvolvimento estruturado de aplicações, capazes de responder às exigentes demandas do mercado. Agrega, de uma forma clara e concisa, os princípios para o desenvolvimento de aplicações resilientes, capazes de se adaptar rapidamente, e que asseguram uma manutenção ágil e eficaz. A organização do livro segue ela também uma estruturação em tudo similar ao que se espera de uma aplicação, construído sobre um exemplo de aplicação: o problema é segmentado em subproblemas, que são depois estruturados em camadas. O livro é um manual para quem se inicia no desenvolvimento de aplicações com C#, introduzindo desde logo um pensamento estruturado na concepção de aplicações, seguindo o tradicional modelo de camadas e obedecendo à separação de conceitos.

Esta obra é uma referência para os iniciantes na programação em C#, abrindo horizontes para outros desafios, garantindo as bases para um pensamento lógico e estruturado das aplicações de software, capazes de responder aos mais exigentes requisitos da atualidade.

Bom trabalho.



Hugo Paredes, PhD, BEng.
Professor Auxiliar com Agregação na Universidade de Trás-os-Montes e Alto Douro e Investigador Sénior no Instituto de Engenharia de Sistemas e Computadores, Tecnologia e Ciência, Portugal.

(¹)Dijkstra, E. W. (1982). On the role of scientific thought. In Selected writings on computing: a personal perspective (pp. 60-66). Springer, New York, NY.

Cap. 1 – Criando o Menu Principal

Este post é um pedido dos leitores do Livro Desenvolvimento em Camadas com C# .NET – 2a. Edição, publicado pela Amazon, EUA.

No Capítulo 1 nós programamos o gerenciamento da tabela de Clientes do banco de dados.

Antes da criação da Camada de Apresentação, ou seja, disponibilizar para o usuário o Formulário que permita gerenciar Clientes, é necessário preparar o Formulário Principal para que ele contenha os demais formulários do projeto.

Este vídeo é um passo-a-passo aonde preparamos o Formulário Principal da nossa aplicação através da criação de um menu. Assim estamos prontos para programar os próximos passos do nosso projeto.

Até breve!

Carlos Camacho.

Usuário logado no Windows

Imagine que você é o administrador de um aplicativo disponível internamente na empresa onde trabalha.

Um novo colaborador foi contratado hoje e ele precisa ter acesso ao seu aplicativo.

Para permitir o acesso, você precisa cadastrar o usuário da rede Windows do novo colaborador. Será que existe alguma maneira rápida de fazer isso?

E se disponibilizarmos um aplicativo que, ao ser executado no computador do usuário, exibe instantaneamente o nome do usuário do Windows?

Foi justamente esse projeto que desenvolvemos. Veja um exemplo do resultado da execução no momento em que eu estava logado no sistema operacional MS-Windows:

O código-fonte do projeto escrito em C# está disponível para download aqui.

Coach

Vivemos numa época de transformações. As empresas atravessam o que chamamos transformação digital.

Percebo que as pessoas também estão se descobrindo como seres únicos, que buscam crescimento constante e realização plena.

Essa transformação interna, a vontade de dar voz aos nossos desejos, é o que traz significado para as nossas vidas. Tudo isso não exclui a participação no mercado de trabalho.

Há alguns meses minha líder delegou a missão de ser Coach da Mirella Souza da Silva – estagiária na nossa equipe.

É claro! Exclamei de imediato. Ela ficou satisfeita por eu ter aceitado a missão e em seguida foi resolver outros assuntos da sua agenda.

Confesso que ao sair daquela reunião a única coisa que se passava na minha cabeça era:

  • O que significa exatamente ser um Coach?

Claro que eu já tinha ouvia esse termo em muitos lugares, mas qual o seu real significado?

Descobri que essa palavra já assumiu diferentes definições mas que hoje tem a ver com a capacidade de facilitar e transformar a vida das pessoas.

  • Lá na Idade Média, os condutores de carruagens eram chamados de cocheiros.
  • Na segunda metade do século XIX as pessoas usavam o termo para fazer referência aos professores de universidades.
    Acho que isso está mais próximo do significado atual do termo.
  • No mundo esportivo, os responsáveis pelo aperfeiçoamento dos atletas também passaram a receber esse nome.

E o que um Coach faz na prática?

Ele se baseia no autoconhecimento e no desenvolvimento pessoal.

Legal! Estava aí algo que eu queria colocar em prática: ajudar alguém no seu desenvolvimento pessoal. Eu não podia dar respostas prontas ou indicar o caminho que eu julgasse correto. O Coach não é o protagonista do processo.

Em uma conversa inicial com a Mirella, soube que ela já havia trabalhado em um sistema de Agendamento de Salas. O aplicativo foi para o ambiente de Produção e atualmente é usado por toda a Diretoria.

Excelente! Eu pensei. Além de conhecimento e habilidade, é imprescindível ter atitude. É preciso ter coragem para colocar o seu código para os outros usarem. Afinal de contas se erros forem encontrados, é a sua reputação que está em jogo.

Sabendo que ela possui o que chamamos de CHA (Conhecimento, Habilidade e Atitude), decidi subir a barra e coloquei um desafio de programação na mesa.

Mirella também já tinha demonstrado conhecimentos em Programação Orientada a Objetos ao entregar aquela missão do aplicativo de agendamento, então propus que ela desenvolvesse um CRUD(1) em uma linguagem diferente daquela usada no primeiro desafio.

Ela faz faculdade de Computação pela manhã e estágio no período da tarde. Apesar de sua agenda corrida, ela topou o desafio sem pestanejar.

Nosso Cientista de Dados Chefe já havia passado uma tarefa para ela realizar no horário da tarde, então em que momento você acha que ela conseguiria estudar a nova linguagem para dar conta do desafio proposto? Sim! À noite e aos finais de semana!

Não são todas as pessoas que encaram o sacrifício de estudar toda noite e aos finais de semana para adquirir novos conhecimentos. Mesmo para os estudiosos, não é fácil manter essa disciplina por muito tempo. Lembre-se que ela tem que dar conta das disciplinas regulares do curso de graduação (…).

Mas eu era o Coach! Minha missão era promover pressão e alta temperatura até que o carbono se tornasse um diamante! Acreditei no potencial da Mirella e ela correspondeu às expectativas.

Depois de estudarmos o código-fonte que ela entregou e realizarmos pequenas melhorias, perguntei se ela topava revisar um texto técnico que explicava tudo aquilo que havíamos testado e mais um pouco. Adivinhem a resposta dela?

  • Sim, será uma honra!

Aluna do Curso de Ciência da Computação da Universidade Nove de Julho, Mirella foi revisora técnica de um livro didático sobre programação de computadores. O seu trabalho de revisão passou em primeira instância no Controle de Qualidade da Amazon!

Além de estar muito orgulhoso, o que mais eu posso dizer?
Mirella, pode colocar “revisão técnica de Livros” como um novo skill no seu LinkedIn!

Desejo sucesso e que você mantenha essa determinação implacável durante a sua jornada profissional. Conte comigo sempre!


(1) Codificar um CRUD significa escrever as funcionalidades necessárias para incluir, alterar, consultar e excluir registros.