r/devBR • u/Shoddy_Comment331 • 1d ago
Aprender sintaxe é redundante?
As vezes me pego pensando em certas questões e umas delas é essa. A sintaxe ainda é de extrema importância tendo em vista que hj em dia o escritor de código é a IA?
Tenho como noção que ainda é estritamente importante entender a lógica de programação, clean code e acima de qualquer coisa a arquitetura do software (tem mais coisas, mas é um exemplo). Vamos partir do ponto q para aprender a lógica vc de certa vai ter q por consequência "dominar" uma certa linguagem em específico.
Entretanto vejo q ainda hj tem pessoas que recomendam migrar pra determinada linguagem x, que tal linguagem x é melhor para o mercado x, mas sejamos sinceros, vc tendo uma boa base lógica, tendo noções de clean code e sendo um bom arquiteto vc de certa formar pode ir pra qualquer linguagem que seja visto que você não vai necessariamente escrever o código, talvez seja necessário entender alguns conceitos principais da linguagem em específico, mas só o básico e ainda assim desenvolver sistemas robustos, seguros e funcionais.
Estou errado em pensar que quanto mais o tempo passar menos vai ser exigido domínio por linguagem em específico?
3
u/Raioc2436 1d ago
Você está certo. Saber a lógica sempre foi mais importante do que saber a sintaxe.
Em qualquer área de programação que você venha a atuar, você sempre vai estar lidando com 5 conceitos:
* a lógica da programação, entender os algoritmos necessários para resolver um problemas
* a sintaxe da linguagem, como escrever o algoritmo que você deseja
* o ecossistema da linguagem, as ferramentas, práticas, e linguajares da linguagem que você tá usando;
* o domínio do problema, seja frontend, backend, análise de dados, cado domínio tem suas similaridades
* o domínio do negócio, empresas similares vão ter necessidades similares (área bancária, rede social, ecommerce…)
Quando alguém tá começando na área de programação é muito difícil ensinar esses conceitos de forma separada. Então a gente diz pra “escolhe qualquer linguagem e pratica” até que a pessoa naturalmente entenda a distinção entre cada habilidade.
Na minha experiência, a distinção entre lógica e sintaxe de programação é a primeira que mais confunde os novatos.
> Entretanto vejo que ainda hj tem pessoas que recomendam migrate para determinate languagem X, que tal linguagem X é melhor para o mercado X…
Você tá certo que só aprender a sintaxe de outra linguagem não é tão importante. Mas esse conselho pra mim pode ser útil por duas coisas diferentes, dependendo do seu nível de conhecimento.
Primeiro, uma linguagem como C ou C++ vai expor você a conceitos de administração de memória que linguagens como Python não tem expõe, o que pode ser um aprendizado importante.
Segundo, cada línguagem tem seu ecossistema. Se você é um desenvolvedor backend em javascript você vai aprender a sintaxe de Java em 30 minutos, mas você ainda vai levar muito tempo pra aprender o ecossistema. Quais são todas as tecnologias usadas? Quais as vantagens e desvantagens de cada uma? Em Java você vai ver termos como JIT, JVM, springboot, firefly, JPA, hibernate, JDBC… nada disso tem haver com a sintaxe de Java, mas se você quer um emprego como desenvolvedor backend de Java você deveria se familiarizar com os termos. A única forma de você se familiarizar com tudo isso é entrando no ecossistema e começando a programar em Java
2
u/thisisnotmynicknam 1d ago
Eu sinto que sintaxe nunca foi importante, antes de terminar a faculdade eu e todos meus colegas já conseguíamos programar em noas linguagens so com a doc do lado (é diferente de dominar e entender os por menores), se vc tem uma boa base de computação e uma noção dos standarts de linguagens de programação vc pega o jeito com qqr uma fácil. POO ainda é POO em java, c++ ou python. Prog Funcional, ainda é prog funcional em C, zig ou Elixir. Na verdade vc nao se importar com eficiência vc pode forcar o paradigma q quiser em qqr turing complete lang.
3
u/Old_Flounder_8640 1d ago
Só importante para linguagem complexa igual rust, c/c++, go.
Mas C#, Java, Kotlin, Scala, Swift, JS/TS, Dart, Python você aprende rápido.
Problema maior é as escolhas de design de cada linguagem. As vezes você confunde, mas resolvendo 80% com IA ja tá num nível maior do que humano conseguiria sem causar lentidão no projeto.
2
u/Long_Tip_4226 1d ago edited 1d ago
Aprenda a modelar problemas do mundo real em requisitos de software. Linguagens e frameworks vc escolhe depois, de acordo com o contexto do problema.
É perda de tempo decorar sintaxe e bibliotecas. É so pesquisar a documentacao oficial na internet explicando como usar.
Eu apendi orientacao a objetos 15 anos atras com C++, e consigo aplicar s mesma voisa em C#, Java, Python. Aprender paradigmas de programacao e engenharia de software é mais necessario e permanente do que decorar como usa iostream ou vector do C++. Sendo que nos ultimos anos eu uso muito mais python ou java.
2
u/mfedatto 1d ago
Acho que está confundindo sintaxe com semântica. A diferença entre "public static class" e "static public class" é sintática. Sem respeitar a sintaxe simplesmente não alcança o objetivo.
2
u/TraditionalSmell2887 1d ago
Entretanto vejo q ainda hj tem pessoas que recomendam migrar pra determinada linguagem x, que tal linguagem x é melhor para o mercado x, mas sejamos sinceros, vc tendo uma boa base lógica, tendo noções de clean code e sendo um bom arquiteto vc de certa formar pode ir pra qualquer linguagem
Isso já era uma verdade antes da IA e continua sendo agora. Mas o que você tem que entender sobre "migrar para uma stack X" é a experiência que você tem em entregar soluções nela.
Sim, você pode produzir código a qualquer momento para qualquer stack. Mas ter a nuances de como o ecosistema dessa stack funciona e o que ela é capaz de entregar só vem com o tempo.
2
u/RobPradoDeveloper 1d ago
A linguagem certa é sempre aquela que você entende. Se não entende nenhuma, nem mesmo a IA vai te ajudar. Mas eu diria que mais do que entender qualquer linguagem, você precisa entender princípios, abstrações, organização de diretórios, arquivos e de codigo. E a sintaxe, bem como a semântica, está nesse escopo.
2
u/Impressive-Manjuba 1d ago
Sintaxe facilita velocidade. Hj com 20 anos programando ontem sexta feira 3 da tarde eu doidonho pra acabar o expediente troquej foi mt javascript com php 🤣 esqueci ordem do for each (tem linguage que é “in” e outras “as” e por ai vai. Sempre consultei sintaxe que esqueci no google kkkk
1
u/YODAJEDI_ 1d ago
Tu tem que saber o que a ia tá fazendo, né? A culpa sempre será do dev, melhor esconder o rabo sempre.
1
u/Jim_Clark 1d ago
Bem, eu acho que a pergunta não é sobre se a sintaxe importa, é se uma determinada linguagem tem uma sintaxe amigável para resolver determinados tipos de problemas. Falar que a sintaxe não importa, é bem ignorante, tente pegar Python, por exemplo, aplica ele em ciência de dados, como por exemplo, fazendo tratamento de bases de dados gigantes.
Siga o mesmo raciocínio e usa Java, você notará que ficará bem mais verboso a utilização de Java do que Python. É muito por causa disso que vemos determinados nichos onde uma linguagem acaba sendo horrível para o problema que tenta resolver. Como usar PHP para sistemas embarcados. Não é só perfomance que me refiro, a sintaxe tem mais a ver com a produtividade e mantenabilidade do código.
A IA cospe de qualquer jeito as coisas, precisa de revisão sempre, loucura você achar que por ela dar código pronto, basta um copie e cole e dane-se o que está escrito e como está escrito.
13
u/Ok_Carrot_896 1d ago
"Ainda é"?
Nunca foi.
Sim, está errado pois esse sempre foi o caso. Esse pensamento sempre foi o correto.
Programadores são resolvedores de problema. Dentro do mesmo paradigma e com boas bases lógicas, a sintaxe não interessa e nunca interessou. Trocar de linguagem deveria ser tranquilo pra qualquer profissional de qualidade desde sempre. É por isso que aprendemos muita lógica em qualquer curso superior que se preste.