samedi 22 octobre 2016

Trois raisons de ne pas acheter de terminal Android

La biodiversité. Nous avons découvert que la biodiversité était nécessaire pour pérenniser la vie sur la terre. Dans le domaine informatique c'est la même chose : utiliser Android c'est comme manger de la viande élevée de façon intensive, manger le même blé dans le monde entier avec les effets d'intolérance que cela produit. Android équipe plus de 80% des appareils mobiles, il devient donc un mono système ce qui fait craindre une chute en cascade : si un virus touche un terminal tout le reste se cassera la figure.
La qualité. C'est un système permissif, ce qui est embêtant surtout quand il équipe la grande majorité des terminaux du monde. Plusieurs couches logicielles cohabitent, les utilisateurs ne savent pas quel explorateur, quel client mail utiliser, comment configurer leur compte, où stocker les contacts etc. Un nombre impressionnant d'applications inutilisées (à la façon Windows) encombrent le terminal. Bref on a un ordinateur que l'on utilise seulement pour téléphoner et envoyer des SMS.
La pollution. La politique du bas coût a induit des achats en nombre pour des produits très complexes utilisants des ressources rares. Un très grand nombre de terminaux Android sont jetés parce qu’ils ne valent  plus grand chose après une ou deux années de vie. Moins un terminal est acheté cher moins sa durée de vie sera longue.


samedi 8 octobre 2016

Algorithme de tri de date en C#

Dans cet algorithme on compare les valeurs 2 à 2, à chaque fois que l'on réorganise (inversion des valeurs) on recommence la comparaison des valeurs 2 à 2 depuis le début de la liste.

DateTime.Ticks représente une valeur plus facile à comparer.

L'ordre des dates est décroissant, pour inverser l'ordre changer < par > dans la ligne if (dates[i].Ticks < dates[i + 1].Ticks)

int i = 0;
DateTime[] dates = new DateTime[3];
..... affectation des dates dans le tableau ......
while (i < dates.Length - 1)
{
     if (dates[i].Ticks < dates[i + 1].Ticks)
     {
           DateTime memoire = dates[i + 1];
           dates[i + 1] = dates[i];
           dates[i] = memoire;
           i = 0;
      }
      else i++;
}