samedi 31 décembre 2011

Happy new year 2012


2011 in 60 seconds

Every year teaches us some of life's most important lessons, and with that learning we put our step forward into the new year.There will be a new hope... shining through the tears...Lets turn them to tears of happiness...2011 was the year of revolution,fear and pain but today we celebrate this very special year full of peace and happiness and humanity.We can create the hope for others and ourselves :)

So to make our dreams come true lets be creative and positive..Lets believe in ourselves and God will give us the guidence and the strenght to be wise ...to be hopeful...to be strong against every blast of wind.

I Wish you a very happy and peaceful new year with all my best wishes of success and love... and may all your lovely wishes come true soon... Amen !

samedi 12 novembre 2011

What Does LOVE Mean to a Four-Year-Old ??


If only such a beauty did exist.Something that comes from the sincerity of the heart so truly and deeply"The secret to love in relationships is learning to fall in love over and over again with the same person".
This is simply one of the most beautiful,soulful,love quotes I have ever seen.

jeudi 3 novembre 2011

LE BONHEUR

Nous nous convainquons que la vie sera mieux

une fois que nous serons mariés, aurons un bébé, puis un autre

Puis nous sommes frustrés parce que nos enfants ne sont pas assez vieux et que
tout ira mieux lorsqu'ils seront plus grands.

Puis, nous sommes frustrés parce qu'ils arrivent à l'adolescence et que,

nous devons traiter avec eux
Nous serons certainement heureux lorsqu'ils auront franchi cette étape.

Nous nous disons que notre vie sera comblée lorsque notre conjoint se reprendra en main,
lorsque nous aurons une plus belle voiture, lorsque nous pourrons prendre des vacances,
lorsque nous prendrons notre retraite.

La vérité c'est qu'il n'y a pas de meilleur moment pour être heureux que maintenant
Sinon, quand? Votre vie sera toujours remplie de défis
Il est préférable de se l'admettre et de décider d'être heureux malgré tout.

Pendant très longtemps, il me semblait que ma vie allait commencer la vraie vie
Mais il y avait toujours des obstacles le long du chemin,
Une épreuve à traverser, un travail à terminer, du temps à donner, une dette à payer
Puis la vie commencerait...

J'ai enfin compris que ces obstacles étaient la vie
Cette perspective m'a aidé à voir qu'il n'y a pas de chemin vers le bonheur
Le bonheur est le chemin.

Alors, appréciez chaque instant appréciez-le davantage parce que vous l'avez
partagé avec quelqu'un de spécial et rappelez-vous que le temps n'attend
après personne...

Alors, cessez d'attendre d'avoir fini l'école, de retourner à l'école,
De perdre 10 livres, de prendre 10 livres, de commencer à travailler, de vous marier,
À vendredi soir, à dimanche matin, d'avoir une nouvelle voiture, que votre hypothèque soit payée,
Au printemps, à l'été, à l'automne, à l'hiver, au premier ou au quinze du mois, que votre chanson passe à la radio,
De mourir, de renaître, avant de décider qu'il n'y a pas de meilleur temps que
maintenant pour être heureux...

LE BONHEUR EST UN VOYAGE, PAS UNE DESTINATION
Travaillez comme si vous n'aviez pas besoin d'argent. Aimez comme si vous n'aviez jamais été blessé(e) et Dansez comme si personne ne vous regardait...

C'est beau et tellement vrai !!

Avez-vous aussi réalisé cela ?

C'est dans ce moment que réside le secret :)

Ouvres tes ailes et dirige toi vers ce qui te tient le coeur .

Si tu veux que ta vie soit une histoire magnifique...

Pense que tu es écrivain et que chaque jour....

Tu as l'occasion d'écrire une nouvelle page...

samedi 2 avril 2011

Atelier WPF n°4..Création de la base de données avec SQLServer

Salem mes amis

