> Développement
L’essentiel sur les CSS

L’essentiel sur les CSS

Cet article donne une vue d’ensemble de CSS et explique comment il peut vous aider à créer des documents Web plus séduisants.
En termes simples, HTML est « le langage » des documents Web. Il décrit la structure et montre le contenu de votre page Web. Un cran au-dessus, les CSS (Cascading Style Sheets) disent au navigateur comment présenter vos informations dans cette structure HTML, afin que votre page ait plus de personnalité et suscite plus d’intérêt.

Contenu complémentaire :
Simplifier les applications web avec Ajax, RPG et XSL

Lire l'article
Sécurité SQL

Sécurité SQL

IBM a intégré en douceur la sécurité SQL à la panoplie de sécurité System i existante. Ces fonctions SQL ne se contentent pas d’imiter les mesures de sécurité existantes : elles les étendent et les renforcent. SQL connaît une rapide croissance et devient un langage de plus en plus incontournable pour tous les développeurs System i. Cet article actualise vos connaissances en sécurité SQL.
La sécurité SQL repose sur deux piliers : les deux instructions GRANT et REVOKE. En termes très simples, ces instructions SQL correspondent aux commandes CL Grant Object Authority (GRTOBJAUT) et Revoke Object Authority (RVKOBJAUT). Quand vous exécutez une instruction SQL GRANT ou REVOKE, vous utilisez des mots-clés pour octroyer ou révoquer des privilèges à un objet SQL. Sous le capot, le fait d’octroyer des privilèges SQL revient à octroyer une ou plusieurs autorités i5/OS à un ou plusieurs objets i5/OS.

Contenu complémentaire :

Automatisez vos audits de sécurité
Construisez vos propres systèmes de sécurité automatisés
Sécuriser votre base de données avec le point de sortie Open Database File

Lire l'article
Guide pour traiter les erreurs de SQL imbriqué

Guide pour traiter les erreurs de SQL imbriqué

Dès lors que SQL se généralise dans les applications de production, il importe de bien vérifier et traiter les erreurs des instructions SQL imbriquées. Quand vous codez des instructions SQL imbriquées dans un langage évolué, tel que ILE RPG ou ILE Cobol, vous devez toujours vérifier la bonne fin de chaque instruction SQL exécutable, puis traiter comme il se doit les éventuelles conditions inattendues. Cet article fournit quelques conseils, techniques et profils de coding qui facilitent considérablement cette tâche.
En matière de programmation SQL imbriquée, il faut observer une règle simple : vérifier la valeur SQL state aussitôt après chaque instruction SQL exécutable du programme. Quand le SQL runtime revient à votre programme après avoir tenté d’exécuter une instruction SQL, le runtime définit une variable de programme nommée SQLState pour la valeur SQL state. (Les instructions déclaratives imbriquées, telles que Declare Cursor, et les directives de précompilateur, telles que Set Option, ne sont pas exécutées par le SQL runtime, et donc elles ne contribuent jamais à définir SQL state.)

SQL state est un code de cinq caractères présentant la structure suivante : XXYYY, où
• XX désigne la classe
• YYY désigne la sous-classe

Les significations des valeurs classe sont les suivantes :
• 00 – instruction correctement exécutée sans condition
• 01 – instruction correctement exécutée avec avertissement
• 02 – l’instruction n’a traité aucune donnée
• 03 à ZZ – l’instruction a échoué à cause d’une erreur

A propos de ces classes, on peut noter plusieurs choses. La classe « 00 » ne contient que la valeur SQL state « 00000 », donc on peut tester la chaîne entière plutôt que la seule classe.

Pour plusieurs des valeurs SQL state dans la classe « 01 », divers avertissements et erreurs column-level peuvent être indiqués par une valeur positive dans la variable d’indicateur null associée à une variable hôte. Les erreurs column-level potentielles incluent la troncature de chaîne et de date heure, les erreurs arithmétiques, les erreurs de conversion de caractères et les erreurs de mapping de données. Le sujet « References to host variable » du manuel SQL Reference fournit une description complète des paramètres de variables indicateurs. S’agissant de conditions spécifiques aux colonnes, il faut coder les tests pour qu’ils conviennent à l’application en plus de la vérification d’erreurs au niveau instruction montrée dans cet article.

La classe « 02 » inclut le SQL state « 02000 », lequel indique généralement que (1) aucune ligne n’a été renvoyée sur une opération d’entrée, (2) aucune ligne n’a été ajoutée par une opération Insert qui utilise un subselect pour spécifier de nouvelles lignes, ou (3) aucune ligne n’a satisfait à la condition de recherche d’une instruction Update ou Delete. Que l’une de ces conditions soit une erreur ou une condition escomptée, dépend de l’application ; c’est un aspect que votre code de vérification d’erreurs devrait prendre en considération.

La figure 1 fournit une liste complète des valeurs de classe. Le dernier manuel V5 SQL Messages and Codes fournit une liste complète des valeurs SQL state. Ces valeurs se veulent homogènes dans toute la famille IBM DB2 et sont fondées sur le standard SQL 1999. Pour plus d’informations à ce sujet, voir l’encadré « Où trouver des valeurs SqlState et SqlCode ».

Contenu complémentaire :
--> Lire l'article
5 points à  connaître pour déboguer en WDSc

5 points à  connaître pour déboguer en WDSc

Dans de précédents articles, nous avons vu que WDSc est meilleur, pour le développement et le débogage, que PDM/SEU et STRDBG. A présent, je vous propose quelques astuces recueillies récemment pour affiner votre technique de débogage.

Lire l'article
La chute des cookies ?

La chute des cookies ?

La gestion des sessions utilisateur sur plusieurs fermes Web et plateformes demeure l’un des défis suprêmes du développement de sites Web à haute disponibilité. Comme l’explique l’article « Une recette pour remplacer les variables de session » (Club Abonnés, SQL Server Magazine décembre 2006), l’utilisation conjointe des cookies, des procédures stockées SQL Server, d’un générateur de GUID et de paramètres d’URL. Certains développeurs évitent les paramètres d’URL car ils sont transmis de manière visible d’une page à l’autre. Ils leur préfèrent le passage de valeurs au moyen de champs masqués. Dans les deux cas, les résultats ne sont pas sécurisés. Par conséquent, les valeurs passées d’une page à l’autre doivent être les plus obscures possibles.

Le passage de toute information présente un risque potentiel pour la sécurité. J’aime utiliser les GUID car ils ne révèlent pas réellement d’informations utiles pour les pirates potentiels et permettent malgré toute la persistance de la session pendant tout le temps nécessaire. Le présent article va aborder les techniques que j’emploie pour créer un gestionnaire de sessions sans cookies basé sur SQL Server. Il présente également le fonctionnement du gestionnaire de sessions et différentes manières de l’employer.

Lire l'article
La puissance d’un clic

La puissance d’un clic

