Dúvidas sobre linguagens de programação

#1

Gostaria de aprender alguma linguagem de programação, o único contato que já tive foi o “mundo 1” de python do canal Curso em Vídeo, mas como a frequência de videos era baixa não continuei os próximos “mundos”.
Minha duvida é: pra uma primeira linguagem de programação o python seria recomendável? ou traria dificudades para posteriormente aprender outras linguagens como C/C++?
Também aceito recomendações de outras linguagens e materiais de estudo (sejam videos, pdfs ou afins).

0 Likes

#2

No caso não sei bem dizer no caso podemos dizer que sou meio programador python,
outra linguagem legal e fácil e ruby também, mas uma dica que eu digo é não só ver os tutoriais e também ver a documentações da linguagem claro no caso do curso de python do gustavo(curso em vídeo) é excelente por explicar de um jeito legal e que chama a atenção mas essa e a minha dica agora em relação com outras linguagens não sei te aconselhar :neutral_face:.

1 Like

#3

gosto bastante do Guanabara e do que ele criou com o curso, mas quando eu tava vendo e acabou o 1 mundo levou muito tempo pra começar o 2, acabei perdendo o interesse e agora que quero voltar fiquei com o pé atrás sobre essa da linguagem ser “mais simples” que as outras e dificultar a aprendizagem delas mais tarde.

0 Likes

#4

Cara, sim, Python é uma linguagem que abstrai tudo das mãos do programador, se tu sair dela e for pra C/C++ onde existem ponteiros e alocamento manual de memória vc provavelmente vai encontrar bastante dificuldade, por isso eu sempre recomendo estudar primeiro lógica de programação(EDIT: se tu não tem experiencia programando, essa é tua prioridade agora, essa playlist do Fábrica de Noobs é muito boa pra isso) e depois o máximo possível de C e, se possível, C++, com isso tu vai ter uma base sólida pra conseguir aprender qualquer outra linguagem sem dificuldade, e se teu objetivo for querer trabalhar com algo que use essas linguagens, não vai pelo papo de que tu tem que começar com linguagem fácil, comece por aquilo que vc quer aprender.
Sobre materiais e recomendo muito NÂO seguir vídeos do YT, a imensa maioria deles são incompletos ou faltam explicações (principalmente quando se trata de C e C++) então siga sempre com os livros, pra C eu recomendo o ‘‘C Programming: A Modern Approach’’ e o obrigatório ‘‘The C Programming Language, 2nd Edition’’ escrito pelos próprio criadores da linguagem, e pra C++ tem o excelente ‘‘C++ Primer, 5th Edition’’ (não confunda com C++ Primer PLUS, são livros completamente diferentes) e tudo dessa lista feita no Stack Overflow.

2 Likes

#5

Já notei que a maioria das playlists no youtube são incompletas e foram dropadas, obrigado pelas dicas e pelo material!

0 Likes

#6

Sou do tempo em que primeiro víamos lógica de programação, depois algoritmos estruturados, depois pascal, para depois ver Delphi, c, PHP…

2 Likes

#7

Fenrir lembrou bem, aprenda a logica de programação primeiro, depois aprenda Python como primeira linguagem, ela é bem facil de se aprender e é poderosa.
C/C++ é uma linguagem, tambem poderosa, que vai te dar uma otima noção do mundo da programalção.

Mas sobre qual linguagem aprender depois, vai depender muito do que você quer programar, ex:
(estas linguagens não exclusivas dessas areas, tirando PHP, mas é comum ver elas ai)
Web: PHP, Javascript
Servidor: SQL, Mariabd, Java
Aplicações: C/C++, Java
Games:C++
Analise de dados: Python

Eu recomendaria você aprender essas (Python, C, Javascript, PHP, Java) para ter uma base solida, ai depois você pode ir atras de linguagens mais especificas para o que você quer programar.

2 Likes

#8

Como disse nosso amigo acima tudo depende do que você quer programar. Não existe linguagem fácil ou difícil o que existe é a linguagem mais adequada ao que você quer desenvolver. Para aprender você pode usar qualquer linguagem sem problema, o que você deveria observar é para que você quer usar a linguagem. Por exemplo digamos que você etá lidando com um hardware que você desenvolveu ou seu computador tem problema com alguns driver e você que alterar esse driver para funcionar melhor com o seu computador. Nesse caso você iria pra linguagem c que é muito utilizada para baixo nível. Caso você queira desenvolver uma aplicação que precise ser muito eficiente, ou seja tenha que processar um grande volume de dados o mais rápido possível você iria para um C++. Vamos dizer que você queira trabalhar com programação cientifica, nesse caso você usaria a biblioteca adequada de python que é a mais recomendada. No caso o python é uma linguagem muito potente, você pode usá-la para fazer bots de telegram com a biblioteca telepot, jogos com a pygame e assim por diante. Claro você sempre pode usar as linguagens para vários tipos de aplicações mas isso torna mais ou menos difícil chegar no seu objetivo.

Aqui vai um resumo das linguagens (Isso não é tudo é só para dar uma ideia)

C
Linguagem que normalmente é usada para conhecer o computador a mais baixo nível. Ele permite interagir direto com o hardware e é muito usado no desenvolvimento de drivers e microcontroladores como o arduíno. Também é muito útil caso você queira trabalhar com iot e sensores.

C++
É um “C orientado a objetos)” , permite que você use todo o baixo nível do c mas permite a confecção de aplicações para desktop com mais facilidade. Ela permite também a criação facilitada de interfaces gráficas com a biblioteca SDL. É uma linguagem que se bem usada permite alta eficiência nos programas ou seja permite grandes otimizações do software. Pode ser usada para baixo nível mas permite aplicações de mais alto nível também.

Python
É uma linguagem interpretada ao invés de compilada. Isso não é nenhum problema para maioria dos programas, apenas faz com que ela não seja a linguagem adequada para lidar com grande volume de dados. Porém o python é uma linguagem poderosa para trabalhar com texto(strings), com chat bots do telegram, com programação científica, com jogos através da pygame, com sites através de jungle e muitas outras coisas.

Java
É uma linguagem orientada objetos multi plataforma(Roda facilmente em Linux, Windows e MAC). Ela é indicada quando você precisa desenvolver programas rapidamente e não precisam de uma eficiência tão grande. Ela permite desenvolver aplicações gráfica com menor esforço e é uma linguagem bastante poderosa porém como eu disse se você precisa de eficiência ela não é indicado. Caso você queira desenvolver aplicações para celular android o java é indispensável e é o caminho mais natural.

R
Se você que trabalhar com estatística é a linguagem mais adequada.

Matlab/Octave
Se você é um engenheiro tentando lidar com equações e precisa de uma ferramenta para facilitar seu trabalho essas são linguagens indicadas.

JavaScript/Php
Se você quer trabalhar com aplicações web, ou seja você quer softwares que serão usados a partir da internet essas são linguagens adequadas.

MySQL/MariaDB
São linguagens de banco de dados. Se você precisa guardar informações de clientes, ou o estoque de produtos ou até mesmo os livros de uma biblioteca, você fará uso de uma dessas linguagens.

Claro que essas não são as únicas aplicações dessas linguagens. Todas ela tem em comum a logica de programação mas cada uma é mais adequada a um tipo de objetivo. Você pode pesquisar mais sobre as linguagens procurando na internet. Dito isso vou por o link de alguns materiais. Veja se são úteis para você:

Bom para apreender c:
Vídeo aulas --> YouTube

Esse material á em pascal mas você pode usar ele com qualquer linguagem para apreender (Eu fiz ele usando linguagem C):
Algorítimos 1 --> http://www.inf.ufpr.br/cursos/ci055/apostila.pdf

Java --> YouTube

Tem muito material que eu poderia por aqui mas não sei qual é o seu objetivo com linguagem de programação. Eu, pessoalmente, recomendo você dar uma olhada no material escrito. Ele explica bem quais são as estruturas básicas da programação e para que servem. Se eu não me engano a parte interessante começa no capítulo 5.

1 Like

#9

Acredito que o pessoal já respondeu bastante bem sobre as linguagens, mas acredito que quanto à como aprender novas linguaguens de programação eu recomendo você pegar um projeto que você goste e é escrito em uma liguagem que não conhece e tente “tunar” eles. E acredite, isso vai te dar uma bagagem bastante grande em tal linguagem.
Eu mesmo aprendi bastante fazendo extenções pro Ranger(file manager), colocando patches no DWM(window manager) e ST(terminal), mas isso vai de gosto.

1 Like