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( ...
随机推荐
- (1-1)文件结构的升级(Area和Filter知识总结) - ASP.NET从MVC5升级到MVC6
ASP.NET从MVC5升级到MVC6 总目录 MVC5项目结构 带有Areas和Filter的项目结构 一般来说,小的MVC项目是不考虑领域的,但是,如果是稍微复杂一点的项目,往往是需要领域这个概念 ...
- Hibernate框架中Criteria语句
在Hibernate中有一种查询语句是Criteria查询(QBC查询),今天呢 我们就一个个的详细的跟大家一起探讨Criteria语句的相关知识点 案例前的准备 //插入测试数据,构建数据库 pub ...
- 三分钟集成elmah xml 格式日志到mvc站点
1.通过nuget安装Elmah ELMAH on XML Log 会自动在web.config 文件中添加配置内容,默认不允许远程访问,日志访问路径是 Elmah.axd,不记录500错误 2.修改 ...
- C#+arcengine10.0+SP5实现鹰眼(加载的是mdb数据库中的数据)
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- sqlHelper做增删改查,SQL注入处理,存储值,cookie,session
一.存储值 eg:登录一个页面,在进入这个页面之前你怎么知道它登没登录呢?[在登录成功之后我们把状态保存起来] 存储值得方式有两种,一种是cookie,一种是session 1.1区别: 代码: if ...
- 转载:《TypeScript 中文入门教程》 13、类型兼容性
版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 介绍 TypeScript里的类型兼容性基于结构子类型的. 结构类型是只一种只使用其成 ...
- ExtJS关于组件Component生命周期
extjs组件生命周期大体分为3个阶段:初始化.渲染.销毁. 第一阶段:初始化 初始化工作开始于组件的诞生,所有必须的配置设定.事件注册.预渲染处理等都在此时进行. 1.应用组件的配置: 当初始化一个 ...
- 时钟周期,CPU周期,指令周期,CPU时间片
从小到大来说:时钟周期,CPU周期,指令周期,CPU时间片 时钟周期:一个脉冲需要的时间,频率的倒数 CPU周期:读取一个指令节所需的时间 指令周期:读取并执行完一个指令所需的时间 CPU时间片:CP ...
- Linux2.6内核--进程调度理论
从1991年Linux的第1版到后来的2.4内核系列,Linux的调度程序都相当简陋,设计近乎原始,见0.11版内核进程调度.当然它很容易理解,但是它在众多可运行进程或者多处理器的环境下都难以胜任. ...
- 清理mac本内存
如果你很久没有删除xcode的缓存文件,由于你每天要运行新的xcode文件,那么你的硬盘空间会越来越小,位于/Users/*home名称*/Library/Developer/Xcode/Derive ...