terça-feira, 28 de maio de 2019

Classificações das Linguagens de Programação


Antes de introduzir a importância e o funcionamento dos compiladores e interpretadores, é fundamental estar ciente da distinção dos dois grandes tipos de linguagens, as de alto nível e as de baixo nível.


  •     Linguagem de programação


Apesar da existência de diversas linguagens de programação, cada uma delas é destinada a funções e objetivos distintos. Em geral, a definição da linguagem de programação é a tentativa de comunicação humana com os computadores, através do fornecimento de comandos à máquina.



Normalmente, durante o ato de programar, é de imediato o desejo de querer digitar as instruções em uma forma "humana" e esperar a resposta direta do computador. No entanto, é necessário que haja uma adaptação durante a escrita do código à maneira como a linguagem escolhida opera. Isso porque, o computador não é capaz de compreender pedidos humanos apresentados diretamente na linguagem natural. Logo, surge a necessidade da aplicação das linguagens de alto e baixo nível, porque essas funcionarão como "pontes" entre o homem e a máquina.


  1. Linguagem de Alto Nível
A linguagem de alto nível é a que se mais aproxima da linguagem natural. Mesmo com variações entre as diferentes linguagens de alto nível, o código ainda é facilmente compreendido pelos humanos (abstração alta).

Exemplos: JavaScript,Python, Ruby, C#, PHP, entre outros.




 2. Linguagem de Baixo Nível

As linguagens de baixo nível se aproximam da linguagem da máquina e, portanto, possuem códigos com baixa abstração (de difícil compreensão pelos humanos). Eles, geralmente, são provenientes da transformação, através de um compilador ou interpretador, de um código de alto nível. Uma vez que as ordens foram traduzidas ao baixo nível de linguagem, elas são enviadas diretamente para o processador do computador para que ele execute a tarefa inicial. Como representantes, temos as linguagens: Assembly e de máquina (binário ou hexadecimal).



Assim, pode-se facilmente observar a sequência mais comum de transformações das linguagens:


Humano ➱ L. de Alto N. ➱ C/I  ➱ L. de Baixo N. ➱ Máquina


Entretanto, nada impede que a escrita do código comece a partir do fim dessa ordem convencional. Na verdade, é bom citar algumas distinções, no que se refere à linguagem (de alto ou baixo nível) em que será iniciada a codificação:


➤ Alto Nível:

  •  Codificação facilitada
  •  Menor custo de manutenção e elaboração de programas



➤ Baixo Nível:

  •  Codificação dificultada
  •  Processamento rápido para grandes dados




Visto isso, percebe-se que é papel do programador decidir, baseado na análise dos parâmetros dos problemas, qual será a melhor opção para atingir o objetivo computacional da forma mais conveniente e prática.





Referências: https://becode.com.br/linguagens-alto-nivel-x-baixo-nivel/
https://pt.wikipedia.org/wiki/Linguagem_de_programa%C3%A7%C3%A3o_de_alto_n%C3%ADvelhttp://www.programador.com.br/linguagens-de-programacao.html






sexta-feira, 17 de maio de 2019

Programa, Software e Sistema


   Como foi sugerido, no post anterior, resolvi separar um post só para eles. De forma que, fique bem claro o conceito de cada um.
    Vamos começar falando então daquilo que mais confunde, qual a principal diferença entre um Programa e um Software?
   Um Programa, basicamente, é uma série de procedimentos precisos que se transformam em um conjunto de instruções e que serão executadas pelo computador, resultando em um comportamento desejado.
   Já o Software utiliza um conjunto de instruções, os programas, que serão interpretadas pelo computador (no caso, há possibilidade de envolver um interpretador que traduz o código para a língua do computador), englobando arquivos que serão distribuídos com as bibliotecas, bancos de dados e arquivos de configuração.
   Tendo em vista que os Programas são formados a partir de instruções, Softwares a partir de programas, temos então que um sistema se torna em um conjunto de softwares.
   Ainda não está claro? Calma. Vamos supor então que você tem uma rotina diária matinal, ao acordar você se levanta, toma um banho, veste-se, toma seu café matinal e escova os dentes para sair. Notou? As ações seriam os Programas, sua rotina seria o Software e seu dia, como um todo, se torna um sistema.
   Sendo assim, vamos então à interface, é aquilo que você vê ao utilizar o computador, que permite a interação entre máquina e usuário por meio de elementos visuais, como ícones e outros indicadores, sendo essa interação feita por mouse e teclado.

 

Referências:
 

quinta-feira, 16 de maio de 2019

Software as a Service


Um dos maiores desafios de quem tem negócios online é a organização de conectividade, servidores e principalmente a segurança da informação, o que, por vezes exige um grande investimento . Tendo em vista essa dificuldade , o SaaS, ou seja, "Software como um Serviço", é um tipo de comercialização de softwares que se responsabiliza pelos Sistemas de um site, conta ou empresa e faz com que esses consigam focar mais no trabalho e menos na parte de software e hardware.

Uma das maiores vantagens do SaaS é que seu pagamento geralmente é feito proporcionalmente ao número de acessos ou de licenças utilizadas, fator que ajuda principalmente empresas pequenas ou em ascensão, já que não terão que pagar preços absurdos por esses serviços e nem utilizar grande parte de seu Disco Rígido para armazenar suas informações. Um dos maiores exemplos desse tipo de Software é o DropBox, cujo maior objetivo é ajudar de pessoas físicas à grandes empresas a armazenar e organizar as informações "Upadas" na nuvem sem interromper seu fluxo de trabalho.


                                     .   

quarta-feira, 15 de maio de 2019

Noções Básicas de Sistemas Operacionais



   Quando você escuta a palavra “Sistema Operacional” o que vem em sua mente? Será que você realmente entende o que deveria ser um Hardware ou Software? Calma, que estamos aqui para resolver essas dúvidas.

  
   Começaremos então pela parte física do nosso querido computador, que são chamados de Hardware, em síntese é o que faz a máquina funcionar, como por exemplo o processador, podendo serem divididos entre os mais internos, como o HD/Memória RAM,  aos mais externos, como mouses/teclados, para saber mais acessem https://gt8-hardware.blogspot.com/  , lá tem muito conteúdo bom falando sobre eles.
   Tendo em vista que você já tem uma boa noção sobre os hardwares, iremos falar agora sobre os Softwares, sendo eles um agrupamento de comandos escritos em uma determinada linguagem de programação, criando assim ações em um programa que permitem o funcionamento do todo, criando um programa complexo. Assim como os hardwares, nos softwares também existem uma diversidade de tipos, sendo eles: os de sistema, aplicativo, de programação, de tutorial, de jogos e os abertos. Levando em consideração que os mais utilizados hoje são os abertos, pois eles proporcionam que as pessoas compartilhem informações.
   Agora que você já tem uma boa noção em como se divide o computador, iremos adentrar no mundo dos sistemas operacionais, são eles que fazem uma grande diferença de interação entre máquina e usuário.
 


Um Sistema Operacional (S.O.) é uma coleção de softwares, programas, onde existe a maior interação da máquina entre usuário, softwares e hardwares, pois gerencia os recursos do sistema fornecendo uma interface. A partir dessa definição nota-se que em praticamente todas as máquinas ao nosso redor existe um S.O, seja em seu celular (Android, Windows Phone, Ubuntu Touch, Firefox OS, iOS) ou em seu computador (Windows, Linux).


  

   Seja um computador ou um celular, existem peças responsáveis pelo funcionamento e para definir quando cada peça e qual programa serão utilizados existe um sistema operacional para os guiar. Ele é o “capitão do time” dizendo onde, quando e por quanto tempo ficará ativo cada qual. Sem o sistema operacional a máquina só ligaria e os programas instalados não rodariam como pré-definido e não realizariam as ações feitas pelo o usuário.




Referências: