Technos

Patron de conception « Stratégie » — Bracket Show, épisode 34

Présentation du patron de conception « Stratégie » Single responsibility Open-closed principle Cas d’utilisation : avec et sans stratégie Exemples de code Tests Optimisation Tester les stratégies individuellement Implémentation de l’interface Classes minimalistes Conclusion : la stratégie permet de prendre un algorithme compliqué et le séparer en plusieurs morceaux qui n’ont chacun qu’une seule intention, un seul but pour

Lire plus

Histoire de C# de 2002 à 2019 — Bracket Show, épisode 35

La version 8 de C# vient d’être lancée et c’est l’occasion de retracer l’histoire de C# depuis la version 1.0 en 2002. Version 1.0 : précurseur de la programmation orientée-objet Classes, Structures, Interfaces, Événements, Propriétés, Délégations, Expressions, Statements, Attributs, Literals. Version 2.0 : Génériques, Types partiels, Méthodes anonymes, Nullable types, Itérateurs, Covariance et contravariance Version 3.0 : LinQ

Lire plus

Industrie 4.0 et Internet des objets

Le concept d’Internet des objets (Internet of things ou IoT) est à la base très simple. On parle parfois également de IIoT (Industrial Internet of Things) pour le secteur industriel. L’idée consiste tout simplement à relier des objets physiques au monde numérique par le biais de l’Internet. Cela permet de donner à ces objets leur

Lire plus

Virage numérique, données et systèmes intégrés

Les technologies numériques d’une entreprise sont souvent adoptées en fonction de besoins particuliers, sans considérer la possibilité de les intégrer aux technologies qui sont déjà en place. Ainsi, les besoins sont déterminés par les parties prenantes et utilisateurs potentiels qui dressent la liste des caractéristiques nécessaires sans nécessairement considérer l’intégration possible de ces technologies. Cette considération

Lire plus

Virage numérique et modèle d’affaires

Le virage numérique dans le domaine manufacturier implique évidemment des modifications importantes au niveau des différents processus et systèmes présents dans une entreprise. Mais plus largement, d’importants changements doivent se manifester également dans les modèles d’affaires et les modes de gestion. Cependant, pour demeurer compétitif et flexible, comme le mentionne clairement la feuille de route

Lire plus

L’Agilité sur un nuage…

Avez-vous déjà entendu parler de plateformes comme Amazon Web Services (AWS), Google Cloud Platform ou Microsoft Azure? Savez-vous comment en tirer un maximum de bénéfices? Si on ne comprend pas bien les différents services offerts et comment ils peuvent interagir les uns avec les autres, effectuer la transition vers l’infonuagique (Cloud Computing) peut être un

Lire plus

Spikes et architecture émergente

Initialement introduite par l’Extreme Programming, il existe une technique qui consiste à ajouter un élément au carnet de produit (product backlog) qu’on peut qualifier de « Spike ». Il s’agit d’un item pour lequel l’équipe s’entend sur une limite de temps à investir. Le but est d’acquérir des connaissances qui sont nécessaires pour réduire le risque, pour

Lire plus

Retour sur la soirée Bièr&Teknö

La deuxième soirée Bièr&Teknö organisée par Pyxis Studio a été un franc succès! Le 1er novembre dernier, une trentaine de personnes s’étaient réunies pour assister à la présentation d’Éric de Carufel et Bruno Barrette : « Blazor & .NET : Une application web monopage (SPA) sans javascript » Les deux collègues ont exploré ce que Blazor peut et

Lire plus

Extensions Visual Studio — Bracket Show, épisode 30

Dans cet épisode, Marc-André Viau nous explique comment faire une extension à Visual Studio de A à Z, de “File — new project” jusqu’au déploiement sur le Marketplace. Marc-André nous parle notamment d’une extension Visual Studio sur laquelle il a travaillé durant son stage : FokusTask.   Qu’est-ce qu’une extension Visual Studio? Application qui s’intègre à

Lire plus

.NET Core Localisation — Bracket Show, épisode 29

.NET Core nous apporte plusieurs nouvelles façons de faire les choses. Voyons comment s’y prendre pour faire la localisation de nos applications avec Bruno Barrette. Changements par rapport au framework .NET standard Comment démarrer Différentes manières de localiser Configuration Singleton Transient Options de localisation Mvc : ViewLocalization, DataAnnotationsLocalization Controller ViewModels Ressources contextuelles String format Attributs et

Lire plus

Astuces et Solution Explorer Scope — Bracket Show, épisode 28

Dans la série des trucs et astuces, voici un petit truc rapide pour vous faciliter la vie pour la navigation dans les fichiers d’une solution.   Présentation d’une fonctionnalité de Visual Studio qui peut vous être utile pour gérer des projets avec beaucoup de dossiers. Dans les projets MVC : diviser en areas Domain Driven Design

Lire plus

Mocking — Bracket Show, épisode 26

