文档章节

实习期间遇到的5大问题及解决方案

FansUnion
 FansUnion
发布于 2015/10/22 10:30
字数 1198
阅读 7
收藏 0
点赞 0
评论 0
郑重声明:本文纯属Fans同学的个人见解,仅供参考,欢迎拍砖。
不带任何感情色彩,无论是讽刺、褒扬,还是抱怨、感叹,纯属读者的个人感觉,与Fans无关。
软林至尊,Fans同盟。号令天下,莫敢不从。 @Fans.Lei

 
问题背景
1.在学校,做一个项目,从需求设计到编码测试,基本上都由自己一个人完成,不存在团队合作和分工,也不存在和其他人冲突的问题。
2.需求中遇到了问题,自己可以决断,想怎么做就怎么做。
3.大多不需要和其他人沟通。
总之,在学校基本上是一个人单干,到了公司要团队开发,需要一个转变和适应的过程。
 
5大问题及解决方案
 
1.团队合作
1.1如何分工
分工和合作是辩证统一的。
划分每个人的职责和任务是合作的基础。

项目前期,“一个任务”被划分给了别人,后来又“划分给了我”。经过解释,发现这个任务“本来就是我的”,出现这种问题,主要是前期相关人员都理解错了。今后还会出现这种情况么?如何避免?
1.2如何合作
模块之间既相对独立,又相互依赖。
接口提供者想改变接口,接口依赖方该怎么做呢。不让他改变,还是他变了,我去修改相关代码?

解决方案
模块之间的依赖,应该由双方共同探讨和制定,不能随意修改,一旦修改,要及时通知对方。
分工,一定要及时确认职责。


2.需求问题
2.1需求不明确
项目前期,需求不够明确,很多时候都根据自己的理解去做,结果与需求不完全一致了。
2.2需求和开发的关系
开发人员要严格按照需求来做,如果需求不合理,开发人员应该提出来。
问题:如何去判断?
解决方案
和需求分析师及团队领导沟通;积累经验。
 
3.沟通不畅

3.1沟通意识
在学校"单干"惯了,遇到问题习惯独自去想,而没有去和相关人员沟通。
3.2沟通对象
遇到问题,不知道应该和谁沟通,项目前期有此困惑。
3.3距离
项目前期,团队成员分在3个地方,使用在线沟通工具不够方便,说不清。
3.4工作中有情绪
有时比较急躁,不够耐心,主要集中在项目中期,模块整合过程中。

3.5沟通技巧
用词不当,引起他人不快。

解决方案
沟通遇到问题,应当及时自我反省,并和团队领导沟通,而不是置之不理。

 
4.代码重复
4.1界面重复
比如,分页栏那一块完全一致。
4.2代码重复
类似的功能大量出现,比如事务,获取数据库连接,分页算法。

4.3思想和架构重复
不同模块的架构尤其是Java这块,几乎完全一致。

解决方案
不同模块之间的重复,多人共同制定一个标准,然后按照标准去做。
同一模块之间的重复,可以使用类的继承,提取工具类,设计模式减少冗余代码,也可以使用Hibernate等框架。
 
5.个人思想在某些方面比较保守,追求稳定,不想改变
5.1传递数字活动
沟通培训那个传递数字的活动,最开始小组成员已经确定了一个方案,后来小路提出了另外一种方案,我当时并没有赞成。其他人大多也没有赞成,因为短时间内完全改变一种方案,有难度,也不想改变。
5.2 SVN和Maven
项目最开始开发时,并没有采用SVN管理源代码,也没有采用Maven管理项目依赖和打包部署。
后来,为了方便集成和部署,迅速学习和使用SVN及Maven。

解决方案
如果可能,积极参与和推动团队意见和方案的形成。如果自己观点和团队观点冲突较大,保留自己的意见。
 
感言:在团队合作开发的情况下,树立沟通意识,及时沟通并且通过沟通形成一个 结论,两者即沟通过程和形成结论都非常重要。 遇到问题不可怕,关键在于解决问题的方法。

版权声明:本文为博主原创文章,未经博主允许不得转载。

© 著作权归作者所有

共有 人打赏支持
FansUnion
粉丝 57
博文 858
码字总数 825464
作品 0
丰台
高级程序员

暂无文章

Git 2.18版本发布:支持Git协议v2,提升性能

Git 2.18版本发布:支持Git协议v2,提升性能Git 2.18版本发布:支持Git协议v2,提升性能 新版本协议的主要驱动力是使 Git 服务端能够对各种 ref(分支与 tag)进行过滤操作。 这就意味着,G...

linux-tao
27分钟前
0
0
python浏览器自动化测试库【2018/7/22-更新】

64位py2.7版本 更新 document_GetResources 枚举页面资源 document_GetresourceText 获取指定url的内容 包括页面图片 下载地址下载地址 密码:upr47x...

开飞色
43分钟前
28
0
关于DCL双重锁失效及解决方案

关于DCL双重锁失效及解决方案 Double Check Lock (DCL)实现单例 DCL 方式实现单例的优点是既能够在需要时才初始化单例,又能够保证线程安全,且单例对象初始化后调用getInstance方法不进行...

DannyCoder
49分钟前
0
0
PowerDesigner 16.5 安装配置

PowerDesigner16.5破解版是一款业内领先且开发人员常用的数据库建模工具,PowerDesigner可以从物理和概念两个层面设计数据库,方便用户制作处清晰直观的数据流程图和结构模型,欢迎有需要的朋...

Gibbons
今天
0
0
mac Homebrew 指令积累

1通用命令 brew install [包名] //安装包 brew list //列举安装的包 brew info [包名] // 显示安装包的详细信息 mysql 相关 #启动mysql 服务 brew service start mysql my...

Kenny100120
今天
0
0
前端Tips: 创建, 发布自己的 Vue UI 组件库

创建, 发布自己的 Vue UI 组件库 前言 在使用 Vue 进行日常开发时, 我们经常会用到一些开源的 UI 库, 如: Element-UI, Vuetify 等. 只需一行命令, 即可方便的将这些库引入我们当前的项目: n...

ssthouse_hust
今天
1
0
大数据教程(2.13):keepalived+nginx(多主多活)高可用集群搭建教程【自动化脚本】

上一章节博主为大家介绍了目前大型互联网项目的keepalived+nginx(主备)高可用系统架构体系,相信大家应该看了博主的文章对keepalived/nginx技术已经有一定的了解,在本节博主将为大家分享k...

em_aaron
今天
5
0
Git 2.18版本发布:支持Git协议v2,提升性能

在最新的官方 Git 客户端正式版2.18中添加了对 Git wire 协议 v2 的支持,并引入了一些性能与 UI 改进的新特性。在 Git 的核心团队成员 Brandon Williams 公开宣布这一消息前几周,Git 协议 ...

六库科技
今天
0
0
Java8新特性之接口

在JDK8以前,我们定义接口类中,方法都是抽象的,并且不能存在静态方法。所有的方法命名规则基本上都是 public [返回类型] [方法名](参数params) throws [异常类型] {}。 JDK8为接口的定义带...

developlee的潇洒人生
今天
0
0
aop + annotation 实现统一日志记录

aop + annotation 实现统一日志记录 在开发中,我们可能需要记录异常日志。由于异常比较分散,每个 service 方法都可能发生异常,如果我们都去做处理,会出现很多重复编码,也不好维护。这种...

长安一梦
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部