3月码代码总结

作者: 闭眼卖布 | 来源:发表于2017-04-06 01:17 被阅读86次
2017年2月2日摄于东栅

从3月1日开始工作,到上周周五,第一份工作的第一个月在码代码的过程中完美度过。一个比较大的不足就是没有每天写总结,虽然公司有一个每天要写的 daily report,但基本是简单记录了一天里做了的事情,而不是做完这些事之后的心得体会,没有深入反思,也就没有深刻的印象。在这月终,必须对上个月进行一个整体的总结。

这个月主要分成四个阶段:

  1. Catch up assignment,主要是 HTML & CSS, SQL, JavaScript, JQuery 的练习,大部分是之前比较熟悉的内容,用了一天半,完成任务。

  2. First assignment catalog,这是我们公司软件开发很重视的一点,用 catalog 的形式,思考设计好要软件,再进行开发。主要是从这几个方面去阐述:

    • 商业运作的场景
    • 运作过程中会碰到的问题
    • 用户名片(具体的中文名叫什么来着?):
      • 用户是谁?
      • 用户完成任务的场景
      • 用户要完成什么任务?
      • 用户完成这项任务的期待是什么样的?
      • 这个软件能够如何帮助用户完成任务?
    • 在使用软件的理想情况下,商业运作的场景会是什么样的?
    • 软件有哪些功能?
    • 软件能带来哪些好处?
    • 针对每个好处罗列具体的功能,以及每个功能所能带来的好处。

    这部分的内容,有点像是之前 IS3102 Enterprise Systems Development Project 要求写的 report 的一部分内容,但是像是产品经理做的用户需求分析,一直对产品经理很感兴趣的,有接触过一些产品经理要写的文档,所以写的过程中考虑的比较详细,加上有之前入职朋友的提醒,有幸成了极少数能在第一个次审核就通过的。

  3. First assignment implementation,开始用在第一阶段里面复习的语言写第二个阶段设计的程序。捋起袖子,直接开撸。比较集中开始写代码是从大二的暑假开始,假期的实习用 Ruby on Rails 写全栈,前端用的 JQuery,半知不解的边查边写完成了任务;IS3102 用的是 Primefaces,集成好了的包,除了极个别,不用直接使用到 JavaScriptJQuery,在以色列实习时,基本都是用 python 写后端。零零总总的经历,虽然用过一点,自己也看了一些这方面的材料,但没有大规模的用 JavaScriptJQuery 写过,直接开撸的后果就是,不熟悉代码组织的模式,在尽量的保持不重复代码,分成了好几个文件来写(和其他人一个文件几百行相比)的情况下,代码越写,越是乱成了一锅粥,也没有停下来好好想想,怎么做比较好,写了一个多星期,差不多把系统的初始版本都写完了,边写边踩坑,进度还算可以。提交审核,整体上没有大问题,但一些之前没有提到的细节上,需要做一些修改,比如:表格没有验证输入内容,表格没有分页和搜索等。

  4. First assignment implementation improvement,在原来的基础上,简单的加上要求的新功能,可能最多3天就能够写完,却是不能忍受乱成一团的代码,在 Udacity 上看完 Product Design 的课后,正好看到了 JavaScript Design Pattern。花了一天的时间,紧凑的看完了视频,跳过了用 KnockoutJS 那部分,觉得之前试的那种模式已经够用了,就开始重构原来的代码。这个的模式大概是这样的

    $(function() {
        var model = {
            init: function() {}
        };
    
        var controller = {
            init: function() {
                model.init();
                view.init();
            }
        };
        
        var view = {
            init: function() {}
        };
        controller.init();
    }());
    

    本来以为是个不错的模式了了,一个页面,放一堆的这些东西,但是在写下一个页面要用到这个页面里面的函数时,麻烦就出现了,没法使用到,只能用 window.modules = {} 这个方法,先将这部分的代码存到 module 里面,再到另外一个页面去引用,显然,不合理。不经意和同期的越南小哥聊天时,讨论了下代码,他用的是 MVC 模式,恍然大悟,这不就是和 Ruby on Rails 组织代码的模式一摸一样吗。。。本来想跳过的那本书 JavaScript Design Patter 还是得硬着头皮翻一遍。第二天,就开始按照 MVC 的机构将之前写的所有代码全部重构,加上新的功能,又写了一个多星期。不过以这种模式来组织代码,清晰明了,重复利用率高,维护和修改也比之前来的容易的多。

    然而,这个坑,还不能说完全跨过了这个坑。将这个页面作为一个 View 的方式还是不够模块化,一个长得一样的 List 或者完全相同功能的 分页功能 要在多个页面使用时,就让我意识到,在动手写代码之前,没有好好设计,会碰到一些早就改先想清楚的问题,比如说一个模块被多次重复使用时,每次使用都有一些特殊的使用方式,要如何处理。写完后改代码的质量和效率,远低于设计好再开始写的质量。深刻体会到了《构建之法》中提到的那点,有经验的程序员,前期设计和思考的时间长,真正开发时用的时间反而比较短。

    Senior Student: 大四学生;SDE:工作三年以上程序员

写了一个月代码,整体感觉还是有点疲惫和乏味,一直都在不断的学习新的内容,而且都是实打实的进步,但是要学要掌握的东西还是太多,不是 CS 专业毕业的码农,还是有些劣势的。

下个月,每天进行一个新加点技能的总结,积累和沉淀写东西。


相关文章

  • 程序开发总结与思考

    码代码的能力跟码代码的时间不成正比,原因方方面面,多总结多思考可以时刻去校正,是不是在正确的路上 现在对码农的理解...

  • 8月码代码总结

    8月如常,继续用难用的前端框架力求写好代码。 翻了下每天的记录,8月整体如常:开发新功能,修修自己和别人写的 bu...

  • 7月码代码总结

    转眼8月上旬过完了,7月的欠债,也该还了。 码代码 7月是进公司后完整经历的第一个开发周期。按照22天的工作日来算...

  • 3月码代码总结

    从3月1日开始工作,到上周周五,第一份工作的第一个月在码代码的过程中完美度过。一个比较大的不足就是没有每天写总结,...

  • 4月码代码总结

    或许更适合慢热的你 1 公司方面,完成了两项任务:月初完成了第一个开发任务,用 JavaScript 按照 MVC...

  • SUNMI

    SUMIN扫码和打印总结 1 调用扫码驱动 1 调用sumins驱动代码如下: 2 扫码完毕后我们直接走的方法是o...

  • 16位代码段与32位代码段的区别

    16位代码段与32位代码段的区别: 16位代码段与32位代码段的区别如下: 16位代码段最长只能为64k,段内偏移...

  • 进阶18-瀑布流布局与木桶布局

    题目1代码效果 题目2代码效果

  • jpa事务管理

    1注解2代码 1注解 2代码

  • 12-03代码总结

    12-3 ①HTML是什么 -超文本标记语言(文本,文字)—— 超文本 文字 图片 视频 音频 超链接 CSS是...

网友评论

    本文标题:3月码代码总结

    本文链接:https://www.haomeiwen.com/subject/gvdfattx.html