Para onde caminha a programação?

Dixem-me dar aqui a minha pequena contribuicao enquanto analista/programador.

Cada linguagem é desenhada para um determinado fim.
Quem dita o mercado sao as empresas, e 90% das empresas PT desenvolvem solucoes e nao produtos.
A diferença, é que é mais facil ganhar dinheiro com uma solucao, que se vende e desenvolve à medida para um cliente, que um produto pensado para um mercado generico.

Estive 2 anos a desenvolver em C para TPA's sem ver outra linguagem a frente. Ao fim desses 2 anos, quando quis sair da empresa onde estava tornou-se dificil. Porque? Porque estive a desenvolver para um produto e o mercado virou-se para as solucoes.
É tipo o soldador de ultra-extra-mega-sons que ao fim de 20 anos so sabe soldar com a maquina de ultra-mega-sons, e nao consegue usar outro equipamento.

As empresas estao a virar para o ambiente web, por uma simples razao de custos.
Centralizar a aplicação num servidor tem a vantagem de ser rapido actualizar a aplicação para as 200 pessoas que trabalham na empresa, do que actualizar PC a PC. Isso implica custos.
Claro que tem a contrapartida das aplicações nao serem tao rapidas quando comparadas, por exemplo, com uma equivalente mas em win32.

Dentro do ambiente web, por exemplo, a utilizacao de php, asp, asp.NET, etc depende apenas da solucao implementada e escolhida pela empresa. A base da escolha? Os custos. Se sao mais baratos os servidores *nix, usamos uma linguagem, se precisamos servidores MS usamos outra. Tao simples quanto isto.

O meu conselho.... aprendam os conceitos da programacao, que sao a base de tudo. Depois a linguagem, aprendam um bocado de todas.... Irão aprofundar as que precisarem, à medida que precisarem.

Achei piada a esta frase
"Basicamente, comecei aos 6/7 anos a aprender a programar no velhinho QBasic, que veio com o MS-DOS 6.20." --- tou mesmo a fica velhote :)

Com 6/7 anos comecei eu em Basic com o Timex Computer 48K. (devem ser poucos o que sabem o que isto é).
Por volta dos 12 virei para o Pascal e assembly 8085.
18 a... Borland C/C++, VB6, Delphi, ASP, ASP.NET, C#, javascript, SQL....
Se for preciso outra linguagem tb se aprende..... a base esta ca. so mudam os comandos.

Fiquem bem
 
[C4];1679626 disse:
Achei piada a esta frase
"Basicamente, comecei aos 6/7 anos a aprender a programar no velhinho QBasic, que veio com o MS-DOS 6.20." --- tou mesmo a fica velhote :)

Com 6/7 anos comecei eu em Basic com o Timex Computer 48K. (devem ser poucos o que sabem o que isto é).

Curioso, o primeiro contacto que tive com a programação foi num Spectrum ZX 128k :D Foi apenas copiar o que estava no manual para fazer um piano :P Na altura a música era a minha única paixão, não tinha qualquer interesse em computadores...

abraços, HecKel
 
Arquitectura....
Estive a ler os posts todos, mts deles na diagonal e gostava de deixar aqui a minha opinião.
Sem querer ofender ninguém, nem querer que pensem que é uma questão de elitismo, acho que é um mau principio pensar-se que é bom ser um programador, principalmente para quem perdeu tempo a tirar um curso superior.

Existem muitas linguagens de programação. Como alguém já aqui disse, muitas delas têm objectivos diferentes. Mas como o nome indica, uma linguagem é apenas uma linguagem. É como o Português, o Inglês, etc... O que é que fazes com isso?!? Falas... Mas não te impede de dizeres bacoradas, por mais eloquente que seja a tua forma de expressar.
Quando andava na escola secundária, houve um professor de física que me disse que não se importava de no meio dos exames dar as formulas. Elas não serviriam de nada para quem não as entendesse. Assim se passa em informática, eu posso escrever imensas coisas em várias linguagens, sem que nenhuma delas seja algo de jeito. No entanto a sua sintaxe e semântica estão correctas.
Enquanto tirei o curso de Eng. Informática, tive de utilizar várias linguagens, para aprender várias formas de expressar soluções, em que o que interessa é a forma como desenhas a tua solução. Aprendi as bases sobre transacções, algoritmos, etc... Agora uso essas bases no dia a dia, em qualquer que seja a linguagem, o sistema, ou a solução a implementar, pois estas bases aplicam-se a tudo.

Cada vez mais, hoje em dia, tens quem analisa o problema e desenha a solução e quem a implementa. E quem implementa, geralmente não tem de pensar muito. E se para muitos de vós, acha que é em programar que existe um futuro promissor, desde já vos digo, ou são realmente excepcionais a programar, ou vão ter que competir ferozmente com Indianos e afins, que são muito bons nisto, ou com as frameworks, que fazem a "papinha toda".

Depois de tanta divagação, a minha ideia é: Não vale a pena discutir se vou falar C#, Java, C, Prolog ou Assembly. A linguagem errada na solução errada é como falar chinês para um português. O que te interessam é a solução que vais usar para resolver o teu problema e isso resolves com outras coisas e depois aplicas na linguagem e as frameworks mais apropriadas.

Cumps.
 
Gostei bastante da tua intervenção ;)

É curioso que falas aí num ponto que ninguém referiu, o desenho de um programa, Engenharia de Software.

Esta é uma das áreas que dá mais dinheiro dentro da informática, mas ser bom nisto..., não é fácil.

Salvo erro falei nesta thread que é essencial saber estruturar um programa antes de o implementar, no entanto hoje em dia já existe quem faça isso por nós, os Engenheiros de Software ou os Analistas de Sistemas, um programador não passa de um pedreiro a quem um Engenheiro Civil orienta (à distância) e que um Arquitecto já pensou e desenhou a obra toda.

Isto na prática aplica-se tanto a plataformas web como à máquina tradicional.

abraços, HecKel
 
Viva,
já cá não vinha a algum tempo, mas lendo este tópico não resisti a "loggar"

Ninguem deste tópico se deve lembrar da minha presença aqui, mas lá vai alho....

Na minha opinião, a facilidade de programar que temos hoje e não tínhamos a uns anos, veio fazer uma coisa coisa simples: cada vez se programa pior.

Vou tentar não ser mal entendido, não estou a dizer que é preciso ter 30 anos para programar bem ou ter aprendido com o Edit do DOS para saber o que se faz, não me venham com isso.

Eu sempre estive mais ligado a "back-end". E tenho visto ao longo dos anos, erros crassos em malta que usa IDE's e malta que aprendeu com o "facilitismo" que hoje os IDE's permitem.

Com o devido respeito a todos os que se esforçam por aprender a sério uma linguagem de programação.
Acho que o facto de um .NET um Eclipse e afins existirem, permite que qualquer um ao fim de pouco estudo faça alguma coisa que pareça decente.
O problema com que muitas vezes me deparo é que essas pessoas raramente possuem capacidade de análise séria de uma arquitectura do software, raramente possuem preocupações que garantem performance.

São click&drop programmers ou lá como se chama hoje em dia.

Eu nos últimos tempos tenho estado muito ligado a PL/SQL sendo que me calha mais alguma coisam mas acima de tudo PL/SQL.
E verdade seja dita que por ser coordenador de equipa, que muitos detalhes hoje em dia... enfim, já cheia a ferrugem (dasse tou velho).

Concordo com quem falou da competição com Indianos, mas não sei se conheces a realidade a 100%.
Na minha empresa temos dezemas de programadores que colaboram connosco na India, Bangalore para ser preciso.
E eles são bons, mas também não são assim tão baratos e a realidade está gradualmente a mudar.
Na medida em que o preço deles aumentando, perdem a "atracção" que tinham.
É ainda hoje, para mim mais produtivo ter uma discussão online com colegas europeus do que com Indianos. e não quero de forma alguma entrar aqui em questões raciais, não tempo tempo ou paciencia para isso.
A realidade da India é que as empresas grandes vão para lá pela mão de obra barata.
E os locais entram muitas vezes na parte de "execução" não na parte de "concepção", claro que com o passar dos anos, os Indianos começaram a ter know-how e hoje em muitas empresas também fazem parte da equipa de "pensa", adquiriram, massa cinzenta critica.

enfim.

