SSH----小小项目的小小总结
嘛,之前学了一下SSH框架,跟人合作写了个小东西参加比赛,(当然我是队长),真的感慨良多~,现在用这篇博客记录下来吧
1.责任心/责任感
首先要说的一点,要有责任心,当你与别人组成一个团队的时候,虽然每个人都有自己不同的分工,但是我们要认识的一点就是:
你的工作关乎到你整个团队的利益,你的一举一动与团队的每个人息息相关,你的工作如果完成的不够完美 出现了瑕疵,哪怕是一点点瑕疵,都有可能会给你的队友带来麻烦,有时候还不小。
比如之前某个队友(Android)在登录界面往服务端发送请求时,需要往服务端的流中写入参数,但是他使用了一个PringWriter的构造函数,该构造函数的方法签名为
PrintWriter(InputStream inputStream, boolean flag);
第二个布尔值参数决定这个流是否会自动刷新(flush),然后自动刷新的时候就在流中多写了一个\n换行符。。。
再后来密码验证死活过不了(废话,多了个换行符怎么过~)
后来上交作品前一天的时候才搞定。。。
影响还是蛮大的的吧。。。
(一个换行符引发的血案。。。)
2.沟通
一个项目 android端/前端 和 后端 一定要充分沟通!!
后端程序员在写完接口之后,最好要写一份文档供其调用
(接口文档,包含参数啊、返回的数据啊越清楚越好),想象一下,如果连文档都没有,慢慢跟她/他说,除非你想泡她/他,否则会被反思的!
后端的接口书写完毕后,一定要自己测试!有一些小白可能都不知道要怎么去调试接口。。。工具!当然最笨的办法就是使用Java.net.HttpUrlConnection,这东西用起来还是挺麻烦的,不太推荐使用
(只有你确定你的部分没有问题了,android端/前端的人出问题了才可以肯定是他们自己的部分出问题了嘛)
3.效率
个人对于“高效”有自己的理解。
高效 != 快
高效 == 快 & 好
高效需要做到的有几点:
1.放松惬意的心情
2.集中心情
3.乐在其中
我们下面要说到的规范的代码也是一点有比较大影响的因素。
一直秉持一个观点,高效写出来的代码才是真正好的代码。
4.规范的代码 良好的编程习惯
规范的代码 可以降低我们维护的难度,方便我们迅速的定位到bug所在的地方,干净的代码可以提升我们码代码的动力,可以提升我们码代码的效率。
总而言之,规范的代码,也是一个人的水平的重要体现。
5.业务逻辑
业务逻辑的思考!!!这个是最重要的,所以我放在了全文的最后进行叙述。
首先,在一个项目开始的时候,我们要用30%(或以上的时间)来思考逻辑,这次给我的惨痛教训就是开始的时间太快(因为时间紧,android还在等我开放接口呢。。。),数据库存在一些小bug,导致要修改页面甚至逻辑去迎合数据库的bug啊,讲道理,就是这东西让我到现在还耿耿于怀,最近在开数据库课程设计,那业务逻辑搞得我眼花缭乱的,现在还在理思路,咳咳扯远了。。。。
而且,业务逻辑真的是一个项目非常重要的部分。我大概总结了一下,主要是几个方面:
需求分析----->功能列表----->绘制E-R图------>设计数据库------>后台逻辑编写
一开始,拿到需求,首先要进行需求分析,我个人很喜欢手里拿只笔,偶尔写下几个关键词(个人习惯,我看书也是,特喜欢拿只笔。。。)
分析完,大概把整个项目需要实现的功能列成一个清单
下一步,绘制数据库E-R图,E-R图可以很清楚的体现出 数据库中表与表之间的键的关系,我个人画图比较喜欢使用微软的visio(虽然微软其他软件不咋样,但这个个人感觉还不错)
,需要注意的一点就是,绘制E-R图的时候要稍微思考一下 现今数据库结构 对已列出功能的可行性。
到最后才是我们代码环节啦!
SSH----小小项目的小小总结的更多相关文章
- SSH框架项目开发命名规范
SSH 框架项目开发命名规范 一.各层包及类命名规范 总体原则:包名所有字母小写,类名采用 "驼峰标识",具体如下: 1. Action 类 包命名规范:co ...
- SSH简单项目
这是我学习SSH整合时的一个测试项目,代码比较简单 整个项目实现从数据库中取数据,在页面上显示.项目的结构如下: (1)数据库设计 数据库使用的是student数据库中的一个数据库表grade,表的内 ...
- 搭建ssh框架项目(五)
一.控制层优化 (1)创建BaseAction.java类 package com.cppdy.ssh.web.action; import javax.servlet.http.HttpServle ...
- 搭建ssh框架项目(四)
一.创建控制层 (1)创建VO值对象,对应页面表单的属性值 package com.cppdy.ssh.web.form; /** * VO值对象,对应页面表单的属性值 * VO对象与PO对象的关系: ...
- 搭建ssh框架项目(三)
一.创建业务层 (1)创建业务层接口IElecTextService.java package com.cppdy.ssh.service; import com.cppdy.ssh.domain.E ...
- 搭建ssh框架项目(二)
一.创建dao层 (1)创建接口ICommonDao.java package com.cppdy.ssh.dao; public interface ICommonDao<T> { pu ...
- 搭建ssh框架项目(一)
一.创建web项目 二.导入jar包 三.创建数据库(MySQL) 四.建立javaBean对象(ElecText.java),属于持久层对象(PO对象) package com.cppdy.ssh. ...
- SSH整合项目----在线商城
1.1 网上商城需求分析 1.1.1 前台:用户模块. 注册: * JS非空校验.(不是必须) * Struts2数据校验:在注册Action类同一包下新建UserAction-user_reg ...
- jenkins中通过Publish Over SSH将项目部署到远程机器上
Publish Over SSH插件使用在使用Publish Over SSH之前,需要制作SSH私钥.机器间做免密登录配置.假设机器A,ip为192.168.AA.AAA,机器B: 192.168. ...
- SSH电力项目
第一步:创建测试表Elec_Text: create table Elec_Text(textID varchar(50) not null primary key,textName varchar( ...
随机推荐
- Tomcat 8080端口被占用解决方法
使用lsof命令查看端口占用情况 sudo lsof -i:8080 端口占用情况 java 1564 tomcat8 50u IPv6 19336 0t0 TCP *:http-alt (LISTE ...
- 第 3 章 VBScript流程控制
学习导航 if...then...else...end if select case...select end for...next do while ... while wend 3.1 认识流程控 ...
- python 替换 文件夹下的 文件名称 及 文件内容
示例效果: 1.替换某文件夹下的 文件夹及子文件夹 的名称 由OldStrDir 变为 NewStrDir: 2.替换某文件夹下的 文件夹及子文件夹 下 所有的文件的名称 由OldStrFile 变为 ...
- Java--通过Spring AOP进行事务管理
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- [连载]《C#通讯(串口和网络)框架的设计与实现》-4.设备驱动管理器的设计
目 录 第四章 设备驱动管理器的设计... 2 4.1 接口定义... 2 4.2 设备容器... 7 4.3 ...
- JS时间戳格式化日期时间
由于mysql数据库里面存储时间存的是时间戳,取出来之后,JS要格式化一下显示.(李昌辉) 用的次数比较多,所以写了一个简单方法来转换: //时间戳转时间 function RiQi(sj) { va ...
- Netty(三)TCP粘包拆包处理
tcp是一个“流”的协议,一个完整的包可能会被TCP拆分成多个包进行发送,也可能把小的封装成一个大的数据包发送,这就是所谓的TCP粘包和拆包问题. 粘包.拆包问题说明 假设客户端分别发送数据包D1和D ...
- CSS3 莲花盛开动画
点击这里查看效果:http://keleyi.com/a/bjad/32gxxsaw.htm 或者:http://keleyi.com/keleyi/phtml/css3/10a.htm 效果图: 代 ...
- jquery动态改变div宽度和高度
效果体验:http://keleyi.com/keleyi/phtml/jquery/23.htm 完整代码: <!DOCTYPE html PUBLIC "-//W3C//DTD X ...
- autocomplete="off" 不起作用
首先来了解一下 表单自动填充的原理,当我们登录的时候,如果选择的记住登录密码,那么后续界面中如果有 <input type="text" name="field1& ...