Armadillo
Folding Member
compara C++ com Pascal ou Python, que sao das linguagens mais usadas para a aprendizagem
Ciclos
C++
Pascal
Python
Para quem não sabe nada de nada de programação, o que é legível? Claramente são as linguagens mais verbosas, como por exemplo Pascal ou Python.
Os teus argumentos, para além de serem contraditórios são falaciosos.
1. argumentas que C++ «é que está mais implementada, mais conhecida, usada (a informação disponível é BRUTAL, é uma língua extremamente madura)». Implementada em quê? Mais conhecida? Como é que o facto de uma linguagem ser conhecida passa a ser motivo de ser a utilizada para a aprendizagem? Dizes também que a informação disponível é brutal. Mas para as outras linguagens também não se passará o mesmo? Estamos a falar de linguagens de programação normalmente com mais de 20 anos.
2. Depois dizes uma coisa sem sentido, para quem quer aprender a programar
Depois, estamos a falar de "aprender a programar". Questões como "funcionalidades, potencialidades, dependências" são totalmente irrelevantes, dado que o objectivo é aprender e não é produzir propriedade intelectual com valor comercial. A aprendizagem centra-se não em "delivarables" mas sim na compreensão da lógica inerente a um programa de computador. Se essa lógica não for facilmente assimilada e compreendida, o esforço pode ser inglório. A partir do momento em que se compreende esta lógica, basta "traduzir" para outras linguagens mais complicadas. Se é mais fácil a compreensão de um algoritmo em Pascal ou Python, porque se há-de complicar e começar em C++ (ou Java, ou Brainf*ck)?
Depois, dado que até tu próprio dizes que C++ é mais difícil do que outras linguagens de programação (ao dizeres isto, tem que se assumir que já experimentaste outras linguagens, já que sem teres um termo de comparação, a tua afirmação deixa de ter significado), esqueceste-te de referir que se as curvas podem ser proporcionais (nem sei se é verdade, mas vamos assumir que sim) umas poderão/serão mais longas que outras, daí tu achares C++ "difícil", tal como Assembly é "ainda mais difícil" que C++.
Por isso, volto a reafirmar o que já disse noutros tópicos: para começar, usem uma linguagem verbosa, preferencialmente criada para o ensino. Pascal e Python são boas linguagens para começar.
Ciclos
C++
Código:
for(i= 1; i < 11; i++)
{«tretas»}
Código:
for i:=1 to 10 do
begin
«tretas»
end;
Código:
for i in range(1, 10):
«tretas»
Os teus argumentos, para além de serem contraditórios são falaciosos.
1. argumentas que C++ «é que está mais implementada, mais conhecida, usada (a informação disponível é BRUTAL, é uma língua extremamente madura)». Implementada em quê? Mais conhecida? Como é que o facto de uma linguagem ser conhecida passa a ser motivo de ser a utilizada para a aprendizagem? Dizes também que a informação disponível é brutal. Mas para as outras linguagens também não se passará o mesmo? Estamos a falar de linguagens de programação normalmente com mais de 20 anos.
2. Depois dizes uma coisa sem sentido, para quem quer aprender a programar
As curvas de aprendizagem estão dependentes do que ja se sabe anteriormente. Se começares a programar em Java ou C++ (por exemplo), simplesmente vais ter mais dificuldades do que se começares por Python ou Pascal, primeiro porque, no caso de Pascal, foi criada tendo como objectivo a aprendizagem (logo, a sua sintaxe foi adaptada a quem percebe ZERO de programação) e segundo, porque são linguagens mais verbosas, logo tornam-se de fácil leitura, mesmo para quem não perceba nada de programação ou matemática.Agora, quero referenciar o seguinte, por mais que a linguagem x ou y seja simples para iniciar, não invalida o facto que a curva de aprendizagem é proporcional em todas elas.
Se investirem x tempo e x esforço em JAVA(por exemplo) e C++, no fim do dia o que temos?
JAVA, menos trabalho, mais resultados... mas sacrifica-se potencialidades, tamanho, dependências...
C++, mais trabalho, menos resultados, mais potencialidades...por ai adiante...
Depois, estamos a falar de "aprender a programar". Questões como "funcionalidades, potencialidades, dependências" são totalmente irrelevantes, dado que o objectivo é aprender e não é produzir propriedade intelectual com valor comercial. A aprendizagem centra-se não em "delivarables" mas sim na compreensão da lógica inerente a um programa de computador. Se essa lógica não for facilmente assimilada e compreendida, o esforço pode ser inglório. A partir do momento em que se compreende esta lógica, basta "traduzir" para outras linguagens mais complicadas. Se é mais fácil a compreensão de um algoritmo em Pascal ou Python, porque se há-de complicar e começar em C++ (ou Java, ou Brainf*ck)?
Depois, dado que até tu próprio dizes que C++ é mais difícil do que outras linguagens de programação (ao dizeres isto, tem que se assumir que já experimentaste outras linguagens, já que sem teres um termo de comparação, a tua afirmação deixa de ter significado), esqueceste-te de referir que se as curvas podem ser proporcionais (nem sei se é verdade, mas vamos assumir que sim) umas poderão/serão mais longas que outras, daí tu achares C++ "difícil", tal como Assembly é "ainda mais difícil" que C++.
Por isso, volto a reafirmar o que já disse noutros tópicos: para começar, usem uma linguagem verbosa, preferencialmente criada para o ensino. Pascal e Python são boas linguagens para começar.