ça fait un bout de temps que j'ai rien posté sur mon blog c'est seulement à cause des vacances :) enfin je suis de retour avec la suite de la formation ou disons de notre application en WPF ,donc voilà la derniére fois on a terminé avec le formulaire et on est devenu de plus en plus familier avec les contrôles ,dans ce webcast on va créer la base de données des étudiants qui désirent faire leurs inscriptions dans le club avec ce formulaire .
Donc commencez par télécharger l'environnement de développement SQLServer qu'on peux le trouver également intégré dans VS2010 Professional ou qu'on peux le télécharger à partir de ce lien.
SQL Server Express Edition permet aux développeurs amateurs ou aux étudiants de disposer d'un environnement complet et de créer des applications ayant recours à des bases de données.

Puisque j'ai VS2010 Professional je vais procéder avec l'environnement SQLServer déjà intégré dans mon VS dans l'Explorateur de serveurs et sous Connexions de données on choisit "Créer une nouvelle base de données SQL Server" :


Une fenêtre de dialogue s'affiche pour saisir :
Le nom de serveur : ici on travaille avec SQLEXPRESS
Le nom de la base de données : DotNetBD
et on clique sur OK.


Dans l'arborescence de la base de donnée on trouve :


Ce schémas contient la représentation de la base de donnée ainsi que les différents tables et relations expliquées dans le webcast .
Pour ajouter une nouvelle table dans notre DotNetBD on clique droit sur tables et on choisit Ajouter une nouvelle table ainsi il s'affiche deux fenetres une fenetre de design et une fenetre qui contient les propriétés principales de notre table .Alors on remplie la table ETUDIANT de la base de donnée en assurant l'incrémentation automatique de l'ID lors de la saisie comme c'est expliqué dans le webcast .


et ainsi de suite on remplie toutes les tables de notre base de donnée et la relation entre ces tables exprimée comme suit :
on a le champs niveau ( champs de clé étrangére) dans la table ETUDIANT qui se référence au champs de clé primaire id_niveau dans la table MATIERE .
C'est quoi une clé primaire ?
Une clé primaire est formée d'un ou plusieurs champs d'une base de données qui identifient de manière unique un enregistrement dans une table. Elle permet ainsi d'éviter les doublons. Par exemple,le numéro d'étudiant(id) permet d'identifier une étudiant de manière unique.
C'est quoi une clé étrangère ?
Ce sont les clés qui représentent la valeur de la clé primaire d'une table connexe. Contrairement aux clés primaires, qui doivent être uniques, les clés étrangères peuvent prendre plusieurs fois la même valeur dans une table. Par exemple, le niveau d'étude d'un étudiant (id_niveau) est la clé primaire de la table MATIERE et est utilisée comme clé étrangère dans la table ETUDIANT (champ niveau).
Comment établir la relation (la référence) entre les deux tables ?..pour le faire on clique sur cette icone


et on ajoute une nouvelle relation FK_étudiant_matiere entre les deux tables ETUDIANT et MATIERE.


Maintenant on va voir la vue générale de la base de donnée qui se présente comme suit:

Tout est bien exliqué dans le webcast ..En conclusion le but de ce projet est de faire la gestion de la base de données et la connexion entre le design et la base de données c'est ce qu'on appelle le Entity Framwork qu'on va le découvrir ensemble .
Voici le lien de mon webcast
webcast 3 WPF

Soyez les bienvenues :)

samedi 12 mars 2011

Bien débuter avec Android..Bonjour Android !!

Salut mes amis
C'est le moment de découvrir ensemble le monde de l'AndroPhone après avoir installer l'environnement de développement vue dans l'article précédent .Nous allons réaliser notre premiére application Android ,donc on va commencer par ouvrir Eclipse ,une fois Eclipse est lancé on peux revenir sur les trois boutons dont je vous ai parlé dans le précédant article qui sont entiérement dédiés à Android :



1. Permet de créer des devises virtuels qu'on les appelles EMULATEUR
2. Pour créer un projet Android
3. Pour ajouter un nouveau fichier de type XML dédié Android .

Donc on clique sur la deuxième icône et voilà il nous ouvre un wizard ou boite de dialogue qui va nous permettre de créer notre application :


On a à remplir les champs suivants:

Project name :Ce nom de projet est totalement indépendant de votre application Android. Ce n’est en fait que le nom donné à votre projet dans votre workspace sous Eclipse ,par exemple je choisis "BonjourAndroid1"
Build Target :Ensuite on nous propose le sdk qu'on souhaite utilisé :Android 1.5 ou Android 1.6 selon les besoins de notre application et les ressources qu'on souhaite utilisées .Pour moment je choisis la version Android 1.5.
Application Name :Cette chaine de caractère sera également inscrite dans AndroidManifest.xml qu'on verra plus tard et sera en fait utilisée par le système lors de l’affichage des applications dans l’écran d’accueil.Par exemple je choisis "Bonjour"
Package Name :c'est très important ,il faut que ce nom soit unique.Nom du package principal de l’application. Le nom du package suit, en général,la règle suivante : extension_de_votre_domaine.nom_du_domaine.android.nom_du_projet.Par exemple je choisis com.profesionalandroiddevelopment.bonjour.
Create Activity :c'est l'activité principale de l'application avec un layout et tout ce qu'il faut pour lancer l'application .Par exemple je l'appelle Main.
Min SDK Version : on choisit l'API de la version d'Android qu'on a choist de travailler avec dans ce cas on choisit 3 et on clique sur Finish.

On va lancer l'application en tant qu'android application .Et voilà l'emulateur est lancé ,il faut pas oublié de cliquer sur menu parce que par défaut le systeme android va se planter sur l'écran de démarrage.et voilà nous avons notre première application BonjourAndroid1 et dedans elle contient Hello World Main!



Maintenant que notre application est lancé ,on peux regarder en plus de détails ce que contient notre projet ,pour l'émulateur on le garde ouvert derrière tant que vous etes en train de developper votre application ça évite d'attendre à chaque fois le temps de démarrage qui peut etre long parfois .


On voit bien notre nom de package com.profesionalandroiddevelopment.bonjour puis le fichier Main.java qui est notre premiére activité ,en examinant le code java du fichier Main.java ,on voit la méthode onCreate qui permet au démarrage de l'application de lancer du code.

Le dossier gen :Il contient les fichiers générés automatiquement notament le fichier R.java qui contiendra les informations relatives des fichiers qui sont contenus dans le dossier res par exemple on voit ici



Ils seront les valeurs qu'on appelle depuis les fichiers du dossier gen qui contient les ressources de votre application ,il y a un fichier stings.xml dans le values,un fichier main.xml dans le layout et une icone dans le drawble.
Android 1.5 est la librarie avec toutes les classes que peut avoir besoin notre application pour utiliser le systéme android .


String.xml est un fichier de ressource qui contient les chaines de caractéres ,des tableaux de string,das tableaux de integer ,des valeurs numériques


Et avec l'onglet Ressources en dessous ,on voit une interface visuelle qui nous permet d'ajouter des valeurs en cliquant sur le bouton Add :



On peux choisir String et on nous propose un nom je vais mettre Hello et comme valeur je vais mettre HelloAndroid et CLT-S pour sauvegarder .



Le fichier main.xml qui se trouve dans le dossier Layout ,un Layout c'est un fichier qui permet de définir une activité comme elle sera visible sur le téléphone .Alors il se présente comme une aide visuelle pour définir la façon avec laquelle on veux placer les choses dans l'interface de notre application .


Sur la gauche on voit les éléments de notre interface des views ,des layouts ...on peux mettre un bouton,une checkbox comme vous voyez à droite il y a la hiérarchie de notre layout et en dessous dans chaque élément est associé les propriétés associées qu'on peux les changer par exemple si je veux que l'affichage de mon bouton sera sur toute la largeur de l'interface ,il suffit de modifier la propriété Layout width à fill_parent et ainsi de suite on peux changer les couleurs,la dispostion ...des élements de l'interface.et vous lancez votre application :


Les changements que j'ai fait visuellement dans mon interface se trouve dans mon application sur le téléphone.


Aussi on a le fichier AndroidManifest.xml qui est un fichier obligatoire qui permet de définir dans l'onglet Manifest :il y a le nom du package ,de la version du code et le nom de la version qui sont nécessaires et importantes dans le cas de la publication de votre application dans le market.vous pouvez définir d'autres informations comme la version de SDK ici on a le numéro 3 pour la version 1.5 d'Android .


