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

É, como você mesmo reconhece, beleza é uma conversa fiada. Até agradável como essas conversas costumam ser. Beleza é algo bem subjetivo, todo mundo pode achar o que quiser.

Eu jamais diria que Java é bonita, é das menos bonitas entre as mainstream, e é fraca em termos de orientação a objeto por qualquer critério que adote. Não é péssima.

Eu gosto de C, mas bonita? Ela é inteligente demais, mas bonita eu não diria. E boa parte dos programadores gostam de fazer códigos muito feios, parece que é competição.

Clareza só o programador consegue obter. Em negócio isso é quase 100%. Em computação C ajuda um pouco sim. Mas pode não ajudar nas mãos de alguns programadores.

Ah, o C Completo e Total...Já falei dele aqui. Leia toda a thread.

Eu gosto muito de linguagens, especialmente de sintaxe, mesmo sabendo que isso é menos relevante. Logo depois de começar a mexer com isso há 40 anos, por causa de joguinhos, me apaixonei por linguagens, e fiz um pseudo compilador de BASIC em BASIC em uma máquina de 16KB de memória sem IO ou storage ativo. Era bem ruim, mas era o que eu conseguia fazer na época. Não tinha, internet, cursos, pessoas para perguntar, até mesmo livros era complicado de achar (importação deles era essencialmente proibida pela ditadura militar).

Eu gosto da sintaxe de F#, mas sei que ela é estranha para alguns. Citando algo para sair do lugar comum. Pra mim bonita está intimamente ligado a ser expressivo, sem cerimônia desnecessária, que a linguagem trabalhe por você.

Python tem seu charme, mas toda linguagem que começa ter gambiarras, muita gente mete a mão, começa perder o rumo um pouco. Eu gostava da brasileira Boo que é meio C# com Python.

Em termos de beleza e até alguma inteligência em certos pontos JavaScript é bem interessante, mas o monte de decisões erradas em semântica, e a maneira como começaram usá-la começando por fazer aplicações em linguagem de script é raro eu ver um código nela que eu ache bonito mais.

Me lembro de uma linguagem que um francês estava criando que tinha uma coisa bem bonitas, pena que nunca saiu do papel, chama-se Merd. É sério.

Essa coisa de ter muitas linhas não é a questão principal, porque se é importante, tudo que quiser pode sair de muitas linhas para uma, basta a pessoa saber fazer as abstrações. Mas dá trabalho fazer isso em algumas linguagens, e em alguns casos não é a quantidade de linhas, é todo o código que fica menos expressivo, e aí discordo que Java deixa claro do ponto de vista de negócio, ela não é capaz de fazer certas abstrações. Kotlin é bem mais bonita que Java.

Obrigado pela oportunidade.

Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).

Carregando publicação patrocinada...
2

"C Completo e Total" é aquilo que todos nós sabemos que ele é. Quem é das antigas, lembra bem.

Eu só o citei porque realmente foi ele quem me fez lembrar da linguagem C, que estava esquecida por mim há anos.

E sobre Kotlin, ainda nao conheço.

E sim, tudo isso é uma conversa fiada. Mas, de conversa fiada tambem se vive (desde que vc não esqueça que não passa de comversa fiada. Ou entao vc vira fanboy de linguagem, ai ja era...)

2

Python tem seu charme, mas toda linguagem que começa ter gambiarras, muita gente mete a mão, começa perder o rumo um pouco.

Concordo 100%. Como geralmente são linguagens de uso geral e a comunidade pode pedir qualquer coisa vão implementando coisas sem cabimento. As vezes fica mais difícil de ler um código com 10 linhas do que um com duas linhas por algo que implementaram só para poder dizer "minha linguagem também tem". No caso de Python, implementaram o walrus operator para escrever um pouco menos de código. Faz todo o sentido em Icon (uma das lingaugens em que Python foi baseada), Unicon, Verse mas em Python? Ruby tem o flip-flop. Será que é usado?

Eu gosto muito de linguagens, especialmente de sintaxe, mesmo sabendo que isso é menos relevante.

Eu acho que a sintaxe e semântica são relevantes para deixar a linguagem bonita ou não, além de outras coisas. Quanto menos pontuação para agradar o compilador melhor (eu acho). Como ler um livro. Um exemplo de Red (REBOL) para ler a página do tabnews e imprimir o título

Red[]

text:  read https://www.tabnews.com.br
rules: [thru <title> copy titulo to </title>]

parse text rules

print titulo

o resultado é:

