Modifier ses AppSettings et ConnectionStrings via les fichiers de config en .Net

icon Tags de l'article : , , ,

Juin 24, 2016
Hello,

Petit article, ça faisait longtemps :)

Aujourd'hui on va parler .Net, AppSettings et ConnectionStrings.

Lorsqu'on développe, la bonne pratique est d'utiliser les fichiers de configuration pour stocker nos paramètres d'application et nos chaines de connexion. Ce fichier de configuration s'appelle, pour ceux qui ne le savent pas, Web.Config ou App.Config. Exemple :

<appSettings>
     <add key="MyValue" value="42"/>
     <add key="MyIPAddress" value="::1"/>
</appSettings>
<connectionStrings>
     <add name="MyConnectionString" connectionString="Data Source=.\;Initial Catalog=MyDB;Persist Security Info=True;User ID=MyLogin;Password=MyPassword;MultipleActiveResultSets=True" />
</connectionStrings>

Classique vous me direz. Maintenant, savez vous comment faire pour que les valeurs de vos AppSettings et ConnectionStrings changent lorsque vous publiez en mode Release ?

Et oui, il faut modifier le fichier Web.Release.Config (ou App.Release.Config).

Dans ce fichier, vous pouvez ajouter de nouveaux AppSettings ou ConnectionStrings, mais vous pouvez aussi modifier les valeurs par défaut (du Web.config ou App.config)

Voici un exemple qui va :
  • Supprimer l'AppSettings MyValue
  • Modifier la valeur de l'AppSettings MyIPAddress
  • Modifier la valeur de la ConnectionString MyConnectionString

<appSettings>
     <add key="MyValue" xdt:Transform="Remove" xdt:Locator="Match(key)"/>
     <add key="MyIPAddress" value="1.2.3.4" xdt:Transform="SetAttributes" xdt:Locator="Match(key)" />
</appSettings>
<connectionStrings>
     <add name="MyConnectionString" connectionString="Server=tcp:myserver.database.windows.net,1433;Database=mydb;User ID=mylogin@mydb;Password=mypassword;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;" xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
</connectionStrings>

Simple non ?

En résumé, lors de la publication dans une config sélectionnée (debug, release ou autre) :
  • Supprimer une ligne: xdt:Transform="Remove" xdt:Locator="Match(key)"
  • Modifier la valeur d'une ligne : xdt:Transform="SetAttributes" xdt:Locator="Match(key)"
  • Ajouter une ligne : il suffit de l'ajouter dans le fichier concerné

Une dernière chose, non négligeable : ces modifications / suppressions n'impacteront pas votre application lorsque vous la lancez en local, même dans la configuration sélectionnée ! Pour ça, il faut faire les modifications à la main dans le web.config ou app.config.

Bon dev à tous !

Android : découverte par la pratique et développement d'un jeu vidéo #1

icon Tags de l'article : , ,

Aout 14, 2014
Introduction

Quel type de jeu développer

Bon, la première étape, lorsqu'on veut développer un jeu vidéo, est de décider quel type de jeu vidéo on souhaite développer.

Certaines personnes me conseilleraient de commencer simple, avec un jeu type Morpion, tandis que d'autres me conseilleraient de commencer directement par un Super Mario 64 en 3D de la mort qui tue.

Je pense viser l'entre-deux, en choisissant de développer un clone de "Space Invaders en 2D". C'est un type de jeu très simple (avec un minimum de complexité à gérer) mais surtout il y a déjà beaucoup d'exemples en ligne. Ainsi je suis assuré de trouver des ressources et de l'aide en cas de blocage.



Quel device

Je veux faire un jeu pour Android, mais qui marchera aussi sur Windows.

Ce sont les deux OS que j'utilise le plus, et je compte bien développer un jeu tellement bon que j'y jouerais tout le temps, que ce soit sur mon PC ou sur mon smartphone !
Il est impossible, pour un simple développeur, de sortir un jeu disponible sur TOUS les supports... Mais en visant juste ces deux supports, je suis assuré de toucher 90% des gamers et autres geeks.
Enfin, je trouve qu'on manque trop de jeux de qualité sur Android. Autant remédier à ça tant qu'on y est.


Source image


Quel IDE

Il va falloir ensuite que je choisisse un IDE. Les deux principaux étant Eclipse et Android Studio.

La majorité des ressources en ligne (sur le développement Android) étant sur Eclipse, et trouvant qu'Android Studio manque un peu de maturité, j'ai décidé d'utiliser Eclipse.
Surtout qu'on peut désormais télécharger une version d'Eclipse qui embarque le SDK Android :D


Source image


Comment fonctionne un jeu vidéo 2D

Pour tout jeu vidéo 2D, il y a 5 notions simples à retenir :
  • La main game loop, la boucle principale dans le code où tout se passe.
  • Les sprites, qui sont les images qu'on affichera à l'écran. Il faut noter que dans un jeu 2D, TOUT est sprite. Les animations ne sont que l'enchainement de différents sprites.
  • Les collisions, et les actions qui en découlent (chevauchement, réactions, animations, etc.).
  • Les sons, parce que sans ça un jeu est fade.
  • Et enfin les contrôles utilisateur. Ca peut être le couple Clavier/Souris sur PC, le tactile sur smartphone, l'accéléromètre, les mouvements des mains à l'aide du Leap, un couple volant/pédalier, etc.

Grâce à ces 5 notions, nous pouvons créer n'importe quel type de jeu vidéo 2D ! :D

Appliquer ces notions

Aujourd'hui, il existe de nombreux Game Engines qui gèrent nativement ces 5 notions. A quoi bon tout recoder quand de très bonnes librairies existent pour ça ?
Moi ? Fainéant ? Pas du tout ! :)

Pour notre projet, nous allons donc utiliser libgdx, un game engine opensource (sous licence Apache 2). Développé en Java, il est cross-platform (Windows, Linux, Mac, Android, iOS, HTML), gère les fichiers audio, les contrôles utilisateur, les maths et la physique (gravité, mouvements, etc.), les fichiers, et enfin les graphismes 2D (OpenGL ES 2.0).

Libgdx est donc parfait pour nous, car il va nous permettre de créer un jeu Android ET Windows très facilement.


Source image


Et maintenant ?

Maintenant que nous avons vu le quoi, qui, comment et pourquoi... Nous allons pouvoir commencer à développer.

Pour ça direction la partie 2 qui arrivera d'ici une petite semaine.

Bon weekend, Stay tuned!

Nouveau projet : développement d'un jeu vidéo sur Android

icon Tags de l'article : , ,

Aout 14, 2014
Bonjour à tous !

Pour changer un peu du monde .Net, j'ai décidé de commencer une nouvelle série de tutoriels sur le développement Android.


Tous ceux qui me connaissent bien savent que je suis un grand passionné de jeux vidéos, et qu'un de mes rêves serait de monter ma boite de développement de jeux Windows & Android...
Sauf que je n'arrive pas à me motiver et à à trouver le temps de me plonger dans le développement Android.

J'ai donc décidé de faire ça de façon diluée et ludique, en publiant chaque semaine un article sur ce que j'ai fait, pourquoi, comment, et où j'en suis.
Je vais essayer de me tenir à mon objectif d'un article par semaine, pas plus pas moins, afin de me forcer à travailler dessus régulièrement. Tant pis si l'article n'est pas complet ou pas fini !

Et, qui sait, peut-être que ça vous sera utile et que vous aussi vous vous mettrez au développement de jeux sur Android !

La première étape de ce fabuleux voyage arrivera sous peu.

Stay tuned!