Executando verificação de segurança...
4

Oque vocês acham de linguagens "dificeis"?

Eu fico muito em dúvida, porque eu programava bastante em lua quando eu começei, e sempre ouvi dos outros falar que java é dificil, c é dificil, mas eu peguei pra usar essas linguagens embora java eu praticamente não usei, eu não senti uma real dificuldade, em nenhuma das duas, oque vocês acham dificeis nessas linguagens? Embora eu não trabalhei profissionalmente com elas ou usei em grandes projetos, eu sinto que não é algo dificil, no geral eu acho fácil, bom até porque linguagens de programação tem que ser simples, Java só é verboso, e C menos abstraído, mas não sinto uma grande novidade como se fosse totalmente diferente, acho que o pessoal fala tão mal sobre isso que meio que isso acaba se tornando verdade, as vezes dependendo oque você ta fazendo em C pode ser um pouco dificil, mas dificilmente é a linguagem que é dificil, é o tópico que você está mexendo, seja construção de compiladores, motores, programas de alto desempenho, etc.

A pessoa parece que ver um conceito diferente seja uma linguagem 100% POO, programação funcional, ponteiros, e pira por quê "todo mundo" teme, ou só porque a pessoa nunca viu ou mexeu parece que ela treme e congela, sendo que quando ela estava apredendo a programar na linguagem x que aprendeu, ela aprendeu devagar e teve dificuldades, claro que certos problemas persistem e nem todo mundo é extraordinario para perceber todos erros possiveis antes de seu programa compilar/ser interpretado(princiapalmente em projetos grandes),

Muita das vezes o problema não está na linguagem, bom se você ja trabalha com ela, porque, se você é um programador contratado é porque você sabe programar que é o minimo, o problema pode ser basicamente algo que você deixou passar, problema de algoritimo, banco de dados, mas dificilmente sobre a linguagem, a não ser que você trabalhe com low-level em computação de alto desempenho porque ai sim pode ser um problema dependendo do que você está fazendo, e não quer dizer que você mexe com C ou Assembly, Rust, ou qualquer outro que você é um profissional, certamente você tem um conhecimento mais amplo, mas não necessariamente você é melhor que o outro, (ainda mais que depende do assembly que você quer mexer) ou qualquer outra lang, eu em si tenho um pouco de dificuldade com o C# eu acho ele bem verboso, e tem muitas keywords que as vezes eu retorno o tipo errado de uma função, ou não defino algo da melhor maneira possivel, embora eu mal tenha programado em C# kk

  • Reflexões de um programador que sequer estágiario é.
Carregando publicação patrocinada...
4

Difícil é relativo e até subjetivo.

