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

Ajuda: Como iniciar, qual linguagem utilizar ?

Olá pessoal, tudo bem? Então esses dias tenho me interessado bastante em programação, porém ainda sou muito leigo e não tenho conhecimento de muita coisa. A única experiência que já tive com programação foi um pouco de Desenvolvimento Web, porém não quero me especializar nessa área.

Me interesso mais pela área de criação de aplicações e programas que sejam úteis, legais e criativos para o dia a dia. E como eu disse, sou leigo nessa parte.

Quero poder trabalhar com linguagens orientadas a objetos, que possam ser eficientes em criar programas intuitivos ao usuário.

Já tentei usar usar um pouco o Python anteriormente, porém não acho que seja uma linguagem que tenha uma aplicabilidade grande ( Provavelmente estou enganado ).

Enfim, podem me ajudar com umas perguntas?

  1. Poderiam me falar quais linguagens são orientadas a objetos?
  2. Podem sugestões sobre como começar e por qual linguagem devo começar?
  3. O que devo ter de base?
  4. Sugerem algum curso? ( Ou métodos de estudo )

Att.
Pimenta, Isac

Carregando publicação patrocinada...
2

Então vamos lá... "programas que sejam úteis, legais e criativos para o dia a dia" só você sabe o que é isso, porque todas as linguagens mais conhecidas dão para fazer isso.

Precisaria de um objetivo mais claro e específico para indicar algo.

Eu costumo indicar C para a pessoa começar. É uma linguagem real, que mostra os desafios que a pessoa terá de verdade, ensina ela a entender "como o computador funciona" sem abstrações. Veja bem, não é para dominar a linguagem, só usá-la para aprender. Dá para fazer "programas que sejam úteis, legais e criativos para o dia a dia" aos montes com ela. Não indico para usar para os programas reais, é só para aprender. Então acho que não é oque deseja. De qualquer forma eu indico ela para quem quer uma formação sólida na área, que tenha um alicerce de primeira linha, que privilegie os fundamentos.

Indo para o outro lado quando quer aprender a ferramenta sem maiores preocupações com a formação, e eu entendo que é isso que a maioria das pessoas querem dá para ver o resultado mais rápido, então o caminho se não for Python, deveria ser JavaScript.

Python é uma linguagem bem útil, dá para fazer o que desejar, tem aplicabilidade bem grande, e ela é orientada a objeto, como deseja, ainda que eu acho que esse não deveria ser o objetivo. A maioria das pessoas indicam ela por ser fácil de começar (ou seja, não te desafia muito) e não vejo nada de errado em adotá-la.

Se quer algo que entregue um resultado mais bonito na hora, que também é fácil, em algum aspecto até mais, que tem aplicabilidade mais limitada, mas ainda grande e no que as pessoas mais usam hoje em dia, então essa linguagem é JavaScript. Ela é orientada a objetos, tanto por protótipos quanto com classes (é meio disfarçado, mas tem a sintaxe, que é oque as pessoas se importam porque dá para aprender orientação a objeto, até de forma melhor com C, porque aprende como OO funciona de verdade).

Não gosto de classificar como orientadas a objetos, mas em termos informais quase todas são hoje em dia. Não são as mais antigas que não foram muito atualizadas (até COBOL é orientada a objeto, tem ponteiro opcional, curiosamente quase ninguém sabe disso) ou as mais novas que perceberam que era uma furada. Não vou falar de linguagens que quase ninguém usa, então não são C, Assembly, Go, Rust, se eu não estiver esquecendo de alguma. Mas todas conseguem usar OO se quiser, com esforço. Portanto, pode escolher qualquer uma das outras.

Em termos de eficiência C pode entregar mais, se o programador souber fazer, não é automático. C++ também é "orientada a objeto". Rust não é, mas é bem eficiente também. Depois disso se prefere algo mais produtivo, mais alto nível, entre as mainstream C# deve ser a mais eficiente. Também Swift de uma outra forma (tem ganhos de um lado mas fica atrás em vários outros). Go não é OO, mas é eficiente, podia ser mais, quem sabe um dia. Mas sempre considerando que o programador consegue dar a eficiência, que depende de dominar muito os fundamentos.

