Y at-il des avantages pour ASP classique sur ASP.net

Ayant travaillé avec Classic ASP pendant environ 2 ans maintenant en créant quelques 100 formulaires Web simples, je ne vois aucune raison de passer à .net; Cependant, je ne suis pas aussi familier avec .net, donc je suis sûr que je pourrais manquer quelques petites choses.

Certains points que j’entends souvent autour du travail peuvent être trouvés ici: http://www.packtpub.com/article/Classic-ASP (non pas que je partage toutes ces pensées, mais c’est un bon sharepoint départ)

Je suis très intéressé d’entendre ce que les autres ont à dire à ce sujet.

Vous manquez plus que quelques choses! ASP.NET est des ordres de grandeur plus productifs, plus robustes et plus faciles à entretenir que l’ancien ASP n’a jamais envisagé d’être. Les contrôles côté serveur, les contrôles tiers, les pages maîtres, l’authentification par formulaires, la validation des formulaires, un modèle OO encouragent le partitionnement des applications, un déploiement facile, le débogage et le suivi intégrés, la gestion des états.

Vous avez même le choix entre WebForms ou MVC. Ce n’est pas un euphémisme de dire que vous êtes tout simplement hors de votre esprit si vous ne faites pas une enquête approfondie sur ce qui vous manque.

Si vous aimez ASP et souhaitez passer à ASP.NET, ignorez les formulaires Web et apprenez MVC.

Le plus gros problème pour moi est que je crée des applications, et non des sites Web … L’interface utilisateur est une partie mineure du problème, la partie principale est l’écriture de la couche logique métier et divers composants de communication d’entreprise (Connexion à SAP via SOAP? !).

Le toolkit .NET me permet de programmer dans un langage orienté object (C #) et dispose d’une structure robuste pour vous aider.

VbScript est un langage divin pour essayer et écrire une application métier dans.

Cependant, si tout ce que vous faites est un simple petit formulaire Web, alors utilisez VbScript.

En ce qui concerne votre lien, il se résume essentiellement:

  • WaaWaa, je n’aime pas Visual Studio
  • WaaWaa, je veux modifier le code de production sur le serveur de production comme un idiot.
  • WaaWaa, je ne sais pas que le déploiement d’une DLL compilée est tout ce dont un petit site a besoin pour déployer une application asp.net.

Fondamentalement, son ignorance en un mot.

Pour me concentrer sur la question spécifique (“avantages de Classic vs .Net”), il n’y a que deux choses que je peux penser à Classic, à savoir que .Net ne le fera pas:

1) Comprend. Ils ne fonctionnent tout simplement pas comme prévu dans ASP.Net. Bien sûr, ASP.Net offre de bien meilleures façons d’accomplir la même chose, mais cela rest un peu difficile et peut rendre difficile la migration d’un ancien site vers .Net.

2) ASP.Net n’ira pas au-dessus du dossier racine de l’application. Là où je suis, nous avons un intranet assez complexe qui est encore le plus souvent un ASP classique, avec un peu d’applications .Net ici et là, à mesure que les choses sont mises à jour ou que de nouveaux éléments sont ajoutés. Il serait bon de pouvoir conserver une copie du code commun assez haut dans la hiérarchie des dossiers, mais de laisser chaque application individuelle isolée à son propre VD. Mais alors, c’est à cela que sert le contrôle des sources, donc ce n’est pas grave.

Pour moi, le plus grand avantage de ASP classique et ASP.Net est l’EDI. C’est tellement agréable de pouvoir cliquer avec le bouton droit sur un appel de fonction et de choisir “Aller à la définition” plutôt que de devoir fouiller pour trouver le fichier où la fonction est réellement implémentée. Énorme gain de temps. De plus, le support et la sécurité de type IntelliSense lors de l’appel des fonctions est également un avantage.

Pour moi, je dirais que Classic ASP est rapide à développer, simple à utiliser / à prendre en main, pas trop compliqué et très capable de la plupart des choses.

ASP avec JScript / Javascript comme langue principale est vraiment très agréable à coder. VBScript est une perte de puissance cérébrale et je pense que c’est ce qui donne à Classic ASP son mauvais nom. De plus, il est considéré comme lent, mais tous les articles sur la vitesse et le nombre d’utilisateurs sont basés sur des serveurs de plus de 10 ans. Nous gérons un site de 60 000 utilisateurs par jour sur deux serveurs et le processeur clignote à peine. Les serveurs modernes vous permettent de jouer avec beaucoup plus de puissance.

