Qual linguagem de programação é melhor para começar como um iniciante total? [fechadas]

5

Ok, aqui está o acordo depois de jogar com distribuições Linux por quase 4 anos, eu tenho um grande desejo de aprender alguma codificação. No entanto, estou um pouco indeciso quanto à linguagem de programação para começar. A palavra ao redor é Python, mas é a escolha certa para um cara com conhecimento limitado no QBASIC?

    
por Mysterio 21.06.2012 / 20:08

11 respostas

21

Eu também recomendaria o Python como uma linguagem amigável e acessível, sem excesso de açúcar sintático. Embora pareça muito simples, não é uma linguagem de brinquedo, é uma linguagem usada pelo Google, NASA, YouTube e muitos outros lugares. É bastante poderoso e flexível, e suporta paradigmas de programação imperativos e orientados a objetos.

Sua sintaxe é direta ao ponto, e ensina bons hábitos em termos de formatação de código (diferente de outras linguagens, espaço em branco, recuo, etc.). Então, enquanto você pode escrever código não-funcional, ele sempre parecerá legal :)

Então, conte comigo como um fã do Python. É grátis, multiplataforma e pode ser usado de forma interativa. Isso significa que você pode abrir uma janela do shell do Python e experimentar os comandos sem precisar editar um arquivo, salvá-lo e compilá-lo. O Python também vem com seu próprio IDE chamado IDLE , não é super-sofisticado como o eclipse, mas utilizável.

Você pode querer visitar Python.org para mais informações, talvez Guia do iniciante em Python será útil.

Apenas para fornecer um exemplo rápido para transmitir o sabor, veja como imprimir "Hello World" em C, Java e Python:

Em C :

#include <stdio.h>

int main(void)
{
   puts("Hello World");
   return 0;
}

Em Java:

public class HelloWorld
{
   public static void main(String[] args)
   {
     System.out.println("Hello World");
   }
}

Em Python:

print("Hello World")

Se você procurar no Google, você encontrará um lote de tutoriais em Python on-line.

Divirta-se com isso!

Atualizar :

Minha intenção é que não inicie uma guerra de idiomas "minha é melhor que a sua". A questão era qual linguagem é boa para iniciantes; Minha resposta é (e fica) Python.

Eu já descrevi os benefícios acima, há muito menos bagagem conceitual com o Python (ou Ruby). Os iniciantes podem se concentrar em conceitos de programação , não em assuntos estranhos. Eles podem abrir uma janela do shell do Python e digitar instruções do Python e observar a saída imediatamente e interativamente. Ao contrário de C ou Java, não há necessidade de etapas separadas para editar os arquivos fonte, compilá-los e executá-los no início, nem explicações sobre "arquivos de cabeçalho" em C ou todo o public static void main de Java necessário :) Por que usamos puts() ou System.out.println() quando realmente queremos / queremos dizer "imprimir".

Basta dar uma olhada nos 3 exemplos acima. Qual código seria mais facilmente compreendido por um iniciante? Qual idioma você você prefere aprender se você não sabe nada sobre programação? (Além: Tirar o return 0 em C torna realmente muito mais compreensível?)

Se a questão é qual é a linguagem a ser usada na programação de sistemas no Unix / Linux, então eu diria C, e o Java também tem seu uso. Será que C com seus ponteiros e sem limites verificando matrizes e alocação de memória "manual" e liberação seria uma boa linguagem para iniciantes? Não, não na minha opinião. Um programador competente deve saber sobre essas coisas? Sim, claro, no devido tempo, depois de dominarem os conceitos fundamentais. Estamos tomando em torno de programadores iniciantes aqui.

Olhe desta maneira: se você tivesse alguém que estivesse tentando aprender a dirigir um carro, você recomendaria uma Ferrari para aprender o básico?

    
por 21.06.2012 / 20:16
11

Há um livro on-line gratuito de Chris Pine chamado Aprenda a programar , que usa Ruby .

Começa assumindo que você não sabe nada sobre programação e ensina a partir daí. Mesmo que você saiba um pouco sobre programação, os primeiros capítulos desenvolvem habilidades strongs em Ruby, mas não se sentem repetitivos.

    
por 21.06.2012 / 20:38
6

Perguntar qual linguagem de programação é melhor para um iniciante é como perguntar qual é a melhor ferramenta para um encanador iniciante. É completamente irrelevante. O importante é o que você aprende, não a linguagem em que você o expressa.

Se você estiver interessado em programar em geral e levar a sério, sugiro que comece a ler Estrutura e Interpretação da Linguagem de Computação . É um pouco mais complicado do que sua média "aprende C ++ em 7 dias e se torna rico que facilmente ... ", mas é o caminho mais curto para se tornar um verdadeiro programador.