em resumo,
penso que muito havera sempre para quem mexe em programação.
Mas vamos deixar de ouvir falar de "programadores" no sentido que conhecemos hoje.
Passamos a ouvir falar de "programadores SAP", "programadores Web Kunami", "programadores de bacalhau", enfim o que seja, o nivel de especialização vai aumentar drasticamente.

Por exemplo, PL/SQL é um mundo dentro da programação por si só ;)

um abraço a todos e vamso lá ver se agora fico mais tempo por aqui lol, acho que n postava a uns 2 ou 3 anos.

cumps,
JP
 
Arquitectura....
Estive a ler os posts todos, mts deles na diagonal e gostava de deixar aqui a minha opinião.
Sem querer ofender ninguém, nem querer que pensem que é uma questão de elitismo, acho que é um mau principio pensar-se que é bom ser um programador, principalmente para quem perdeu tempo a tirar um curso superior.

Existem muitas linguagens de programação. Como alguém já aqui disse, muitas delas têm objectivos diferentes. Mas como o nome indica, uma linguagem é apenas uma linguagem. É como o Português, o Inglês, etc... O que é que fazes com isso?!? Falas... Mas não te impede de dizeres bacoradas, por mais eloquente que seja a tua forma de expressar.
Quando andava na escola secundária, houve um professor de física que me disse que não se importava de no meio dos exames dar as formulas. Elas não serviriam de nada para quem não as entendesse. Assim se passa em informática, eu posso escrever imensas coisas em várias linguagens, sem que nenhuma delas seja algo de jeito. No entanto a sua sintaxe e semântica estão correctas.
Enquanto tirei o curso de Eng. Informática, tive de utilizar várias linguagens, para aprender várias formas de expressar soluções, em que o que interessa é a forma como desenhas a tua solução. Aprendi as bases sobre transacções, algoritmos, etc... Agora uso essas bases no dia a dia, em qualquer que seja a linguagem, o sistema, ou a solução a implementar, pois estas bases aplicam-se a tudo.

Cada vez mais, hoje em dia, tens quem analisa o problema e desenha a solução e quem a implementa. E quem implementa, geralmente não tem de pensar muito. E se para muitos de vós, acha que é em programar que existe um futuro promissor, desde já vos digo, ou são realmente excepcionais a programar, ou vão ter que competir ferozmente com Indianos e afins, que são muito bons nisto, ou com as frameworks, que fazem a "papinha toda".

Depois de tanta divagação, a minha ideia é: Não vale a pena discutir se vou falar C#, Java, C, Prolog ou Assembly. A linguagem errada na solução errada é como falar chinês para um português. O que te interessam é a solução que vais usar para resolver o teu problema e isso resolves com outras coisas e depois aplicas na linguagem e as frameworks mais apropriadas.

Cumps.

Nem mais.


Quanto aos que dizem que programam em C pq nao gostam de usar bibliotecas dos outros, porque os outros sabem mais que eles ou whatever:
Por que raio devo eu rescrever uma hash table ou o que seja, se isso já foi escrito uma vez? Porque gosto? Para perder tempo (=dinheiro)? Mesmo que eu saiba programar as bibliotecas, é ridículo eu estar a programa-las de novo só pelo gozo, o mundo não funciona assim..

Fkem
 
Nem mais.


Quanto aos que dizem que programam em C pq nao gostam de usar bibliotecas dos outros, porque os outros sabem mais que eles ou whatever:
Por que raio devo eu rescrever uma hash table ou o que seja, se isso já foi escrito uma vez? Porque gosto? Para perder tempo (=dinheiro)? Mesmo que eu saiba programar as bibliotecas, é ridículo eu estar a programa-las de novo só pelo gozo, o mundo não funciona assim..

Fkem

se me pudesses dizer onde é que isso foi mencionado nesta thread agradecia :D

é que implementar uma hash table nem é uma coisa de outro mundo... agora RBT's é que não é tão simples :wscared:
 
Nem mais.


Quanto aos que dizem que programam em C pq nao gostam de usar bibliotecas dos outros, porque os outros sabem mais que eles ou whatever:
Por que raio devo eu rescrever uma hash table ou o que seja, se isso já foi escrito uma vez? Porque gosto? Para perder tempo (=dinheiro)? Mesmo que eu saiba programar as bibliotecas, é ridículo eu estar a programa-las de novo só pelo gozo, o mundo não funciona assim..

