Nuno156
New member
Java ou qualquer outra linguagem OOP não são propriamente um bom ponto de partida na minha opinião. Acho que se deve começar por algo mais "simples", uma linguagem procedural qualquer, aprender lógica básica de programação, subrotinas, modularização, e só depois avançar para OO, com tudo o que vem atrás (noções de objecto, polimorfismo, herança, escopo dos métodos/variáveis etc)
Se metes alguém que nunca programou na vida, com OO à frente, o mais certo que vai sair dali é algo como um "god object" que contém tudo o que são métodos e variáveis que o programa usa. E isso é precisamente o que não queres nesse paradigma.
Concordo.
O ideal é começar pela programação estruturada, e deixar a OO para mais tarde.
E a linguagem a escolher deverá ser uma com sintaxe bem simples. Há que
concentrar a aprendizagem no que realmente é importante, e para isso não é
bom dispersar a atenção com problemas de sintaxe.
Dou um exemplo:
Já basta o esforço de aprender a implementar um algoritmo, e ter de o fazer
funcionar correctamente, para ainda ter de andar preocupado em descobrir
erros derivados da sintaxe. Ou seja, a lógica até poderá estar correcta, mas
o código não produz o resultado esperado porque temos um = onde deveria
estar um ==, por exemplo. Isto pode ser frustrante e desmotivador para um
principiante.
A meu ver, a linguagem ideal para começar a aprender programação estruturada
seria PASCAL ANSI/ISO. Aliás, foi mesmo esse o propósito da criação dessa
linguagem:
Pascal (programming language) - Wikipedia, the free encyclopedia
Free Pascal Compilers, Free Delphi Compilers (thefreecountry.com)(...) a small and efficient language intended to encourage good programming practices using structured programming and data structuring. (...)
PS (a vermelho):
1. Tens de largar as traduções brasileiras.
Procedural -> procedimental (procedural não existe na língua portuguesa)
Escopo -> âmbito (escopo é mais no sentido de alvo/objectivo, quando o original
SCOPE em inglês aplicado à programação está mais orientado ao alcance, por
exemplo de uma variável, dentro do código, logo -> âmbito)
2. Subrotinas é do tempo da programação "esparguete".
Em programação estruturada são procedimentos e/ou funções.
Em programação OO são métodos.