Programar em C/Por que aprender a linguagem C: diferenças entre revisões

[edição não verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
Edudobay (discussão | contribs)
m Programar em C: Porque aprender a linguagem c movido para Programar em C/Porque aprender a linguagem c: formato do nome
Thiagol (discussão | contribs)
Sem resumo de edição
Linha 2:
Os [[w:Sistemas Operacionais|Sistemas Operacionais]] mais populares são hoje o [[w:Microsoft Windows|Microsoft Windows]], o [[w:Mac OS X|Mac OS X]] e o [[w:GNU/Linux|GNU/Linux]]. Cada um é escrito em C. Por quê? Porque os Sistemas Operacionais funcionam diretamente com o hardware. Não há nenhuma camada mais baixa para mediar seus pedidos. Originalmente, os Sistemas Operacionais eram escritos na linguagem Assembly, o que resultava em um código muito rápido e eficiente. Entretanto, escrever um Sistema Operacional em Assembly é um processo tedioso (lento), e produz um código que funcionará somente em uma arquitetura de CPU, tal como o Intel X86 ou AMD64. Escrever um Sistema Operacional em uma linguagem de alto nível, tal como C, possibilita que os programadores readaptem o Sistema operacional sem reescrever a coisa inteira.
 
Tudo bem. Mas porque ''C'' e não [[JavascriptJava]] ou [[Basic]] ou ainda [[Perl]]? Principalmente devido à atribuição de memória. Ao contrário de muitas linguagens de programação, o C permite ao programador endereçar a memória tal como o faria em Assembly. Linguagens como o Java ou o Perl fornecem mecanismos que permitem que o programador faça o seu trabalho sem se ter de preocupar com a atribuição de memória ou com apontadores. Geralmente isso é bom uma vez que é bastante tedioso lidar com a alocação de memória quando escrevemos aplicações com algoritrmos de alto-nível. No entento, quando lidamos com tarefas de baixo-nível como aquelas que um kernel tem obrigação de desempenhar, como a de copiar um conjunto de bytes para uma placa de rede, torna-se altamente necessário um acesso directo à memória -- Algo que não é possível fazer apenas com Java. Além disso, um compilador de C permite também produzir código máquina rápido e eficiente, em alguns casos com possibilidade de otimizar.
 
<!-- So is it any wonder that C is such a popular language?