热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【软工3】迭代一个人总结

10月中旬,“疯狂输出”小组选择了popush项目进行开发。到11月30日,我们顺利完成迭代一的工作计划,将popush应用于一个多人在线面试的场景,并完成了面试的主要流程。万事开头难!最

  10月中旬,“疯狂输出”小组选择了popush项目进行开发。到11月30日,我们顺利完成迭代一的工作计划,将popush应用于一个多人在线面试的场景,并完成了面试的主要流程。

  万事开头难!最初开发进展缓慢,其原因是我们对前端到后端的多个框架不熟悉。选择沿用去年学长们的代码,就必须了解node.js、socket.io、backbone,学习这些框架花费了很多的时间和精力。学完了之后,想要马上应用到开发中,还要有一个阅读前人代码的过程。往往是读了半天,不知所以然。为了能够尽快上手,我建议大家先做一个独立而简单的功能——题库系统,以此来熟悉整个框架。经过一周多,把题库做了出来,基本功能实现了一下,初步体验了整个流程,这对我们之后的开发帮助很大。

  之后要做面试功能。这个流程需要我们自己设计。在关于做成什么样的面试系统、流程如何控制、用户如何交互等各种问题上,我们进行了充分的讨论。这其中也经常有分歧、争执。我总是认为自己的观点比较正确,而且自己又是负责前端交互逻辑的,总希望按照自己的想法来,而不希望别人来设计,我去实现。界面的就不干了。最后我坚持自己的看法,并努力劝说队友接受。类似这样的分歧比较多,最终总有一方妥协,项目才能继续进展。我觉得,不管做什么功能,关键在于大家都事先商量清楚、目标统一、明确。

  此外,开发时遇到的问题就是BUG调不完。为了赶进度,代码写得很快,有时功能做完了,没能好好的测试,导致BUG积累太多。我对自己迭代一写的代码非常不满意。觉得其他同学讲得很对,每个人都应该对自己写的代码负责。根据这个原则,在后来,我写代码时十分注意代码质量,在写代码时提醒自己保持专注,并时常边写边测。

  不得不抱怨一下原有的backbone框架。实际上backbone本身确实有其好用之处,但是原有框架将backbone和socket捆绑在一起,耦合度很高,万一出了问题,很难看出是哪个部分有错误。view部分,事件监听-重渲染的机制在逻辑上并不直观,结合JS自身的解释执行机制,带来了非常多问题。到后来,我基本避免使用原来的一些处理方式,换用原生的JS,宁愿写得丑一些,以保证正确性和逻辑性。

  我负责view层部分,面试过程的复杂性使得这一部分代码量很大。这个过程是比较艰苦的,我想感谢老师,感谢助教,感谢队友。最后,我衷心祈愿迭代二能够顺利完成。

  


推荐阅读
  • vue使用
    关键词: ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • 20211101CleverTap参与度和分析工具功能平台学习/实践
    1.应用场景主要用于学习CleverTap的使用,该平台主要用于客户保留与参与平台.为客户提供价值.这里接触到的原因,是目前公司用到该平台的服务~2.学习操作 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 后台获取视图对应的字符串
    1.帮助类后台获取视图对应的字符串publicclassViewHelper{将View输出为字符串(注:不会执行对应的ac ... [详细]
  • WebSocket与Socket.io的理解
    WebSocketprotocol是HTML5一种新的协议。它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送 ... [详细]
  • Redis底层数据结构之压缩列表的介绍及实现原理
    本文介绍了Redis底层数据结构之压缩列表的概念、实现原理以及使用场景。压缩列表是Redis为了节约内存而开发的一种顺序数据结构,由特殊编码的连续内存块组成。文章详细解释了压缩列表的构成和各个属性的含义,以及如何通过指针来计算表尾节点的地址。压缩列表适用于列表键和哈希键中只包含少量小整数值和短字符串的情况。通过使用压缩列表,可以有效减少内存占用,提升Redis的性能。 ... [详细]
  • 模板引擎StringTemplate的使用方法和特点
    本文介绍了模板引擎StringTemplate的使用方法和特点,包括强制Model和View的分离、Lazy-Evaluation、Recursive enable等。同时,还介绍了StringTemplate语法中的属性和普通字符的使用方法,并提供了向模板填充属性的示例代码。 ... [详细]
  • STL迭代器的种类及其功能介绍
    本文介绍了标准模板库(STL)定义的五种迭代器的种类和功能。通过图表展示了这几种迭代器之间的关系,并详细描述了各个迭代器的功能和使用方法。其中,输入迭代器用于从容器中读取元素,输出迭代器用于向容器中写入元素,正向迭代器是输入迭代器和输出迭代器的组合。本文的目的是帮助读者更好地理解STL迭代器的使用方法和特点。 ... [详细]
  • node.jsurlsearchparamsAPI哎哎哎 ... [详细]
  • loader资源模块加载器webpack资源模块加载webpack内部(内部loader)默认只会处理javascript文件,也就是说它会把打包过程中所有遇到的 ... [详细]
  • RN即ReactNative基于React框架针对移动端的跨平台框架,在学习RN前建议最好熟悉下html,css,js,当然如果比较急,那就直接上手吧,毕竟用学习前面基础的时间,R ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
author-avatar
手机用户2502927973
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有