TabNews: Conteúdos para quem trabalha com Programação e Tecnologia
  • read lê de uma porta, arquivo, url, bloco, etc..
  • regras é como se fosse ER só que legível e integrada na linguagem. thru exp = procura por exp e coloca o ponteiro logo após; copy local to exp vai copiar o conteúdo localizado na posição do ponteiro até encontrar exp. Mais verboso que ER? Sim. Mas mais legível.
1

Então vou concordar 100%, com uma parte :D

Todas as linguagens mais conhecidas estão colocando coisas para competir no mercado, mesmo que não faça sentido. Algumas mais que outras, algumas fazem pelo menos do jeito certo, outras implementam errado pela pressa ou porque os mantenedores não entendem muito bem o que estão fazendo. Não vou citar nomes porque os fás das linguagens que mais fazem coisas erradas são os mais ferozes :D

Não que eu seja contra qualquer novidade que ajude, mas nem sempe ajuda. Até porque muitas vezes o legado impede fazer do jeito certo.

Tem linguagens que virou frankestein, não sabe se quer ser dinãmica ou estática, se quer ser de script ou enterprise, se quer descer um pouco o nível ou ficar mais acima, e assim por diante.

Quando a linguagem dá muita margem para ambiguidade para o programador ler ou o compilador saber o que fazer pode começar se tornar um problema, é o ponto onde o que é mais bonito pode trazer problemas.

2

legal a menção a F#, gosto muito da sintaxe das linguagens ML (e a inferencia), acho uma pena n ter alguma linguagem do tipo com um grande uso.

  • ocaml: ja foi mais usada mas sempre em dominios muitos especificos, e demorou muito pra ter alguns recursos necessarios oq pode ter influenciado a n aumentar o uso
  • f#: muitos projetos legais usando isso (tem bibliotecas q impressionates nessa linguagem q n tem em nem mesmo em c#) mas q é totalmente ofuscada pelo c# (e pela pouca atenção da microsoft)

n tem mais nenhuma da familia ML q tem alguma relavancia maior.

acho que a sintaxe combina muito com ciencia de dados, se ler os codigos q os pessoal faz em notebooks/jupyter, as linguagens ML encaixa perfeitamente (pelo menos nos codigos de analise de dados e coisas do tipo, quando coloca os modelos pra rodar dai ficam bem diferentes a aparencia dos codigos)

1

A Microsoft até que dá atenção pro F#, as pessoas é que não :( Eu conheço pessoalmente boa parte da equipe, eles fazem um bom trabalho e não precisam muito mais do que dispõem, para fazer mais precisa de mais popularidade.

Eu falo que se as pessoas gostassem mesmo de sintaxe simples aprenderiam F# e não Python.

1

Gostaria de entender melhor essa frase:

é fraca em termos de orientação a objeto por qualquer critério que adote.

Eu não sou javeiro, nem sei java, mas gostei desta frase.
Você escreveu aqui no tabnews falando com mais detalhes sobre isso?

Queria entender seu ponto de vista, eu concordo que java não é bem oop, como dizem.
Mas queria saber seu ponto.

Abraços

2

Não escrevi, uriel, nada especifico, que eu me lembre.

Claro que OOP é um termo a ser definido, isso eu já falei.

Por qualquer definição Java foge do que é OOP, algumas mais que outras. Ela não cumpre todos os critérios de tudo ser objeto, até mesmo nos tipos mais simples, nem só na linguagem em si, e não cumpre completamente todos os pilares quando olha a definição mais completa, mas chega perto (não tem sobrecarga de operadores, herança múltipla, despacho múltiplo, com isso a capacidade de abstração fica comprometida). Sem falar que OO é um paradigma secundário, então ele sequer é tão importante assim, Java tem um paradigma mais importante que deveria ser destacado antes de falar em OO. Java é OO, em certa medida. Claro que não pura, nem Smalltalk é.

Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).

Só avisando que agora o sistema pune quem não recebe likes no que escreve, portanto se ficar em 1 aqui não estranhe se eu apagá-lo. Lamento, mas é necessário para não ser prejudicado. Se não teve, é porque ninguém gostou, então não fará diferença mesmo. Se acha que é interessante, considere dar like aqui.

2

Seria bom um texto bem abrangente aqui no Tabnews ou em outro lugar sobre isso.
É muito interessante!
E vai ajudar muita gente.
E todo lugar que a gente pesquisa é martelado que JAVA é OOP, é tudo de bom em OOP.
Não tem essas coisas a mais que mostram que java não é tão OOP assim.

Java tem um paradigma mais importante que deveria ser destacado antes de falar em OO

Outra coisa interessante que precisa de mais textos :)

Abraços