Entendi. Olha,
linguagens de baixo nível, procedurais, como c e pascal, são mais utilizadas para se criar tecnologia(não necessáriamente, mas é um padrão). O uso dessas linguagens, se deve ao fato de serem muito flexíveis, e seus compiladores gerarem código otimizado a diversos processadores(inclusive microcontroladores). O kernel do linux é escrito em c(não c++) devido a alta otimização e performance, chegando bem próximo ao assembly. É comumente utilizada para construção de software básico(Sistemas Operacionais, Compiladores, Drivers, etc…)
(c, assembly, pascal(nem tanto), c++)
linguagens de alto nivel, orientadas a objeto, têm uso específico, onde a produtividade é prioridade. O código se torna muito mais legível e fácil de se manter. Seu uso se resume a sistemas computacionais comerciais, ferramentas, e aplicativos. (Ex: Vb, java, c#, ruby)
linguagens de alto nivel, declarativas são utilizadas para resolver problemas de Inteligência artificial, específicos de base de conhecimento, como sistemas especialistas. Lisp, Prolog,
Cada coisa tem maior utilidade em determinadas áreas.
A microsoft está pesquisando o singularity, que é um sistema operacional, cujo kernel é escrito em c#. Para isso sair da prancheta, é necessário bootar uma máquina virtual junto com o kernel. Sendo o kernel um sistema de tempo crítico de resposta, imagino que esse projeto não saia da prancheta mesmo.
O Android, é um kernel linux, com uma jvm embutida, e funciona perfeitamente. Mas tudo escrito em c.
Em contrapartida, escrever um sistema para um comércio em assembly não tem cabimento. Vai levar anos de desenvolvimento.
Sobre metodologia, é perfeitamente possível usar encapsulamento, e idéias de O.O em uma linguagem como c. O.O é uma metodologia e não uma tecnologia.[/quote]
Hum, muito boa a explicação, porém ainda preciso de dados mais precisos, ex: qual a melhor Linguagem O.O, e a melhor Imperativa…
Tu pode me indicar algum material para que eu possa me familiarizar com o assunto?
Abraços