IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Langage dynamique type ASP3


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 179
    Par défaut Langage dynamique type ASP3
    Bonjour,
    J'ai besoin d'effectuer des traitements qui vont dépendre des colonnes choisies dans une base de données.
    Il n'est pas pensable d'envisager tous les traitements possibles et imaginables. Donc j'ai pensé mettre ces actions dans du code dynamique de type ASP et les faire exécuter à la demande.
    Avant de me lancer dans ce genre d'opération, je voudrais savoir si c'est une bonne piste et aussi poser une question.
    J'ai lu quelque part qu'il était question chez Microsoft de réintroduire un langage dynamique à côté des langages pseudo-compilés que sont C# et VB.NET.
    Quelqu'un a-t-il des précisions sur cette possibilité si tant est que ce soit réel ?

    Merci d'avance pour vos lumières,
    Alain

  2. #2
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Salut
    Citation Envoyé par clem_alain Voir le message
    j'ai pensé mettre ces actions dans du code dynamique de type ASP
    Du code dynamique? Cela voudrait dire que le code développé change en fonction de paramètres? Jamais vu. C'est un système évolutif?
    Citation Envoyé par clem_alain Voir le message
    J'ai lu quelque part qu'il était question chez Microsoft de réintroduire un langage dynamique
    Euh c'est quoi un langage dynamique? Une page je sais, mais un langage... Je crois que tu fais une confusion.
    Citation Envoyé par clem_alain Voir le message
    un langage dynamique à côté des langages pseudo-compilés que sont C# et VB.NET.
    Pseudo compilé??? Je crois qu'il n'existe que "interprété" et "compilé". Entre les deux je sais pas. En tout les cas C# et VB sont compilés.

    Bon, pas très clair tout ça... En tous les cas, si tu veux un programme qui réalise des tâches différentes selon des paramètres alors C# et VB sont là pour ça.

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 179
    Par défaut
    Bonsoir,
    >
    Citation Envoyé par Immobilis Voir le message
    Du code dynamique?
    Remplaçons dynamique par interprété alors.

    >
    Citation Envoyé par Immobilis Voir le message
    Jamais vu. C'est un système évolutif?
    Probablement parce que vous êtes un peu jeune. En Dbase3 on pouvait mettre des instructions dans des variables.

    >
    Citation Envoyé par Immobilis Voir le message
    En tout les cas C# et VB sont compilés
    Oh que non, la "compilation" de ces langages consiste à transformer du code source compréhensible par l'être humain en une suite d'appels à des primitives en IL, qui eux-mêmes seront interprétés par la CLR, comme le .class d'un code java sera interprété par la JRE.
    Le C, le Pascal (Delphi) sont eux devéritables langages compilés, leur compilation consiste (entre autres) à transformer un code source en une suite d'instructions exécutables par le processeur.

    >
    Citation Envoyé par Immobilis Voir le message
    alors C# et VB sont là pour ça.
    Je connais c# et vb.net, je les connaissais du temps où ne saviez même pas que l'informatique existait !
    Oui, je pousse un peu, apparition de ces langages en 2001 ;-)
    Quand j'ai vu arrivé le C#, j'ai pratiquement abandonné Delphi (langage sur lequel j'avais fait un bouquin en 1997).
    Allez, la leçon est terminée, n'oubliez pas de faire vos devoirs ;-)

  4. #4
    Membre Expert Avatar de meziantou
    Homme Profil pro
    autre
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : autre
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223
    Par défaut
    Citation Envoyé par clem_alain Voir le message
    Probablement parce que vous êtes un peu jeune. En Dbase3 on pouvait mettre des instructions dans des variables.
    Dans d'autres languages aussi (exemple: C). Cependant je n'en ai jamais trouvé d'usage. As-tu un exemple ?

    Citation Envoyé par clem_alain Voir le message
    Oh que non, la "compilation" de ces langages consiste à transformer du code source compréhensible par l'être humain en une suite d'appels à des primitives en IL, qui eux-mêmes seront interprétés par la CLR
    Le code IL est ensuite compilé en code natif par le JIT. Il n'y a pas d'interprétation.


    Pour répondre à la question initiale tu pourrais peut-être utiliser la classe CSharpCodeProvider.

  5. #5
    Membre expérimenté
    Homme Profil pro
    Développeur ASP.Net - disponible pour des missions
    Inscrit en
    Septembre 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur ASP.Net - disponible pour des missions

    Informations forums :
    Inscription : Septembre 2008
    Messages : 151
    Par défaut
    Dans d'autres languages aussi (exemple: C). Cependant je n'en ai jamais trouvé d'usage. As-tu un exemple ?
    -> sous Foxpro aussi on avait cette possibilité, ça s'appelait du code réentrant je crois, pour fabriquer une calculette par exemple


    sinon pour créer du code dynamique et si tu es connecté à une base SqlServer tu peux utiliser le T-SQL

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    exec('select 1*2') -- ça marche très bien

  6. #6
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Citation Envoyé par clem_alain Voir le message
    Allez, la leçon est terminée, n'oubliez pas de faire vos devoirs ;-)
    Et tu aurais des exemples concrets pour illustrer tout ça?
    "Winter is coming" (ma nouvelle page d'accueil)

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 179
    Par défaut
    Bonjour,
    Désolé pour le retard à l'allumage, mais en ce moment je suis en "overflow" perpétuel !
    > Le code IL est ensuite compilé en code natif par le JIT. Il n'y a pas d'interprétation.
    C'est vrai que l'expression "interprété", n'est pas techniquement correcte, il n'en reste pas moins vrai que C# ou VB.NET ne sont pas des langages compilés au sens classique du terme, pas de CLR pas d'exécution possible, voir le lien suivant : http://fr.wikipedia.org/wiki/Microsoft_.NET.
    Alors que quand je me baladais avec mon code compilé sous Delphi, je pouvais le déposer sur n'importe quelle machine windows et il tournait.

    Mais ce n'est pas vraiment mon problème et puis tout ça c'est de l'histoire ancienne et même moyenâgeuse rapportée au temps informatique.

    Voici un (petit) extrait d'un switch que voudrais pouvoir éviter :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    case "NUMORD_AN_SCOL":
          Numord_an_scol = Int32.Parse(strColonne); 
          break;
    case "CODE_ORIGINE_1":
          if (Numord_an_scol > 1) 
          {
               Diplome diplome = new Diplome();
               Numord_an_scol--;
               strColonne = diplome.Lire_Diplome_Origine(code_diplome, Numord_an_scol).Trim(); 
           }
           break;
    case "CODE_NAF":
           strColonne = strColonne.Trim().Replace(".", "");
           break;
    En cherchant bien, je pourrais faire faire certaines choses dans la requête SQL, mais je ne résoudrais pas tous mes problèmes loin de là.

    En fait ma problématique est proche de celle de certains logiciels (paye par exemple), où il faut appliquer des règles de gestion qui peuvent être définies par l'utilisateur final et dont par définition on n'a pas connaissance lors de la "compilation".

    A bientôt,

  8. #8
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Nan mais au bout d'un moment faut bien le faire le code
    Et finalement qu'est ce que ca change si c'est compilé ou interpreté? Une dll à déployer? Beaucoup plus fiable qu'un language interprété car si c'est mal rédigé ca compilera pas. Alors qu'une erreur dans un script...
    D'autant plus qu'un site web asp.net supporte l'édition et la compilation à la volée. C'est IIS qui lorsqu'il voit que le site a été changé recompile la chose.

Discussions similaires

  1. Réponses: 3
    Dernier message: 16/07/2009, 12h37
  2. famille de langage et type
    Par robert_trudel dans le forum Langages de programmation
    Réponses: 17
    Dernier message: 19/10/2008, 18h21
  3. Réponses: 9
    Dernier message: 16/10/2008, 02h54
  4. [POO] Méthodologie de conception en langage dynamique
    Par csszzen dans le forum Langage
    Réponses: 5
    Dernier message: 28/03/2007, 19h50
  5. tableau dynamique en asp3
    Par sousou207 dans le forum ASP
    Réponses: 1
    Dernier message: 28/06/2006, 12h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo