Como a Microsoft está a assumir o desafio multi-plataforma com o Office

Nosso desafio é como reconstruir este avião jumbo durante o vôo.

Isso é como Igor Zaika, a Microsoft Distinguished Engineer trabalhando em Microsoft Office, descreveu recentemente o dilema enfrentando a equipe do Microsoft Office. Como é que uma empresa de continuar a apoiar e evitar interromper seus 1 bilhão de usuários do Office enquanto a reconstrução da infra-estrutura do núcleo do Office para tornar o pacote executado em sistemas operacionais além do Windows?

Zaika falou sobre o Office estratégia de arquitetura multi-plataforma da Microsoft na recente conferência Facebook @Scale. (Graças ao gato andar no Twitter para o link para a sua apresentação.) Em sua sessão de 50 minutos, Zaika detalhou como Microsoft está construindo o Office em Windows, a Apple, Android e na web usando C ++.

Escritório atualmente consiste de dezenas de milhões de linhas de código que a empresa construiu a partir de 30 anos atrás. Escritório tem o seu início como um bando de aplicações individuais escritos em C; Microsoft empacotados juntos em 1990, embora não houvesse muito pouco código compartilhado entre eles, disse Zaika. Nesse ponto, a equipe pensou que seria uma boa idéia para reescrever o conjunto para criar uma base de código comum para o Office para Windows e Office para Mac, que a Microsoft lançou em separado em 1985.

Surpreendentemente, “Zaika brincou:” não funcionou.

Enquanto a equipe recuperado algum do código do Windows-Mac Office compartilhada, os usuários de Mac estavam descontentes com aplicativos do Office que não olhar ou funcionam como outros aplicativos do Mac.

A equipe do Office assumiu o desafio rearquitetar começar um par de anos atrás, com o entendimento de que a partilha de código é bom, mas compartilhando muito código não é, Zaika disse à platéia.

Desta vez, a equipe do Office está projetando mini-camadas plataforma de captação (PALS) e tentando fazer escolhas inteligentes sobre como e quanto UX código para compartilhar entre os diferentes sistemas operacionais que está trabalhando para apoiar.

Enquanto alguns dentro da empresa pensou Microsoft deve desembolsar a sua base de código do Office e criar diferentes ramos com equipes diffferent dedicados a apoiar cada sistema operacional, isso não é o escritório abordagem atual está tomando, Zaika explicou. Microsoft fez isso em 1997 quando ele separou as bases de código do Windows e do Mac do Office, mas não é isso que está fazendo agora, reconheceu. A equipe do Office também optou por não seguir o “mínimo denominador comum” rota com Office. Os usuários querem tirar proveito das características mais novo específicos da plataforma em cada sistema operacional, na medida do possível.

A equipe do Office está a fazer todo o seu trabalho no lugar. É edifício bem definido, componentes combináveis, usando refatoração mecânica sempre que possível, e testes de unidade, onde não. O foco está em manter tudo funcionando em todos os momentos, em todas as plataformas, disse Zaika. A equipe tem tolerância zero para regressões de automação em qualquer plataforma, e é dogfooding suas bases de código internamente em grande escala através da plataforma.

“Se você fizer isso direito, tendo uma base de código legado acaba por ser uma vantagem, porque o obriga a fazer” a coisa certa “, disse Zaika.

O objetivo é manter um núcleo compartilhada da propriedade intelectual – a coragem de escritório – todos escritos em C ++ e manter esse núcleo compartilhado tão grande quanto possível. Ao fazer isso, os riscos de corrupção documento são reduzidos. No topo do que core, existe um conjunto de interfaces de programação appliction UX nativo. As peças de interface do usuário de cada versão do Office não são escritos em HTML5, Zaika disse, e não há camadas intermediárias ou quadros personalizados envolvidos. A equipe também está construindo vários PALs, não apenas uma camada de abstração de gordura ou diferentes camadas de emulação.

O objetivo do “write once, run anywhere” que tecnologias como Java, Flash e HTML5 foram concebidos para tentar resolver empurrando o nível de abstração mais baixo possível ou fazer interfaces de programação de aplicativos (APIs) muito ampla soou bem, Zaika disse, mas acabou criando diferença de impedância. Os problemas de compatibilidade e interoperabilidade, entre outros, surgiu.

“Ou você explodiu, ou o OS (sistema operacional) explodiu”, disse Zaika.

Em vez disso, com mini-Pals, que a equipe do Office constrói no lugar, a empresa pode igualar o desempenho e as expectativas semânticos de suas aplicações específicas para os sistemas operacionais suportados. A Microsoft espera que estes amigos a evoluir como plataformas de adicionar novas funcionalidades, disse ele. Em vez de tentar construir para o desempenho específico, linha e outras restrições que são únicos para cada sistema operacional, a ideia era criar APIs para combinar todas as plataformas. É por isso que e como a Microsoft construiu a arquitectura do espaço aéreo de plataforma cruzada, como parte de seu novo design do Office, disse ele.

Star Trek: 50 anos do futurismo positivo e comentário social bold; Microsoft de Superfície all-in-one PC disse a manchete lançamento hardware de Outubro; Hands on com o iPhone 7, novo Apple Watch, e AirPods; Google compra Apigee para $ 625.000.000

Mobilidade; companhias aéreas australianas banir Samsung Galaxy Nota 7; Telcos; Telstra, Ericsson, Qualcomm atingir velocidades agregadas 1Gbps em teste ao vivo rede 4G; mobilidade; Ouvir para fones de ouvido enquanto carrega o seu iPhone 7? Vai custar-lhe; Smartphones; iPhone 7: Por que eu finalmente vou grande com o modelo deste ano

Com um núcleo comum C ++, uma camada UX nativo fina e amigos em evolução, a Microsoft está construindo sua aplicativos Office para que eles trabalham em diferentes sistemas operacionais com relativamente pequeno ajuste necessário. Zaika citados PowerPoint como um exemplo, salientando que apenas quatro por cento das suas dezenas de milhões de linhas são exclusivas para o WinRT / versão Universal do Office (o; touch-primeira versão do Office que alguns de nós têm chamado “Gemini; Se o código XAML é excluído, a quantidade de código compartilhado é de 98,6 por cento, disse. o PowerPoint para base de código Android inclui código compartilhado de 95 por cento, disse Zaika.

Microsoft é esperado para lançar; Escritório para Android comprimidos algum tempo dentro do próximo par de meses. A empresa também está testando privada; a próxima versão de seus aplicativos de desktop do Office (codinome “Escritório 16”); para Win32. Uma versão de testes pública do Office 16 pode ser lançado a qualquer momento, embora a versão final não é esperada até a primavera de 2015, dizem as fontes. O; Windows Store touch-first / Metro-Style ( “Universal” / WinRT) versão do Office; é rumores de estar no bom caminho para a Primavera de 2015.

companhias aéreas australianas banir Samsung Galaxy Nota 7

Telstra, Ericsson, Qualcomm atingir velocidades agregadas 1Gbps em teste ao vivo rede 4G

Ouvir fones de ouvido com fio enquanto carrega o seu iPhone 7? Vai custar-lhe

iPhone 7: Por que eu finalmente vou grande com o modelo deste ano