Dans cet épisode, nous allons voir comment rendre notre code testable et y introduire le concept de mock pour éviter des tester les dépendances avec notre code.   Comment arriver à faire du Mocking? Il ne s’agit pas d’une présentation des outils de Mocking qui présupposent que l’on a déjà notre code avec des interfaces

Lire plus

Unit Testing — Bracket Show, épisode 25

Dans cet épisode nous comparons trois des plus populaires “frameworks” de “unit testing” soit MSTest, NUnit et XUnit. Nous verrons comment ces différent “frameworks” fonctionnent. Survol des similarités et différences entre MSTest, NUnit et XUnit. Repository Évènements Processus asynchrone Return true Règles d’affaires et validation Tests avec NUnit: Attributs à utiliser TestFixture SetUp Tests paramétriques Theory :

Lire plus

Architecture, de « layered » à « clean » — Bracket Show, épisode 24

Dans cet épisode nous parlons de l’évolution de l’architecture logicielle à partir des modèles en couche (layered) juasqu’aux modèles plus modernes centrés sur le domaine.   Comment transformer une architecture de « layered » à « clean »? Qu’est-ce que l’architecture? Vue d’ensemble d’un système Structure du système : les différentes composantes Les couches (layers) Les relations entre les composantes

Lire plus

Builder — Bracket Show, épisode 22

Dans la série des “design pattern” nous vous parlons aujourd’hui du “Builder”. Vous utilisez ce “pattern” plus souvent que vous ne le pensez sans vous en rendre compte. Voyons comment en faire un soi-même.   Version Fluent qui permet de chaîner les appels pour bâtir nos objets et plus spécifiquement dans un contexte de tests

Lire plus

Bracket Show – Visual Studio 2017

Dans cet épisode du Bracket Show, nous passerons en revue les nouvelles fonctionnalités de Visual Studio 2017 qui ont retenu l’attention de Bruno et Eric. Ils vous parleront principalement des fonctionnalités utiles pour le développement de logiciel. Avec une attention pour ce qui est utile aux développeurs, nous faisons le tour de quelques-unes des fonctionnalités qui ont

Lire plus

Bracket Show – Nouveautés C# 7 – partie 2

Dans cet épisode nous verrons quelques nouveautés de C# 7.0 Les fonctions locales Les litérals Les retours de fonction référence (Ref return) Les corp de membre expression (Expression bodied members) Les “throw” en expression Exemple de code: https://github.com/BracketShow/CSharp7   Visitez le bracket show : http://bracketshow.com/    

Bracket Show – Nouveautés C# 7 – partie 1

Éric et Bruno nous parlent de quelques nouveautés de C# 7.0, en autre les variables out (OutVar), le “pattern matching”, les Tuples et la déconstruction. Cependant pour bénéficier de ces nouvelles fonctionnalités, vous devrez installer Visual Studio 2017 et le package NuGet https://www.nuget.org/packages/System. Découvrez-en d’avantage dans cet épisode du Bracket Show.      

Ethereum, pourquoi devrait-on s’y intéresser?

Ma nature curieuse m’a récemment poussé dans l’exploration des technologies de type Blockchain. Avant toute chose, je crois qu’il est important de parler du Bitcoin. Cette cryptomonnaie très populaire fait souvent les manchettes, mais ce n’est pas toujours pour les bonnes raisons. La plupart des articles parlent de sa valeur incroyablement volatile, mais en fait

Lire plus

Parce qu’il y a toujours un début à tout…

Quand j’étais jeune, les ordinateurs personnels n’étaient pas très répandus, mais ils avaient quand même réussi à piquer ma curiosité. Mon oncle, qui avait découvert mon nouvel intérêt, m’avait invité à aller passer quelques soirées à son bureau pour me permettre d’expérimenter avec une de ses machines. Ma mission était simple: entrer des données de

Lire plus

Développer son potentiel avec les tests

De nos jours, l’apprentissage de tout programmeur passe par un certain nombre d’étapes. Une de celles-ci est la découverte des tests. Cette découverte se fait généralement progressivement et pour plusieurs d’entre nous, un peu à l’envers. Voici le récit de mon expérience personnelle, mais je me doute que certains d’entre vous s’y reconnaîtront. Une perte

Lire plus

Environnement de développement : Comment démarrer le projet parfait?

Le projet est accepté, les exigences sont claires; mais par où commencer pour réaliser notre développement? Un réflexe naturel est de tout préparer d’avance pour qu’on puisse programmer sans rencontrer d’embûche relative aux environnements technologiques. C’est donc à ce moment que l’équipe fait une table ronde et prend des décisions selon ses connaissances et son

Lire plus

Pourquoi considérer Xamarin Forms pour une application mobile?

Plusieurs aspects sont à considérer lors du démarrage d’un projet, qu’il soit Agile ou non. Parmi ceux-ci, on retrouve évidemment la technologie à utiliser. Dans le cas d’une application mobile, plusieurs choix s’offrent à nous : développer nativement sur Android et iOS, ou encore utiliser une solution multi-plateformes, comme par exemple React Native ou Xamarin

Lire plus