Revue de presse

Revue de presse by Itelios

Cette semaine nous vous proposons une revue de presse composée de DevOps, de Node.js, de JS front, sans oublier du mobile avec une librairie Android et des outils pour Swift. Bonne lecture !


Développement mobile: quelle solution d'intégration continue choisir ?

La programmation ne se limite pas à l’écriture du code source. Un ensemble de procédures et de méthodologies doit être mis en place pour assurer la qualité d’un développement. Citons par exemple la documentation qui permettra d’assurer maintenabilité et facilité d’utilisation. (en expliquant un algorithme complexe, en détaillant l’API publique, en fournissant des exemples concrets…)

Une de ces procédures met l’emphase sur un suivi continu du développement à chaque mise à jour de la source (analyse du code à la recherche d’erreurs syntaxiques, vérification de la présence d’un environnement de test, exécution des tests unitaires ou fonctionnels, etc.): l’intégration continue.

Elle n’est pas obligatoire pour mener à bien un développement, mais devient immensément utile lors de la multiplication des projets. Elle permet de soulager les développeurs en réalisant des tâches automatiquement, et fournit des indicateurs sur la qualité du développement et du code.

In fine, l’intégration continue pourrait même effectuer automatiquement des livraisons en production dans certaines situations pré-définies.

Il existe de nombreuses solutions d’intégration continue (ou CI, pour “Continuous Integration”) : open sources ou commerciales, sur le cloud ou self-hosted, dédiées à une technologie ou totalement techno-agnostiques

À ITELIOS, nous avons étudié les possibilités offertes aux équipes de développement mobile, et nous avons choisi de partager ce retour d’expérience avec vous !

Avant de continuer, je tiens à préciser que nous ne serons évidemment pas exhaustifs, car il existe des dizaines de solutions possibles. Nous n’allons présenter que celles qui ont retenu notre attention. N’hésitez pas à partager votre propre expérience en commentaire.


Revue de presse

Revue de presse by Itelios

Tous les 15 jours retrouvez une sélection d’articles qui nous ont marqué lors de notre veille. Nous aborderons principalement des thèmes techniques ou métiers autour de nos domaines de prédilection : Git, Javascript, Node.js, Frontend, Mobile, E-commerce, M-commerce, UI/UX, …


Swift sous Linux - Introduction


Image du WWDC

Swift, le nouveau langage d’Apple, est open source depuis le 3 décembre 2015.
Nous allons voir à travers cet article comment l’installer et l’utiliser sur Linux.
Vous n’avez pas besoin d’avoir de connaissance avancée de Linux, ni de machine Linux installée pour suivre ce tutoriel.


C# 6 – L’opérateur nameof

Je vais vous présenter le nouvel opérateur nameof pour C#.

C# 6 introduit un nouvel opérateur : nameof. Cet opérateur permet de renvoyer le nom d’un symbole sous forme de chaîne de caractères.

Par exemple :

1
Console.WriteLine(nameof(Console.Write));

A pour résultats l’affichage suivant :

1
Write

Ce nouvel opérateur est très utile pour éviter d’avoir des chaînes de caractères en dur dans le code.

Prenons l’exemple suivant :

1
2
3
4
5
6
7
private string _firstname;
  
public string Firstname
{
    get { return _firstname; }
    set { _firstname = value; OnPropertyChanged("Firstname"); }
}

Avec ce code, nous ne sommes pas à l’abri d’une faute de frappe lors de la saisie du symbole sous forme de chaîne de caractère et donc non détectée par la compilateur. L’opérateur nameof permet de d’éviter ce genre de soucis.

Voici le même exemple avec l’opérateur nameof :

1
2
3
4
5
6
7
private string _firstname;
   
public string Firstname
{
    get { return _firstname; }
    set { _firstname = value; OnPropertyChanged(nameof(this.Firstname)); }
}

Autre avantage, avec l’utilisation de nameof, le symbole passé en paramètre est pris compte par les outils de refactoring. Pratique lorsqu’on renomme une variable car on n’a vite fait d’oublier de modifier les chaînes de caractères correspondantes. Avec nameof plus besoin de s’en préoccuper.

Le symbole passé en paramètre de nameof doit exister, sinon le compilateur lèvera une erreur. Attention toutefois, il existe des éléments non autorisés et qui génèrent des erreurs : les types prédéfinis (par exemple, int ou void), les types Nullable (Point?), les types tableau, les types génériques indépendants (Dictionary<,>)

Ainsi il est impossible de faire par exemple :

1
nameof(List<T>);

Voilà, une nouveauté plutôt sympa, pratique et rapide à mettre en œuvre.

Rock’n’Roll