javafx项目结构+代码规范
javafx项目
1. 新建项目,对项目的理解
jdk: 是 Java Development ToolKit 的简称,也就是 Java 开发工具包。JDK 是整个 Java 的核心,包括 Java 运行环境(Java Runtime Envirnment,简称 JRE),Java 工具(比如 javac、java、javap 等等),以及 Java 基础类库(比如 rt.jar)
sdk(软件开发工具包):是 Software Development Kit的简称,也就是软件开发工具包。辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做“SDK”。SDK是一系列文件的组合,它为软件的开发提供一个平台(它为软件开发使用各种API提供便利)
java的源文件以.java
结尾的文件,编译后的文件以.class
结尾的文件。编译过后的文件才可以在虚拟机(JVM)上运行。
反编译.class和原java文件的源码对比
2.项目结构
空项目和JAVAFX
项目比较一下生成的项目结构
JavaFXProject/ ├── src/ │ ├── main/ │ │ ├── java/ # 核心Java代码 | | | |──com.example.app #组/包 | | | | ├── core/ # 业务逻辑 | | | | ├── view/ # FXML文件 | | | | ├── model/ # 数据模型包 | | | | |__entity:放置数据库实体对象定义 | | | | |__dto:存放数据传输对象定义 | | | | |__vo:存放显示层对象定义 | | | | ├── controller/ #控制类 | | | | └── util/ # 工具类 │ │ ├── resources/ # 资源文件(FXML/CSS/图片) │ │ └── fxml/ # FXML布局文件(可选独立目录) │ └── test/ # 单元测试代码 ├── lib/ # 第三方依赖库(空项目才会有这个) └── build.gradle/pom.xml # 构建配置文件
module-info.java文件详解
module com.example.demo {requires javafx.controls; //这行声明当前模块依赖于javafx.controls模块,这是JavaFX库的一部分,用于提供UI控件。requires javafx.fxml; // 这行声明当前模块依赖于javafx.fxml模块,这是JavaFX库的一部分,用于支持FXML,这是一种用于构建JavaFX应用程序用户界面的声明式标记语言opens com.example.demo to javafx.fxml; // 这行声明当前模块的com.example.javafxdemo包对javafx.fxml模块开放。这意味着FXML可以访问这个包中的类和成员,这对于FXML加载器来说是有必要的。exports com.example.demo; // 这行声明当前模块的com.example.javafxdemo包可以被其他模块访问。这是必需的,因为其他模块可能需要使用这个包中的公共类和接口。 }
3.代码规范
Java开发规范
命名
【规范】类名使用UpperCamelCase** 风格,必须遵从驼峰形式,但以下情形例外: ( 领域模型的相关命名 )DO / BO / DTO / VO 等。
【规范】方法名、参数名、成员变量、局部变量都统一使用lowerCamelCase 风格,必须遵从驼峰形式。
eg: getUser(int userId)
【规范】常量命名 全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长。
【规范】抽象类命名使用 Abstract
或 Base
开头 ; 异常类命名使用 Exception
结尾 ; 测试类命名以它要测试的类的名称开始,以 Test
结尾。枚举类名建议带上 Enum 后缀,枚举成员名称需要全大写,单词间用下划线隔开。
【规范】POJO 类中布尔类型的变量,都不要加 is ,否则部分框架解析会引起序列化错误
MySQL开发规范
【规范】 表名 、字段名 必须使用小写字母或数字;禁止出现数字开头,禁止两个下划线中间只 出现数字。数据库字段名的修改代价很大,因为无法进行预发布,所以字段名称需要慎重考虑。
正例:getter_admin,task_config,level3_name
反例:GetterAdmin,taskConfig,level_3_name
【规范】小数类型为 decimal,禁止使用 float 和 double。
说明:float 和 double 在存储的时候,存在精度损失的问题,很可能在值的比较时,得到不 正确的结果。如果存储的数据范围超过 decimal 的范围,建议将数据拆成整数和小数分开存储。
【规范】如果存储的字符串长度几乎相等,使用 char 定长字符串类型。
【效率】varchar 是可变长字符串,不预先分配存储空间,长度不要超过 5000,如果存储长 度大于此值,定义字段类型为 text,独立出来一张表,用主键来对应,避免影响其它字段索 引效率。