Combien de fois avez-vous lu des instructions qui commencent par « Cliquez ici » ou « Double-cliquez vers… » ? Il est vrai qu’on peut accomplir beaucoup de choses avec un clic ou deux. Et avec WDSc (développeur productif. Dans cet article, j’explique, pas à pas, comment mettre en place WDSc afin que quelques clics suffisent à définir votre environnement de développement, à exécuter une application sur votre serveur et à compiler les applications.

Lire l'article
Quoi de neuf dans WDSc for iSeries V7.0

Quoi de neuf dans WDSc for iSeries V7.0

Voilà près d’un an qu’est apparu RPG, Cobol, CL et DDS. Par conséquent, je me concentrerai sur les nouvelles fonctions de RSE (Remote System Explorer) et j’aborderai brièvement les nouvelles fonctions de développement Web, WebFacing, HATS (Host Access Transformation Services) et Java.

Lire l'article
Profils de conception Ajax

Profils de conception Ajax

Jesse James Garrett aurait-il pressenti la place que prendrait Ajax (Asynchronous JavaScript and XML) juste deux ans après avoir forgé cet acronyme? Quand il a écrit « Ajax : de mettre à jour, de manière progressive et asynchrone, des portions d’une page Web, sans perturber les interactions normales d’un utilisateur qui navigue, frappe, pointe et clique. Cela a conduit à une interface utilisateur plus interactive. Désormais, ces techniques sont incorporées dans des kits et des composantes UI hautement interactifs, riches, robustes, déployés sur des serveurs mais qui se comportent comme des applications sur postes de travail classiques. Ajax n’a plus rien à voir avec la banale interface navigateur page par page.

Il a gagné sa place dans les applications Web, mais quels traits prendra-t-il demain et jusqu’où ira-t-il ? En réalité, l’avenir d’Ajax dépendra de nombreux modèles de conception, packages et macros, qui visent à simplifier son coding. Pour comprendre où va Ajax, il faut bien comprendre comment ces aides au coding, appelées collectivement profils de conception, tirent parti du développement Ajax. Pour décrire les profils de conception, j’ai emprunté à des applications Ajax opérationnelles (par exemple le client e-mail Yahoo) pour construire un modèle d’applications d’interrogation et de maintenance de base de données articulé autour du System i.

Vous pouvez voir comment ces profils collaborent dans un exemple de programme de maintenance de base de données. En voyant comment les profils de conception Ajax fonctionnent réellement, vous pourrez faire de meilleurs choix pour vos propres applications, et même créer vos propres profils de conception. Avant d’entrer dans le détail des profils de conception, voyons comment différencier les profils et modèles de conception.

Lire l'article
Développer des composants WebParts 2.0 compatibles Asp.Net 2.0 et MOSS 2007

Développer des composants WebParts 2.0 compatibles Asp.Net 2.0 et MOSS 2007

Les différences de concept entre l SharePoint v2 (WSS v2 et SPS 2003) et SharePoint v3 (WSS v3 et MOSS 2007). Les changements notables sont :
- Le Framework .Net et l’environnement de développement associé - Wss et Asp.Net 2.0
 - L’espace de nommage pour le développement de WebParts

Lire l'article
Une recette pour remplacer les variables de session

Une recette pour remplacer les variables de session

Que pouvez-vous faire avec un cookie, quelques procédures stockées et un nombre aléatoire ? Pourquoi pas une solution à niveau d’utilisation moyen pour s’affranchir des variables de session ? Ma recette pour suivre les sessions Web des utilisateurs consiste à s’appuyer sur la vitesse native des procédures stockées une base de données SQL Server afin d’obtenir des performances rapides et fiables. Cette approche est indépendante du périphérique et de la plate-forme dans les environnements de traitement distribué.

Lire l'article
5 étapes pour développer et déployer du code CLR dans SQL Server

5 étapes pour développer et déployer du code CLR dans SQL Server

Itzik Ben-Gan vous présente comment développer et déployer du code CLR dans SQL Server

Lire l'article
CLR or not CLR telle est la question ?

CLR or not CLR telle est la question ?

L’intégration du CLR (Common Language Runtime) .NET dans SQL Server. Afin de faciliter le travail, je fournis le code .NET en C# et en VB.NET, et tous les exemples sont téléchargeables dans le Club Abonnés d'iTPro.fr.

Lire l'article
Développer du code performant et de qualité avec Visual Studio 2008

Développer du code performant et de qualité avec Visual Studio 2008



les versions 2003 et 2007 d’Office.

Lire l'article
Que se passe-t-il dans mon script ?

Que se passe-t-il dans mon script ?

Dans le domaine de lles scripts les plus simples.

Lire l'article
Veillez à  bien protéger vos scripts

Veillez à  bien protéger vos scripts

Vous venez juste d’écrire un superbe leur protection. Bien que vous puissiez protéger les scripts par des méthodes classiques, il existe un meilleur moyen.

Lire l'article
Astuces concernant l’IDE Visual Studio 2005

Astuces concernant l’IDE Visual Studio 2005

J’ai collaboré récemment à quelques projets de développement qui m’ont permis de mettre à l’épreuve Visual Studio 2005. Ce faisant, j’ai identifié les astuces de productivité suivantes et j’aimerais vous en faire profiter

Lire l'article
La puissance de SharePoint Server 2007

La puissance de SharePoint Server 2007

Microsoft Office SharePoint Server et vouliez savoir ce qu’il apporte à votre entreprise, ou que vous ayez déjà utilisé les versions précédentes de SharePoint Server et vouliez voir ce qu’apporte 2007, j’aimerais vous guider sur le chemin de SharePoint Server 2007, au moyen de sept « expériences » :
1. Obtenir et installer SharePoint Server 2007.
2. Configurer le site de niveau supérieur.
3. Créer un site départemental.
4. Créer une bibliothèque de documents.
5. S’abonner aux changements de la bibliothèque en utilisant RSS.
6. Mettre la bibliothèque offline par l’intégration de Microsoft Office Outlook 2007.
7. Générer un référentiel pour les slides Microsoft Office PowerPoint 2007 standard.
Mais, avant de nous lancer, voyons un aperçu de la technologie SharePoint.

Lire l'article
Visual Studio 2008 : la plateforme de développement universelle de Microsoft

Visual Studio 2008 : la plateforme de développement universelle de Microsoft

Associé au framework .NET 3.5, Visual Studio 2008 offre l’assurance aux développeurs de créer rapidement tout type d’applications y compris connectées, en phase avec la stratégie Microsoft de Clients dynamiques. Des améliorations ont été apportées pour optimiser la productivité des développeurs et la gestion du cycle de vie des applications. Blaise Vignon, chef de produit Visual Studio répond à quelques questions.

Lire l'article
Quelques considérations pour réussir l’implémentation d’ILE

Quelques considérations pour réussir l’implémentation d’ILE

Le modèle de programmation System i traditionnel est simple : entrer le code dans un membre source, le compiler, et appeler le programme généré. Il existe une relation de un à un entre le membre et l’objet programme. Par comparaison, ILE croule sous les sous-procédures, les programmes de service, les modules, les répertoires de liage et un langage binder – sans parler des groupes d’activation, lier par copier et lier par référence.On comprend mieux pourquoi la plupart des programmeurs abordent ILE avec réticence lorsqu’ils s’embarquent dans un processus de modernisation ou un nouveau développement.

Au cours des 12 dernières années, j’ai travaillé sur de nombreuses implémentations d’ILE. Je puis donc affirmer qu’il n’a pas deux projets identiques, mais que beaucoup de règles de base s’appliquent dans tous les cas. Ici, j’explique certaines des considérations pour une implémentation ILE réussie, comment contrôler et gérer l’environnement de développement, et comment optimiser les atouts d’ILE. Bien que je me place sous l’angle des applications écrites en RPG, la plupart des propos s’appliquent aussi au Cobol.

Lire l'article
Reconnaissance de modèle pour faciliter la programmation RPG moderne

Reconnaissance de modèle pour faciliter la programmation RPG moderne

Vous avez suivi un cours ILE RPG ou lu un livre ou un article. Vous savez donc ce que sont les procédures, les programmes de service, les répertoires de liage et les groupes d’activation. Et vous entamez bille en tête l’écriture de votre première application ILE… pour constater que rien ne colle !« C’est vraiment trop compliqué ! » vous exclamez-vous. « Comment accédez aux fichiers ? Comment traiter les erreurs quand les routines se trouvent dans des endroits différents ? Où diviser mes programmes en procédures ? »

Si vous vous reconnaissez dans ce questionnement, sachez que vous n’êtes pas le seul dans ce cas. Il ne suffit pas de comprendre les concepts pour apprendre ILE. Il faut aussi apprendre un nouveau modèle de conception. Peut être inconsciemment, si vous programmez depuis plusieurs années, vous avez développé vos propres modèles de conception. Vous réalisez une bonne programmation avec ces modèles parce que vous les utilisez depuis plusieurs années. Mais chaque fois que vous passez d’un paradigme de programmation à un autre, il vous faut apprendre de nouveaux modèles.

Quand vous aurez développé de puissants nouveaux modèles de conception dans ILE, vous serez efficaces et pourrez tirer parti de la capacité de réutilisation et de la facilité de maintenance qui valorisent les programmes ILE de votre société (ou client) par rapport aux anciennes méthodes.

Lire l'article