L'onglet Application :vous avez les propriétés de l'application elle meme,comment les paramétrer ,comment les utiliser on va le voir prochainement .
L'onglet Permission :répond aux besoins de votre application par exemple d'avoir accés à internet ,avoir accés à vos contacts dans le téléphone ,utiliser le GPS ...etc
Le fichier AndroidManifest.xml qui contient tous les éléments de votre application activités,permissions au fur et à mesure.

En conclusion,l’objectif de ce tutorial est de se familiariser avec l’arborescence type d’un projet Android. On a découvert ensemble les différents packages et dossiers qui sont automatiquement créé par le plugin ADT (Android Development Tool) et leur manipulation lors de la création de l'interface de notre téléphone.

Soyez les bienvenues :)

mercredi 9 mars 2011

Atelier WPF n°3



Salut mes amis !!
j'espère que vous me suivez dans ma formation WPF que je suis en train de faire afin de bien maitriser les contrôles graphique ,l'interaction code behind et design .

Le contrôle composite WPF utilisé dans cet exemple est un formulaire de saisie de données simple qui prend le nom de l'utilisateur et prénom par exemple. Lorsque l'utilisateur clique sur l'un de deux boutons pour indiquer que la tâche est finie, le contrôle déclenche un événement personnalisé pour retourner ces informations à l'hôte.

Nous avons vu précédemment les contrôles qui permettent la manipulation de texte en WPF ainsi que la manipulation d'une liste déroulante ComboBox,d'une Checkbox et d'un RadioButton selon les besoins de l'utilisateur de ce formulaire.

Alors le travail consiste à un affichage des informations saisies par l'utilisateur ou disons le membre qui vient de s'inscrire dans notre Club.

Dans ce formulaire j'ai utilisé le TextBox ou System.Windows.Controls.TextBox est un contrôle qui offre la possibilité d’entrer du texte simple dans vos applications WPF.Un exemple de manipulation est le suivant,tout est bien expliqué dans le webcast :

Et puis j'ai recourt au contrôle ComboBox ou System.Windows.Controls.Combobox. Un ComboBox est un contrôle qui va nous permettre d’afficher une liste déroulante d’un clic ou de la masquer de la même façon.Voici un exemple de manipluation :

Ainsi lors de l'affichage on remarque que le contrôle s'affiche avec le nom de la bibliothèque complet Un TextBox ou System.Windows.Controls.TextBox.Pour éviter ce problème j'ai recourt à une méthode qui n'est pas la seule pour l'affichage exacte de l'information voulue par l'utilisateur ,un exemple de manipulation est le suivant:

Donc pour éviter ce problème d'affichage si on veut afficher seulement la valeur 3 ,j'ai utilisé la méthode suivante bien expliquée dans le code si-dessous et dans le webcast que je vais vous fournir :

Et ainsi de suite ,j'ai utilisé cette méthode pour un affichage bien précis et une manipulation parfaite de mon formulaire .NET.La méthode est appliquée sur toutes les contrôles WPF.

Ainsi que dans mon formulaire ,j'ai utilisé le contrôle CheckBox ou System.Windows.Controls.Checkbox sont utilisé dans une application généralement pour présenter une option à l’utilisateur qu’il peut activer ou désactiver. Les CheckBox
peuvent avoir par contre 3 états : activé, désactivé et indéterminé.

Pour exploiter en C# une TextBox il suffit d’utiliser la méthode IsChecked qui renvoie un
booléen, true si coché false dans le cas contraire.voici un exemple de l'utilisation d'un CheckBox:

De même j'ai utilisé le le RadioButton ou System.Windows.Controls.RadioButton. Le but d’un radio bouton est de donner le choix et un seul et unique choix parmi un ensemble de propositions/options. En effet, on ne peut sélectionner qu’un seul RadioButton à la fois.

