问卷调查网站赚钱wordpress-5.0.3

bicheng/2026/1/18 16:05:48/文章来源:
问卷调查网站赚钱,wordpress-5.0.3,东莞建设网,华商网在对Java和Groovy代码进行的各种代码审查中#xff0c;我经常看到魔术数字和其他随机字符串在整个代码库中乱七八糟。 例如#xff0c;魔术数字是下面的代码#xff08;Groovy#xff09;中的4.2#xff1a; if (swashbuckle 4.2) {... }4.2是什么意思#xff1f;… 在对Java和Groovy代码进行的各种代码审查中我经常看到魔术数字和其他随机字符串在整个代码库中乱七八糟。 例如魔术数字是下面的代码Groovy中的4.2 if (swashbuckle 4.2) {... } 4.2是什么意思 我的建议是将一个数字提取为一个常数并为其赋予一个有意义的意图显示名称以便我们所有人都可以继续理解我们的代码。 重构成 if (swashbuckle MAX_ALLOWED_CAPACITY) {... } 即使是初学者也可以理解The Constant的值并开始将各地的值提取为常量。 当我谈论枚举时编写可读代码甚至更有可能但是经验不足的开发人员很快就会陷入以下陷阱。 陷阱1全球Über-Constants文件 应尽可能避免使用全局常量文件例如 class Constants {private static final String PEACH_FLAME PFLprivate static final int MAX_TOOGIT 17private static final int MIN_TOOGIT 8private static final String USER_NAME_AGE_PROPERTY ageprivate static final String USER_NAME_FLOPPY_PROPERTY floppyprivate static final int CUSTOM_HYSLERIA_DONE -99private static final ListString WOBBA_RANGE [BZ, FLL, BZZ]// dozens of other constants... 引用StackOverflow总结得很好 我强烈建议不要使用单个常量类。 当时这似乎是个好主意但是当开发人员拒绝记录常量并且该类增长到包含多达500个完全不相关的常量与应用程序的完全不同的方面时这通常会变成完全不可读的常量文件。 代替 如果可以访问Java 5请使用枚举为应用程序区域定义特定的常量。 对于这些常量应用程序区域的所有部分都应引用枚举而不是常量。 您可以声明类似于声明类的枚举。 枚举也许是Java 5的最也是唯一的有用的功能。 如果您的常量仅对特定类或其子类之一有效则将其声明为protected或public然后将其放在层次结构中的顶级类上。 这样子类可以访问这些常量值如果其他类通过public访问它们则这些常量不仅仅对特定的类有效……这意味着使用该常量的外部类可能与包含该常量的类紧密耦合。常数 如果您有一个定义了行为的接口但是返回值或参数值应该是特定的那么在该接口上定义常量是完全可以接受的以便其他实现者可以访问它们。 但是请避免创建仅用于保存常量的接口它可能与仅为保存常量而创建的类一样糟糕。 一个类例如上面的Constants示例很快就变成了一切 。 新秀开发人员认为他通过将魔术数字和魔术字符串提取为常量来遵循良好的代码审查建议但是团队很快就承担了新的维护负担。 如果你发现自己或你的团队这样做请把负责任的车主如用户相关的常数常量在UserService在和wobba相关常量WobbaConverter -不管它是什么 还请阅读上面评论中有关枚举的部分因为常量并不是镇上唯一的孩子。 有时我的建议是…… 首选枚举 如果您的常量可以很好地建模为枚举请考虑枚举结构。 枚举比普通常量更通用 ; 它们是类可以包含属性和方法。 在负责任的父类中。 更喜欢 class Person {enum Gender { M, F }String nameGender gender } 过度 class Person {static final String GENDER_MALE Mstatic final String GENDER_FEMALE FString nameString gender } 或作为使用它的班级附近的一个单独的班级 如果它变大了。 带有功能名称的enum类的一个很好的例子是例如一些相关的技术数据 /*** Represents medicine domain codes.*/ public enum MedicineCode {/** Diagnosis e.g. Muscle damage. */DIAGNOSIS(X357),/** Units in medicinal context e.g. cc/ml. */MEDICINE_UNIT(X523),/*** Cause codes for diagnosis Masitis e.g. E.coli (ECO).*/CAUSE_CODE(X536),/** TreatmentType e.g. Antibiotics. */INTERVAL_TYPE(X520), MedicineCode(String code) {this.code code;}private final String code;public String code() {return code;}/*** Find a {link MedicineCode} by given String code.** param code The code e.g. X261* return found medicine code, or null*/public static MedicineCode findByCode(String code) {values().find { it.code() code }}Overridepublic String toString() {return name() ( code() )} } 每当需要表示一组固定的常量时都应使用枚举类型。 因此新秀开发人员认为他通过遵循一些很好的代码审查建议将内容提取到枚举中封装了技术数据使用功能名称等但通常会陷入 陷阱2定义枚举并非真正正确地使用它们 因此如果您最初具有以下方法和调用 Medicine findMedicineForDomainCode(String code)// which you call like: String intervalTypeCode X520 findMedicineForDomainCode(intervalTypeCode) 并且您可能会引入像MedicineCode这样的枚举请参见上文将所有这些特定于域的技术代码例如数据库“ X…”例如“ X520”封装在一起然后不要这样做 Medicine findMedicineForDomainCode(String domainCode)// which one keeps calling like: String intervalTypeCode MedicineCode.findByCode(X520) findMedicineForDomainCode(intervalTypeCode) 我见过像这样的团队。 是的有一个带有值的枚举类型但是团队在整个代码中并不十分了解如何处理它们。 第一步是直接引用枚举 。 某些菜鸟开发人员通常最初已经理解了这一点这取决于他们是否遵循Oracle Java Enum Types教程或类似内容但是通常会导致如下所示 Medicine findMedicineForDomainCode(String code)// which one calls like: String intervalTypeCode INTERVAL_TYPE.code() // WRONG! still using Strings here findMedicineForDomainCode(intervalTypeCode) 有了枚举意味着我们现在可以键入所有内容包括返回类型和方法参数 。 只是将枚举用作容纳字符串的容器并不是我们这样做的原因为了获得更好的类型安全性和可读性您应该重构代码中的所有内容以便将域代码用作MedicineCode枚举的字符串类。 更好 // first refactor method parameter from String to MedicineCode Medicine findMedicineForDomainCode(MedicineCode code)// now just pass an enum value findMedicineForDomainCode(INTERVAL_TYPE) 然后直到那时在最后一个可能的时刻您需要实际的封装String代码“ X520”–可以从枚举值中提取出它。 希望这有助于定义常量和使用枚举。 对于适当设计的枚举类型我无法涵盖所有​​其他可能的“有效”用法和OO优势场景但是希望本文能够防止Java新手陷入所描述的陷阱。 翻译自: https://www.javacodegeeks.com/2016/04/2-rookie-java-constants-enums-pitfalls.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/89167.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

