Designed by Maunakea !
129 en ligne   Boutique | Sites | Bar | Forum | PhpBB | Actu | Glossaire | Codes | Tips | Liens | Livres | Lettre  


 Recherche

 NewsLetter





   

JavaScript : StringBuilder (1/5)

Une nouvelle vision du développement





Aurelien
Implémentée par Microsoft dans son Framework .Net, voici une implémentation JavaScript d'un sous-ensemble de la Class StringBuilder.


[Article cité sur le Flash Microsoft MSDN France]

Présentation - Astroïde - Script : StringBuilder - Conclusion - Test PHP


Introduction :

Si tout comme moi, vous n'aviez jamais entendu parler du StringBuilder, vous comprendrez aisément pourquoi cette découverte a révolutionné ma vision du développement.

Cet outil de concaténation de String vous permet d'obtenir des performances incroyables pouvant laisser libre cours à votre imagination galopante !

C'est pourquoi, je vous propose ici un sous-ensemble de la Class StringBuilder. Cet objet JavaScript ne contient que le moteur de concaténation pour le moment mais je travaille sur la mise en place de la méthode Replace disponible dans la Class StringBuilder .NET au sein de ce dernier.

Pour concrètement entrer dans le sujet, nous allons commencer par un exemple qui sera beaucoup plus parlant qu'un long discours. Cet exemple nous permettra par la même occasion d'analyser si le StringBuilder est toujours la solution optimale et surtout quand est il réellement intéressant de l'utiliser.

Fonction utilisée :

Nous allons ici utiliser une fonction contenant une boucle for permettant de concaténer X fois la chaine AsP.PhP.Net.

var oStr = new StringBuilder();

fConcat = function( inNB, inTYPE )
{
 var i = 0, s = "", sOut = "";
 for (i = 0; i < inNB; i++) {
  switch (inTYPE) {
   case 1 :
    // Traitement JavaScript
    s += "AsP.PhP.Net : " + (i + 1) + "<br>";
    if (sOut == "") {sOut = "s";}
    break;
   case 2 :
    // Traitement StringBuilder
    oStr.add("AsP.PhP.Net : " + (i + 1) + "<br>");
    if (sOut == "") {sOut = "oStr.build()";}
    break;
  }
 }
 return eval(sOut);
}


Tableau comparatif :

Tests réalisés en local sous Windows 2000 avec Internet Explorer 6.0
     - Length : Taille de la chaîne générée
  JavaScript StringBuilder Length
100 0 ms 0 ms 1992
200 0 ms 0 ms 4092
500 10 ms 10 ms 10392
1000 30 ms 20 ms 20893
5000 1 s 022 ms 140 ms 108893
10000 3 s 885 ms 340 ms 218894
Exemple :
JavaScript StringBuilder
100 - 200 - 500 - 1000 - 5000 - 10000 100 - 200 - 500 - 1000 - 5000 - 10000
 
 
   
Concrètement, nous pouvons voir que l'utilisation du StringBuilder nécessite tout de même un certain traitement pour réellement profiter de ses capacités.

Présentation - Astroïde - Script : StringBuilder - Conclusion - Test PHP



Pour pouvoir écrire dans ce forum, identifiez-vous !

 Lire  18/08/08 17:11 de ilhamjalil
salut a tous je vx creer un formulaire contient deux ...
  v1.3p © ASP-PHP.net 2002  

Aurelien le 06/08/2003 (34 480 hits)
Didier Réservez votre place gratuite pour les Microsoft TechDays 2009 !!!
Un serveur dédié Dedibox avec la licence Windows Server 2008 gratuite !!!

