C# Curso Completo de Programação Orientada a Objetos
4.7 (213 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
995 students enrolled
Wishlisted Wishlist

Please confirm that you want to add C# Curso Completo de Programação Orientada a Objetos to your Wishlist.

Add to Wishlist

C# Curso Completo de Programação Orientada a Objetos

Aprenda programação orientada a objetos de forma prática e objetiva usando C# e Microsoft Visual Studio
4.7 (213 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
995 students enrolled
Created by Nelio Alves
Last updated 6/2017
Portuguese
Current price: $10 Original price: $70 Discount: 86% off
5 hours left at this price!
30-Day Money-Back Guarantee
Includes:
  • 10.5 hours on-demand video
  • 17 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Compreender e aplicar as técnicas de programação orientada a objetos, usando C# como linguagem
  • Compreender e aplicar as seguintes estruturas de dados: vetores, matrizes, listas e conjuntos, usando C# como linguagem
  • Utilizar as funcionalidades básicas de Git e Github para controlar as versões dos seus projetos
  • Construir um projeto de sistema de jogo de xadrez totalmente funcional, em modo console, no qual as técnicas vistas no curso são aplicadas
View Curriculum
Requirements
  • Noções básicas de lógica de programação em qualquer linguagem
  • Um computador capaz de rodar o Microsoft Visual Studio
Description

OBJETIVO DO CURSO:

Ao final deste curso você será capaz de compreender e aplicar os fundamentos de orientação a objetos, quais sejam: classes, atributos, métodos, construtores, palavra this, sobregarga, encapsulamento, associações, herança, classe abstrata, sobreposição, polimorfismo, interfaces, elementos estáticos, tipos enumerados e exceções.

Você também aprenderá a utilizar as estruturas de dados mais utilizadas na construção de soluções: vetores, matrizes, listas e conjuntos.

MÉTODO:

Para atingir este objetivo, nós vamos iniciar nossa jornada com uma introdução à programação orientada a objetos, na qual vamos explorar os três principais conceitos orientados a objetos (classe, atributos, métodos) por meio de exercícios resolvidos e propostos. 

Em seguida, cada técnica de orientação a objetos e cada estrutura de dados será abordada de forma clara e objetiva com exemplos práticos.

Finalmente, chega a hora de aprofundar na parte prática: você vai aprender como construir um projeto de sistema de jogo de xadrez totalmente funcional, para o qual vamos criar uma aplicação modo console (linha de comando).

Mas não se engane pelo fato de estarmos testando o sistema no modo console: esse projeto possui um grau de complexidade significativo e vai demonstrar como tudo, tudo que foi aprendido no curso pode ser aplicado para a construção de uma solução elaborada, elegante e flexível, utilizando as boas práticas de desenvolvimento orientado a objetos, e desenvolvimento em camadas.

Só para você ter uma ideia, este mesmo sistema de jogo de xadrez já foi utilizado por mim em uma disciplina de desenvolvimento de games, bastando trocar a camada de aplicação modo console por uma nova camada de aplicação 3D interativa, desenvolvida na ferramenta Unity (mas este processo não será mostrado aqui porque leva muitas horas e perderia o foco do curso).

Como aprendizado prático, este projeto é fantástico! Vai ampliar sua visão. Eu o elaborei com muito cuidado, buscando aplicar toda ementa do curso, e eu não vi nada parecido na concorrência.

REQUISITOS E ESCLARECIMENTOS:

Eu classifiquei este curso como para "todos os níveis", pois nós vamos começar do início de orientação a objetos, e depois vamos aprofundar, conforme eu expliquei.

Mas é importante ressaltar que este curso NÃO é para quem nunca programou. O curso requer que você já tenha visto pelo menos o básico de lógica de programação em uma linguagem qualquer. Mesmo assim, pensando em quem nunca viu C# ou quem está um pouquinho enferrujado em lógica de programação, eu incluí no início do curso uma seção auxiliar, que é uma Revisão de Lógica de Programação utilizando C#.

Outra seção auxiliar do curso é uma Introdução ao Git e Github, que vai ser necessário para fazer o controle de versão do projeto que nós vamos desenvolver.

Também é importante ressaltar que este NÃO é um curso cujo objetivo principal é esgotar a tecnologia C#. Neste curso C# é um meio e não um fim. O objetivo do curso é aprender programação orientada a objetos. Nós vamos sim aprender bastante C#, mas na medida do necessário para implementar os conteúdos do curso.

AGRADECIMENTO:

Então é isso. Muito obrigado pela atenção. Não esqueça de assistir alguns dos vídeos demonstrativos gratuitos, e também as demais descrições e os itens da grade curricular para mais informações.

Se você está querendo aprender ou se aprimorar em programação orientada a objetos, ou então repassar aqueles tópicos que não ficaram muito claros na faculdade, este curso é ideal pra você. Se este for o seu caso, não perca mais tempo: comece já este curso.

Who is the target audience?
  • Estudantes de cursos na área de Computação / Informática
  • Profissionais iniciantes e estagiários que precisam aprender ou revisar programação orientada a objetos
  • Entusiastas em desenvolvimento de games, especialmente da plataforma Unity
  • Entusiastas em desenvolvimento de sistemas, especialmente da plataforma Microsoft C# .NET
Students Who Viewed This Course Also Viewed
Curriculum For This Course
93 Lectures
10:32:50
+
Revisão de lógica de programação
11 Lectures 01:05:13

Boas vindas e orientações sobre o curso
02:11

Instalando o Microsoft Visual Studio
06:11

Tipos básicos de dados em C#
02:05

Estrutura e cabeçalhos de um programa C#
07:58


Como fazer entrada de dados em C#
07:57

Estrutura condicional (if) em C# - exercício resolvido
07:46

Estrutura repetitiva enquanto (while) em C# - exercício resolvido
09:39

Estrutura repetitiva para (for) em C# - exercício resolvido
07:55

Dicas de edição e exercícios propostos
03:23
+
Introdução à Programação Orientada a Objetos
9 Lectures 52:29
Visão geral e orientações
01:35

Resolvendo um problema sem orientação a objetos
05:39


Criando um método para obtermos os benefícios de reaproveitamento e delegação
09:22

Começando a resolver um segundo problema exemplo
08:08

Usando o método toString para converter o objeto para string
03:53

Implementando os métodos da classe Produto
03:50

Terminando de construir o programa
06:34

Exercícios propostos
05:29
+
Técnicas de orientação a objetos e estruturas de dados
20 Lectures 03:27:03
Visão geral e orientações
01:04

Construtores e palavra this
08:25


Encapsulamento
13:56

Tipos referência e tipos valor
12:25

Vetores
10:44

Matrizes
08:00

Listas
08:30

Conjuntos
09:43

Associações
08:06

Herança, classe abstrata, sobreposição, polimorfismo e interface
22:46

Elementos estáticos
11:35

Tipos enumerados
04:40

Exceções
13:58


Solução do exercício resolvido - PARTE 1/3
20:13

Solução do exercício resolvido - PARTE 2/3
18:00

Solução do exercício resolvido - PARTE 3/3
17:08

Exercício proposto 1
01:17

Exercício proposto 2
01:23
+
Introdução ao Git e Github
17 Lectures 01:00:45
Visão geral sobre esta seção bônus
01:46

Visão geral do Git
01:57

Instalando o Git Bash no Windows
03:43

Como criar um novo repositório Git - comando init
06:14

Configurando a identifcação do usuário no Git - comando config
02:03

Salvando versões - comandos add, commit, status e log
06:43

E se eu esquecer de colocar a mensagem no commit? - editor VIM
02:47

E se eu me perder e quiser voltar ao estado do commit atual? - comando clean -df
02:25

E se eu quiser desfazer o último commit? - comando reset
04:09

E se eu quiser somente dar uma olhada em uma versão anterior? - comando checkout
03:25

Visão geral do Github
03:42

Criando um repositório remoto no Github
01:46

Associando o repositório local ao repositório remoto do Github - comando remote
02:00

Transferindo o repositório local para o Github - comando push
04:21

A importância de se configurar corretamente o usuário no Git Bash
03:39

Transferindo um repositório remoto para seu computador - comando clone
04:06

Atualizando seu repositório local - comando pull
05:59
+
Projeto sistema de jogo de xadrez - Parte 1
12 Lectures 01:34:30

Criando o projeto e o repositório de versionamento
08:29

Criando a primeira classe do projeto
08:40

Começando a implementar o tabuleiro
09:33

Começando a implementar um método que imprime o tabuleiro
06:55

Começando a colocar peças no tabuleiro
11:59

Criando uma exceção personalizada de tabuleiro
05:53

Testando a exceção personalizada de tabuleiro
04:13

Criando a classe PosicaoXadrez
07:19

Melhorando a impressão do tabuleiro
06:23

Preparando o programa para testes iniciais
11:56

Realizando os primeiros testes de movimentação
06:09
+
Projeto sistema de jogo de xadrez - Parte 2
15 Lectures 01:38:24
Projetando o método que diz quais movimentos possíveis de uma peça
04:29

Implementando os movimentos possíveis do rei
08:53

Implementando os movimentos possíveis da torre
04:33

Testes iniciais dos movimentos das peças
11:09

Passando o turno
05:31

Validando a posição de origem
09:03

Validando a posição de destino
04:21

Implementando um controle de peças capturadas
08:13

Testando o controle de peças capturadas
07:02

Implementando a lógica de xeque
12:42

Testando o xeque
03:15

Implementando a lógica de xequemate
05:38

Testando a lógica de xequemate
05:09

Correção: renomeando o método para movimentos possíveis
02:40

Implementando as demais peças
05:46
+
Projeto sistema de jogo de xadrez - Parte 3
9 Lectures 54:26
Começando a implementar a jogada especial roque pequeno
07:12

Começando a implementar a jogada especial roque grande
02:48

Complementando as jogadas especiais roque pequeno e roque grande
06:08

Testando as jogadas especiais roque pequeno e roque grande
05:54

Começando a implementar a jogada especial en passant
04:53

Implementando movimentos possíveis para a jogada especial en passant
07:02

Complementando a jogada especial en passant
08:18

Testando a jogada especial en passant
05:51

Jogada especial promoção
06:20
About the Instructor
Nelio Alves
4.7 Average rating
393 Reviews
2,777 Students
3 Courses
Professor

Olá, meu nome é Nelio Alves. Sou graduado em Ciência da Computação e possuo mestrado e doutorado em Engenharia de Software pela Universidade Federal de Uberlândia.

Comecei minha carreira como professor universitário, juntamente com meu mestrado, no início de 2001, e desde então tenho me dedicado a esta que se tornou minha paixão já por mais de 16 anos.

Minha maior satisfação é poder colaborar na jornada daqueles que desejam melhorar suas vidas por meio da educação. Ficarei muito feliz se eu puder fazer parte e colaborar também com sua jornada, oferecendo algum curso nesta fantástica área de conhecimento que é a Computação e o desenvolvimento de software.

Espero que nos encontremos em breve! Um grande abraço!

Nelio