Avec l’ouverture de sa conférence Connect() dédiée aux développeurs, Microsoft avait en réserve de très nombreuses annonces, toutes importantes. La firme rejoint par exemple la Linux Foundation, revient sur Visual Studio pour Mac, lance .NET Core 1.1 ainsi qu’un gros Service Pack pour SQL Server 2016. Et la liste continue.
L’annonce qui aura sans doute le plus marqué les esprits durant la conférence Connect() est clairement l’entrée de Microsoft dans la Linux Foundation. Une entrée par la grande porte d’ailleurs puisque la firme arrive directement en membre platine, soit le plus haut « grade » dans la structure, avec un siège au conseil d'administration.
Pour Microsoft, il s’agit simplement d’un enchainement logique, officialisant une nouvelle relation avec le monde de l’open source, 15 ans après le qualificatif de « cancer » utilisé par Steve Ballmer. Car la firme s’appuie bien sur l’ouverture du code, avec les projets Visual Studio Code et .NET Core en tête. Elle va donc poursuivre sur cette voie, même si elle est sans doute surtout intéressée par une bonne intégration de ses produits dans des environnements hétérogènes.
Google rejoint la .NET Foundation, Samsung participe
Mais il y a une annonce que l’on attendait encore moins qu’une entrée de Microsoft dans la Linux Foundation : celle de Google dans la .NET Foundation. Certes Microsoft montrait un intérêt croissant pour l’open source, mais Google n’a jamais vraiment manifesté le sien pour les technologies .NET. Le seul produit sur lequel la firme se soit montrée réellement enthousiaste, c’est le langage TypeScript, désormais recommandé pour développer avec Angular 2.
Que fera Google de cette participation ? On ne le sait pas vraiment encore. Il est probable que l’éditeur soit intéressé par un support de .NET dans le seul de ses produits capables actuellement de l’accueillir, Google Cloud Platform.
Par ailleurs, Samsung – qui faisait déjà partie de la .NET Foundation – a annoncé ses Tools for Tizen. Les développeurs pourront donc se servir de l’IDE de Microsoft pour créer des projets vers cette plateforme, que l’on retrouve maintenant surtout dans les téléviseurs connectés du constructeur sud-coréen.
.NET Core 1.1
.NET Core justement en profite pour passer en version 1.1. En plus de corriger les erreurs de jeunesse de la première version stable, Microsoft indique avoir augmenté les performances. Les PGO (Profile-Guided Optimization) ont été utilisées, et nous en avions expliqué les bénéfices récemment dans Chrome. On compte également 1 380 nouvelles API.
La version 1.1 ajoute également le support de plusieurs systèmes : Linux Mint 18, OpenSUSE 42.1, macOS 10.12 et Windows Server 2016. Notez que les deux derniers ont été ajoutés à .NET Core 1.0. Par ailleurs, pour Linux et macOS, la compilation de CoreCLR a été faite avec Clang/LLVM. Le profil Clang PGO sera utilisé pour la compilation de la prochaine version.
Rappelons que comme toutes les versions de l’environnement .NET, les installations sont concurrentielles. La mouture 1.1 ne remplacera donc pas la 1.0, et les applications prévues pour cette dernière continueront de fonctionner sans modification.
Visual Studio 15 s’appellera bien « 2017 »
Après bien des préversions, Visual Studio 15 abandonne sa numération de code pour un nom commercial : Visual Studio 2017. Le doute n’était plus guère permis, mais la confirmation est cette fois officielle. Pour l’occasion, l’environnement de développement se dote d’une première Release Candidate, censée être assez stable pour commencer à être utilisée sérieusement.
Quelques nouveautés sont présentes, mais rien d’aussi important que les ajouts des dernières préversions. La nouvelle version se veut plus performante (notamment sur l’ouverture et le chargement des projets), présente un système plus riche pour les extensions, dispose d’une installation modulaire, s’oriente vers le développement mobile multiplateforme (avec émulateur iOS), ou encore améliore IntelliSense (support de XAML notamment).
Autre nouveauté qui n’en est pas une, puisque Microsoft avait vendu la mèche : l’arrivée de Visual Studio pour Mac, cette fois réellement disponible en préversion. Les principales caractéristiques sont déjà connues. Il ne s’agit pas d’un portage vers macOS de l’IDE existant, mais d’une amélioration de Xamarin Studio, que Microsoft avait racheté. L’interface a été modifiée pour se rapprocher du Visual Studio classique et des fonctionnalités ont été ajoutées au passage.
- Télécharger la Release Candidate de Visual Studio 2017
- Télécharger la préversion de Visual Studio pour Mac
SQL Server : de sérieux mouvements
Microsoft a profité de l’évènement pour présenter le Service Pack 1 pour SQL Server 2016. Une annonce qui ne devrait pas générer un enthousiasme bouleversant, mais qui comporte un changement majeur dans les fonctionnalités des différentes déclinaisons.
SQL Server se décompose en effet en plusieurs éditions, chacune censée être adaptée à des besoins particuliers : Express, Standard, et Enterprise. Chacune dispose de ses fonctionnalités, et plus on monte dans la gamme, plus elles sont nombreuses. Certaines sont de fait réservées à la dernière, ce qui pose un problème aux développeurs : pourquoi en tirer parti si les clients potentiels sont peu nombreux ?
Le Service Pack 1 casse ce modèle en remettant tout à plat : toutes les éditions ont accès à la totalité des fonctionnalités. Si des développeurs veulent profiter des bases de données transactionnelles en mémoire avec l’édition Express, ils le peuvent. Ce qui reste bien sûr, c’est la tarification et les conditions d’exploitation de chaque version, le nombre de processeurs supportés et la quantité de mémoire prise en charge. Un modèle global présenté comme plus souple.
Une première préversion pour SQL Server Linux
La version Linux de SQL Server se dote également d’une première préversion, après une annonce qui en avait surpris plus d’un. La parité fonctionnelle n’est pas encore entière, mais Microsoft a indiqué que tous les principaux traits de la version Windows étaient là, y compris le chargement complet en mémoire vive (in-memory). Dans tous les cas, l’alignement des fonctionnalités est bien prévu par la suite.
La préversion peut être installée via des paquets RPM ou DEB. SQL Server peut également fonctionner dans un conteneur Docker. Autre point important, les développements réalisés dans Visual Studio pour SQL Server pourront viser indifféremment Windows ou Linux. Tout porte à croire que cette dernière version fonctionne avec Drawbridge, donc avec un système de conteneur.