2. Escolha do Sistema Operativo pela vontade e/ou gosto
Sistema operativo diferente == O mesmo software
3. Linguagem/Framework dependentes;
Modelação inicial errada;
API’s dependentes;
Variadíssimos factores que podem e devem ser
ultrapassados!*
Porque é que a maioria dos softwares são exclusivos a
uma única plataforma?
4. Generalização da noção de “Cross-Platform”
Interpretadores / Componentes de “run time”
presentes por omissão em todas as plataformas.
“bytecode” ou “linguagem compilada” comum
aos três principais sistemas operativos.
Adopção massiva das técnicas de “Just-In-Time
Compilation” e “Ahead-of-time compilation”.
Executável universal (Ex. Adobe Air).
Etc...
Soluções?
5. Source Code Binary Executable (Platform Specific)
C
C++
C#
VB.NET
Todos os sistemas operativos poderiam ler o
mesmo ficheiro e compilar o mesmo de formas
diferentes, criando automáticamente as adaptações
necessárias à especificidade de certas
funcionalidades do sistema operativo ?? Open Assembly ??
Deve existir uma linguagem de baixo nível que todos os Sistemas Operativos
possam “compreender” e converter para “código m{quina”.
O facto de correr em Linux não siginifica que tenha de ser “Open-Source”!