sql、js--暑假实习感想

一、实习过程

不知不觉中,暑假已实习了一个多月,感觉自己收获颇多,从7月4号开始正式进入三英特实习,开始对于这些都充满着期待,于是第一天上班早早起来,穿着稍稍正式的着装,到学校附近等班车,班车是一个大巴,可以坐许多的人,来到公司办理入职手续,便安排我到一个比较小的办公室,八人间,其中5个男的是做开发的,一个女的做产品,另外就是我和另一个女实习生,发现开发男多女少真不是传言,今日一见果真如此,对于工作环境还是挺满意的,每人有一台电脑和一个抽屉,而且我所在的办公室也挺热闹的,并不是别人所说的一天只埋头敲代码,而是大家有时会聊聊天,讲讲自己最近所知道的新鲜事,大家在一起有说有笑,挺欢快的,再者我们办公室也挺受欢迎的,可能是因为牛人比较多,经常有人请教他们。我们初来这里,跟着一个比较厉害的师父,他首先给我们讲了公司开发所采用的相关技术,然后叫我们先把需要使用的工具安装好,花费了一天地时间,之后我们熟悉他们的开发环境,通过做一个小小的功能;当然我们也有参加公司的入职培训,给我们讲解公司是做什么的,公司的主要架构,以及公司以后的发展方向;对于这些花费了一周的时间,也许是第一次将自己所学的理论知识进行实践,接受能力有些慢。接下来的日子就是做真正的商用功能,由于我被分配到财务组,因此免不了与账打交道,主要就是做一些财务报表,然后对一些已完成的功能做一些完善,修改bug,对所有的功能加入一些验证,对金额的输入加入了一些限制,日期验证等,对于已变动的界面需要提示进行全局的控制。工作之余,周末也有出去爬爬山、农家乐,出去运动运动,劳逸结合。

一、实习分析

虽然只有一个多月的实习,但自己收获的知识却是无价的。由于自己初入公司,对许多东西都不了解,因而在开发功能模块的时候,遇到了许多的问题,下面我想就自己而言,认为比较有意义的问题进行分析和总结:

1.账款明细显示问题。

a.问题形成的原因:根据需求,希望数据显示可以以每个账户为单位,根据时间段查询,先显示一行期初余额,(表示在其实日期前的该账户的剩余余额),再显示该账户在这一个时间段的明细情况,最后对于金额字段做个小计,每个账户都按期初,明细,小计这样显示;起初觉得不是很难,但发现一次显示的不止是一个账户,对每一个账户都要进行小计和显示期初,因此问题由此形成。

b.解决对策:由于这个功能比较复杂,而主要实现又在于把SQL语句写好,因此改变了许多次。

初始对策:将初始余额与明细,小计分开计算,最后再用UNION连接,这种方法实现起来也还好,但是由于初始与是明细分开的,因此对于小计也就缺了初始余额,因此只有在界面上处理。

优化对策1:由于对小计为0的账户,可以不显示,而对于之前的初始跟小计是分开的,因此对SQL语句进行优化处理,这次选择的是先将初始余额和详细记录进行合并,最后再根据它们的ID进行合计,这样就可以解决这个问题。

优化对策2:由于有时候办理一次业务会出现多条记录,二需求需要的是显示它们的合计,即只显示一条该业务明细,因此对SQL语句又要做相应的优化,为了避免出重复的,因此在业务编号字段加了一个distinct关键字,再对金额字段进行sum求和,然后再进行小计。

优化对策3:由于之前排序是按主键ID排序的,而对重复业务合并,便不能按ID排序,故采用按创建日期和业务编号排序,因此在解决该问题时,先初始金额,然后对相同业务编号进行合计,这两个连接合并后,再按创建日期跟业务编号进行排序进行小计,以免累加出错,最后再按日期,业务编号排一次序(由于要按账号进行分组)

