O que é Front-end, Back-end e Full Stack: características e linguagens