java实习第二周总结

     第二周的实习工作结束了,这周在完善登录系统业务代码的同时主要是学习了企业开发中所运用的一些设计思想和思考问题的方式,需要将自己的思考方式与理解从学校里的学生思想往企业设计思想过渡与转变。

     首先就是spring框架,是为了简化企业开发应用程序的难度和周期而诞生的框架。其最主要思想是IOC(控制反转),指的是将对象的创建权托管给spring框架来管理。开发者不再使用new来创建自定义对象,而是通过从spring容器里面取出对象。接着就是spring mvc设计模式,model模型层,view视图层和controller控制层。在后端的体现为一个项目分成控制层,业务层和持久层。控制层可以引用对应的业务层,也可以接受前端传递的请求数据和做些简单的计算处理;业务层是引用对应的持久层数据库操作,是处理大部分业务逻辑的地方,通常有接口和实现类组成;持久层负责连接和操作数据库,例如实现CRUD(增删改查),其里面每一个接口方法都应该对应一条数据库操作语句。在一个项目中,每一种功能都应该分为不同的包,比如还应该有实体类来存放简单类,即数据库表里面对应的实体类型,还有工具类,配置类等等。通过将不同的功能拆离分类,便于团队配合开发以及日后维护,大大提高工作效率。

图1 Springboot项目基本结构

     另一点是restful代码风格,它是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。Restful设计风格基本规则主要有以下几点:传统的url设计方式为资源加操作动词以及参数,而restful风格则去掉了url里面的动词,只保留资源名词,通过在代码里设置请求方式(put,get,post和delete)来达到目的;参数值应该直接写在url地址里(通过@PathVariable来实现)而尽量避免使用问号的形式附加在url最后面;返回给前端的值一般是由HTTP状态码,消息文本以及数据三个部分组成,数据格式一般是使用json格式。总而言之,restful风格是一种旧技术新风格,是行业里面主要是使用的一种约定。

     此外,这周还查了一些零碎的知识点。对于关系型数据库和非关系型数据库的比较,主要是存储数据方式不同。前者为表格式,数据存储在行和列之中,容易被提取,代表有Oracle和MySQL;而后者主要是将大块数据集中在一起,并不是存在数据表之中,更像是一个收纳场所,代表有Redis。接着是form-data和raw的区别,form-data主要是以键值对的形式来上传参数,支持上传文件;而raw对应的参数是任意格式的,文本和json都支持。

     这周学到的最重要的知识是在代码编写的过程中考虑项目所需要的细节,考虑用户体验与感受。在软件开发这一行中,编写代码是为了开发产品,而产品是会给用户使用的,产品是服务于客户的,所以用户的体验与感受至关重要,在设计程序的时候很多该考虑的问题就要提前想到,做到未雨绸缪,减少产品研发完成后给客户使用后不满意的地方,减少矛盾冲突。在客户对产品功能提出了基本的需求后,除了必须完成这些需求之外,还应该结合实际情况进行一系列的其他完善内容来丰富产品内容和提高用户使用满意度。举个简单例子,对于用户登录系统来说,除了实现用户的基本需求登录操作,验证账户密码之外,还理应对用户的密码进行加密操作,这是一种条件反射。除此之外,在设计项目的同时需要注意的细节有:对于用户的基本信息,例如账号密码、手机号、邮箱、个人描述等,是否为必填或非必填,每一个基本信息对应的数据类型是哪种,该信息是否有规定的格式写法,支持的输入长度是多少,是否支持中英文输入,以及用户是否有权限修改此信息等等。需要注意的是,这里还是可以更深层次的挖掘细节,例如电话号码,一般情况下虽然默认是手机号码,但是考虑到如果号码为座机号码并且支持填写区号前缀的话,数据类型就不能用整形而应该使用字符串类型。从这里就反映出学校思维和企业思维的不同了,在学校编写代码的时候使用的数据规模小,容错率高,思考的比较浅显不严谨,而对于设计企业项目来说,任何一个参数如果考虑不周的话都有可能酿成较大的损失。因此,刚开始工作的时候由于之前接触的少不容易想到有哪些细节需要注意,但是在以后的工作中就要开始注意培养这种思考方式与意识,做到精益求精,这也是成为优秀程序员的必经之路之一。

        总结一下,这一周学习的思想内容很大程度是在学校里学习不到的,因为学校里写代码考虑的需求一般都只是自己,而在企业开发中需求就变成了满足大数量的用户了。自己需要尽快的转变自己的思考方式,并将这周学到的内容可以在接下来的工作中慢慢体现出来。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值