Fkem

Eu acho que a questão não é "rescrever a função de hash" mas sim "perceber a função de hash"....

Se as coisas são assim como tu dizes... porque eu preciso de saber somar, subtrair , dividir e multiplicar.... se as maquinas de calcular já fazem isso por mim?:)
 
Ninguem deste tópico se deve lembrar da minha presença aqui, mas lá vai alho....
Lembro-me de ti como laranjinha, mas não me lembro de te ver postar.

Na minha opinião, a facilidade de programar que temos hoje e não tínhamos a uns anos, veio fazer uma coisa coisa simples: cada vez se programa pior.

Vou tentar não ser mal entendido, não estou a dizer que é preciso ter 30 anos para programar bem ou ter aprendido com o Edit do DOS para saber o que se faz, não me venham com isso.

Eu sempre estive mais ligado a "back-end". E tenho visto ao longo dos anos, erros crassos em malta que usa IDE's e malta que aprendeu com o "facilitismo" que hoje os IDE's permitem.

Com o devido respeito a todos os que se esforçam por aprender a sério uma linguagem de programação.
Acho que o facto de um .NET um Eclipse e afins existirem, permite que qualquer um ao fim de pouco estudo faça alguma coisa que pareça decente.
O problema com que muitas vezes me deparo é que essas pessoas raramente possuem capacidade de análise séria de uma arquitectura do software, raramente possuem preocupações que garantem performance.

São click&drop programmers ou lá como se chama hoje em dia.
Julgo que não foi só esses IDEs que despoletaram esse problema, vendo o caso das estruturas que o Simao mencionou, muitos dos programadores newbies quando escolhem uma estrutura não pensam sequer se será a mais adequada ao problema em questão, querem guardar dados e estão-se a lixar se as pesquisas/alterações na mesma são lentas ou rápidas. Este problema já existia antes das novas plataformas e dos IDEs.

Quando falas em arquitectura de software, julgo que mais uma vez, aqui entra a categoria da Engenharia de Software..., dado como exemplo o java, dos programadores java quem é que se preocupa com memória? O garbage collector resolve tudo, será que vale a pena preocupar com estes detalhes? Ou será que convém sempre ter em conta que isto existe?

em resumo,
penso que muito havera sempre para quem mexe em programação.
Mas vamos deixar de ouvir falar de "programadores" no sentido que conhecemos hoje.
Passamos a ouvir falar de "programadores SAP", "programadores Web Kunami", "programadores de bacalhau", enfim o que seja, o nivel de especialização vai aumentar drasticamente.

Por exemplo, PL/SQL é um mundo dentro da programação por si só ;)

Concordo com a tua teoria, aliás, nota-se isso cada vez mais no entanto tenho visto mais isso numa forma de moda, agora é a moda da WEB, todos querem fazer sites..., todos querem brincar às base de dados com o PHP. Agora será que isso não será especializações a mais? Por um lado é uma forma de pedir mais postos de trabalho, especializações dão nisto, e visto que a própria sociedade tem caminhado numa de as máquinas trabalham e nós ficamos no desemprego..., até é uma forma positiva de ver as coisas :P

Eu acho que a questão não é "rescrever a função de hash" mas sim "perceber a função de hash"....

Se as coisas são assim como tu dizes... porque eu preciso de saber somar, subtrair , dividir e multiplicar.... se as maquinas de calcular já fazem isso por mim?:)

Até ao momento em que me meti a brincar com árvores não imagina a utilidade das mesmas, nem sequer que existiam catrefadas de tipos de árvores. Saber que existe não é sinónimo de saber como funciona. Também é verdade que não preciso de saber construir um avião para saber como o hei-de usar :P Mas sabendo algo mais ao detalhe, aumentam as probabilidades de saber usar melhor uma dada ferramenta ;)

abraços, HecKel
 
Podes querer, hoje em dia é tudo web based, para os lovers do low level, e para aqueles que gostam de ter o controlo da máquina, esta geração é uma chatisse.
Eu já detesto programar em cima de libs e mais libs, dá aquela sensação que "posso fazer isto porque alguem melhor que eu, já me fez a papinha toda" quanto mais codar para Javas e .Net's..

Já vi Quake 3 e Unreal a correr em Shockwave, qualquer dia compras-se um jogo e este vem em *.htm, abre com o browser, maximiza-se e ta-se a jogar.

Não me venham com coisas, para aprender a programar é C e depois sim, C++, ASP&PHP&Java my 4ss.

Puff! >(

@Datwo: Aqui.

@dark_splinter: Eu nao disse que nao tinhas que perceber como fazer ou como funcionam as bibliotecas, o que eu disse é que eu não preciso de rescreve-las cada vez que faço um programa novo. Vamos reinventar a roda?

Até ao momento em que me meti a brincar com árvores não imagina a utilidade das mesmas, nem sequer que existiam catrefadas de tipos de árvores. Saber que existe não é sinónimo de saber como funciona. Também é verdade que não preciso de saber construir um avião para saber como o hei-de usar :P Mas sabendo algo mais ao detalhe, aumentam as probabilidades de saber usar melhor uma dada ferramenta ;)

abraços, HecKel

Isso é rescrever para fins académicos, eu estou a falar de escrever para outros fins...
 
Última edição:
Acho que tudo depende do alvo e contexto. Eu não tirei curso de informática (sou engenheiro electrotécnico), mas acabo por ter de fazer umas linhas de código no meu dia a dia dado que estou a trabalhar actualmente em implementações SAP.

Para quem não sabe, o SAP é um "Enterprise Application", ou seja uma aplicação configurável de suporte ao processos financeiros, logísticos e recursos humanos. E aqui a palavra chave é "configurável".

Num projecto SAP tipico, é gasto muito tempo no levantamento e desenho de processos de negócio, e na configuração do sistema. Os desenvolvimentos são geralmente reduzidos ao minimo. Este minimo tem impactos que são:

- Os programas/UI têm de ser rápidos de fazer. Não há tempo para inventar a roda (viva as Dlls), e usar coisas como C é impensável. As UIs são feitas em ASP.Net, JSP (não muito, porque na área de consultoria há mais pessoas Microsoft), e tecnologias SAP baseadas em conceitos web.
- Sempre que possível usa-se o internet explorer como interface. Porque? Aceitação do utilizador final. É muito mais facil por uma pessoa a trabalhar com algo no Internet Explorer, do que ensiná-lo a usar uma aplicação. Sim é estranho, mas muitas pessoas são aversas à tecnologia e é necessário minimizar o choque.

No mundo empresarial não há espaço para o reinventar da roda. Quem não gosta de usar o trabalho dos outros é bom que se vá habituando. Quanto à web, é uma questão de dar às pessoas aversas à tecnologia um ambiente que já identificam. Reparem que eu pouco falei em linguagens de programação. Convém saber ABAP (linguagem da SAP), mas de resto é usar o que tiver à mão e for mais eficiente em termos de tempo.

Já agora, gostaria de comentar a seguinte frase:

São click&drop programmers ou lá como se chama hoje em dia.

Há contextos em que a performance é tudo, e para processos criticos convem teres pessoas que saibam mesmo os que estão a fazer, mas para processos secundários e UIs, o cliente raramente está disposto a pagar o tempo de desenvolvimento. Na maior parte das soluções ou é click&drop, ou nada....
 
Última edição:
@dark_splinter: Eu nao disse que nao tinhas que perceber como fazer ou como funcionam as bibliotecas, o que eu disse é que eu não preciso de rescreve-las cada vez que faço um programa novo. Vamos reinventar a roda?
Se crias dizer nesse sentido ... desculpa foi eu que entendi mal :)... e claro que não temos de reinventar a roda, agora pode-mos melhorala ou metela de maneira as nossas necessidades :)...
 
awake ... fosga-se alguem "do meu tempo" :)

é verdade que a velocidade a que corre o mundo hoje em dia, não ha tempo para re-inventar a roda.

mas se tu trabalhas em projectos SAP ... sabes o que é precisar de tempo para montar um sistema :P
bem pelo menos não é Siebel :D :D :D :D

