


Nouveau mouvement Java : développement piloté par les tests 3 ---enregistrement des utilisateurs 2
Le développement piloté par les tests (TDD) n'est en réalité pas un concept nouveau, mais l'essence de cette méthodologie est souvent mal comprise. Dans mon cas, je pense que le développement piloté par les tests signifie écrire des tests unitaires pour tester complètement le code. En fait, c'est l'un des malentendus les plus courants concernant le développement piloté par les tests. Le développement piloté par les tests met non seulement l'accent sur les tests, mais également sur le développement piloté. Le but de l'écriture de cas de test n'est pas seulement des tests, mais aussi une conception, une conception de fonctions et d'interfaces, et une conception du point de vue des utilisateurs de fonctions ou d'interfaces, tandis que la conception dans d'autres méthodologies est une conception du point de vue d'un développeur, donc le développement piloté par les tests est plus propice à la production de bonnes conceptions.
Mais il ne suffit pas de simplement concevoir en testant et en exécutant des tests pour garantir la qualité du code pour produire des produits logiciels de haute qualité. Le développement piloté par les tests met également l'accent sur la refactorisation, ce qui signifie refactoriser les parties déraisonnables du code, et cette refactorisation doit être effectuée chaque fois que nous écrivons des tests, développons et vérifions le processus. Puisqu'il existe des cas de test pour le garantir, nous pouvons l'être. Refactorez avec confiance et audace sans vous soucier des conséquences imprévues.
De retour dans notre projet, dans MainServlet, nous avons implémenté toute la logique métier, mais nous nous rendrons vite compte que si toute la logique applicative est écrite dans cette classe, cette classe deviendra Si elle devient un géant, elle finira par devenir impossible à maintenir, nous devons donc placer l'implémentation de la logique métier d'enregistrement des utilisateurs dans le module utilisateur. Comme vous pouvez le constater, nous avons commencé à reconstruire notre système.
Tout d'abord, nous créons le package utilisateur et créons la classe UserMngr sous ce package, car nous estimons qu'en plus de conserver les informations utilisateur de base, le module utilisateur doit également gérer les groupes d'utilisateurs, les niveaux d'utilisateurs, les points utilisateur. et d'autres informations. Il n'est pas nécessaire que l'appelant comprenne pleinement ces détails, nous utilisons donc ici le mode Façade et toutes les opérations sur l'utilisateur sont effectuées via UserMngr. Le code est le suivant :
public class UserMngr { public static long registerUser(Map<String, Object> userInfo) { return 101; } }
On voit que dans cette classe, on renvoie seulement une valeur et on ne fait rien, afin de vérifier rapidement que notre architecture reconstruite peut fonctionner spécifiquement. Des fonctionnalités pourront être ajoutées ultérieurement. De plus, vous devez faire attention aux éléments de paramètres. L'objet Map est utilisé ici, c'est-à-dire que les paramètres sont transmis dans un tableau similaire à PHP. Il est plus courant en Java de concevoir une classe d'objets de valeur à cet effet, mais cela entraîne souvent la définition de nombreuses classes d'objets de valeur, ou en raison du besoin de partage, un objet de valeur est très volumineux. Ici, Map est utilisé pour transmettre des paramètres. , ce qui élimine le besoin de tels problèmes.
Ajoutez le code pour appeler le module utilisateur dans le MainServlet ci-dessous :
private void registerUser(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { String userName = null; if (request.getParameter("userName") != null) { userName = request.getParameter("userName"); } Map<String, Object> userInfo = new HashMap<String, Object>(); userInfo.put("userName", userName); long userId = UserMngr.registerUser(userInfo); Map<String, Object> model = new HashMap<String, Object>(); model.put("userId", "" + userId); request.setAttribute("model", model); /*this.getServletContext().getRequestDispatcher("/caporder/apply_capital.jsp") .forward(request, response);*/ }
Exécutez le scénario de test ci-dessous et il devrait réussir. Cela prouve que ma reconstruction de l'architecture est réussie cette fois. .
Ce qui précède est le contenu du nouveau mouvement Java : développement piloté par les tests 3 --- enregistrement de l'utilisateur 2. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Il existe diverses raisons pour lesquelles il est impossible de s'inscrire à l'échange BitgetWallet, notamment les restrictions de compte, les régions non prises en charge, les problèmes de réseau, la maintenance du système et les pannes techniques. Pour vous inscrire à l'échange BitgetWallet, veuillez visiter le site officiel, remplir les informations, accepter les conditions, terminer l'inscription et vérifier votre identité.

Le site officiel de Deepseek lance désormais plusieurs activités de réduction pour offrir aux utilisateurs une expérience d'achat. Les nouveaux utilisateurs s'inscrivent pour obtenir un coupon de 10 $ et profitez d'une remise à temps limitée de 15% pour l'ensemble de l'audience. Recommander des amis peut également gagner des récompenses, et vous pouvez accumuler des points pour le rachat de cadeaux lors du shopping. Les délais d'événements sont différents.

Java 8 présente l'API Stream, fournissant un moyen puissant et expressif de traiter les collections de données. Cependant, une question courante lors de l'utilisation du flux est: comment se casser ou revenir d'une opération FOREAK? Les boucles traditionnelles permettent une interruption ou un retour précoce, mais la méthode Foreach de Stream ne prend pas directement en charge cette méthode. Cet article expliquera les raisons et explorera des méthodes alternatives pour la mise en œuvre de terminaison prématurée dans les systèmes de traitement de flux. Lire plus approfondie: Améliorations de l'API Java Stream Comprendre le flux Forach La méthode foreach est une opération terminale qui effectue une opération sur chaque élément du flux. Son intention de conception est

Gate.io Sesame Open est la principale plate-forme de trading d'actifs numériques au monde, y compris le trading de devises Fiat, le trading de devises, le trading à effet de levier, les contrats perpétuels, les jetons à effet de levier ETF, la gestion de la patrimoine, l'offre publique initiale de démarrage et d'autres sections, offrant aux utilisateurs la sécurité, la stabilité, l'ouverture et la transparence.

Java Made Simple : Guide du débutant sur la puissance de programmation Introduction Java est un langage de programmation puissant utilisé dans tout, des applications mobiles aux systèmes d'entreprise. Pour les débutants, la syntaxe de Java est simple et facile à comprendre, ce qui en fait un choix idéal pour apprendre la programmation. Syntaxe de base Java utilise un paradigme de programmation orienté objet basé sur les classes. Les classes sont des modèles qui organisent ensemble les données et les comportements associés. Voici un exemple simple de classe Java : publicclassPerson{privateStringname;privateintage;

Java est un langage de programmation populaire qui peut être appris aussi bien par les développeurs débutants que par les développeurs expérimentés. Ce didacticiel commence par les concepts de base et progresse vers des sujets avancés. Après avoir installé le kit de développement Java, vous pouvez vous entraîner à la programmation en créant un simple programme « Hello, World ! ». Une fois que vous avez compris le code, utilisez l'invite de commande pour compiler et exécuter le programme, et « Hello, World ! » s'affichera sur la console. L'apprentissage de Java commence votre parcours de programmation et, à mesure que votre maîtrise s'approfondit, vous pouvez créer des applications plus complexes.

Les capsules sont des figures géométriques tridimensionnelles, composées d'un cylindre et d'un hémisphère aux deux extrémités. Le volume de la capsule peut être calculé en ajoutant le volume du cylindre et le volume de l'hémisphère aux deux extrémités. Ce tutoriel discutera de la façon de calculer le volume d'une capsule donnée en Java en utilisant différentes méthodes. Formule de volume de capsule La formule du volume de la capsule est la suivante: Volume de capsule = volume cylindrique volume de deux hémisphères volume dans, R: Le rayon de l'hémisphère. H: La hauteur du cylindre (à l'exclusion de l'hémisphère). Exemple 1 entrer Rayon = 5 unités Hauteur = 10 unités Sortir Volume = 1570,8 unités cubes expliquer Calculer le volume à l'aide de la formule: Volume = π × r2 × h (4

Gate.io Exchange est l'une des principales plateformes de trading de crypto-monnaie au monde. Ce guide fournit des tutoriels étape par étape pour aider les utilisateurs à s'inscrire et à échanger avec Gate.io. Le processus d'enregistrement comprend la sélection de la méthode d'enregistrement (téléphone, e-mail ou compte social), remplir des informations, définir un mot de passe de connexion et compléter l'authentification de l'identité. Les tutoriels de trading incluent l'accès aux pages de trading, la sélection de paires de trading, la saisie des informations de trading, la mise en place d'une commande et la visualisation de l'état de la commande. Avec les conseils de cet article, les utilisateurs peuvent facilement commencer à négocier la crypto-monnaie sur gate.io.