Avec les avancées considérables dans l’utilisation de Javascript, les conceptions et les meilleures pratiques au cours des dernières années, le codeur ASP JScript peut obtenir beaucoup de goodies pour rendre la vie encore plus facile. J’ai porté Mootools sur le côté serveur et avec cela, nous avons reçu une aide précieuse, un modèle de classe, un excellent modèle d’événement et bien plus encore. ASP est très amusant. MISE À JOUR: Mootools ont maintenant une version côté serveur que vous pouvez télécharger ( http://mootools.net/download ).

ASP.net est super puissant mais a une grande rampe sur la courbe d’apprentissage pour bien faire, peut mettre tout votre site en panne quand il a un de ses ajustements et le pire pour moi peut sembler faire le tour des maisons pour obtenir le plus simple Choses faites.

Je m’amuse beaucoup en utilisant les deux à la minute, en utilisant ce qui correspond le mieux à l’écart. J’ai un bon petit CMS Cacher et Thumbnailer dans .net que mes scripts ASP utilisent. Le meilleur des deux mondes.

Performances, évolutivité et un cadre qui constitue une base bien meilleure pour le monde sans état des applications Web, pour commencer.

La page ASP.Net de Wikipedia comporte une section sur les différences.

Si vous repensez à votre ancien code et dites «Qu’est-ce que je pensais! C’est de la foutaise, j’écris beaucoup mieux le code maintenant! alors vous avez développé en tant que programmeur.

Si les sites sont plutôt temporaires (c.-à-d. Que vous les construisez rapidement, qu’ils sont utilisés dans un but précis et dans le temps, et qu’ils sont effectivement fermés), alors accepter ces sites de la manière la plus confortable est parfaitement acceptable.

Si vous avez une longue liste de bogues, de correctifs et d’améliorations que vous devez (ou voudriez) transférer à vos anciens sites, ou si vos “petits sites” deviennent plus gros et plus compliqués prendre du recul et réévaluer la structure et le support de ces sites.

Je conviens que ASP.NET est un environnement de programmation beaucoup plus mature et efficace. Cependant, comme pour tout outil, vous devez savoir (ou apprendre) comment l’utiliser, car cela ne vous transformera pas automatiquement en un “super programmeur” du jour au lendemain.

Une façon de casser la glace est de convenir avec votre patron que le prochain “site” que vous créez est développé dans ASP.NET. Expliquez-lui que cela prendra beaucoup plus de temps que la manière dont vous livrez actuellement les sites, car vous devez vous familiariser avec ASP.NET, mais les avantages sont x, y et (exercice laissé au lecteur!)

Personnellement, je suis encore en phase de transition (et j’ai commencé à utiliser ASP.NET à partir de la v1!) Car j’ai un framework ASP classique assez robuste avec lequel je suis développé et à l’aise. Cependant, j’ai utilisé ASP.NET de manière stratégique et je l’ai trouvé TRES puissant et votre écriture doit contenir moins de code, car beaucoup de choses sont intégrées au framework .net, tant que vous pouvez le trouver dans la documentation.

Je vous recommande également de ne pas utiliser VB.NET et de mordre la balle pour utiliser C #. Le changement de langue est assez mineur, mais vous réduisez les chances d’écrire vos sites exactement comme avant. Cela aide à briser les mauvaises habitudes et vous donne une chance d’apprendre de nouvelles techniques.

Bonne chance!

J’ai un mot “débogage” – vous ne voulez jamais avoir à l’utiliser, mais vous le faites toujours. Dans .Net, si vous utilisez Visual Studio, vous avez un débogueur fantastique par rapport à la tentative de débogage du code sur ASP.

Pour les sites simples, je préfère en fait ASP par rapport à ASP.NET, surtout si vous connaissez bien le langage HTML. Cependant, avec ASP, séparer la logique métier de la vue est difficile; le code que vous écrivez sera probablement difficile à lire et à maintenir.

PHP est mieux que ASP – et assez similaire au niveau de base. Et vous pouvez toujours aller à Rails ou Django, si vous êtes intéressé par une stack de développement Web autonome (mais une courbe d’apprentissage beaucoup plus longue).

Un avantage de ASP.NET est que vous avez la possibilité de coder votre site exactement comme vous l’avez fait avec ASP classique, tout en ayant access à la richesse du framework .NET. Vous pouvez conserver les fonctionnalités existantes et append de nouvelles fonctionnalités ASP.NET nécessaires. Ils se mélangent bien.

Malheureusement, l’auteur de l’ article référencé n’est pas très au courant de la technologie derrière ASP.NET, comme en témoignent ses remarques (et peut-être même pas l’ASP classique). La plupart de ses points sont invalides ou simplement faux.

Tout le monde ici a fait des points valables.

J’étais un développeur ASP classique jusqu’à il y a 3 ans lorsque je suis passé à .NET 2.0.

Je ne pouvais pas revenir en arrière (même si je dois encore réparer une poignée de sites ASP classiques).

Avoir un object Recordset me manque, mais les répéteurs de données sont parfaits pour afficher rapidement les données, mais les jeux de données, tout en offrant de superbes fonctionnalités, sont terribles quand il s’agit de performances sur de «grands» sites. En toute justice, j’ai fait des ensembles de données de manière détournée avec Arrays dans ASP classique. Le seul moment où j’utilise des jeux de données concerne mes paniers de sites de commerce électronique. Rs.movenext me manque, etc …

FlySwat a fait l’une des plus grosses erreurs que je vois beaucoup de développeurs font.

Oui, la logique métier, OO, etc., apscope par .NET est géniale (évolutivité à 100%, mais certainement plus extensible), mais lorsque vous utilisez ASP.NET, vous créez toujours un SITE WEB. Oubliez cette absurdité d’utiliser la terminologie «application». J’ai rencontré de nombreux développeurs .NET formidables qui construisent des sites OO à un niveau, mais ils ne comprennent pas vraiment le caractère unique de la création d’un site Web. tels que l’état, ou le problème ennuyeux sanglant qu’ils comptent sur Javascript. La plupart de ces développeurs construisent des sites de type MS qui ne rencontrent normalement pas le W3C, ne sont pas compatibles avec tous les navigateurs et ne se dégradent jamais normalement. Et non ce n’est pas acceptable même pour les applications d’arrière-guichet d’être uniquement compatible avec IE.

.NET a également tendance à “engraisser” des sites simples. À bien des égards, .NET était un moyen d’inciter les développeurs WinForm à créer des sites Web (ou, comme ils préfèrent, des applications Web). Le problème était que cela entraînait un groupe de développeurs qui avaient le luxe de ne pas avoir à se soucier de l’état, des normes, etc.

Je maintiens toujours que tout site .NET peut être construit en ASP classique et exécuté plus rapidement (temps de réponse de la page) pour l’utilisateur final ….

… MAIS si je garde de bons souvenirs de l’ASP classique, ce que je peux faire avec .NET en termes d’imagerie, de cryptage, de compression, d’intégration facile des services Web, d’OO correct, de n-tiers décent, d’extensibilité, etc. donne à .NET l’avantage. Même des bêtises, comme append simplement une ligne de code à web.config pour lui demander d’écrire l’identifiant de session dans la chaîne de requête si l’utilisateur n’accepte pas les cookies (ce qui était pénible dans les ASP classiques), c’est bien.

Déplacez-vous vers .NET, vous ne le regretterez pas, mais donnez-vous quelque temps (surtout si vous ne connaissez pas OO (inheritance, abstraction, polymorphism et encapsulation). Ne commencez pas à construire des sites .NET en mode de compatibilité classique. C’est juste un moyen peu coûteux de faire .NET et vous finirez toujours par utiliser des pratiques ASP classiques.Si VBScript était votre langage de développement principal, le saut est non aussi facile que ce que MS ou d’autres voudraient vous faire croire.

Le plus important pour moi est que, depuis mes journées ASP, la conception de l’application de site Web fondamentale (;-)) ne devrait jamais changer d’une langue à l’autre.

Rarement, une réponse dans ce fil répond à la question. Au lieu de prendre la voie de la facilité, je vais tenter ma chance:

Quelques avantages qui n’ont pas été mentionnés (axés sur JScript):

  • Vous pouvez apprendre le langage entier et le garder en mémoire si vous l’utilisez suffisamment – je ne connais personne qui prétend connaître l’ensemble du framework .NET; Cela rend le codage très rapide.
  • Typage faible – cela peut vous permettre de coder plus rapidement lorsque vous frappez quelque chose rapidement, par exemple, vous souciez-vous vraiment de la différence entre le ssortingng et la ssortingng plupart du temps? (insérer la guerre de la flamme religieuse ici)
  • Eval : ce mot clé très mal conçu est incroyablement puissant et vous permet de manipuler votre code à l’exécution de manière très intéressante
  • Compatibilité langage client / serveur : la similarité de JScript avec Javascript signifie que vous pouvez utiliser le même fichier d’inclusion pour la validation côté serveur que vous utilisez pour le côté client.

Si tout ce que vous faites est de petites pages Web simples, alors faites ce que vous voulez. Ou mieux encore apprendre PHP. La plupart des réponses que vous allez obtenir proviennent de personnes qui créent des applications Web, et pour cela asp.net souffle le pantalon classique en termes de puissance et de maintenabilité.

Je suis d’accord avec tout le monde ici, sauf avec celui qui a dit sauter les formulaires Web et aller directement à MVC. Ceci n’est pas utile. Webforms est très utile pour les applications basées sur des bases de données qui effectuent de nombreux affichages de tables, etc. J’ai travaillé sur de très grandes applications Webforms et cela fonctionne très bien. MVC convient bien aux applications de type “Web 2.0” plus interactives.

Ayant fait un portage “rename asp to aspx et change jusqu’à ce qu’il comstack” d’une application en asp.net, je dirais que même la programmation de style asp classic en .NET est meilleure que celle d’asp classic. Bien sûr, VS vous encouragera à tomber dans le piège du succès et à vous orienter vers les formes web et le code-derrière, mais le langage est suffisamment expressif pour reproduire les schémas de asp classic (à savoir beaucoup de pépites d’or / en ligne). code, pages de recoupement, etc.)