MSDN fête ses 10 ans ! Gagnez 1 Nabaztag, 1 montre binaire, 1 console Xbox, 1 ordinateur ultra-portable EeePC, 1 HTC Diamond et bien d’autres cadeaux… !!!
Au fil des news  
[MAJ] [PHP] Un calendrier très complet -
Remplacement de balises pour le PHP5 et modifications du script pour l'affichage des jours afin ...
Magazines - Le n°113 de Programmez est disponible
PHP - Compteur de visites (hit) paramétrable
Amélioration du Search MOSS : Recherche avancée - Modification de la page de recherche avancée
Dans la série des optimisations potentielles sur le moteur de recherche de MOSS, nous verrons cette ...
Dreamweaver CS3 + Php + Mysql - Ajout-Modif-Suppression. Les fondamentaux Part-1
Suite à de nombreuses questions sur le forum, je pense que ce sujet sur les comportements d'ajout, ...
SharePoint et Silverlight - Premiers pas - Lecture de données SharePoint et intégration
Silverlight et SharePoint sont deux technologies récentes et connaissant un essor significant. En ...
Développement d'applications SharePoint - depuis une Workstation XP ou Vista
Lorsque que l'on développe pour SharePoint, on se retrouve dans un dilemme auquel nous avons tous ...
JavaScript - sudoky - jeux du sudoku en javascript
Adobe - Creative Suite 4 en Français
PHP - La 8ème édition du Forum PHP est lancée !
Magazines - Le n°112 de Programmez est disponible
PHP - Interpreteur de commande SQL en PHP
Listes liées (dépendantes) : avec ou sans XMLHTTPR - Les délires «Ajax or not Ajax»
Comme toujours, c'est à la suite d'un coup de pouce que je me suis décidé à faire ce tuto. Merci à ...
Amélioration du Search MOSS : Les scopes - Quelques possibilités d'amélioration du Search
Lorsqu'on installe le moteur de recherche de MOSS et qu'on le configure basiquement, on veut ...
SharePoint - Lister les templates utilisés - Identifier les définitions utilisées par vos sites
Un site SharePoint est créé à partir d'un modèle ou définition de site. Mais comment savoir après ...
PowerShell - Profile avec la participation de mon ami Tigrou :)
Adobe - Lancement de la CS4, tous à vos agendas !
[MAJ] PHP - Fonctions de redimensionnement d'images - BD : redimensionner image + picto après upload
Ajout de FONCTIONS de redimensionnement.
PHP - Afficher une date mysql yyyy-mm-dd en dd-mm-yyyy
PHP - Tchat PHP V2.1 sans base de donnée
SharePoint et les statistiques d'utilisation - Comment obtenir des statistiques depuis SharePoint
La mise en place de ferme SharePoint doit s'accompagner d'une notion de gouvernance. Cette notion ...
Adobe - Nouvelles annonces Adobe sur le salon IBC 2008
PHP - PHP TV emission 2 (septembre 2008)
PHP - PDO ADMIN
[MAJ] Inscription contrôlée à une NewsLetter ou Service - Abonnement avec confirmation et désabonnement
Correction d'un point-virgule manquant (merci de m'avoir obligé à chercher JPierre) dans le module ...
PHP - Premier lundi d'une semaine et d'une année
JavaScript - Premier lundi d'une semaine et d'une année
ASP - Premier lundi d'une semaine et d'une année
Alphabet Radio et Code Morse - Alpha Zulu appelle Tango Charlie !
Encoder-Décoder en "Alphabet Radio" ... "Alpha Zulu appelle Tango Charlie !" ou en Code Morse ... ...
Filtrer les modèles de site SharePoint - Filtrer l'affichage des modèles de site SharePoint
Je vous propose de découvrir à l'aide de cet article quels mécanismes peuvent vous permettent de ...
ASP/PHP - Méthode de cryptage - par table de correspondance
(ASP/PHP) Une méthode de cryptage de données par l'utilisation d'une "table de correspondance ...
PHP - Listes liées (1 table) - version2
JavaScript - Rendre Visible ou Invisible des éléments d'un form
PHP - Listes liées (1 table) - version1
JavaScript - Intercepter le click sur vidéo WMP ou flash SWF
Jeux de l'été (et de 5) - Un jeu de Motus (mots de 8 lettres)
C'est reparti pour un tour... Comme je venais de proposer un jeu de Mastermind, je me suis dit que, ...
PowerShell - Extraire toutes les collections SharePoint en CSV
PowerShell - Lister les collections pour une WebApp SharePoint
PowerShell - Lister les utilisateurs d'un site SharePoint
PowerShell - Connaître le code version de votre SharePoint
Tutorial : HTML | Scripting | ASP-PHP | ASP.net | SQL Server | XML
Sharepoint | XAML | Pocket | Dreamweaver | VML | Divers
  Scripts : Scripting | ASP-PHP | ASP.net | Divers
  Boutique | Annuaire | Bannières | Météo | Tribune | Partenariats
v3 © Didier 2003   
 

Corpo Sciences de Reims Partitions gratuites Carte, météo, annonces
 El Roubio Codes Sources Groupes Utilisateurs Microsoft Wygwam CodePPC DotNet Project MVP TechNet The Inquirer FR ASP-magazine