相信大家都有做过登陆功能的模块,而且大部分的教程也是以登陆来演示代码功能的,因此也给了人们一个错觉,登陆就是一个基本的功能模块,也是基础模块,这个是最容易的功能,在项目组里谁的技能相对最弱就让谁去做吧。而现在我却要说,千万不要轻视了登陆功能,有时它会牵动整个项目的进程。
这是我的亲身经历。记的当我刚入项目组时,刚好新项目才启动,客户指定要使用ofbiz框架来实现。一个项目组的人对于ofbiz来说都是新手(虽然别人比我多看了几个星期的资料),大家都在一个从零的起跑线上开始飞奔了起来。由于是敏捷开发模式,客户在第一个demo show中就要去看基本效果了,无奈下,大家都是鸭子上架,边看资料就边开发了。
我是刚入项目组的新手,刚被调入项目组时他们正好都在开分析会,于是我就在那会上被认领了......,接着就跟着他们开会,讲的是什么?我是一头的雾雨,ofibz?什么东东?框架?没听过啊!一个组加上我正好六个人,组长基本上不做开发,当时正好在第一阶段要求四个模块,那就没我的事了?呵呵,组长分完的任务突然又来了句,“啊,差点忘了,还有个登陆功能没分,正好,小丁,给你做了吧,这个是比较简单的。”,“哦!”傻呼呼的就那么迷糊的点了点头。
接了任务,又花了一天的时间去走马观花的看了点资料,(关于ofbiz的资料当时几乎是没中文的,英文的入门pdf资料400多页,郁闷了)。就开始热火朝天的干起来了,由于框架的特殊性,为了和数据库交互,为了页面的渲染,为了控制器的转发,所有的都自成一家,终于是在一天的下班时间来临之前调好了,我的第一个任务,登陆。
当时所做的实现,应该是很普遍的一种实现,就是在session中自定义一个常量名,加入一个登陆对象来做登陆了,以后就跟据这个登陆对象来判断登陆了,思路很简单,功能也不复杂。不错,第一个任务完成了。
在这以后的持续开发中,一直都很正常,但慢慢的,从学习ofbiz资料的越来越深入,实践使用代码开发所遇到的困难里越来越发现有问题。因为无论是从官方介绍还是详细资料里都指出,ofbiz是一个功能很强大,开发中调整很便捷,适应度很高的一个框架,为什么我们就没有感觉到这些优点?在一次中途的sprint结束后,我暂时少领了任务,开始了对框架的全面分析和代码研究。最后找出了原因,问题出在了我身上,就是我当初所写的那个登陆功能,牵制了整个项目的开发。
其实,如果要把原因说清楚很难,因为那要把ofbiz的实现机制和他们框架操作思路都理新了才会知道那里面是一环套一环,不是随便玩的。这里我只简略的说个实现意图。ofbiz框架中已经有很多实现好的功能,比如操作记录,访问者记录,权限控制,工作流,paypal支付,订单系统仿ebay等等,但这都是建立在一个loginWorker的对象基础之上,而这个对象可以说就是登陆的实现入口。也就是说如果当时我不是自己建一个登陆用户表而是使用ofbiz所提供的对象功能,那么之后的邮件发送,验证码,权限,订单,支付等等就可以避免很多重复的轮子了,而到我发现这种情况时,项目已经进入了中期,再改所花的成本将更大,无奈之中只能继续走下去了,不过从那已后,我就深入的研究其源码,至少在项目后期的开发中少走了不少弯路。
从中得到的教训,不仅仅是ofbiz框架,对于任何项目来说,没有那个模块或功能是简单容易的,他们都是一个整体,做为一个项目领导者更是要眼光罩住全局,统一调度和整合,不然下面就是战国时代,各自为王了。也许我这只是一个极端的例子,但是,告诫大家和提醒我自己,千万别轻视了登陆模块的这种小功能,任何的轻视都会为之付出代价的。
分享到:
相关推荐
标题中的“心梗征兆不可轻视”是一个警示,提醒我们对急性心肌梗死(心梗)的早期症状给予足够的关注。心梗是由于冠状动脉供血不足导致心肌缺血、缺氧,严重时可导致心肌细胞死亡。这种疾病往往具有较高的致残率和...
初中语文文摘人生不要轻视碎纸屑
传统教学模式往往侧重于学科的完整性,却轻视了学生实际工程能力的培养,导致毕业生在就业市场上与企业需求之间存在较大差异。本研究以《毕业季Web》项目实施为案例,探讨了模块化教学与创新创业素质培养之间的关系...
"不可轻视的地板辅料.zip"这个压缩包文件显然聚焦于揭示这些材料的重要性,帮助用户理解如何选择和使用合适的地板辅料,以确保地板安装的质量和持久性。 地板辅料主要包括防潮膜、地垫、踢脚线、收边条、膨胀缝填充...
#### 模块一:软件工程概述 ##### 一、基础知识解析 **1. 软件与程序的区别** - **核心概念:** 软件不仅仅是程序本身,还包括一系列相关的文档和支持材料。程序只是软件的一部分。 - **综合理解:** 在实际工作...
### 不要轻视拷贝构造函数与赋值函数 在C++编程中,拷贝构造函数和赋值函数是理解类的重要组成部分。虽然这两种构造函数通常由编译器自动提供,但它们对于确保数据安全性和类的行为正确性至关重要。本文将深入探讨...
"云服务不可轻视的三大细节" 选择云服务不可轻视的三大细节是企业安全管理员在选择云服务时需要关注的几个重要问题。云端安全服务的成熟度远不及企业内部安全服务,对于云端安全服务的需求和供应商的产品和服务的...
1. 行动的力量:汪涵通过自身的经历强调了行动的重要性,无论是做剧务还是现场导演,他都全身心投入,不轻视任何一项工作,这种积极的行动态度最终使他成为知名主持人。 2. 个人的力量:尽管没有读过大学,汪涵通过...
其次,“别低估生活”提醒我们生活充满了不确定性,我们不能轻视它的复杂性和难度。我们常常设想通过自己的努力和聪明才智就能实现理想的生活,然而现实往往比预期更为严峻。生活不只是工作和金钱的积累,它包含了...
这篇文档是高教版语文基础模块上册第1-3单元的测试题,包含汉字书写、基础知识及运用、阅读理解等部分,旨在检验学生的语文素养和理解能力。文档以语文试题的形式呈现,内容包括语言知识的运用、词汇解释、语境判断...
【校园宿舍防火与火场逃生技能】 在大学生活中,宿舍是学生们主要的活动场所,因此宿舍的消防安全至关重要。近期发生的xx演艺专修学院女生宿舍火灾事件警示我们,必须高度重视校园宿舍的防火工作,掌握基本的火场...
7. 对面试问题轻视:即使你认为某个问题简单或不重要,也要认真对待。对问题的轻视态度可能让面试官认为你不够尊重或缺乏耐心。无论问题如何,都要表现出专注和专业。 总的来说,面试不仅仅是展示技能和经验的过程...
【牛津高中英语模块六 Unit-1-4 语言点】是针对高中英语学习者的一份资料,旨在帮助学生掌握并运用一系列关键的词汇、短语和表达方式。以下是这份资料中涉及的重要知识点: 1. **stand up for sth**:这个短语表示...
《2021职场人健康状况调查报告》揭示了当前中国职场人群体面临的严峻健康问题。随着生活质量和工作节奏的加快,职场人的健康状况日益受到关注。报告指出,中国居民的超重肥胖率显著上升,18岁以上成年人的超重肥胖率...
火龙果软件工程技术中心 曾经对软件测试很轻视,因为我那时很无知,只是一名普通的中国程序员,这也是那时绝大多数程序员的心态,那时中国程序员最讲究“编程才是硬道理”。如今却非常热爱软件测试,包括软件测试...
这段文字反映了当时社会对师道的轻视,以及作者对此的反思。 以上内容涉及了古汉语的基础知识,包括字音、字义、古今异义、通假字和词类活用,同时也展示了古人在师道问题上的观念和态度。通过这样的自我检测,可以...
此外,过于重视理论,轻视实践,使学生可能在课堂上理解了理论,但在实际操作中却显得无从下手,降低了学习兴趣和教学效果。 【一体化教学的优势】“一体化”教学模式激发了学生的学习兴趣,因为边学边练的方式使...
《2ingData-健康行业2021职场人健康状况调查报告》是针对现代职场人群体健康状况的一份详尽研究报告。这份报告深入探讨了在快节奏、高压力的现代工作环境中,职场人的身心健康问题,以及他们对健康的认知与态度。...