Linguagem Java
Portabilidade é programar em Windows, Linux, Mac, pra Web, pra celular, em uma pedra...sem se preocupar com compatibilidade.
Isso é possível através da linguagem Java, uma vez que Java não roda no computador diretamente, mas em uma máquina virtual!
Java é uma linguagem de programação orientada a objetos feita na Sun Microsystems, hoje Oracle Corporation, lançada em 1995. A semelhança da sintaxe do Java com C e C++ não é coincidência, uma vez que Java derivou dessas linguagens. No entanto, programar em Java é mais simples, uma vez que é alto nível. Isso quer dizer que não nos preocupamos tanto com detalhes baixo nível, como memória, processamento, ponteiros, lixo etc.
O próprio Java provém um gerenciamento automático de memória e um coletor de lixo que facilitam a vida do desenvolvedor.
A diferença do Java é que os programas não são compilados diretamente na arquitetura do computadores. Ao invés disso, roda na JVM - Java Virtual Machine, uma máquina virtual, e esta é implementada nos mais diversos dispositivos, o que torna o Java referência quando o assunto é portabilidade.
Para rodar aplicações em Java, é necessário ter instalado a JRE, Java Runtime Enviroment. Analogamente, para desenvolver aplicações, é necessário ter instalado o JDK - Java Development Kit.
Expression Language
Linguagem de Expressão (Expression Language ou EL) simplifica o desenvolvimento de uma página provendo recursos através de tags. As tags existentes provê recursos de tarefas estruturados como iterações e condições, processamento de arquivos XML, internacionalização e acesso a dados usando SQL.
O padrão para se identificar a EL é ${}, onde entre as chaves estará a expressão. É possível ignorar uma EL utilizando a seguinte diretiva:
<%@ page isELIgnored ="true" %>
Uma EL apresenta resultados na camada de apresentação introduzindo o desenvolvimento na abordagem do MVC. Com ela é possível:
Acesso conciso a objetos armazenados em escopos; ${aluno}
Notação resumida para propriedade de Beans; ${aluno.nome}
Acesso simplificado para objetos de coleção; ${alunos[0]}
A seguir temos exemplos de uso de Expression Language:
HTML 4 e HTML 5
O HTML5 foi feito para ser simples, o que implica em uma sintaxe extremamente mais simples e limpa. A simples declaração do doctype foi mais uma das facilidades incluídas na nova versão. Agora, é inserir apenas um <!doctype html> no início do seu documento e tudo estará pronto. Além disso, a sintaxe do HTML5 é compatível também com o HTML4 e o XHTML1.
A linguagem apresenta um elemento novo, o <canvas>, responsável por substituir muitas das implementações antes feitas em Flash. Muitos desenvolvedores o veem como obsoleto e futuramente morto.
A extensão de tags a um tool de novos e interessantes recursos fez uma grande diferença na linguagem. Tags como <header> e <footer> (que estendem a funcionalidade de tabelas para a página como um todo), <section> e <article> (que permitem marcar áreas específicas dos layouts), <video> e <audio> (para uma inclusão melhorada de conteúdos multimídia nas páginas) e <menu> e <figure> (para bem arranjar textos, imagens e menus) trazem todo um conjunto de implementações e funcionalidades bastante pertinentes para a web de hoje.
A remoção de alguns recursos como as tags <center>, <big>, <font>, etc fazem com que a responsabilidade do CSS aliado à nova linguagem só aumente, otimizando o desenvolvimento front-end.
CSS
Cascading Style Sheets (CSS) é uma linguagem de folhas de estilo utilizada para definir a apresentação de documentos escritos em uma linguagem de marcação, como HTML ou XML. O seu principal benefício é a separação entre o formato e o conteúdo de um documento.
Em vez de colocar a formatação dentro do documento, o desenvolvedor cria um link (ligação) para uma página que contém os estilos, procedendo de forma idêntica para todas as páginas de um portal. Quando quiser alterar a aparência do portal basta portanto modificar apenas um arquivo.
JavaScript
JavaScript é um das 3 linguagens de programação que todos desenvolvedores devem conhecer:
HTML define o conteúdo das páginas web
CSS especifica o layout das páginas
JavaScript para programar o comportamento das páginas, de acordo com valores informados pelo usuário.
JavaScript é uma linguagem de programação interpretada. Foi originalmente implementada como parte dos navegadores web para que scripts pudessem ser executados do lado do cliente e interagissem com o usuário sem a necessidade deste script passar pelo servidor, controlando o navegador, realizando comunicação assíncrona e alterando o conteúdo do documento exibido.
É atualmente a principal linguagem para programação client-side em navegadores web. Começa também a ser bastante utilizada do lado do servidor através de ambientes como o node.js.
Foi concebida para ser uma linguagem script com orientação a objetos baseada em protótipos, tipagem fraca e dinâmica e funções de primeira classe. Possui suporte à programação funcional e apresenta recursos como fechamentos e funções de alta ordem comumente indisponíveis em linguagens populares como Java e C++.
Fontes:
http://www.programacaoprogressiva.net/2012/08/comece-programar-linguagem-de.html
http://www.aeciocosta.com.br/wp-content/uploads/Curso%20Java%20Web/Apostilas/5-EL%20-%20Expression%20Language.pdf
https://www.fiap.com.br/2014/08/04/diferencas-entre-as-versoes-4-e-5-do-html/
https://pt.wikipedia.org/wiki/Cascading_Style_Sheets
http://www.w3schools.com/js/
https://pt.wikipedia.org/wiki/JavaScript