Desenvolvimento Web – Lado do servidor (Server-Side)

Desenvolvimento web
  
          A linguagem de servidor é a linguagem que vai rodar "por trás dos panos", fornecendo a lógica principal da aplicação. Funciona da seguinte maneira: sempre que o usuário faz um HTTP request (entra numa página, clica num link, etc), o pedido é enviado para o servidor. A linguagem server-side recebe o requerimento (Request) e faz o processamento. Depois, transforma o resultado final em uma das linguagens de marcação apresentadas na primeira parte do tópico de desenvolvimento web (acesse aqui Desenvolvimento web parte 1 ) e envia para o navegador. É a linguagem server-side que vai verificar se o usuário está logado, vai buscar informações no banco de dados etc. Nessa categoria de linguagens uma das mais conhecidas é o PHP, no entanto, com ascensão da web nos últimos anos, muitas outras linguagens e/ou frameworks foram desenvolvidos e projetados, e outros foram apenas melhorados pois já existiam, para o desenvolvimento web do lado do servidor. Alguns exemplos são: Java, ASP.NET (C#, é possível usar VB.NET também), NodeJS (JavaScript), Django (Python), Ruby on Rails (Ruby) dentre outros.
          É nessa parte que ocorre a comunicação com o banco de dados. Para a estruturação de banco de dados, o programador poderá utilizar os seguintes dentre várias outras possibilidades, como MongoDB, Oracle e etc:
  • MySQL   - considerado um dos sistemas de banco de dados mais procurados na internet, por ser de código aberto, contribui para a criação de um banco de informações que serão agrupadas e organizadas. É estruturado na linguagem SQL, uma das mais utilizadas para gerenciar conteúdo de banco de dados.
  • SQL Server - é um SGDB, isso é, um Sistema Gerenciador de Banco de Dados (SGDB) desenvolvido e mantido pela Microsoft.  Como qualquer SGDB, trata-se de um software que cuida do armazenamento, atualização e recuperação de dados computacionais, incluindo os relacionamentos, permitindo toda esta administração de forma remota (através de rede / internet). O Microsoft SQL Server, como o próprio nome sugere, utiliza-se do padrão de linguagem de pesquisa declarativa SQL para a administração dos dados.
  • PostgreSQL  -      O PostgreSQL é o banco de dados livre mais avançado do mundo. Este é o slogan do projeto e não é uma “falsa pretensão”. O PostgreSQL realmente pode ser chamado assim pois é o banco de dados considerado exemplo para a especificação ANSI-SQL, por ser extremamente aderente a esse padrão, batendo inclusive os concorrentes proprietários.  projeto atual surgiu em 1995 e derivou de outro projeto que iniciou aproximadamente em 1976. Da base de código do Ingres, que deu origem ao PostgreSQL, também derivaram Sybase e Microsoft SQL Server
fonte: https://www.jetbrains.com/phpstorm/
IDE PHPStorm uma das mais completas IDEs para o desenvolvimento do lado do servidor.
 
 

Comentários

  1. Post interessante! Existem motivos específicos para o predomínio do PHP no desenvolvimento web?

    ResponderExcluir
    Respostas
    1. Obrigado! Acredito que devido ao ano da sua criação, 1995, uma das primeiras linguagens voltadas para o lado do servidor tenha sido um importante motivo. Além disso, o PHP nunca ficou para trás em termos de atualização e não teve seu desenvolvimento descontinuado. Portanto, novos frameworks (Como Codeigniter, Laravel, Slim e etc.) foram cada vez mais sendo viabilizados. É uma ótima linguagem devido a quantidade de recursos disponíveis e uma excelente documentação, muito bom para quem pretende trabalhar no Back-End.

      Excluir
  2. Quais as melhores alternativas em IDEs gratuitas para PHP? (Fora a Aptana, que infelizmente foi descontinuada)

    ResponderExcluir
    Respostas
    1. As únicas IDEs gratuitas para PHP que conheço são NetBeans e Eclipse.

      Excluir
  3. Sobre a requisição web é importante também falar sobre os servidores web como Apache, Nginx, que são bastante usados. Não só a linguagem de programação, mas o conjunto compõem o funcionamento da aplicação web.

    ResponderExcluir
    Respostas
    1. Sim, obrigado por alertar sobre essa questão. Realmente sem esses servidores nada da web funcionaria. A opção de não abordá-los foi proposital, uma vez que o que foi apresentado no post acima seria um guia para iniciantes e para quem está na dúvida de qual área seguir, e explicar o todo poderia acabar confundindo o público-alvo (como expliquei na apresentação a questão das IDEs). Portanto, deixarei um link de uma postagem no blog da Hostinger, a qual, além de explicar o que são esses servidores, faz comparação entre eles no que tange o desempenho, a segurança, flexibilidade, popularidade e, por fim, um "Qual devo usar".

      https://www.hostinger.com.br/tutoriais/nginx-vs-apache

      Excluir
  4. O "Server-side" é o foco do programador "Back-end" que foi apresentado no seminário? Eu não sei muito sobre programação para web... Mas, nesse tipo de programar para web, seria as pessoas que são responsáveis por disponibilizar o site para estar "online" apenas, como tipo a Amazon? Ou vai além? Como além de deixar o site online, é possivel fazer os processos de tudo que é feito que não é visto na interface?

    ResponderExcluir
    Respostas
    1. Para a primeira pergunta, Sim, é isso mesmo. Eu não entendi muito bem a segunda pergunta.

      Mas dando visão mais clara do que é um desenvolvedor Back-End, ele é desenvolvedor responsável por fazer toda a parte que ocorre por trás do que o usuário pode ver, isto é, implementar as políticas internas de um software web, como uma página deve operar através de uma API que ele também desenvolve.

      Excluir
    2. Este comentário foi removido pelo autor.

      Excluir
    3. A segunda pergunta seria... Uma empresa que disponibilza os sites que pessoas criam para estarem onlines. Eu pesquisei e o nome disso é "hospedagem para sites".
      P.S.: Desculpa a demora do retorno da sua resposta. E muito boa a apresentação! Demonstraram ter bastante conhecimento! Que pena que tiveram pouco tempo. :(

      Excluir
    4. Se eu entendi bem, essa não é a área do desenvolvedor back-end, embora ele também deva entender um pouco. A parte da hospedagem de sites, acredito que seria mais voltado para o pessoal da área de Redes, como os técnicos de infraestrutura por exemplo.

      Excluir
  5. Muito bom, Marcos Nathan! Você acha que seria difícil para um aprendiz migrar do Front-end para o Back-end?
    No Front-end, o padrão não muda muito, não tem muito para onde fugir... Já no Back, são muitas linguagens e frameworks, bancos de dados...
    Já fiz um curso com PHP. Mas vejo que a linguagem SOZINHA, atualmente, é mais um atraso do que vantagem.
    Você tem alguma sugestão para o passo seguinte ao de aprender a linguagem em si? Dominar um framework, talvez?

    ResponderExcluir
    Respostas
    1. Oi, Vinícius! Depende do esforço e da vontade ele em aprender sobre linguagens de programação. Considerando que esse aprendiz já mexeu com JavaScript, o que lhe dá uma noção de programação, acredito que não seja difícil.

      Sim, são muitas linguagens/frameworks e muitas opções no Back-End. Olha, eu participo do grupo PHPBrasil no telegram ( https://t.me/phpbrasil ) e já vi muitos comentários sobre não ser uma boa ideia utilizar o PHP "cru", mas eu acredito que isso só valha para projetos de médio a grande porte. Eu particularmente gosto de programar em PHP, mas claro que não posso ignorar o fato de que frameworks como o Codeigniter e Doctrine, Laravel e Eloquent sejam mais produtivos e te ajudem a escrever menos e fazer mais.

      Em relação ao passo seguinte depende do que você quer trabalhar.

      Excluir
  6. Ótimo post. Uma pergunta... Em uma empresa como a Google o que é mais importante o frontend ou o backend?

    ResponderExcluir
    Respostas
    1. Ambos! Não adianta ter um sistema bonito operando de forma péssima e nem um sistema feio operando 100%.

      Excluir
  7. Quando se fala de linguagem server-side, essa linguagem é a mesma descrita durante o protocolo TCP/IP na camada de transporte?

    ResponderExcluir

Postar um comentário