Parte 1 - Linguagens para Desenvolvimento Web
Desenvolver aplicativos para web implica em conhecer algumas linguagens. Isto contrasta com o desenvovimento de aplicativos desktop ou nativos onde é suficiente conhecer uma única linguagem.
Nos programas desktop a única linguagem é a de programação, como Java, C, Python, etc. Conhecendo a linguagem, e suas bibliotecas, o desenvolvedor escreve 100% do código nesta linguagem. Como sabemos, linguagens de programação existem para codificar algoritmos.
Nos aplicativos para web é preciso conhecer, além da linguagem de programação, aliás frequentemente mais de uma , outras linguagens. Estas linguagens, tipicamente HTML, CSS, JSON e XML não são de programação. Não se escreve algoritmo em HTML, CSS, JSON ou XML).
HTML e CSS são linguagens para visualização dos dados da aplicação. Em outras palavras, com HTML e CSS definimos a aparência da aplicação, a interface com o usuário.
JSON e XML são linguagens para representação dos dados da aplicação. O leitor atendo pode estar se perguntando por quê não representar os dados usando as estruturas de dados da própria linguagem de programação que está sendo usada. Há dois motivos: como afirmado acima, frequentemente um aplicativo para web implica em usar mais de uma linguagem de programação (tipicamente uma no lado cliente e outra no lado servidor). Assim, a troca de dados deve ser feita por meio de um formato reconhecido por ambas as linguagens. O segundo motivo está relacionado ao protocolo de comunicação entre o programa cliente e o programa servidor: na prática é mais simples converter os dados do formato próprio da linguagem de programação para JSON ou XML e vice-versa.