eu, no meu trabalho, se um cliente quiser um sistema pouco configurado, não preciso de muito mais tempo que instalar o Oracle, Instalar os serviços de replicação do pragrama, e depois é instalar os clientes (laptops, tablets, PDA's o que seja). no entanto se quiserem, epa, podem ser meses até passar o stress e o cliente finalmente ter tudo o que pede.

No entanto felizmente muito do meu trabalho é apenas numa linguagem, PL/SQL como disse.
Onde para quem saiba do que estou a falar, a performance é "apenas" o que pode fazer a diferença entre funcionar e não funcionar.

No pessoal da minha equipa tento incutir a preocupação pela performance ou pelo menos por não fazerem monstros, não gosto que ninguem caia na tentação ... :D
é que já tive meninos a ficarem a olhar para o ecrã á espera que o Oracle lhes dessem resultados e a chamarem nomes ao dito motor de DB .... quando me sentei com eles a rever código, enfim.
Posso dizer que num procedimento que foi preciso eu mexer a uns meses, assim que o abri alterei meia duzia de linhas de código no inicio, e o tempo de processamento passou de 8h para 5h nem olhei mais para o dito procedimento.

mas foi o suficiente para essa pessoa parar e pensar, e a consequencia foi que ele foi corrigir esse "vicio" em mais procedimentos feitos por ele.
 
Viva Andr0m3da, não via o teu avatar por cá já à algum tempo.

Eu sou um daqueles (ou aquele) que disse não gostar de programar em cima de libs, dlls etc.
Mas obviamente, quando me pagam para tal, 80% de um programa é copy past, drag and drop, point and click, e sinceramente, não gosto.

E ao contrario do que possam pensar, eu nao comecei com o low level, foi exactamente o oposto, comecei no alto nivel e fui descendo, e quanto mais desci, mais conhecimentos adquiri.

O meu primeiro contacto com programação foi Basic num spectrum, era eu muito novo, aquilo nem era programar, era mais load "", fazer beeps e desenhos com cores.
Comecei por aprender Pascal na escola, de pascal passei para Borland Delphi 3 (Object) onde fiz alguns jogos com os componentes numa form, depois alguém ofereceu-me dinheiro para programar Visual Basic durante uma data de tempo.
Só depois e por curiosidade da minha, é que estudei C++, C e por fim Assembly.

E o meu gosto pelas LPs de baixo nivel, é o controlo da aplicação, há uma diferença enorme no controlo do executavelzito .exe entre o passar de VB para o C, e por fim ASM, porque em ASM conheces 100% do codigo compilado, em C conheces 20% em Visual Basic conheces 0.1%.

Nada me tira da ideia que em detrioramento do tempo de desenvolvimento, um programa (testado) fica melhor bem feito numa linguagem de mais baixo nivel.

Obviamente nao torço o nariz em usar libs, dlls ou api's, que remédio tenho.. torço o nariz sim em usar derivados, dos derivados das libs Standard de C (C Standard Library) só porque é mais facil e tá a papinha toda feita (quem diz C diz qq outra LP).

O que eu não gosto da Web Programming é o facto de 90% ser Web Ripping, é o mesmo que fazer copy&past de linhas de codigo, literalmente de olhos fechados para dentro de um IDE de C.
Resume-se a scripting, porque sei o que faz, sei como se comporta, mas não sei como se lá chegou, é esse o bonito do baixo nivel. (que hoje em dia é inutil)

Para mim programar é saber fazer funçoes, estruturas, ciclos, etc, da melhor maneira, e melhor maneira para mim é, bug free, menos clocks possiveis, menos memória.
Resumindo: atacar o problema da melhor maneira, nem que seja em pseudo-codigo!
Só depois é que se deve aprender a sintaxe de uma das centenas de linguagens que existem, as libs que ela usa, estudar os varios componentes, objectos etc.
 
Enquanto tirei o curso de Eng. Informática, tive de utilizar várias linguagens, para aprender várias formas de expressar soluções, em que o que interessa é a forma como desenhas a tua solução. Aprendi as bases sobre transacções, algoritmos, etc... Agora uso essas bases no dia a dia, em qualquer que seja a linguagem, o sistema, ou a solução a implementar, pois estas bases aplicam-se a tudo.

Cada vez mais, hoje em dia, tens quem analisa o problema e desenha a solução e quem a implementa. E quem implementa, geralmente não tem de pensar muito.

Cumps.

Nem mais, é exactamente isso!

É curioso que falas aí num ponto que ninguém referiu, o desenho de um programa, Engenharia de Software.

Esta é uma das áreas que dá mais dinheiro dentro da informática, mas ser bom nisto..., não é fácil.

Salvo erro falei nesta thread que é essencial saber estruturar um programa antes de o implementar, no entanto hoje em dia já existe quem faça isso por nós, os Engenheiros de Software ou os Analistas de Sistemas, um programador não passa de um pedreiro a quem um Engenheiro Civil orienta (à distância) e que um Arquitecto já pensou e desenhou a obra toda.

Isto na prática aplica-se tanto a plataformas web como à máquina tradicional.

abraços, HecKel

Num projecto nomalmente existe o gestor de projecto, o eng. de software (chamado arquitecto de software em alguns sitios :002:)e os programadores.

Os arquitecto de software tem a tarefa mais importante, como tu dizes "saber estruturar um programa antes de o implementar".... Os arquitectos desenham a solução para determinado problema/projecto, e normalmente escolhem as tecnolgias que mais se adaptam. É um trabalho importantissimo, de acordo com estas decisões, no fim, pode-se ficar com uma boa implementação ou não.

O programador não pensa na solução em si (se era melhor com j2ee ou .net por ex.), apenas implementa funcionalidades pedidas e só tem de pensar no melhor algoritmo a fazer para implementar o que lhe pediram.

Normalmente um arquitecto de software passa por 2, 3 ou 4 anos ou mais como programador, depende do jeito :002:
 
Sinceramente acho indispensável saber linguagens de baixo nível para realmente saber programar, e é sempre arranjar um meio-termo entre tempo de programação e tempo de execução do programa.

Não é perder o tempo todo a programar funçõeszinhas que se podem encontrar facilmente em bibliotecas mas também não é usar uma linguagem tipo Java para resolver um problema que vai ser importante o tempo de execução, como têm dito é preciso saber matar o coelho com a arma mais adequada e não usar uma pressão de ar ou um tanque. :)

