TYPESCRIPT É MELHOR QUE GO! 32 motivos do porquê

Поделиться
HTML-код
  • Опубликовано: 10 фев 2025
  • Recentemente esse post no reddit viralizou: / anyone_who_tried_to_li...
    O autor listou 32 motivos pelos quais, segundo ele, typescript é melhor que Go.
    Nesse vídeo, eu mostro a minha opnião sobre esses pontos levantados.
    Artigo da uber: www.uber.com/e...
    --------------------------------------------
    Minhas redes sociais:
    ✅ github.com/phe...
    ✅ / phenpessoa
    ✅ x.com/phenpessoa
    ✅ / phenpessoa
    ✅ / phenpessoa
    ✅ / phenpessoa
    ✅ / phenpessoa
    Contato profissional:
    phenpessoayt@gmail.com
    --------------------------------------------
    #golang #typescript #programação

Комментарии • 114

  • @cesarmarinhorj
    @cesarmarinhorj Год назад +10

    acabei de virar fã do canal!!!
    saber os pontos "fracos" da linguagem faz parte tb. Ele aponta o que foi dito dizendo, ok, é válido, sem varrer pra debaixo do tapete...
    sensacional!!!

  • @cassiooliveira6946
    @cassiooliveira6946 Год назад +9

    Cara, muito bom
    Como sou novo no Go, estava meio travado exatamente nesse ponto do zero default values com JSON, eu estava usando ponteiro para os campos que poderiam ser nulos e essa sacada com um struct Field fica bem melhor.
    Também não sabia sobre a questão de alocação de memória Heap e tals, vlw pelp vídeo.

  • @h4andr1x
    @h4andr1x Год назад +9

    Assisti o vídeo inteiro e nem percebi o tempo passar. Realmente estou gostando muito de Go! Sou dev PHP, gosto muito de Typescript também, mas em questão de tipagem estática prefiro Go com certeza.

  • @mattmmello
    @mattmmello Год назад +2

    Excelente, muito obrigado por ter colocado seu tempo em compartilhar seu conhecimento pra todos nós!

  • @Leozinhopirado167
    @Leozinhopirado167 Год назад +9

    Se não me engano o lance de não saber quando pode retornar erro vai mudar logo. na TypeScript 5.3 Iteration Plan, esta prevista Champion throw Expressions. Acho que vai funcionar como o Java e voce vai consegutir tipar que retorna alguma execeção.

    • @heraldo623
      @heraldo623 11 месяцев назад

      Checked exceptions do Java? Tipo
      function foo() throws Error

  • @MaxsuelMaccari
    @MaxsuelMaccari 10 месяцев назад +2

    47:24 O rapaz confundiu legal Programação Funcional com Programação Procedural.

  • @danieldias2693
    @danieldias2693 8 месяцев назад

    estou aprendendo muito com esse vídeo, vc eh muito prático.

  • @lucasmedeiros391
    @lucasmedeiros391 Год назад +1

    Vídeo excelente! Estarei na espera de mais conteudos!

  • @thejman4466
    @thejman4466 10 месяцев назад +1

    Sei que o vídeo é antigo, mas seria legal um vídeo explicando como as alocações funcionam, com sua didática acredito que muita gente iria entender melhor sobre esses assuntos... heap, stack etc. E como você trabalha com Go, acredito que seja uma boa linguagem de exemplificar também. Outra dúvida, tu vai estar presente na Gophercon desse ano em Floripa?

  • @mateusmosqueira623
    @mateusmosqueira623 Год назад +2

    Video ótimo! Precisamos de mais pessoas e conteúdos assim

  • @brenoprotidev
    @brenoprotidev Год назад +1

    Uso JS/TS ha alguns anos e comecei a estudar GO ha poucos meses! Seu video foi excelente, alem do conteúdo o video trouxe um grande aprendizado sobre a linguagem, obrigado por compartilhar esse conhecimento !

  • @HugoSantAna7
    @HugoSantAna7 Год назад +11

    Typescript você tem níveis de "strict" que são configuráveis. Então sobrescrever funções, métodos e Objetos é possível, desde que você mantenha os tipos originais. Em suma, você tem mais controle sobre compatibilidade de coisas sobrescritas.

    • @lacrador_idiota
      @lacrador_idiota 7 месяцев назад

      Sempre trabalhei com TS e N sabia q existia níveis de strict, so sabia do "use strict"

  • @vinialves12362
    @vinialves12362 Год назад

    Conheci o canal hoje, estou curtindo bastante.

  • @lacrador_idiota
    @lacrador_idiota 7 месяцев назад

    23:16 isso também parece válido, se ele está comparando duas linguagens (oq já é esquisito por si só, pq na vdd uma é superset de uma Lang q veio da web e outra é mais back), é completamente válido falar das praticidades da sintaxe

  • @luizfelipe-ek8tc
    @luizfelipe-ek8tc Год назад +4

    Essa questão dos erros serem tratados usando try catch é terrível, tanto que eu programo também em typescript e uso a abordagem Either para fugir disso.

  • @landre-po8uk
    @landre-po8uk Год назад

    Concordo contigo, obrigado pela disposição de tempo pra ajudar quem deseja fazer o que gosta e buscar resultados e não somente ser um funcionário.

  • @HugoSantAna7
    @HugoSantAna7 Год назад +1

    Nice video!
    Sobre acessar membros de objetos usando variáveis, é algo que só quem usa sente falta. Eu trabalho com TS e JS há anos e, por isso, vejo utilidade e já usei várias vezes. Mas não é o fim do mundo.
    Omit e pick, entre outros, são parte do que ele considerou "poderoso sistema de tipagem". Neste sentido, concordo, pq o Typescript tem muitos utilitários para fazer merge, pick e omit de tipos. Facilita demais para não repetir código. Especialmente em interfaces e tipos grandes.

  • @Ddiidev
    @Ddiidev Год назад

    Muito bom o vídeo!
    Eu te fato amo a sacada de go com Error handling, gosto demais da possibilidade você dita oque é uma função assíncrona como cliente da função, isso é perfeito por você não amarrar a função(uso C# e tem hora que dá um trabalho!)
    Eu não trabalho com Go, mas venho programando em V, se você baixasse e testasse quase não sentiria dificuldade pois é bem parecido com Go, mas tem coisas de V que prefiro.
    Enfim, ótimo vídeo!

  • @dinhoduarte9437
    @dinhoduarte9437 9 месяцев назад

    Sobre 24:19, você dizer que Go tem tudo na biblioteca padrão, é uma expressão muito forte em. Tudo que você citou que o Go tem na biblioteca padrão o Node também tem. Mas se tem uma coisa que você ta certo, é dizer que o amigo ai parece estar querendo programar typescript no Go, o que de fato concordo que nunca vai rolar.

  • @lacrador_idiota
    @lacrador_idiota 7 месяцев назад

    22:08 não entendo qual a pira de querer limitar quantidade de dependências.
    Não existe pontos negativos no TS além do package.json ficar grande. E existe inúmeros pontos positivos, além de que em Node não deixa o código pesado, não sei em go, mas o sistema do Node não acontece isso.

  • @mariaeduardasantanadolce352
    @mariaeduardasantanadolce352 Год назад +4

    Não conheço alguém melhor para debater esse assunto! Adorei

  • @edwolt
    @edwolt Год назад +1

    Se map, filter, reduce forem implementados de forma lazy ele tem boa performance, seria guardar quais operações fazer e só executar ela quando precusar, todas de uma vez quando você percorre uma única vez. Rust implementa de forma lazy e ainda otimiza para converter em loop simples em tempo de compilação

  • @jonymansur
    @jonymansur Год назад

    Comecei a estudar Go recentemente e o deus algoritimo me trouxe esse canal. Mt bom ver um seniorzão na linguagem pra ter noção das possibilidades da linguagem. Ótimo trabalho!

  • @lacrador_idiota
    @lacrador_idiota 7 месяцев назад

    9:22 zig lida com isso mto bem, nesse quesito eu discordo bem, não é uma boa desculpa uma Lang não saber lidar com json, visto q ele é um formato mto usado para requisições web.

  • @mariojunior1726
    @mariojunior1726 Год назад

    Pedro você disse que o assincronismo em go não é definido na assinatura da funcão mais sim por quem chama ela, ao contrário do typescript que sempre precisa assinar retornando uma promise, porém, o assincronismo é um sim definido na assinatura da funcao na maioria dos casos, pois geralmente para go routines a funcao precisara receber como parametro o wait group ou channel para poder controlar a concorrencia e comunicacao entre as threads

  • @edfcsx
    @edfcsx 9 месяцев назад +1

    quando a turma fala de framework chega doi no figado, se os frameworks acabarem morre metade dos devs

  • @ispobra1240
    @ispobra1240 Год назад +1

    Pedro é mestre!

  • @dbtrnl
    @dbtrnl Год назад

    14:30, tá falando de Utility Types como o Omit ou Partial do Typescript. Realmente são uma mão na roda, mas não ter isso no Go é desvantagem? Faz um pouco de falta pra quem usa, mas dá pra contornar isso de outras formas.

  • @lacrador_idiota
    @lacrador_idiota 7 месяцев назад

    16:52 esse tipo de coisa é a mesma coisa q usam pra criticar o uso de TS. Type ghost é o maior problema do superset, mas nos meus códigos mais atuais simplesmente não existe type ghost além das declarações globais..

  • @1222guilherme
    @1222guilherme 4 месяца назад

    Acho que no item 5 voce nao entendeu, a reclamação dele foi em relação a ser implicito, em typescript se voce ta implementando uma interface voce deve colocar X implements Y, isso fica explicito , em GO isso nao ficou explicito.
    Assim como Java, C# quando voce bate o olho voce ve que aquela classe Implementa uma interface porque vai estar escrito Implements.

  • @lacrador_idiota
    @lacrador_idiota 7 месяцев назад

    51:02 cara isso é um fato kkkk, o TS realmente supera na tipagem

  • @caiocesarmelolopes2156
    @caiocesarmelolopes2156 Год назад

    Pedro, no minuto 9:50, quando você fala de não usar os ponteiros, como você recomendaria a abordagem? Eu tenho um pequeno sistema onde nós estamos usando dessa forma por conta do mapeamento do banco de dados, onde o null value é significativo e não encontrei outra forma de fazer, vi a questão do field, mas confesso que não entendi como aplicar no meu caso, se tiver algum vídeo | artigo que detalha mais sobre isso, ficarei agradecido!! ötimo vídeo, parabéns

    • @robertond9705
      @robertond9705 Год назад

      Usa os tipos sql.nullstring, sql.nullint32 etc... declare o pacote database/sql

  • @lacrador_idiota
    @lacrador_idiota 7 месяцев назад +1

    16:28 discordo completamente. Como ele iria querer criticar Json que é um tipo de dado? Realmente é meio complicado criticar uma linguagem por seu lsp não ler json, visto que json foi feito inicialmente pro js, mas isso pode sim ser destacado como um grande benefício do ts

  • @gumercindojose
    @gumercindojose Год назад

    Manow você tem algum vídeo explicando o context em Go? Estou iniciando os estudos

  • @evertonsantana574
    @evertonsantana574 11 месяцев назад

    Esse ponto do Node Modules é um ponto interessante, simplesmente é um inferno gerenciar tanta dependencia, lembrar quais vc tem que instalar para fazer tal coisa, sem contar no que eu chamo de "modo hype", onde a cada semana existem 15 novas bibliotecas para fazer algo que já fazia antes, sem contar que as proprias bibliotecas se atualizam, estudar e implementar esse tipo de linguagem é completamente volátil, no meu server as coisas podem simplesmente não funcionar o que acabei de fazer, e o que acabei de estudar pode está totalmente obsoleto, pq essas dependências se atualizam como uma célula se divide.

  • @EdivaldoMerloStens
    @EdivaldoMerloStens 10 месяцев назад

    O int começar com zero e triste. Pois podemos ter dados sem resposta. Num formular de idade, posso ter a possibilidade de não ter a resposta ainda, se iniciar com zero, pode pensar que tem meses de vida ou ainda não nasceu. Teria que ter um outro campo para indicar que a idade está definida ou não.

  • @h4andr1x
    @h4andr1x Год назад +1

    Qual extensão vc está usando pra traduzir a seleção?

  • @pliavi
    @pliavi Год назад

    47:30 Currying/funções parciais são funções que recebem múltiplos parâmetros usando múltiplas funções, vem do funcional, seria algo como
    const sum = (x) => (y) => x + y
    const soma = sum(10)(20)
    ou
    const somar10em = sum(10)
    const vinte = somar10em(10)
    const cinquenta = somar10em(40)
    E é possível em Go, e, na verdade ele ser mais restrito com tipos é até algo bom, a linguagem que meio que já vem com currying por padrão é Haskell, que é fortemente tipada também xD
    func sum(x int) func(int) int {
    return func(y int) int {
    return x + y
    }
    }
    func main() {
    fmt.Println(sum(5)(10))
    somar10 := sum(10)
    cinquenta := somar10(40)
    fmt.Println(cinquenta)
    }

  • @gustavoserafio7222
    @gustavoserafio7222 Год назад

    Olá galera, sou iniciante em programação e gostaria de saber o por que o pedro diz que pode haver algo de errado quando o código precisa iterar sobre uma chave de uma estrutura, alguem pode me explicar ?

  • @joaossk8
    @joaossk8 Год назад +9

    Go é muito mais fácil de aprender e muito melhor de executar os projetos!

  • @zardoz10836
    @zardoz10836 9 месяцев назад

    Sobre frameworks eu acho que o mano estava certo, nao é que nao tenha em outras linguagens é que facilita enquanto o pessoal do go parece que quer constuir tudo do zero. Uma tara por performance que as vezes é um saco

  • @razorzinho
    @razorzinho Год назад

    Muito bom vídeo, analisou de forma imparcial até demais, se fosse eu, teria parado no meio do post pelo autor ter ZERO credibilidade e usar argumentos completamente vazios e idiotas. Mas ainda assim, tu analisou imparcialmente e analisou argumento por argumento, considerando quando ele falava algo minimamente válido. Só acho que podia pegar no final do vídeo e procurar algum comentário do pessoal do post, porque tenho certeza que esse cara foi bastante criticado por meter tanto skill issue sem sentido como problema de outra linguagem que só é diferente do amadinho JS dele. (Eu gosto de JS também, mas ver o que esse cara tava falando tava doendo no meu pâncreas)

  • @MaxsuelMaccari
    @MaxsuelMaccari 10 месяцев назад

    43:21 Poxa, condição de corrida pode-se ter com qualquer linguagem de programação, mesmo com TS. Até no Erlang/Elixir que tem o melhor modelo de concorrência (na minha opinião) não é difícil ter condições de corrida. Realmente não entendi essa daí.

  • @lacrador_idiota
    @lacrador_idiota 7 месяцев назад

    28:00 ent isso só é ruim. No js, temos webpack e babel pra esse problema, que compila código atual js para código mais antigo 👍

  • @HugoSantAna7
    @HugoSantAna7 Год назад +3

    Acho que o grande ponto do criador do post nao é reclamar individualmente de cada feature que ele nao gosta em Go. Está mais para a quantidade de coisa junta que ele nao gosta, que cria uma barreira de uso, no ponto de vista dele.
    A pessoa pode pegar um graveto e quebrar com facilidade, mas quando 20 gravetos estao juntos, pra quebrar é muito mais difícil. Entao cada argumento que ele levanta pode parecer fraco. Mas juntando tudo, realmente. A diferença começa a ficar chata pra quem tá acostumada a tanta utilidade e facilidade no TS.

    • @kingoftime470
      @kingoftime470 Год назад

      Pelo que vi, ele queria usar typescript no go, cada linguagem tem sua propria forma de se escrever

  • @victorbiasibetti
    @victorbiasibetti Год назад

    creio que no comentario 8 sobre picking/omitting do typescript vc pode usar o Pick ou Omit do TS para pegar somente 1 atributo da interface ou omitir um atributo especifico da interface de origem

    • @phenpessoa
      @phenpessoa  Год назад +2

      É isso mesmo! Não conhecia

  • @DiegoRodrigues06
    @DiegoRodrigues06 10 месяцев назад

    Go é bem legal,a performance bem massa. Mas eu acho a tipagem do Typescript muito massa principalmente os tipos auxiliares que vc não entendeu como o Pick e Omit que é sensacional. O dia que tiver um compilador Typescript que transforme a linguagem em código de máquina realizando otimizações aí não haverá concorrência hehehe

  • @BlinderSShortS-wk7tb
    @BlinderSShortS-wk7tb Год назад

    não querendo corrigir mas ja corrigindo eu vejo muitos desenvolvedores falando sintaxe pronunciando sin-ta-qui-se, mas o certo é sin-ta-si

  • @wgwalisongomes
    @wgwalisongomes 11 месяцев назад +3

    Depois de ouvir as explicações fiquei com o artigo kkkkkk. Go parece muito confuso mesmo. Eu pessoalmente estava pensando em aprender uma nova linguagem e estava na dúvida entre Go e Rust. O que você recomendaria? Poderia fazer um comparativo entre ambas?

  • @infinite_solitude
    @infinite_solitude Год назад

    uma verdadeira aula sobre Go

  • @josephklimber195
    @josephklimber195 Год назад

    Com 15 anos de back me sinto um junior perto desse cara, to saindo de php e indo pro Go. Esse post é de um programador pleno q ta 20 anos na area.

  • @fernandomarca
    @fernandomarca Год назад

    Quem sabe um dia Go implementa um Result do Either - Error Handling in Functional Programming. Em Rust isso funciona.

  • @TheAbimaelST
    @TheAbimaelST Год назад

    Com relação ao que vc fala nos 15min de video o typescript tem alguns utility types como Omit, Pick, Exclude e etc...

  •  Год назад

    Vim pela polemica e ganhei uma aula, me inscrevi!

  • @mikaelmendes340
    @mikaelmendes340 Год назад

    Quem não tem experiência na área Go não é boa opção comparado nodejs ou php ou c#?

  • @luizfelipe-ek8tc
    @luizfelipe-ek8tc Год назад

    Realmente essa questão de poder pegar so alguns campos usando o OMIT no typescript se mostra muito útil as vezes, mas não é algo que mostra que go é pior ou melhor, toda linguagem tem suas facilidades.

  • @gabriellourenco3523
    @gabriellourenco3523 Год назад

    Excelente conteúdo!!! Typescript🎉🎉

  • @Srzk
    @Srzk Год назад

    typescript eu nunca usei, mas precisando eu usaria tranquilamente lendo a documentação.

  • @_Khrix
    @_Khrix 11 месяцев назад +1

    O cara do post querer comparar Go com TS é sacanagem. Cada linguagem tem propósitos, causa e consequências complemente diferentes.
    Alguns pontos como nill ou zero value são ate validos, mas o resto...

  • @MoonLightHAB
    @MoonLightHAB Год назад

    a defesa de go mais saudosista q eu ja vi HAUAHUAUHHAU

  • @lacrador_idiota
    @lacrador_idiota 7 месяцев назад

    27:38 sim, isso é horrível.
    É uma crítica totalmente válida

  • @BearkFearGamer
    @BearkFearGamer Год назад

    simplesmente algumas coisas são melhores em GO, principalmente a performance. Mas, é irrefutável que outras são muito melhores em TS. Mas, cada um com seu funcionamento e idea de application

  • @GabrielGasp
    @GabrielGasp Год назад

    11:30 Essa abordagem seria para campos opcionais né? No caso de campos nullable acho que não tem como fugir de usar um pointer.
    Edit: brincando aqui vi que a gente poderia substituir o campo Valid por dois (Present e Null) e montar um UnmarshalJSON pra setar os booleans de acordo.

    • @phenpessoa
      @phenpessoa  Год назад +1

      Serve tanto pra campos opcionais como nullables
      Mas, se você não quiser usar ponteiros e o campo puder vir nulo do json, vai ter que criar um custom unmarshal e marshal mesmo
      Muito boa a ideia de usar dois campos!

  • @HugoSantAna7
    @HugoSantAna7 Год назад +1

    Sobre os erros, eu acho que a stacktrace é mais valiosa do que valores. Você sabe exatamente o lugar e a lógica que gerou o erro só de olhar pro stacktrace. Dar manutenção em coisas antigas é muito mais fácil com stacktrace do que com código de erro.

    • @phenpessoa
      @phenpessoa  Год назад +1

      @HugoSantAna7 é uma opinião válida, mas o ponto dele continua errado. Se você quiser colocar stacktraces nos erros em Go, você pode, e não precisa de bibliotecas de terceiros pra isso. Apenas com a linguagem você consegue.

  • @saikyuu-fx9gz
    @saikyuu-fx9gz 7 месяцев назад

    Fala Pedrão! Cara sou do Js e cai de paraquedas nesse vídeo quando fui buscar sobre go. De fato estranhei muito e é muito diferente das concorrentes. Acha que compensa "largar" o JS pelo Go?

    • @awillmoto7876
      @awillmoto7876 6 месяцев назад

      Não, use os dois. Aprenda Go, Java (ou dotnet que é bem melhor), Python e continue usando JS. Eu escrevo solucões que usam mais de uma linguagem no mesmo projeto, isso é bem util. Cada linguagem tem seu forte e sua aplicacão. Usar Go + JS é bem interessante, ou JS +GO

  • @eduardopereira2431
    @eduardopereira2431 Год назад

    Cara que conteúdo massa, eu programo em Go desde 2015 e jamais considerei saber tudo, esse post é pura ignorância e confusão :) esperando mais conteúdo de Go ;)

  • @lacrador_idiota
    @lacrador_idiota 7 месяцев назад

    38:38 meio zoado msm, prefiro os arrays do zig em questão de performance

  • @_Khrix
    @_Khrix 11 месяцев назад

    Gosto muito de Go e lutando muito por uma primeira oportunidade profissional com a linguagem, mas linguagem "well designed" de verdade não é TS (kkkkkkk), é Kotlin

  • @lacrador_idiota
    @lacrador_idiota 7 месяцев назад

    44:29 ué manokkkk,
    Algo ruim existe na lang: a
    Pedro: na vdd isso é bom
    Você não precisa ficar usando todos os loops ao mesmo tempo

  • @HugoSantAna7
    @HugoSantAna7 Год назад +3

    Os loops em TS/JS (forEach, map, etc.) só são usados em sequência quando necessários. Você pode fazer um único loop forEach e realizar tudo dentro do forEach sem percorrer o loop novamente. Mas você pode fazer dentro do map tambem, ou do reduce. Enfim. O fato de você ter estas opções sao realmente qualidade de vida. Mas eu concordo com vc que isso pode implicar em perda de performance, só pq é mais "fácil" e o sujeito esquece da performance muitas vezes. De toda forma, pra alguém habilidoso, é melhor ter do que nao ter. Entao nao concordo com seu argumento, neste caso.

    • @phenpessoa
      @phenpessoa  Год назад +2

      Discordo, acredito que não tenha nada a ver com ser habilidoso ou não. Todos esses métodos alocam um novo array em memória, e muitas das vezes o que você faz dentro deles poderia ser feito em um loop simples sem nenhuma alocação.
      Fora que, o forEach por si só já pode causar um grande impacto na performance, já que ele tem o overhead de chamar uma função para cada iteração do loop, diferente de um loop normal.

    • @LuisGuilhermeJGomes
      @LuisGuilhermeJGomes 7 месяцев назад

      Outro ponto é que GO poderia implementar esses métodos com lazy evaluation, como no Java. Mantendo a performance parecida com um loop normal...

  • @gabrielbugarelli
    @gabrielbugarelli Год назад

    Em node, atualizar uma dependência pode literalmente quebrar o seu projeto inteiro. Isso é muito embaçado...

  • @Jorg1n
    @Jorg1n Год назад

    Que vídeo bom

  • @gmartinho-dev
    @gmartinho-dev Год назад

    Esse ponto aos 15 minutos, acho que é válido... Se por algum motivo a struct A mudar sua estrutura, vc só precisaria mudar ela e refletiria em todos que tem A como propriedade, criar um novo X string como vc comentou não parece uma boa ideia se ele significar a mesma coisa que o X da struct A... Imagina só A mudar e vc ter que alterar em todos os lugares os campos que fingem ser o mesmo conceito de X, mas não possuem nenhuma amarração direta?

    • @phenpessoa
      @phenpessoa  Год назад +2

      Faz total sentido!
      Nesse caso, em Go, eu criaria uma estrutura comum que teria apenas esses campos compartilhados
      E aí eu deixaria essa estrutura “embedada” nas outras… Mas eu realmente não conhecia esses métodos de tipo em typescript como o Pick, por exemplo… Achei bem interessante!
      Concordo com você

    • @gmartinho-dev
      @gmartinho-dev Год назад

      Terminei agora de ver o vídeo, muito bom! Uma pílula de conhecimento!

  • @HugoSantAna7
    @HugoSantAna7 Год назад

    Nao acho que o usuário do post do reddit disse que o sistema de Typescript é mais forte que do Go. Acredito que ele disse que é melhor, mais avançado e mais completo. Você pode navegar entre níveis de tipagem dinâmica e estrita, além de ter todas as ferramentas de tipo que faltam em Go. Nessa eu concordo com ele. E acho que no 30 vc considerou este ponto da forma errada.

  • @Minorxable
    @Minorxable Год назад

    Golang: 200 Vagas de emprego
    JavaScript/Ts: 65.000 Vagas de emprego

  • @Leozinhopirado167
    @Leozinhopirado167 Год назад

    pow, ser tratado zero como inválido é f, se for pra ser inválido que se faça uma tratativa pra isso, agora a linguaguem por si so dar erro pq é zero. ate por que os exemplos dados são especifico.. id do banco que é incremental.. pow.. tem varias e varias situações que o valor por ser zero.

  • @GuaracyMonteiro
    @GuaracyMonteiro Год назад

    Ops. Ia comentar no tabnews. O post saiu de lá?
    Só meus 2 centavos sobre currying. Linguagens mais modernas como rock nem estão implementando. Outras linguagens com Rescript e Elm estão tirando ou com propostas para tirar o currying.

  • @gabriellacerda4402
    @gabriellacerda4402 Год назад

    Erros como valores foram a melhor invenção da humanidade

  • @MaxsuelMaccari
    @MaxsuelMaccari 10 месяцев назад

    Linguagem X é melhor que a Linguagem Y é algo tão "segunda série" na programação. É algo que já deveríamos ter superado. Não existe esse negócio de "linguagem X é melhor que linguagem Y". É mesma coisa que ver um texto "porque um serrote é melhor que um alicate". Não vejo sentido nenhum nesse tipo de comparação.
    Seria muito melhor o texto ser "por que eu gosto mais de Typescript do que do Go". Eu nem perderia tempo com um texto desse, pois dá a impressão de ser escrito por alguém leigo em linguagens de programação.

  • @gregjfarias
    @gregjfarias 11 месяцев назад

    28:40 o cara quer comportamento de linguagem fracamente tipada em linguagem fortemente tipada

  • @lacrador_idiota
    @lacrador_idiota 7 месяцев назад

    24:11 imagina eu não usar uma linguagem pq a comunidade me deixa ofendido 😂

  • @lacrador_idiota
    @lacrador_idiota 7 месяцев назад

    21:12 KKKKKKKKKK aqui vc viajou manin, como assim algo bom na linguagem é um defeito? KKKKKKKKKKK
    Tendo em vista que qnd se cria um programa complexo, vc provavelmente vai usar requisições, e que a maioria das requisições vão usar json, é obviamente uma vantagem do TS isso.

  • @EdivaldoMerloStens
    @EdivaldoMerloStens 10 месяцев назад

    Quanto mais vejo isso, mais gosto de Java.

  • @HugoSantAna7
    @HugoSantAna7 Год назад

    Overload de função eu não concordo com vc. É muito mão na roda. Especialmente pq dar nome semântico pra funções é um saco. Imagina fazer uma função concat() que aceita arrays, strings, numbers, etc, sem overload? Vc criaria um nome pra cada. Isso no nível basico. No nível de negócio, as coisas começam a complicar ainda mais. Especialmente pra dar nomes. Então poder fazer overload é excelente. Nao vejo benefício na simplicidade neste caso.

  • @soucosmomoraes
    @soucosmomoraes Год назад

    Typescript nem é linguagem, por que comparar com uma linguagem?

  • @gabrielazevedo5232
    @gabrielazevedo5232 Год назад +1

    Quem escreveu esse artigo coda fofo demais kkkkkkkk

  • @PedroNasser
    @PedroNasser Год назад +2

    Typescript nem runtime oficial tem. kkkk
    O Deno e Bun estão tentando resolver essa definiciência mas no final eles apenas transpilam para Javascript manda tudo pro JIT do V8/JSC.
    Typescript é simplesmente um superset de Javascript, que apesar de popular é uma das linguagens e ecossistemas mais problemáticos que existem.
    O nome da linguagem ja diz tudo Script. Typescript/Javascript é bom para fazer script, mas não é bom para construir coisas robustas e performáticas como o Go.

    • @gabrielbugarelli
      @gabrielbugarelli Год назад

      Trabalho com Typescript, e concordo com você. Javascript no geral, é caótico.

  • @matheusgermano3469
    @matheusgermano3469 Год назад +1

    Golang >>>>>>> Typescript

    • @mau9175
      @mau9175 Год назад +1

      como dizer que você é junior sem dizer que você é junior

  • @alexon2010
    @alexon2010 Год назад +1

    typescript não deveria nem ser chamado de linguagem é uma bosta o typescript, estão usando pra tudo no front-end o uso de typescript não faz o menor sentido, deixa a preocupação com tipo para o back-end já com suas próprias linguagens, c#, java, go e logico a mais querida Rust, no front as preocupações deveria ser outras com ter uma animação cativante que envolva o usuário, ser detalhista na experiência do usuário, se preocupar em fazer as coisas mais performáticas no front como animações em 60 fps entre muitas outras preocupações, se preocupar com tipo no front não faz menor sentido, sem falar que a semântica na escrita de código typescript.... o typescript é uma maquinação da Microsoft para tentar manipular o front no futuro e tirar o javascript da jogada e a liberdade que a linguagem te dar por não ter um dono TYPESCRIPT É UMA BOSTA.......

  • @HudsonAfonso
    @HudsonAfonso Год назад

    piada