Conseguiria me explicar com clareza a diferença entre back-end e front-end?
Back end => a base, aquele que na realidade executa o processo básico
Front end => o que faz o trabalho facil do back end, uma interface grafica, um codigo mais elaborado para executar melhor as tarefas de base ( o back end )
Numa relação apt > aptitude:
apt = back end
aptitude = front end
Quando do desenvolvimento do apt, este foi pensado para linha de comandos.
Alguém teve a idéia e a paciência de "melhorar" o apt. Desenvolveu um outro código em cima do apt e para usar o apt, criando o aptitude, que tem interface grafica em gtk ( ainda em console )
Idem para a relação dpkg/apt > synaptic
Quando usas o synaptic, este é só a parte gráfica do processo, o synaptic não faz absolutamente nada, senão "traduzir" em ambiente gráfico os comandos e saídas dos outros dois. No caso então o synaptic é um front end.
na duvida pode perguntar.