Claro que Java e C tem mais dificuyldades do que Lua., que talevz seja a linguagem mais fácil de aprender, junto com um BASIC um pouco mais antigo. Não é JS, Python ou algo do tipo, como muitos acham, só porque elas são populares e porque muita gente repete isso (há alguns anos as pessoas falavm pra nem chegar perto de Python.

Jsva tem m uito mais conceitos e alguns podem ser confusos. O sistema de ti8pagem que era para ser simples acaba sendo um pouco complexo porque ele não é tão linear e tem regras bem mais complexas por causa da herança. Mas parte da dificuldade também se dá porque é comum as pessoas fazerem projetos mais complexos, ou aprendem de forma mais complexa. Tem muito mais mecanismo e interação entre eles.

C é uma linguagem fácil de aprender, mesmo que tenha mais mecanismos e algumas situações complicaas de determinar o que vai acontecer. Ela é um pouco mais difícil de uar por causa dos comportamentos indefinidos, funções de biblioteca com um funcionamento nãoi tão intuitivo, ter que gerenciar memória manualmente e alguns outros detalhes que são necessários quando está se fazendo algo com mais eficiência que não aparece sozinha, o que é um dos aspectos que por se tornar difícil por ser projeto mais exigente do que se costuma fazer em uma linguagem de script.

Talevz não tenha percebido essa dificuldade por não fazer projetos mais complexos, mas nem tanto, ou até porque acredita que se está funcionando está certo. EM C mais do que em outras linguagens funcionar em ceros cenários e não em outros é algo comum e por isso precisa ter certeza que está certo, não apenas funcionando. Isso pode passar uma ideia de ser muito fácil.

Exi9ste de fato um medo irracional com certos conceitos e mecanismos, e ponteiro certamente é um deles. Não parece que as pessoas temem muito OOP, pelo contrário, querem fazer até se não souber fazer certo, basta funcionar. Tem casos que a pessoa nem entende o que é OOP e o que ela está fazendo não é OO.

Não faz muito sentudo usar C se não for para programar em um nível mais baixo. O mesmo vale para Rust, embora quem a usa costuma ser tão fanático que acaba usando para outras coisas, mesmo não sendo ideal. Rust é uma linguagem bem mais difícil, mas nenhum absurdo também. A dificuldade traz alguma vantagens.

Achei estranho uma pessoa que acha Java fácil e C# difícil. Ela até pode ser se você usar todos os mecanismo, porque ela tem bem mais, mas boa parte deles não é para a maioria dos programadores usarem.

De qualquer forma nãoi é a lin guagem que é difícil, é a programação, e isso muita gente não percebe, e este é um enorme erro.

Aproveitando para iniciantes: https://www.tabnews.com.br/maniero/faq-do-programador-perdidao.

S2


Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente (não vendo nada, é retribuição na minha aposentadoria) (links aqui no perfil também).

1
2

oque vocês acham dificeis nessas linguagens?

A parte mais difícil em C é gerenciar o alocamento dinâmico de memória. Não tem coletor de lixo que nem outras linguagens então você é responsável por liberar memória.

Li um artigo que a maior parte de problemas de software escritos em C é relacionado à memoria. Então em projetos grandes se torna realmente complicado

Java só é verboso

O problema do Java é o ecossistema. A maior parte dos softwares java hoje são baseados no Spring. A linguagem pode não ser difícil, mas o Spring é. Para fazer projetos não tão grandes é preciso conhecer diversos conceitos avançados.

Essa carga colocada em cima de alguém que não é familiarizado acaba sendo bem pesada.

O que afasta os iniciantes é justamente a verbosidade. Mas sinceramente não considero a opinião de quem liga apenas para isso.> Muita das vezes o problema não está na linguagem

Muita das vezes o problema não está na linguagem

Sim, mas muitas vezes o problema está no ecossistema dessa linguagem.

No front eu acho Vue muito superior ao React. Porém uso nos meus projetos o React justamente pela quantidade de coisas prontas que tem e a facilidade de encontrar pessoas (mais baratas) que sabem desenvolver nessa lib

0
1

Meus 2 cents:

Aprendi a programar usando COBOL/BASIC/C - o trio parada-dura dos anos 80 (destas, ainda uso C).

Deu certo, mas olhando em retrospecto e o que temos disponivel hoje, acho que Python eh a melhor linguagem para alguem apreender a codar: simples, poderoso, rigido o bastante para forcar a disciplina mas sem ser engessado.

Fico pasmo que as faculdades nao deem mais foco no aprendizado dela - eh uma otima introducao e permite avancar ate sistemas bem complexos (como web via django/flask, ou IA).

1

Cara, teu texto faz muito sentido — dá pra ver que você tem uma visão bem madura da coisa. Bora trocar ideia sobre isso.

Você tocou num ponto chave: não é a linguagem que é difícil, é o problema que você está resolvendo. Isso é a mais pura verdade. A galera muitas vezes confunde complexidade da linguagem com complexidade do domínio. Você pode estar em C resolvendo um problema simples, ou em Python resolvendo um quebra-cabeça gigantesco de machine learning em produção, e a treta real vai estar mais no o que você tá fazendo do que com o quê.

Linguagens "difíceis"? Ou só mal faladas?
Tem muito de "lenda urbana" mesmo. Java? O pessoal fala que é difícil porque é verboso. Mas verboso não é igual a difícil. É só mais coisa pra digitar e lembrar. C? A galera treme nos ponteiros, mas se você entende o que tá acontecendo debaixo dos panos, C vira até mais previsível do que muitas linguagens modernas cheias de abstrações.

Você mandou muito bem dizendo que

“as pessoas piram com conceitos novos porque todo mundo teme”. <

Exato. É o medo do desconhecido. Não é que programação funcional seja difícil, é só diferente. Se a pessoa nunca viu, vai dar aquele tilt natural de quando você troca o chão que ela tava acostumada a pisar.

“Se você é contratado, você já sabe programar”

Sim! Tipo, o básico você domina. Os problemas que surgem não são mais do tipo “como eu faço um for?”, e sim "por que essa função tá dando race condition?" ou "por que meu sistema desacopladinho tá virando uma bola de espaguete?". E isso aí não tem nada a ver com a linguagem. Pode acontecer até em Python, que é considerada “fácil”.

1

Creio que falavam que era dificil quando não tinha IA, realmente era mais díficil ter entendimento de cada linha que se escrevia, atualmente com IA isso quase não existe. Hoje em dia, mesmo sem você saber a linguagem de fato você consegue fazer algumas coisas. O tal do "vibe coding".
Exceto em ambientes corporativos, aplicações empresariais e que envolvem realmente ter conhecimento de regra de negócio, apps escalaveis, alta disponiblidade e etc. nesses ambientes pode continuar sendo complexo e é necessário cautela. Nesse cenário, um código zoado/vulneravel ou decisão arquitetural ruim feita por IA não pode ser tolerada, o que te força a ter um entendimento mais profundo.

1

O que a gente acha de linguagens "difíceis"?
A real? Linguagem difícil é um conceito meio ilusório. O que existe de verdade são contextos difíceis.

Você falou de C e Java — dois nomes que a galera adora pintar como monstros — mas sacou direitinho: Java é verboso, C é menos abstraído. E isso é tudo. Eles pedem mais atenção aos detalhes, mais consciência do que acontece "por trás do código", mas não são quebra-cabeças indecifráveis.

A dificuldade, muitas vezes, vem de:

Comparação com a linguagem que você já domina. Se você vem de uma linguagem super dinâmica e com sintaxe enxuta, ir pra algo como Java ou C# pode parecer burocrático no começo.
Medo herdado. Muita gente repete que linguagem X é "difícil" sem nunca ter tentado. Aí cria-se um mito, e quem ouve se bloqueia antes mesmo de ver um Hello, World.
Conceitos novos que não são sobre a linguagem. Programação funcional, ponteiros, multithreading… Isso é difícil mesmo. Mas porque exige mudança de mentalidade, não por causa da linguagem em si.
Ambientes complexos. Fazer um CRUD em C é "ok". Fazer um sistema de tempo real em C com acesso direto a registradores de hardware é outra história.
E você ainda matou a charada no fim: muitas vezes o problema não é a linguagem. É lógica, arquitetura, regra de negócio, ou simplesmente distração.

“A pessoa vê uma linguagem 100% POO ou funcional e pira porque 'todo mundo' teme” — isso aí é ouro. A galera congela diante do novo, esquecendo que já aprendeu coisas difíceis no passado.
E olha, você dizer tudo isso sendo “um programador que sequer é estagiário” só mostra uma coisa: você já tá pensando como gente grande. Continua nesse caminho.