Eu por exemplo só este ano é que comecei a programar... e os ponteiros do C faziam-me uma confusão do caraças, quando comecei a programar em Assembly foi algo do género "porra os ponteiros são básicos como tudo" porque aprendi como realmente aquilo funcionava. E sinceramente aconselho aprender Assembly a toda a gente é enfadonho mas dá-nos uma perspectiva da programação completamente diferente.

E não posso falar de linguagens de programação direccionadas para web... mas quero aprende-las não sei bem é por onde começar... se alguém se propuser a mandar-me um PM a dar-me umas indicações agradecia ^^
 
Boas, sinceramente acho que uma boa base de conhecimentos de programação é fundamental, e quando refiro base é saber realizar projectos de pequena dimensão em linguagens procedimentais e funcionais. Em relação ao futuro da programação, cada vez as necessidades dos consumidores são maiores e cada vez a programação está mais complexa mas também há a necessidade do consumidor criar o seu próprio software à sua medida sem ter de recorrer a empresas third party daí o surgimento de novas aplicações com menus user friendly que permitem ao user satisfazer as suas necessidades sem ter de bater uma única linha de código.
 
Ola viva!!
Gostava de vos dizer que começei a programar em C nos SO do Mac, há já alguns anos. Começei a programar em C, pois vi exemplos e pareceu-me fácil. Claro q nessa altura não sabia nada de pointers nem nada, mas com a ajuda de certos craques, fui adicionando codigo que não entendia até ter compilado o programa e aparecer uma janela em frente ao ecran. Eu disse, "Consegui fazer isto???"; senti logo o poder da programação na minhas mãos. Mas pela experiência que tive, acho essencial aprender C!!! Depois de alguns anos, fui aprendendo mais e mais, à medida que o SO da Apple me permitia fazer outras coisas.

Actualmente, decidi programar Objective-C, pois os proprios craques da Apple recomendam e porque esta linguagem de programação assenta sobre C, e claro, permite usar C e Objective-C. Assim, posso programar numa linguagem orientada para objectos e C, que é uma linguagem mais orientada pa funções que se executam consoante estão ordenadas.

Mas sem duvida que pa se entender a diferença entre uma linguagem orientada pra objectos e uma linguagem tipo C, deve-se conhecer e aprender bem C e depois aprender outras linguagens!!

Espero ter contribuido para alguma coisa, grande abraço!!!
 
Back
Topo