小结:面对每次解决一个问题,再出现一个问题时,不要烦恼,要淡定,想办法解决,直到把该解决的问题都解决了,那么你将会觉得这个过程让你收获了许多,这个问题让我获得最多的是对SQL语句了解了许多,又多学会了分组函数group by grouping sets,还学会了累加函数可以用over,同时也锻炼了自己的耐力,面对问题,不抛弃,不放弃,迎难而上。

2.A,B,C三个下拉框只显示其一问题。

a.问题形成的原因:在开发阶段,开发人员之负责实现功能,对于一些界面处理没有太多的功夫;按照要求在数据库保存数据时只能保存在A,B,C三个中的一项,为了避免不必要的麻烦和错误,希望在一开始对界面进行处理。

b.解决对策:为了避免三个保存多个,思路是这样的:如果由一个选中,二两个可不选,如果没一个选中,则三个都可以选,这样就可以避免多选,没选一个在保存时需要提示。

c.小结:主要采用的是JS技术;利用它们的ID给它们设置readonly。对于新增加和修改是同一个页面,因此,在一开是加载页面时,就需要对它们的显示做相应的设计。

3.金额输入问题。

a.问题形成的原因:根据需求,且用户的体验,希望在输入金额项时,不许输入非数字字符,且在整数位超过10时,也不许输入,小数位不许超过两位。

b.解决对策:先对非数字进行处理,然后每输入一个字符,触发一个onkeyup事件,将整数部分,小数部分取出,然后分别对长度进行限制。

c.小结:对触发事件有了更深层次的了解,而且对正则表达式也熟悉了许多,最重要的是遇事要冷静,慢慢想,思路清晰,逐步解决。

4.界面变动需弹出提示框问题。

a.问题的形成:在一些单据显示详情时,由上一张单,下一张单的跳转,然而如果当前单据修改,未保存的情况下,点击上一张单,就会毫无提示,直接到上一张单,而开始的修改操作无效,这样不符合用户的需求。

b.解决对策:

原始对策1:把界面可变的区域初值取出,与点击“上一张单”这一可界面可变区域的值再次得到,两次做对比,如果出现一个不同的立即弹出提示框。

优化对策:观察界面的设计,发现每个可变区域所在的div中都有一个文本框,因为可变可在JS文件,直接对input标记做一个change事件,就可以达到上述同样的效果,这种方法更加简便。

c.小结:当有思路时,不要急于求成,用大脑想想,还有没有更加简便高效的方法,因为再多想想与花费更多的时间在复制,粘贴上,显然前者更有意义。

一、实习感言

实习期间,让自己接触了不同的人和事,了解许多以前从未经历的事情,在技术方面,对有些技术熟练了许多,还掌握了一些新技术及一些技巧。再向一些比较厉害的人请教问题,他们能快速的为我解答,并且其他方面的知识也懂得许多,这让我渐渐的意识到,并不是你想学什么就只学什么,对于其他方面的知识也要有所了解,知识面要更广泛些,不要把自己只固定在一个小圈子里,学习是一个漫长的过程,面对困难,不要畏惧,要沉着,首先自己独立思考,实在不清楚再请教他人,这样会让自己体会得更加深刻些。在公司实习,也让自己渐渐的体会到要学会忍让,学会沉淀自己,特别对于刚入社会的人而言,不要自以为是,学会听取他人的观点,从中汲取对自己有价值的东西,即使别人表达方式你不太喜欢。一直以来都期望着去公司上班,那样的生活节奏感觉挺有意思,这次实习终于将我所期待的付诸实践,这一个多月的时间每个工作日都是早上8点半上班,下午5点半下班,由于我们想学更多的知识,在这段时间便加班比较多,有时觉得有些累人,但想想自己收获了许多,便觉得这些付出是值得的。总之,这段时间对我而言将是一笔宝贵的财富,虽然由各种的酸甜苦楚,自己还是坚强地挺过来了,面对困难,一笑而过;面对挫折,用于直前,不放弃。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值