Balta eu vi que você esta utilizando o Rider. Eu gostei bastante desta fonte, etc da forma como ficou este ambiente. Eu gostaria de replica-lo no meu MacOS é algo simples de fazer? Do mais, parabéns! Sempre te recomendo pelo mesmo motivo. Consegue explicar tudo de forma simples.
Fala Balta, blz. Para incrementar o conteudo gostaria de fazer mas considerações. Os operadores as e is são bem antigos, o C# já nasceu desde a versão 1.0 com eles, e a partir da versão 7.0 o is veio recebendo mais "poderes". Teve um ponto que você fez que infezlimente não funciona var documento = new Documento(); var cpf = (CPF)documento; Apesar de compilar, ele quebra em runtime, pq não é possível converter Documento em CPF. Já a linha abaixo, funciona: var cpf = documento as CPF; Nesse caso pq qnd se usa o as, ele tenta converter, caso não consiga, devolve null. E ai uma das evoluções do is, permitiu trocar esse código: var documento = new Documento(); var cpf = documento as CPF; if(cpf != null) { ...codigo } Por isso: var documento = new Documento(); if(documento is CPF cpf) { ...codigo } Nesse caso, cpf só existe no bloco do if!! Da para fazer bem mais coisas, é um mundo de possibilidades lindas!!! Outro detalhe sensacional entre usar is vs GetType == typeof é que o is respeita a herança, então record Documento(); record CPF() : Documento; var cpf = new CPF(); cpf is Documento => true!! cpf.GetType() == typeof(Documento) => false!!!!
Legal demais Balta, dá muito mais semântica a um código. A equipe do C# está de parabéns! Você sempre está de parabéns! Eu acho que você tem o poder de explicar as coisas sempre de forma muito simples!
Balta, um detalhe interessante tbm é que o operador "is" não pode ser sobrescrito, diferente do "==", então um outro motivo pra usar "is" pode ter um ganho na garantia de intenção, já que não existe o risco de ele ter sido sobrescrito nas comparações de null por exemplo... Conteúdo top como sempre, vlw
A minha pergunta pode parecer meio idiota mais vamos lá. Eu preciso usar um token do Telegram em um site, porém este token não pode ficar no JavaScript por motivos óbvios, como eu faço para deixar esse token no C# e como eu vou fazer para o site validar o token consultado a chave no C# ?
Depende do que você precisa fazer... tudo que fica no cliente (JS, Browser) é visível via Dev Tools... então não tem como deixar o token ali fixo... conta mais sobre seu cenário que tentamos ajudar melhor!
@@baltaio então a minha duvida e essa de um iniciante, faz pouco tempo que eu comecei a aprender csharp. Como eu faço para o site ter acesso ao csharp, tenho que criar um servidor local para essa comunicação acontecer? Porquê na prática o que acontece é o seguinte, quando o usuário tá dentro do site e seleciona uma determinada opção, eu sou avisado no telegram que o usuário X escolheu a opção Y, mais esse aviso acontece atualmente com o token lá no JavaScript, sim ele está exposto e eu tenho conhecimento dos riscos e quero mudar isso. PS eu estou aprendendo C# .NET com as suas aulas e parabéns pela suas disciplinas, mais ainda não cheguei nas aulas que fala sobre o site ASP .NET acredito que é lá aonde eu vou aprender sobre sites com .NET, porém tenho urgência em mudar isso.
Balta, qual editor de texto você está usando? Comecei a te acompanhar tem poucas semanas, estou fazendo o curso de fundamentos do C#, trabalho como Dev fullstack júnior e usamos muito .Net no trampo, seu curso de fundamentos está ajudando muito a consolidar o básico de c# na cabeça, e finalizando vou assinar o plano e seguir a carreira backend c# da sua plataforma! Já comecei a estudar c# em outras 3 plataformas famosas, e a sua foi a que mais me agradou, sua forma de explicar é simples e objetiva!
Obaaa, que bom, seja bem-vindo! Estou usando o Rider, mas para estudar, no início recomendo o VSCode por ser gratuito e te ajudar menos... Eu comento sobre isto no nosso curso gratuito de C#, o link está na descrição deste vídeo!
Cara, se n me engano entrou esse esquema de is começou com o pattern matching do c# 7, o do as já tem mais tempo mas n sei qnd começou, mas lembro que já usava no unity antigo...
Olá Balta, pode me ajudar em uma coisa? sou dev back-end em C#/.NET e estou querendo me aventurar no front-end, meu conhecimento em front-end é mínimo, gostaria de saber por onde começar, tem alguma dica?
eu acho que entendi o que ele faz, mas não consigo imaginar um caso na qual eu consiga usar o IS numa linguagem fortemente tipada, saberia algum exemplo?
🔥CURSO GRATUITO DE C# E .NET🔥
👉 balta.io/cursos/fundamentos-csharp?TH-cam&
Balta eu vi que você esta utilizando o Rider. Eu gostei bastante desta fonte, etc da forma como ficou este ambiente. Eu gostaria de replica-lo no meu MacOS é algo simples de fazer?
Do mais, parabéns! Sempre te recomendo pelo mesmo motivo. Consegue explicar tudo de forma simples.
Muito bom !
🚀
Fala Balta, blz.
Para incrementar o conteudo gostaria de fazer mas considerações.
Os operadores as e is são bem antigos, o C# já nasceu desde a versão 1.0 com eles, e a partir da versão 7.0 o is veio recebendo mais "poderes".
Teve um ponto que você fez que infezlimente não funciona
var documento = new Documento();
var cpf = (CPF)documento;
Apesar de compilar, ele quebra em runtime, pq não é possível converter Documento em CPF.
Já a linha abaixo, funciona:
var cpf = documento as CPF;
Nesse caso pq qnd se usa o as, ele tenta converter, caso não consiga, devolve null.
E ai uma das evoluções do is, permitiu trocar esse código:
var documento = new Documento();
var cpf = documento as CPF;
if(cpf != null)
{
...codigo
}
Por isso:
var documento = new Documento();
if(documento is CPF cpf)
{
...codigo
}
Nesse caso, cpf só existe no bloco do if!!
Da para fazer bem mais coisas, é um mundo de possibilidades lindas!!!
Outro detalhe sensacional entre usar is vs GetType == typeof é que o is respeita a herança, então
record Documento();
record CPF() : Documento;
var cpf = new CPF();
cpf is Documento => true!!
cpf.GetType() == typeof(Documento) => false!!!!
Obrigado Alberto
realmente não funciona o cast dessa forma.
Esses recursos já tinha no VB há um bom tempo, agora só falta trazer os operadores And Or e Xor.
🚀
Outro vídeo excelente ! Com certeza irei utiliza-los quando migrarem as aplicações da minha empresa de 3.1 para 6
💜
Balta, boa tarde!
Muito boas as dicas.
VLW... 👍🏻
Valeu 😀
Legal demais Balta, dá muito mais semântica a um código. A equipe do C# está de parabéns!
Você sempre está de parabéns! Eu acho que você tem o poder de explicar as coisas sempre de forma muito simples!
Muito obrigado 😁
conteúdo muito bom.
💜
Alguém sabe que IDE é essa que o Balta usa?
Rider da JetBrains
Balta, um detalhe interessante tbm é que o operador "is" não pode ser sobrescrito, diferente do "==", então um outro motivo pra usar "is" pode ter um ganho na garantia de intenção, já que não existe o risco de ele ter sido sobrescrito nas comparações de null por exemplo... Conteúdo top como sempre, vlw
Sensacional, muito obrigado pela observação 💜💜
O as e o is só funciona no .Net 6 ou no .Net 5 pra baixo ele funcionária também?
Funcionam no .NET 5, porém o "is not" se não me engano é apenas no 6!
@@baltaio valeu balta, obrigado. Em breve, muito em breve, vou ser assinante do teu curso, não vejo a hora rsrsrs
A minha pergunta pode parecer meio idiota mais vamos lá.
Eu preciso usar um token do Telegram em um site, porém este token não pode ficar no JavaScript por motivos óbvios, como eu faço para deixar esse token no C# e como eu vou fazer para o site validar o token consultado a chave no C# ?
Depende do que você precisa fazer... tudo que fica no cliente (JS, Browser) é visível via Dev Tools... então não tem como deixar o token ali fixo... conta mais sobre seu cenário que tentamos ajudar melhor!
@@baltaio então a minha duvida e essa de um iniciante, faz pouco tempo que eu comecei a aprender csharp.
Como eu faço para o site ter acesso ao csharp, tenho que criar um servidor local para essa comunicação acontecer?
Porquê na prática o que acontece é o seguinte, quando o usuário tá dentro do site e seleciona uma determinada opção, eu sou avisado no telegram que o usuário X escolheu a opção Y, mais esse aviso acontece atualmente com o token lá no JavaScript, sim ele está exposto e eu tenho conhecimento dos riscos e quero mudar isso.
PS eu estou aprendendo C# .NET com as suas aulas e parabéns pela suas disciplinas, mais ainda não cheguei nas aulas que fala sobre o site ASP .NET acredito que é lá aonde eu vou aprender sobre sites com .NET, porém tenho urgência em mudar isso.
Balta, qual editor de texto você está usando? Comecei a te acompanhar tem poucas semanas, estou fazendo o curso de fundamentos do C#, trabalho como Dev fullstack júnior e usamos muito .Net no trampo, seu curso de fundamentos está ajudando muito a consolidar o básico de c# na cabeça, e finalizando vou assinar o plano e seguir a carreira backend c# da sua plataforma! Já comecei a estudar c# em outras 3 plataformas famosas, e a sua foi a que mais me agradou, sua forma de explicar é simples e objetiva!
Obaaa, que bom, seja bem-vindo! Estou usando o Rider, mas para estudar, no início recomendo o VSCode por ser gratuito e te ajudar menos... Eu comento sobre isto no nosso curso gratuito de C#, o link está na descrição deste vídeo!
Balta, a partir de qual versão essa sintaxe está disponível ?
Cara, se n me engano entrou esse esquema de is começou com o pattern matching do c# 7, o do as já tem mais tempo mas n sei qnd começou, mas lembro que já usava no unity antigo...
Se não me engano foi C# 8 e 9!
o is é mais antigo, mas o is not só no novo.
Olá Balta, pode me ajudar em uma coisa? sou dev back-end em C#/.NET e estou querendo me aventurar no front-end, meu conhecimento em front-end é mínimo, gostaria de saber por onde começar, tem alguma dica?
Com certeza por HTML, CSS e JS... são a base do front-end :)
eu acho que entendi o que ele faz, mas não consigo imaginar um caso na qual eu consiga usar o IS numa linguagem fortemente tipada, saberia algum exemplo?
Mostrei alguns exemplos no vídeo!