Novamente, para mim os fundamentos da computação e engenharia de software são muito mais importantes que a linguagem. Acho que o ideal é usar a ferramenta para aprender isso, e por esse motivo tem que escolher uma ferramenta que remete a eles. Por isso falo de C, e depois quem sabe C++ para aprender orientação a objeto, que é uma linguagem bem diferente, a tal ponto que nem recomendo se não for trabalhar com ela. Acho que OOP deveria aprebder bem depois porque não é algo tão importante na programação e não é algo básico, não devria começar por isso. Eu já respondi sobre isso no Quora.

Ir passo a passo é melhor do que traçar um plano enorme. Começa pelo mais básico possível. Aprende a usar bem variável que é usada virtualmente em todas as linhas de código. Aprender a organizar o código, ter atenção aos detalhes, a fazer o mais simples e depois crescendo em dificuldade, mesmo que isso não seja tão prático. Quem copia receitas de bolo, faz coisas que já mostra o resultado de um sistema pronto, que faz coisas complexas sem entender o que está acontecendo, não dá certo. Nunca vi uma só pessoa que fez isso e se tornou bom em programação (a não ser que mudou tudo depois, mas dá mais trabalho e é raro quem faça). Claro que nem todos têm esse objetivo.

A maioria das pessoas abrem mão da eficiência, porque dá mais trabalho e exige uma base muito forte.

Fazer algo intuitivo é puramente capacidade de quem está desenvolvendo. E que depende dos fundamentos.

Não tem problema tão grande a pessoa abrir mão dos fundamentos, e tem lá sua vantagem fazer assim, mas essa pessoa terá desvantagens, ela terá que conviver com isso.

Eu não tenho como sugerir um curso por uma razão muito simples, eu não faço cursos há muito tempo. Não posso indicar algo que eu não fiz. Em geral, o que fez tem dificuldade de indicar porque ela ainda não tem experiência para avaliar bem o curso, ela pode falar se gostou ou não, mas não sobre a qualidade. É como um aluno de viticultura te recomendar um vinho, claro que ele pode falar do que ele gostou, mas não do que tem mais qualidades vinícolas, mesmo que ela saiba um pouco, não tem experiência.

Eu indico livros e respondi sobre isso antes. Também pode começar na internet, também respondi sobre isso.

Faz sentido?

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).

1

Me interesso mais pela área de criação de aplicações e programas que sejam úteis, legais e criativos para o dia a dia.

Isso não é contrário ao Desenvolvimento Web. Você pode criar uma aplicação útil, legal e criativa dentro de um site. Dependendo do que for, pode ser até melhor para o usuário você fazer assim do que criar um software.

porém não acho que seja uma linguagem que tenha uma aplicabilidade grande.

Digamos que qualquer linguagem faz qualquer coisa. Mas as vezes é tipo tentar pregar um prego usando uma pá, você até consegue, mas definitivamente não é a melhor ferramenta para isso.
Python é uma linguagem bem versátil e "fácil" de aprender, mas não sou muito fã.

Poderiam me falar quais linguagens são orientadas a objetos?

Isso você acha no Google, mais rápido, fácil e confiável.

Podem sugestões sobre como começar e por qual linguagem devo começar?

Começar pelo WEB é o mais comum. HTML e CSS não são linguagens de programação, mas já vão te dar uma boa orientação de como "falar com a máquina". Estude lógica e algorítmo antes de partir pra uma linguagem, e estude a linguagem antes de partir para o FrameWork.
Sobre linguagens, JavaScript e Python são boas pra quem tá começando, a facilidade e gama de materiais disponíveis ajudam a não desistir.

O que devo ter de base?

Lógica, algorítmo, e ao menos um pouco de inglês e matemática.

Sugerem algum curso? ( Ou métodos de estudo )

Método de estudo é com você. De que forma você acha que aprende melhor? Mas não dá pra fugir da prática. Você tem que criar uma "memória muscular", mas no seu cérebro, de tanto programar.
Sobre curso, tem muita coisa básica de graça na internet. Melhor do que pagar caro num curso qualquer e desistir por não ter se identificado.
Da uma olhada no youtube, tem várias playlists completas para iniciantes, você vai achar alguém que vc gosta.

1

Depende meu nobre🍷🗿, se for aplicações para desktop recomendo python ou java mais se for para Android a melhor mesmo e java, mais para você que e iniciante recomendo aprender python porque e uma linguagem fácil de aprender é uma sintaxe amigavel😉