Je pense que j’ai déjà entendu dire que vous pouviez écrire COBOL dans n’importe quelle langue. C’est vrai pour asp classique.

J’utilise toujours Classic ASP, ça marche à merveille.

J’ai essayé ASP.net pendant quelques années, mais c’était trop complexe pour la plupart des sites Web. Mes clients ne l’aimaient pas non plus parce qu’ils ne pouvaient pas le comprendre. Ils aiment aussi savoir qu’ils ne sont pas enfermés dans un seul développeur.

ASP.NET ne cesse de changer et nécessite une courbe d’apprentissage énorme / constante pour restr à jour. MS a basculé le langage primaire en C #, ce qui a rendu la transition beaucoup plus difficile.

Ma productivité a ralenti à une exploration avec .net parce que je cherchais toujours des tutoriels ou des exemples sur la façon de tout faire.

Visual Studio est cochon sloooooow.

PHP a une syntaxe moche et trop de frameworks différents, ce qui rend impossible l’apprentissage à des fins de développement. Bon uniquement pour une utilisation intranet avec un personnel dédié, à mon avis.

Classic ASP est verrouillé et fonctionne parfaitement aujourd’hui comme il l’a fait il y a des années. Avec quelques fichiers de bibliothèque, l’écriture de code est facile, car des exemples sont illimités sur Internet.