Mas isso está muito além do escopo do site atual. A rede do Stack Exchange tem outros sites em que essa questão pode ser relevante. Para tornar as coisas adequadas, que tal supor que você quer aprender alguma programação relacionada ao Unix. Eu recomendaria passar algumas semanas aprendendo C , em seguida, pegar uma cópia de Programação avançada no ambiente Unix , de Stevens. Isso deve te ajudar a começar.

    
por 21.06.2012 / 20:58
3

Se você estiver interessado em Python, você pode baixar um livro em PDF chamado " Invente seus próprios jogos de computador com Python " de Al Sweigart que começa muito em um nível básico. Seu objetivo é ensinar técnicas de programação para crianças, além da linguagem Python, mas, dada a sua experiência limitada em programação, pode ser útil. Cada capítulo ensina um novo conceito e, em seguida, mostra como programar com o que você acabou de aprender.

O melhor de tudo é que o livro é gratuito em formato PDF, com a opção de doar para o autor.

    
por 21.06.2012 / 23:55
2

Considerando que você está no Linux, eu usaria o C porque é sua língua nativa. C ++ para mim não conta como eu não concordo com ele sendo fundido no kernel. Há uma grande quantidade de recursos gratuitos para acompanhá-lo.

confira link

Foi aqui que comecei a procurar uma linguagem para aprender.

    
por 22.06.2012 / 02:16
2
  • Para aprender programação orientada a objetos , você deve escolher o original: Smalltalk .
  • Para aprender programação funcional , o Haskell pode ser um dos mais puros.
  • A programação de Logical pode ser aprendida com o Prolog .

Isso lhe ensinará conceitos muito diferentes de programação.

Se você procurar algo que possa usar para fazer melhorias, participar do desenvolvimento e dos aplicativos do Linux, suas opções serão

  • C para o kernel do Linux .
  • Python para muitos aplicativos do Gnome
  • C e C ++ para muitos aplicativos nativos do Linux, com as duas estruturas usadas principalmente, gtk e Qt .
  • Para lidar com pequenos problemas no shell, o bash é mais usado, mas outros shells são bons.

Se você deseja desenvolver grandes coisas no servidor ou pequenos aplicativos para a plataforma android , o Java é o caminho a seguir. Mas como Java não é apenas uma linguagem, mas também uma plataforma, onde existem muitas ligações, você pode usar JRuby, JPython, Scala, Clojure e outras linguagens também, o que significa que quase tudo pode ser adequado.

Portanto, é mais fácil desestimular de algumas línguas do que encorajar. Eu desencorajaria de alguns, porque eles são feitos da Microsoft, onde as versões do Linux podem existir, mas é um cidadão de segunda classe, como

  • C #
  • F #
  • VBA

Alguns idiomas funcionam e você faz o seu trabalho, mas eles não são elegantes, como

  • PHP
  • Perl
  • Básico
  • Javascript

Muitos são de um escopo muito especializado, de modo que não são muito úteis para um iniciante sem esse problema especializado, como

  • sed (uma linguagem de edição de fluxo, muito útil para manipulação de texto com expressões regulares)
  • awk (escopo semelhante como sed)
  • Linguagem R para matemática, especialmente operações de estatística / matriz
  • Javascript (não é útil fora de um navegador, embora não seja impossível de usar - veja rinoceronte)

As listas não devem estar completas.

Qualquer que seja o idioma que você aprenda: Leia A arte da programação do Unix de Eric S Rayomond também.

    
por 22.06.2012 / 01:38
1

Eu sugeriria JavaScript. É a linguagem da Web, por isso é útil e funciona em todos os lugares. Você também pode obter resultados satisfatórios rapidamente. Tente codecademy .

    
por 22.06.2012 / 00:47
1

Python. Nós ensinamos isso como uma primeira língua na Escola de Ciências e Matemática da Carolina do Norte . Fazemos isso desde 2004. É uma ótima linguagem para iniciantes.

    
por 22.06.2012 / 02:39
0

A única resposta real aqui é que depende. Garantias completas que todos os seus principais concorrentes são praticamente os mesmos.

Então você deve realmente considerar os sinos e assobios. Qual idioma oferece mais do que você considera divertido? A diversão mantém você interessado.

    
por 22.06.2012 / 06:33
0

Python & Perl é o melhor para começar. Você também pode ir para o script VB / Java

    
por 22.06.2012 / 07:37
-2

Primeiro você tem que agarrar o conceito de programação estruturada. Comecei a programar em BASIC com um livro muito bom que começou explicando a programação estruturada, o conceito de loops, decisões e assim por diante antes de ir para o primeiro "hello world".

Depois disso, foi fácil alternar para Assembler, Pascal, Oberon, C, perl e bash (todos os processuais).

Se você planeja se tornar um SysAdmin (também conhecido como programador de sistema) - python, perl, bash estão ok. Um pouco de compreensão de C não irá prejudicar também.

    
por 21.06.2012 / 23:15