Tópicos Especiais

Chrysthian Simão

Básico do C#

Oi, eu sou o CH!

Formado em Sistemas de Informação pela OPET (com coordenação de um certo xará)

 

Pós Graduado em Desenvolvimento de Jogos para Computador pela Universidade Positivo

 

Desenvolvedor há 19 anos

Arquiteto front-end nos últimos 7 anos

Oi, eu sou o CH!

Quais nerdices você curte?

SIM!

Primeiro, uma demo legal

Material das aulas

(e vantagens de um nome complicado)

https://github.com/chrysthian

https://slides.com/chrysthian

Desenvolvimento de projetos web
 

  • Backend com C# e .Net Core
     
  • Frontend com React e TS

Tópicos Especiais

Convenções do CH

(e da disciplina)

  • Codificar em inglês
     
  • Formatter é a critério do aluno (um pouco mais sobre isso, logo mais)
     
  • Apresentar os trabalhos em um repositório do GIT (se você não tem um, vamos criar e aprender a usar juntos)
     
  • Os temas dos trabalhos são a critério de vocês, podem usar quaisquer recursos para construir eles desde que consiga defender seu projeto na frente da turma

Montando Ambiente

.NET SDK

O .NET SDK será utilizado para que seja possível criar aplicações utilizando a linguagem de programação C#.

.NET SDK

dotnet --info
dotnet --version

Como eu sei que instalou corretamente?

Node.js

É um motor de tempo de execução JavaScript de código aberto. Ele executa o código JavaScript fora de um navegador.

Node.js

Como eu sei que instalou corretamente?

node --version
npm --version
npx --version

Git Bash

Git é um sistema de controle de versão distribuído gratuito e de código aberto projetado para lidar com tudo, desde projetos pequenos até muito grandes, com velocidade e eficiência.

Git Bash

Você pode instalar a ferramenta da sua preferência para trabalhar com o GitHub.

Git Bash

Como eu sei que instalou corretamente?

git --version

Microsoft Visual Studio Code

Ferramenta gratuita, possui um validador de código, tem integração nativa com GIT e suporta extensões.

Microsoft Visual Studio Code

  • C# Dev Kit: Extensão que auxiliará no desenvolvimento de projetos em C#;

Microsoft Visual Studio Code

Ctrl + Shift + S → Salvar todos os arquivos;

Ctrl + Shift + P → Abre a paleta de comandos;

Ctrl + P → Buscar arquivos dentro do projeto;

Ctrl + ' → Abre o terminal integrado ao visual studio code;

Alt + botão esquerdo do mouse → Múltipla seleção;

Ctrl + Alt + ↑ ou ↓ → Múltiplos cursores;

Ctrl + D → Encontrar próxima ocorrência | Selecionar a palavra e realizar o comando;

F2 → Renomear váriaveis, métodos, funções, classes e etc... | Selecionar a palavra e realizar o comando;

Alt + Shift + F → Identar o código;

Ctrl + / → Comentar o código

Alguma dúvida até agora?

Show me the code!

Criando um projeto C#

  • Crie uma pasta para conter seu projeto
  • Abra o VS Code
  • Arraste a pasta pra dentro do VS code
  • CTRL + SHIFT + P
  • .NET New Project...
  • ConsoleApp
  • Dê um nome que seu <3 mandar
  • F5

Convenções de código

Essa é a convenção da Microsoft, esta é uma referência não uma exigência se quiser usar outro padrão, pode

Hello World! (C#)

using System;

class Hello
{
	static void Main(string[] args)
	{
		Console.WriteLine("Hello World!");
	}
}

Hello World! (Java)

public class Hello {

  public static void main(String args[]) {
    System.out.println("Hello World");
  }

}

Há outros tipos complexos, mas vamos começar com os tipos básicos

Variáveis

  • bool (true/ false)
  • char (um caracter)
  • string (um array de caracteres)

Variáveis Numéricas

  • byte (0 a 255)
  • short
  • int
  • long
  • double
  • decimal

Prefixos

  • u - unsigned
  • s - signed

Tipos

Variáveis Numéricas

byte a = 17;
byte b = 300; // xingão
sbyte c = 129; // xingão
byte d = 129;
sbyte e = -100;
byte e = -100; // xingão
  • sbyte: -128 a 127
  • byte: 0 a 255

Variáveis Numéricas

Gandhi e Sid Meier's Civilization

Estruturas condicionais

int age = 20;

if (age >= 18)
{
	Console.WriteLine("Você pode votar");
}
else
{
	Console.WriteLine("Voce não pode votar");
}

Estruturas condicionais

( Ver exemplo DisplayMeasurament.cs )

Estruturas de repetição

for (int i = 0; i < 3; i++)
{
    Console.Write(i);
}
// Output: 012

Estruturas de repetição

int n = 0;
while (n < 5)
{
    Console.Write(n);
    n++;
}
// Output:
// 01234

Estruturas de repetição

int n = 0;
do
{
    Console.Write(n);
    n++;
} while (n < 5);
// Output: 01234

Exercício 1

 

Escrever um algoritmo que receba a altura e a largura de um retângulo e calcule a sua área.​

Exercício 2

 

Crie um algoritmo que permita fazer três conversões monetárias. O algoritmo deve receber o valor em real (R$) e apresentar os valores convertidos em:

 

  • Dólar (1 dólar = 5,17 reais)
  • Euro (1 euro = 6,14 reais)
  • Peso argentino (1 peso argentino = 0,05 reais)

Exercício 3

 

Desenvolver um algoritmo para ler o valor inteiro da idade de uma pessoa e imprimir uma das mensagens:

 

  • se idade <= 13: Criança
  • se idade > 13 e <= 18: Adolescente
  • se idade > 18 e <= 60: Adulto
  • se idade > 60: Idoso

Exercício 4

Criar um algoritmo que receba um valor positivo inteiro e imprima a sequência Fibonacci até o valor lido. Por exemplo: caso o usuário insira o número 15, o programa deve imprimir na tela os números 0, 1, 1, 2, 3, 5, 8, 13.

Alguma Dúvida?

Freedom!

Tópicos Especiais 1

By Chrysthian Simão

Tópicos Especiais 1

  • 222