免费建设网站那个好有什么网站可以做电子

文章目录 三相异步电机动态数学模型及矢量控制仿真1、异步电机三相方程2、坐标变换3、磁链3/2变换推导4、两相静止坐标系下的方程5、两相旋转坐标系下的方程6、以 ω-is-Ψr 为状态变量的状态方程7、矢量控制及 matlab 仿真 原文链接需要仿真的同学请关注【Qin的学习营地】 三相…

成都网站建设138百度怎么注册店面地址

前言 最近在微信小程序开发时遇到了一个非常复杂的动画,如果要手搓的话需要用canvas一点点弄,比较麻烦,于是打算做一个gif来实现动画效果 根据需求,动画只需播放一次即可,并且设置了一个重播按钮,点击即可重…

开发网站合同什么是网络营销产生的技术基础

一、介绍: 1、背景: 在 Redis 的 2.6 以上版本中,除了可以使用命令外,还可以使用 Lua 语言操作 Redis。 Redis 命令的计算能力并不算很强大,而使用 Lua 语言则在很大程度上弥补了 Redis 的这个不足。 2、特点&#…

h5做网站教程做彩票网站

一、MongoDB简介 1.1 MongoDB介绍 MongoDB是一个强大、灵活,且易于扩展的通用型数据库。MongoDB是C编写的文档型数据库,有着丰富的关系型数据库的功能,并在4.0之后添加了事务支持。 随着存储数据量不断的增加,开发者面临一个困…

做第三方库个人网站H5建网站

计算机数据及软件的安全计算机数据及软件的安全一、计算机软件的安全问题 1、软件在计算机安全中的二重性 软件是计算机系统的重要组成部分。和硬件相比,软件是计算机系统的灵魂,用户通过软件才能使用计算机。 (1)计算机软件是系统安全保护的对象和安全控…

在ai中做网站图片怎么设置深圳营销型网站建设服务

运维工程师的出路到底在哪里? 你是不是也常常听到身边的运维人员抱怨,他们的出路到底在哪里呢?别着急,让我告诉你,运维人员就像是IT界的“万金油”,他们像“修理工”一样维修服务器,像“消防员…

最专业企业营销型网站建设学校网页设计方案