Écrit correctement, ce que la plupart des gens ne font pas, vbscript est propre code lisible, efficace. Je laisse le côté client pour les bibliothèques comme jQuery et je trouve que je suis beaucoup plus productif.

5 raisons pour lesquelles vous devriez examiner de plus près ASP.NET MVC

Si vous utilisez asp classique à ce stade (sans mandat de votre CTO), vous devez voir un rétrécissement. ou vous êtes masochiste. Ou comme sataniste, auquel cas, vous aimeriez que vous soyez en enfer! : p

Sur une note sérieuse … pour les applications Web, utilisez WebForms.

Pour les sites Web légers, rapides et sales, utilisez ASP.NET MVC.

Ce qui est bien avec ASP, c’est que vous pouvez utiliser VB.NET, C #, Eiffel, Boo ou PHP pour votre langue! Pour PHP vérifier Phalanger …

Étant donné que je suis payé pour créer des solutions et non pour écrire du code, je préfère simplement ASP.NET à ASP classique. Alors que ASP classique est toujours pratique pour les sites très petits et simples, il y a encore beaucoup de puissance derrière ASP.NET lors de l’écriture de sites un peu plus complexes. En outre, même avec ASP.NET, vous pouvez toujours utiliser Notepad pour écrire vous-même les fichiers .aspx, y compris le code vb ou c # intégré. Visual Studio ne fournit que beaucoup de fonctionnalités supplémentaires qui vous évitent d’avoir à écrire plus de code vous-même. Et, comme je l’ai dit, je ne suis pas payé pour écrire du code …