C’est la seule convergence qu’il y a entre la CheckBox et le Radiobutton. En effet on va
continuer d’utiliser la méthode IsChecked pour vérifier si le RadioButton est sélectionné ou pas.
Voici un exemple de manipulation de
Radiobutton:

L'illustration suivante montre le contrôle rendu final :

Pour conclure, on a pu voir tout au long de ce webcast ce qu’été concrètement un contrôle WPF, comment se servir des contrôles de base comme les boutons les TextBlocks ,CheckBox,ComboBox ..etc.

Le but de ce projet est d'arriver par la suite à créer la base de données des étudiants inscrits dans le Club et de faire communiquer l'interface utilisateur avec cette base de données ce qui fera l'intérêt de notre prochain webcast qui consiste à une création simple d'une base de données des membres de Club avec SQLServer et pour la suite de mon petit projet donc soyez le bienvenue pour la suite :)

voici le lien de mon webcast qui se partage sur les 3 liens suivants :
Webcast 2 WPF_part1
Webcast 2 WPF_part2
Webcast 2 WPF_part3


mercredi 23 février 2011

Participation à Web Camps Microsoft..Un succés indéniable !!

Une première en Tunisie ,un seul local Microsoft Innovation Center le 22/02/2011 a eu lieu une première en Tunisie la journée Web Camps ,un succès indéniable par Microsoft .

Avec la présence des experts dans le web,des compétences,des agences ,des représentants d'entreprises et même des professionnels ,des étudiants et des MSPs qui ont fait un grand pas dans le web et ont prouvé leur créativités ,leur compétences et leurs travail vraiment acharné.Des présentations de valeur ,une ambiance professionnelle et une intégration bénéfique pour nous en tant que futurs ingénieurs :)


Microsoft était à la hauteur de ses promesses, et sous le drapeau du promouvoir le web en Tunisie Monsieur Hafedh Yahmadi a fait l'ouverture de cette journée pleine de motivation et de création en faisant le tour sur l'agenda de cette journée avec les technologies présentées durant ce meeting tel que ASP.NET MVC avec Monsieur Mohamed Romdhani de WebMatrix avec monsieur Imed Souissi ,de cms .NETNUC,ainsi que Microsoft a ouvert ses portes à l'Open Source (Joomla) et l'intégration de toutes ces technologies pour la création d'un site web dynamique ,profesionnel et surtout répondre aux besoins du client ,ce dernier point a été traité par monsieur Mohamed Ghodhbane ,pour promouvoir l'éco systéme web en Tunisie.


Et avec la question"C'est quoi le Web Camp et pourquoi organiser un web camp?"

Monsieur Hafedh Yahmadi a déclenché le début de la journée,Web camp se présente comme une initiative de Microsoft qui a vu naissance dans 2010 dans plusieurs pays dans le monde (USA,Bakestan,Middle east,Land) qui ont sorties des slogans sur leurs webcampers et c'est une première en Tunisie.


L'objectif essentiel du Web Camp c'est de booster l'innovation surtout les startups ,accélérer les compétences,aider la communauté à trouver l'information nécessaire et travailler avec les experts et surtout vous aider à avoir une plateforme Web intéressante et élaborer une base solide.

Le message de la web camp sera toujours le WEB ça implique le commerce ,le marketing,la production,le management,l'innovation et le business.


Une nouvelle

C'est une occasion offerte à tout le monde ceux qui le veulent que se soit partenaire,universitaire dans la faculté ou société web dans la Tunisie un peu partout qui veulent prendre l'initiative pour faire un web camp local, Microsoft peut l'aider par un encadrement,une organisation,un marketing et une participation en temps réel et avoir une vraie agenda des web camps dans toutes la Tunisie sera la preuve ultime de la réussite de cette manifestation et du grand support offert par le Mic,et vous bénéficier bien évidement des inscriptions ouvertes et gratuites sur webSiteSpark et BizSpark.

www.webcamps.ms vous pouvez joindre web camps sur Facebook ou vous pouvez Twitter et votre twitt sera universel :)