使用bootstrap的grid system可以在一个较为粗糙的范围得到较好的响应性,但是通过viewport可以看到网站在具体哪个像素点处变得丑陋,再通过css media query来精细调整网页布局。 可以通过media query来提高网页移动响应能力。

商贸公司寮步网站建设极致发烧重庆建站程序

前言我们都知道依赖注入的方式常见的主要有三种构造函数注入属性注入接口注入在大名鼎鼎的Spring框架中大量使用属性注入的方式,属性注入的方式写起来那是真的爽;而在Asp.NetCore中则不支持属性注入,如果不使用第三方库,我们就只能…

网站的图片怎么做昆明找工作哪个网站好

在视频制作和分享过程中,一个有吸引力的封面或截图往往能吸引更多的观众点击观看。有时候要在特定的时间段内从视频中提取一帧作为封面或截图。如果每个视频都手动提取的话就会耗费很长时间,那么如何智化能批量提取呢?现在一起来看下云炫AI智…

我想做直播网站该怎么做网站职能建设论文

私域运营活动是公司运营中非常重要的一环,它能够提高用户参与度、增加用户忠诚度,并为公司带来更多的商业机会。然而,策划和执行一场成功的私域运营活动并不容易,需要思维缜密、部门合作以及落地能力等方面的综合素养。今天来跟大…

舆情网站网址内江市建设培训中心网站

文章目录 前言1. 本地安装Docker2. 本地部署Apache Answer2.1 设置语言选择简体中文2.2 配置数据库2.3 创建配置文件2.4 填写基本信息 3. 如何使用Apache Answer3.1 后台管理3.2 提问与回答3.3 查看主页回答情况 4. 公网远程访问本地 Apache Answer4.1 内网穿透工具安装4.2 创建…

自己想做一个网站怎么做做网站怎么接业务

随着科技的不断发展,视频制作已经不再是专业人士的专属领域,越来越多的人开始使用各种视频制作软件来记录生活、创作内容。其中,会声会影是被广泛使用的一款视频制作软件,其旗舰版更是备受关注。 据悉,会声会影2024旗舰…

怎样建立自己的个人网站推广产品的软文怎么写

Self-attention(自注意力)和 Word2Vec 是两种不同的词嵌入技术,用于将单词映射到低维向量空间。它们之间的区别: Word2Vec: Word2Vec 是一种传统的词嵌入(word embedding)方法,旨在为…

公司网站用什么开发如何查看网站域名信息

1. 递归实现的缺陷 在以前的文章中我们把快速排序和归并排序的递归实现方式进行了介绍,但是在校招面试和在企业的日常开发过程中,仅掌握递归方法是不够的,因为递归也有它的缺陷。 我们知道在函数调用过程中会在内存中建立栈帧,栈…

网站目录做二级域名WordPress网站生成小程序

面试题之ElasticSearch 1.es的基础知识2. es的集群、节点、分片、副本分片的定义?3. es为什么快?4. 倒排索引的原理是什么?5. es的segment是什么?6. es的分段存储和分段索引的概念及区别?7. 索引相关的问题&#xff1f…

创新的o2o网站建设制作wordpress页面模板

一、名词解释 Device ID:设备ID。 IMEI:(International Mobile Equipment Identity)国际移动设备标识的缩写。是由15位数字组成的“电子串号”,它与每台手机一一对应,每个IMEI在世界上都是唯一的。 MEID…

仿站小工具wordpress域名网站模板

题目 输入样例: 5 2 1 2 3 4 5输出样例: 6 思路 本题默认所有读者已经理解了如何求前缀和。 可以利用双层循环分别枚举左端点和右端点即可枚举完所有区间,而对于每个区间,利用一维前缀和判断它是否是一个k倍区间,是…

海口网站建设交易网站建设具体方案

目录 1 添加修改运费模板 2 删除运费模板 3 是否有商品使用过改运费模板 /// <summary> 添加修改运费模板 /// </summary>

海洋网站建设网络闵行区天气

echarts在HTML里测试正常&#xff0c;在jsp页面不显示&#xff0c;而且还把整个页面变成空白echarts在HTML里测试正常&#xff0c;在jsp页面不显示&#xff0c;而且还把整个页面变成空白&#xff0c;请大神帮忙&#xff0c;急&#xff0c;在线等Created by IntelliJ IDEA.User:…

包头建网站公司哪家强销售类网站数据库的建设

一、Ajax初始 1、什么是Ajax&#xff1f; 异步的JavaScript和xml 2、xml是什么&#xff1f; 一种标记语言&#xff0c;传输和存储数据----------现在用JSON传输数据 3、Ajax的作用 局部加载 可以使网页异步更新 4、Ajax的原理或者步骤(6步) 创建Ajax对象 if (window.X…