Programar: Linguagem ou Imaginação??
Saudações à comunidade phpBrasil!
Primeiramente, gostaria de dar os parabéns ao pessoal que criou e que administra este site.
Desde que escrevi as primeiras linhas de código usando esta linguagem, tenho o phpBrasil como uma das maiores fontes de informação. Muito obrigado mesmo!
A idéia de escrever este pequeno artigo surgiu quando lí o enviado pelo colega Sérgio A.Pohlmann: "PHP5 e Polêmica sobre Linguagens de Programação", que por sinal é muito bom, e faz uma boa reflexão.
Este artigo faz uma análise: Ao Programar, o que é mais importante, saber a linguagem corretamente ou ter imaginação?
Começo dizendo que tudo o que está escrito aqui é uma opinião muito pessoal, que formei ao longo de alguns anos de programação em C, C++, Assembler, PHP e pouca coisa de Java. Portanto pode não ser o que você, leitor, acha, mas vale como reflexão, afinal de contas,devemos ter a mente aberta!
Então vamos lá! O termo "Linguagem de programação" já diz tudo, mais precisamente o "Linguagem". É verdade! Vamos à definição que vem dos dicionários:
"Linguagem é: expressão do pensamento, por meio de palavra;
qualquer meio de exprimir o que se sente ou pensa;
conjunto de sinais, visuais ou fonéticos, através dos quais se estabelece a comunicação;
idioma."
Reparem que "linguagem" é a "expressão do pensamento". Antes dela, existe o "pensamento".
Quando programamos, o que na verdade estamos tentando fazer é dizer ao equipamento O QUE FAZER. Sempre é assim, você tem um problema, cria uma solução e diz ao equipamento O QUE FAZER. Percebem a essência?
Quem sabe este outro exemplo possa exprimir a minha idéia: Imagine que você está em um país desconhecido, não sabe nada da lingua local, e precisa saber onde tem um banheiro público, pois está em uma emergência (problema). Então você resolve perguntar à alguém para encontrar a resposta (solução). Pega seu lindo dicionário portugues-linguagemlocal e tenta dizer à alguém que precisa de um banheiro. No começo você se bate um pouco, paga um mico, mas com certeza vai obter uma resposta, unindo as palavras da linguagem local. Problema resolvido! Parece uma coisa boba, mas é exatamente o que acontece quando programamos!
Com isso, ao meu ver, o mais importante (e difícil) na programação é achar a solução para o seu problema. As linhas de código estão prontas, nos manuais da linguagem que vai ser utilizada. Basta você colocá-las na ordem certa! Logicamente que, existem umas linguagens mais poderosas que as outras, com mais ou menos recursos. Mas o maior problema realmente é O QUE FAZER.
Um dos maiores sinais de que isso é verdade é a UML. Para quem nunca ouviu falar, é um conjunto de procedimentos para o projeto de softwares orientados à objetos. Os sistemas CASE que são baseados na UML são totalmente independentes de qualquer linguagem (salvo algumas exceções). Assim, uma pessoa pode projetar um software completo sem nunca ter implementado um "if" na vida (logicamente que ele só vai sair do papel via programadores experientes). Mas o projeto em sí contém, novamente, O QUE deve ser feito. A linguagem a ser usada pode ser escolhida posteriormente.
Sendo assim, a imaginação utilizada na elaboração de algoritmos e a criatividade na hora de achar uma saída para um problema é o que passam a ter mais valor.
No meu caso, passo muito mais tempo pensando e rascunhando no papel o fluxo de um trecho de programa que estou querendo escrever, do que realmente digitando o código. Assim tenho muito mais facilidade em entender os erros que por ventura venham a acontecer na hora da compilação. Aliás, se me perguntarem a sintaxe de alguma das linguagens que citei no início,com certeza terei dificuldade em responder....
Então, era isso pessoal. Como primeiro artigo aqui no phpBrasil acho que está de bom tamanho! Ficarei feliz em responder à perguntas e receber críticas, uma vez que este é um assunto muito subjetivo.
Muito obrigado à todos!
Um abraço!
Thiago Drechsel
Primeiramente, gostaria de dar os parabéns ao pessoal que criou e que administra este site.
Desde que escrevi as primeiras linhas de código usando esta linguagem, tenho o phpBrasil como uma das maiores fontes de informação. Muito obrigado mesmo!
A idéia de escrever este pequeno artigo surgiu quando lí o enviado pelo colega Sérgio A.Pohlmann: "PHP5 e Polêmica sobre Linguagens de Programação", que por sinal é muito bom, e faz uma boa reflexão.
Este artigo faz uma análise: Ao Programar, o que é mais importante, saber a linguagem corretamente ou ter imaginação?
Começo dizendo que tudo o que está escrito aqui é uma opinião muito pessoal, que formei ao longo de alguns anos de programação em C, C++, Assembler, PHP e pouca coisa de Java. Portanto pode não ser o que você, leitor, acha, mas vale como reflexão, afinal de contas,devemos ter a mente aberta!
Então vamos lá! O termo "Linguagem de programação" já diz tudo, mais precisamente o "Linguagem". É verdade! Vamos à definição que vem dos dicionários:
"Linguagem é: expressão do pensamento, por meio de palavra;
qualquer meio de exprimir o que se sente ou pensa;
conjunto de sinais, visuais ou fonéticos, através dos quais se estabelece a comunicação;
idioma."
Reparem que "linguagem" é a "expressão do pensamento". Antes dela, existe o "pensamento".
Quando programamos, o que na verdade estamos tentando fazer é dizer ao equipamento O QUE FAZER. Sempre é assim, você tem um problema, cria uma solução e diz ao equipamento O QUE FAZER. Percebem a essência?
Quem sabe este outro exemplo possa exprimir a minha idéia: Imagine que você está em um país desconhecido, não sabe nada da lingua local, e precisa saber onde tem um banheiro público, pois está em uma emergência (problema). Então você resolve perguntar à alguém para encontrar a resposta (solução). Pega seu lindo dicionário portugues-linguagemlocal e tenta dizer à alguém que precisa de um banheiro. No começo você se bate um pouco, paga um mico, mas com certeza vai obter uma resposta, unindo as palavras da linguagem local. Problema resolvido! Parece uma coisa boba, mas é exatamente o que acontece quando programamos!
Com isso, ao meu ver, o mais importante (e difícil) na programação é achar a solução para o seu problema. As linhas de código estão prontas, nos manuais da linguagem que vai ser utilizada. Basta você colocá-las na ordem certa! Logicamente que, existem umas linguagens mais poderosas que as outras, com mais ou menos recursos. Mas o maior problema realmente é O QUE FAZER.
Um dos maiores sinais de que isso é verdade é a UML. Para quem nunca ouviu falar, é um conjunto de procedimentos para o projeto de softwares orientados à objetos. Os sistemas CASE que são baseados na UML são totalmente independentes de qualquer linguagem (salvo algumas exceções). Assim, uma pessoa pode projetar um software completo sem nunca ter implementado um "if" na vida (logicamente que ele só vai sair do papel via programadores experientes). Mas o projeto em sí contém, novamente, O QUE deve ser feito. A linguagem a ser usada pode ser escolhida posteriormente.
Sendo assim, a imaginação utilizada na elaboração de algoritmos e a criatividade na hora de achar uma saída para um problema é o que passam a ter mais valor.
No meu caso, passo muito mais tempo pensando e rascunhando no papel o fluxo de um trecho de programa que estou querendo escrever, do que realmente digitando o código. Assim tenho muito mais facilidade em entender os erros que por ventura venham a acontecer na hora da compilação. Aliás, se me perguntarem a sintaxe de alguma das linguagens que citei no início,com certeza terei dificuldade em responder....
Então, era isso pessoal. Como primeiro artigo aqui no phpBrasil acho que está de bom tamanho! Ficarei feliz em responder à perguntas e receber críticas, uma vez que este é um assunto muito subjetivo.
Muito obrigado à todos!
Um abraço!
Thiago Drechsel
cara quero um scrip para comentar em galeria e ficar tudo em uma pagina que o internalta pode ver como os 10 utimos comentario manda resposta para meu msn se vc tem isso ai kennedipaulo@hotmail.com se vc tivel algum ai manda ai para mim
30/04/2006 5:29pm
(~18 anos atrás)
Concordo e parabenizo o autor do Artigo, perfeito é isso mesmo.
O que realmente necessário é a imaginação, são as saídas, o resto é secundário.
O secundário não é importante? claro é importante, mas em menor escala, a utilização de padrões, ferramentas e disciplina são coisas necessárias também.
Outra coisa é falar que quem são não programar bem não é programador, todos são programadores, porém uns abstraem o que é menos importante e se dedicam as soluções.
O que realmente necessário é a imaginação, são as saídas, o resto é secundário.
O secundário não é importante? claro é importante, mas em menor escala, a utilização de padrões, ferramentas e disciplina são coisas necessárias também.
Outra coisa é falar que quem são não programar bem não é programador, todos são programadores, porém uns abstraem o que é menos importante e se dedicam as soluções.
16/07/2004 5:53pm
(~20 anos atrás)
Voce quer dizer, usar classes em geral naum eh?
E mesmo assim eu acho o seguinte. A imaginação é impressindível. Estrapolar o sistema e achar um jeito melhor é ótimo. Mas concordo totalmente com marymolina. Um programa depende mais da qualidade do programador, do que até conhecimento e imaginação, não que eles não sejam impressindíveis, mas concerteza experiência, prática e saber programar é o que realmente conta no final. É o que diferencia um sistema exposto e cheio de brechas de um sistema seguro e limpo. É o que diferencia um sistema fácil de se trabalhar, um sistema com bom desempenho, um sistema que realmente funciona de um sistema qualquer que funciona mas não atende as exigências, que se precisar de uma manutenção é difícil de ser modificado, que tem um desempenho fraco e que falha 'naqueles' momentos que voce mais precisa.
E mesmo assim eu acho o seguinte. A imaginação é impressindível. Estrapolar o sistema e achar um jeito melhor é ótimo. Mas concordo totalmente com marymolina. Um programa depende mais da qualidade do programador, do que até conhecimento e imaginação, não que eles não sejam impressindíveis, mas concerteza experiência, prática e saber programar é o que realmente conta no final. É o que diferencia um sistema exposto e cheio de brechas de um sistema seguro e limpo. É o que diferencia um sistema fácil de se trabalhar, um sistema com bom desempenho, um sistema que realmente funciona de um sistema qualquer que funciona mas não atende as exigências, que se precisar de uma manutenção é difícil de ser modificado, que tem um desempenho fraco e que falha 'naqueles' momentos que voce mais precisa.
07/07/2004 3:23pm
(~20 anos atrás)
Em primeiro lugar quero parabenizar o autor pelo artigo, o qual pode-se explorar uma area muito interessante do desenvolvimento.
Bom galera, vocês falam em soluções prontas, mas será que programar é simplesmente copiar uma classe, estanciar seus objetos????
Assim, qualquer pessoa pode ser um grande programador????
A arte de programar exige muito mais do que o dominio de uma linguagem, a pessoa precisa de criatividade pra criar suas proprias soluções. Precisam saber a logica da situação.
Sabendo usar de logica, a linguagem é uma questão de "aprender termos".
Bom galera, vocês falam em soluções prontas, mas será que programar é simplesmente copiar uma classe, estanciar seus objetos????
Assim, qualquer pessoa pode ser um grande programador????
A arte de programar exige muito mais do que o dominio de uma linguagem, a pessoa precisa de criatividade pra criar suas proprias soluções. Precisam saber a logica da situação.
Sabendo usar de logica, a linguagem é uma questão de "aprender termos".
06/07/2004 2:10pm
(~20 anos atrás)
Olá, concordo q o mercado te dita as regras, muitas vezes o mercado usa muito pouco do seu próprio potencial. O que falei e torno a falar é que programar não é * e não deveria ser * .. só fazer o q a empresa te manda, sua evolução pessoal na programação quem faz é vc e n a empresa ou o mercado. Programar é a superação dos seus limites, isso depende de todos
Obrigado
Marlon
Obrigado
Marlon
05/07/2004 9:39am
(~20 anos atrás)
vc tah certo! eu concordo que o mais importante eh a logica eh descobrir a solução... a sintaxe vem depois! mas gostaria de friszar que soh a solução não basta eh nescessario a otimização.
Abraços...
Abraços...
01/07/2004 7:52pm
(~20 anos atrás)
Marlon concordo com vc , mais programar tambem é atender o que o mercado exije acima de todas as coisas mesmo que seja usando uma ferramenta RAD herança de codigos, projetos comunitarios tipo linux que tem colaboradores e os que ganham dinheiro emcima dos colaboradores neh(empresas)isso eu acho errado ,não concordo com empresas tipo microsoft e outras que fazem diversos plagios para ganhar dinheiro , originalidade e criatividade faz a diferença ,e conhecimento(tecnica de sobrevivencia) nos ajuda a ganhar dinheiro para sobreviver.
01/07/2004 6:56pm
(~20 anos atrás)
Costumo disser que exitem dois tipos de progradores; os que pensam (os melhores) que constroem novas solucoes, criam novas regras e modelos e aqueles que copia ideias, codigos e seguem regras pre-estabelecidas .
parabens continue no primeiro grupo
a comunidade agradece.
parabens continue no primeiro grupo
a comunidade agradece.
29/06/2004 11:20am
(~20 anos atrás)
Primeiramente eu gostaria de parabenizar o Marlon Brandão, excelente critica. gostei muito. Programar como todos ja disseram é uma arte, é criatividade, é interesse, é saber a linguagem e muito mais coisas que apenas quem é um programador e gosta de programar sabe!
28/06/2004 6:16pm
(~20 anos atrás)
Programar é de fato uma arte! Temos de manjar muita coisa para que nosso código tenha efeito, saber somente a linguagem não basta....
28/06/2004 3:34pm
(~20 anos atrás)