[DÚVIDA] Como programar um software para ser atualizável?
Quando iniciei a faculdade de Ciência da Computação, tive aulas de história da computação e apresentei um trabalho sobre Margaret Hamilton, diretora do departamento de engenharia de software que desenvolveu o programa embarcado de voo da Apolo 11. Uma das características importantes do software criado por sua equipe foi a capacidade de ser atualizado remotamente. Refletindo sobre isso hoje, surgiu a seguinte questão:
Como programar um software para ser atualizável remotamente?
Como escrever uma atualização? Como enviá-la para um programa? Que protocolo utilizar? Quais requisitos meu software precisa atender para aceitar atualizações? Nunca ouvi falar sobre isso e não tenho ideia de como funciona.
Se alguém puder fornecer um exemplo de projeto que implemente o conceito de atualização remota, ficaria muito interessado, especialmente se fosse um exemplo que eu pudesse incluir em projetos acadêmicos de software para aprender o conceito de forma didática. Acredito que seria uma adição interessante para futuros projetos na faculdade.