J'oublie pas le mot de madame Leila Charfi "aujourd'hui la Tunisie est capable de créer des jeunes startup à créer pourquoi pas le prochain Facebook ou Twitter qui va sortir de ce beau pays" ,une preuve ultime du notre pouvoir et créativité qui peuvent dépasser toutes les limites surtout après la révolution et notre journée est un grand événement qui sera la suite d'autres bien intéressants et bien riches en contenue.


Un dialogue riche entre les participants et les formateurs pour échanger et créer un débat en faveur des experts web en Tunisie . Qu' est ce qu'on peux faire avec le Web ? L'état actuel du Web ? Quelles sont les tendances du business dans le web? Comment satisfaire les besoins d'un client lors de création d'un site web? Comment peut on dynamiser le web en gagnant à la fois le cout, le temps et surtout en s'investissant dans les nouvelles technologies?


Mr Mohamed Romdhani un enseignant chercheur au sein de l’université étatique de Tunis et maître-assistant à l’Institut National des Sciences Appliquées et de Technologies de Tunis (INSAT).Un homme de passion de technologies et de pédagogies qui veut les transmettre aux jeunes étudiants :)


Il a mis en valeur le pouvoir et de la grande possibilité de ASP.NET MVC 101 à créer ce qu'on appelle des best practises sur l'usage et les technologies du Web et la tendance la version finale commerciale d'ASP MVC. Lors de la conception,il a mis l'accent sur quatre domaines principaux:
* Séparation claire des préoccupations
* Support pour le développement piloté par les tests (TDD)
* un contrôle fin sur HTML et JavaScript
* URL intuitive
Avec un dialogue open à tout le monde et un débat interractif pour créer une communauté de web solide et active avec les acteurs du web .


Mrs Mohamed GHODBANE Vice – président, TenStep EPM Tunisie. Partenaire TenStep Francophone,certifié Microsoft ,un homme de logique et un grand praticien a répondu aux questions suivantes à propos de project manager ,comment gérer spécifiquement un projet web et quels sont les processus nécessaire dans un web ?Comment développer un projet ,comment être concurrent aux américains et aux étrangers?

En présentant le life cycle project et les étapes de la PMI ce qu'on appelle le scope du project il a rassemblé au même temps l'objectif, le cout et la durée. La ligne directrice d'un projet selon Mr Mohamed Ghodhbane commence par un Mind Mapping (carte d'idée ) puis Project Sharter puis le productive Downstractures puis éducation de la possibilité de la réalisation et enfin viennent l'organigramme de tache, la charge, l'ensemble de ressources et le business. Ainsi on devient capable de préciser la durée d'un projet par cette analyse ascendante pour bien réussir les projets Tunisiens et entourer les envies et caprices du client.

3 volets sont hyper intéressantes dans un projet web la technique,management et conception.


Mr Imed souissi expert dans le Web et surtout dans WebMatrix a mis en œuvre l'importance de l'utilisation du WebMatrix pour créer des webs innovants et des webs profesionnels.
Comment Créer, personnaliser et publier ses sites web avec WebMatrix?
Mr Imed a présenté WebMatrix en étant un nouvel outil de développement web proposé par Microsoft qui comporte toutes les ressources dont vous avez besoin pour créer un site web sur la plateforme Windows.Cet outil tout-en-un est simple et gratuit. Le développement de site web n’a jamais été plus facile !
>Pour commencer à créer votre site web, il suffit de télécharger et d’installer WebMatrix en utilisant Microsoft Web Platform Installer.
>Pour personnaliser votre site web Mr Imed a mis l'accent sur toutes les fonctionnalités dont vous avez besoin dans une interface unifiée offerte par WebMatrix.
>Pour publier votre site web, WebMatrix propose un processus fluide pour montrer au monde entier votre site !


La clôture était en présentant la puissance de l'animation 3D, du pouvoir et possibilités des jeux vidéos dans l'intégration et le dynamise du site Web.
Enfin ,Je tiens à remercier toute personne qui a veillé au succès de cet événement à Microsoft Innovation Center.
Le symbole de la web camp Learn() and Build() ça prouve bien la destination vers le futur des créateurs et une vraie intégration dans le monde de professionnalisme.