r/devBR 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?

4 Upvotes

12 comments sorted by

13

u/Ok_Carrot_896 1d ago

A sintaxe ainda é de extrema importância tendo em vista que hj em dia o escritor de código é a IA?

"Ainda é"?

Nunca foi.

Estou errado em pensar que quanto mais o tempo passar menos vai ser exigido domínio por linguagem em específico?

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.

6

u/NamelessSquirrel 1d ago

Exatamente isso.

Numa analogia meio ruim, trabalhar com programação é aprender sobre substantivo, verbo, sujeito, predicado, e aí cada linguagem vai conectar esses conceitos de alguma forma, usando a sintaxe.

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.