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( ...
随机推荐
- 使用canvas实现擦玻璃效果
体验效果:http://hovertree.com/texiao/html5/25/ 效果图: 代码如下: <!DOCTYPE html> <html> <head la ...
- Hibernate框架中Criteria语句
在Hibernate中有一种查询语句是Criteria查询(QBC查询),今天呢 我们就一个个的详细的跟大家一起探讨Criteria语句的相关知识点 案例前的准备 //插入测试数据,构建数据库 pub ...
- struts通过action返回json
其实struts2通过action返回json挺简单的,但是就是老要忘,所以索性写在博客上.好的,开始. 首先是引入必须的jar包: struts2-json-plugin-2.3.24.jar 然后 ...
- Ext.Net MVC 配置(2)
在VS2012中使用NuGet类库管理器配置EXT.NET MVC环境在“Ext.Net MVC 配置(1)”文章已经写到,方法很简单也很方便,但就是不知道它在安装这些库时对项目做了什么很不爽. 通过 ...
- 轻量的、可自定义 CSS 的 Lightbox 相册插件
jQuery LightGallery是一个轻量级的,可定制的,模块化的,响应式的 jQuery 相册插件.它采用 CSS 来实现图像和视频的大小调整.因此,这将是非常灵活的,并且比使用 JavaSc ...
- React-Native性能优化点
shouldComponentUpdate 确保组件在渲染之后不需要再更新的,即静态组件,尽量在其中增加shouldComponentUpdate方法,防止二次消耗所产生的性能消耗 shouldCom ...
- JavaScript区分click事件和mousedown(mouseup、mousemove)方法
在前端开发工作中,会遇到这样问题:针对同一个dom元素,即希望为它绑定click事件,又想该元素可以允许拖拽的效果.而使用拖拽的效果,我们一般就会用到mousedown,mousemove和mouse ...
- SharePoint 2016 图文安装教程
前言 SharePoint 2016如约而至,之前也装过预览版,但是这次是正式版,还是分享一个完整的安装过程给大家,希望能给有需要的人有所帮助. 1.首先安装操作系统,我这里是Windows Serv ...
- ABAP程序互调用:SUBMIT、CALL TRANSACTION、LEAVE TO TRANSACTION
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- iOS---stringByAddingPercentEscapesUsingEncoding:' is deprecated: first deprecated in iOS 9.0 - Use -stringByAddingPercentEncodingWithAllowedCharacters: instead,
旧方法 NSString *encoded = [url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; iOS9 ...