每日晨考
晨考题
-
软件开发生命周期
问题定义
可行性分析
总体描述
系统设计(架构设计+数据库设计)
编码
调试和测试
验收与运行
(维护升级或废弃阶段)
-
数据库三大范式
1.第一范式(确保每列保持原子性),如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足了第一范式
2.第二范式(确保表中的每列都和主键相关)第二范式需要确保数据库表中的每一列都和主键相关
3.第三范式(确保每列都和主键列直接相关,而不是间接相关)第三范式需要确保数据表中的每一列数据都和主键直接相关,而不能间接相关。
-
描述数据库常用公共字段
答:
- 主键ID:用于标识列唯一 标识
- createdate:创建时间,
- updatedate:更新时间
- createuser:创建者
- updateuser:更新者
- status:状态字段
- sortnum:排序字段
-
PO VO DTO概述和区别
答:
-
序列化作用、描述序列化和反序列化
答:
-
描述常用编码规范(阿里巴巴)(至少5点)
- 命名风格
-
代码命名
- 代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束
- 类名使用 UpperCamelCase 风格,必须遵从驼峰形式
- 包名统一使用小写,点分隔符之间有且仅有一个自然语义的英语单词
- 中括号是数组类型的一部分,数组定义如下: String[] args;
- POJO 类中布尔类型的变量,都不要加 is,否则部分框架解析会引起序列化错误。
-
常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长
-
描述数据库编码规范
- 建表规约
- 表明,字段名必须使用小写字母或者数字,禁止出现数字开头,禁止两个下划线中间出现数字
- 表明不使用复数名词
- 禁用保留字
- 小数类型使用decimal ,禁止使用float 和double 存在精度损失问题
- varchar 是可变长字符串,不预先分配存储空间,长度不要超过 5000,如果存储长
度大于此值,定义字段类型为 text,独立出来一张表,用主键来对应,避免影响其它字段索引效率。 - 表必备三字段: id, gmt_create, gmt_modified。
- 库名与应用名称尽量一致。
- 建表规约
-
JAVA的缺点(至少3条)
答:
角度一:
优点:简单、安全、稳定、跨平台
缺点:需要运行环境、不适合开发桌面应用程序
应用:BS结构的ERP系统、金融系统、电子商务系统、网站等
几乎所有的银行系统和银行网站都是基于Java平台的,你可以访问看看。角度二:
优势:
(1)一次编写,到处运行。
(2)系统的多平台支持。
(3)强大的可伸缩性。
(4)多样化和功能强大的开发工具支持。
劣势:
(1) 与ASP一样,Java的一些优势正是它致命的问题所在。正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。
(2) Java的运行速度是用class常驻内存来完成的,所以它在一些情况下所使用的内存比起用户数量来说确实是“最低性能价格比”了。从另一方面,它还需要硬盘空间来储存一系列的。java文件和.class文件,以及对应的版本文件。角度三:
1、跨平台性,虽然是很好的优势,可以让JAVA在任何的系统中运行,但是前提是该系统要安装JAVA虚拟机,这样导致一些JAVA编写的桌面程序无法在一般的用户(没有安装JAVA虚拟机的用户)上使用
2、JAVA的身后是SUN公司,提供及时的API更新,但是过多的版本导致JAVA的向下兼容性很差。而SUN公司在J2EE上的标准定义的并不是完美,导致在J2EE的开发中多数使用开源框架,开源框架是好东西,但是更新速度并不快。
3、都说面向对象的语言先进与面向过程,JAVA是OOP语言,但是它适合的是BS系统,在WEB项目中JAVA的实力毋庸置疑,但是转到了底层的程序却无法同C++抗衡。
4、个人认为JAVA的最大优点是开源,但是这往往也成了最大的缺陷了,无法定义一个好

浙公网安备 33010602011771号