2017年,是我人生中比较重要的一年。这一年,走出象牙塔步入社会;这一年,尚未佩妥剑,出门便是江湖;这一年,酒尚有余温,入口不识乾坤。总之,这一年,我开始参加工作。年轻人忌感慨,特别是任何领域都毫无建树的年轻人。废话不多说,开始总结这一年的工作。
     2017年的工作主要分为两个阶段实习期和正式工作。实习期从2017年2月末至2017年5月初,正式工作从6月毕业至今。
一、实习期
     实习期主要是熟悉部门的业务,了解工作的流程。起初,老大给我们讲了部门主要是做管网、燃气方面的系统,然后告诉需要安装的软件有哪些以及环境配置的流程。服务器采用微软的IIS,数据库采用SQL Server 2008,代码管理工具采用SVN。由于服务端代码采用C#编写,所以采用微软的VS编译。当时听到这么多软件都是微软的,我纳闷是不是还要兼容微软IE的6/7/8。然而,直到现在我还很少几乎没有写过兼容各浏览器的代码,只要谷歌chrome支持就ok了。对于前端开发人员来说,这无疑是福音!这样的弊端是导致当初死记硬背的那些主流浏览器兼容性问题遗忘的所剩无几。另外,工作任务的分配是采用tower,感觉这是一个非常棒的产品。
     部门的主要产品是结合GIS(Geographic Information System,即地理信息系统)为水司或者燃气企业提供解决方案,属于构建智慧城市的范畴。实习期间并没有接触到地图的配置,甚至是运维(后台管理)都几乎没有打开过。对于系统的整体框架也没有一个全局的认识,只是老大和师兄吩咐做什么,就做什么,缺什么工具或组件就寻求help。实习期间的前半部分是自己在现有的框架里搭一个学生表,实现增删改查,目的是了解backbone的mvc思想。backbone是mvc框架的鼻祖,mvc即model(模型)-view(视图)-control(控制器)。尽管现在前端流行mvvm,mv*框架,backbone渐行渐远,但是backbone的思想确实挺有意思的。实习之前没有什么项目经验,这个学生表捣鼓了差不多两个星期,没有后台,用localstorage存储数据,而且没有体现出spa单页应用的特点。后来,科长把他入职时做的学生表给我们展示了一番,其实当时很纳闷不就一个学生表的增删改查吗,干嘛还要用到路由,弄这么复杂。当时的自己很无知也很可笑吧。程序实质上是有思想的,如果程序单纯地只是为了实现功能,而不考虑可读性可维护性可扩展性,那就是一个码农而不是一个工程师。程序是一种艺术,原先将它写成了一坨shi,现在以后我想将它写成一首诗。
     学生表还没有来得及优化,就被分派到做实际的项目开发中,webgis3升级到webgis4。拿到任务的时候内心是很惶恐的,和另外一个前端实习生都很质疑就这么放心地把任务交给我们吗。事实证明,只要有大佬在,技术问题根本是不存在的。尽管其中也碰到一些坑,但是感觉得到上手项目是提高能力最直接最有效的途径。在功能做完后,原以为会有专门的测试人员,然而并没有。功能做出来后,研发和项目经理依次测试,项目经理测完就给客户部署更新。这样做方便研发人员对系统的整体把控更加到位,考虑更加周全。
二、正式工作
     正式入职后,每天到公司工作的第一件事情就是用svn更新代码,再用vs编译服务端代码,然后打开tower查看昨天遗留未解决的问题和今天待完成的任务。任务按照紧急程度次序做,优化任务研发需求可以延后,客户线上的bug优先解决。
     起初,拿到一个功能需求,我会立马就键盘啪啪的敲起来,在之后的工作中就反复地改代码。这是一种很愚蠢的做法。绍兴燃气项目的气量周报就是一个很典型的例子。正确的做法是首先要弄清楚业务流程,预想功能做好应该是什么样的,开发过程中要解决哪些技术难点。这种类似于写伪代码的思维模式对工作是很有帮助的。在那一次不断地挖坑填坑后,意识到这点后,这种错误明显地减少了。
     在老大帮我写过几个服务后,以后的服务都是自己参照别人的代码写。复制粘贴也是一种很好的学习方式。之前没有接触过c#,但是你会发现代码都是有套路的,只要遵循程序语言的语法,其他的无非就是对数据库进行读写(curd)。因为我们的客户是针对特定的水司部门和燃气企业,用户有限日活不多,所以不需要做压力测试,反正目前就我接触到的项目数据不是很大。编写c#的工作会用断点调试,crtl+alt+p附加进程就基本可以满足工作一般的服务开发。当然这是在框架搭建好的前提下。
     现在来说说前端这块。在我的理解中所谓的前端主要是负责渲染模板和注册事件。从服务接口传递参数获取到数据,将数据填充到页面中去;监听用户的操作(键盘和鼠标操作),仍然是去请求服务,返回数据。然而这个看起来很简单的道理,如果要结合实际的工作就不那么简单了,形形色色的前端框架做的大多是这个工作,但是殊途同归。考虑到工作的效率,项目的需求,在系统升级到web4的过程中,我们前端主要框架依旧沿用backbone。关于业务系统,我画了张流程图,链接: http://on-img.com/chart_image/5a557fb0e4b0a447b9999823.png 部门的系统(产品)有很多,业务系统、巡检系统、工单产品等。但是多个系统应用的是同一套基础框架,然后在主页框架上做各项目的扩展和配置。还有一件印象比较深的事是在翻新旧产品时,需要一个富文本编辑器。在网上找了好久没有发现一款自己想要的合适插件,于是自己动手写了一个,算是真正意义上属于自己造的第一个轮子。
三、思考与展望
     业余的时候,也研究过node.js,vue以及python、把这三者的基础知识过了一遍,也从github上克隆过相关代码,但是没有足够的动力坚持下来,浅尝辄止的后果就是花费了时间依旧感到很迷茫。js红宝书也过了一遍,还是很有收获的,emmm打算再把重要的章节详细的过一遍。
     从事自己喜欢的工作是一件幸福的事,把喜欢的事做的最好才能说明发自内心的热爱。无论怎样或好或败,2017都已经成为了过去时,2018要更努力。

转载于:https://www.cnblogs.com/jiangcheng-langzi/articles/8268636.html

2017年个人工作总结相关推荐

  1. 计算机专业直接工作简历,2017计算机专业工作简历

    如果是现场书写简历的话.字迹潦草,涂改超过3处,一般说明此人比效粗心.我一直觉得不仅相由心生,字也一样.大方开朗的人,字迹不会太小.而且文化程度越高,字迹不说特别漂亮,也不会难看到入不了眼. 2017 ...

  2. 小学计算机室每日管理日志,2017小学信息技术工作研修日志

    在小学信息课堂教学中,教师进行教学设计时要充分结合学生的心理特点和兴趣取向,努力为学生创造出充满趣味性的学习环境.下面是有2017小学信息技术工作研修日志,欢迎参阅. 2017小学信息技术工作研修日志 ...

  3. 公安计算机保密整改落实情况报告,2017年保密工作整改情况报告

    以下是出国留学网编辑为您整理的2017年保密工作整改情况报告,供您参考,更多详细内容请关注出国留学网. 关于保密工作整改情况的报告 贵局于2017年X月X日对我局保密管理情况进行了检查,并在保密工作整 ...

  4. 春考计算机教学总结,2017计算机教师教学工作总结范文参考

    2017计算机教师教学工作总结范文参考 文章地址:https://www.llysc.cn/content/49-155958.html 工作总结不能停留在表面现象的认识和客观事例的罗列上,必须从实践 ...

  5. 2016年个人工作总结、生活总结 和 2017年个人工作计划、生活计划

    个人总结,分别对2016年的工作生活总结和计划安排,让自己在可预见的目标路线上前进,为了自己也为了以后的幸福. 一.2016年工作总结 1. 2016年上半年,完成小步环卫的智能手环.后台.APP的设 ...

  6. 2017年度 个人工作总结

    一.本年度主要工作及成果/价值/不足(请按重要程度排列,如涉及具体数据的,请以图.表方式罗列) 自2016年9月19日以来,加入XXX已经一年多的时间了,这一年,承蒙领导一直以来的关照,对我信任.工作 ...

  7. 2017年前端工作小结,个人踩坑之旅,前端学习者的杂谈

    工作差1月就要满一年了,这一年中水平并没有直接性的提升,以至于初学前端时无法探究的诸多问题,依旧没有头绪,但工作就是的一次次跳坑和爬坑,它终究是带给了我一些... 关于工作,在一家创业公司(没人带-_ ...

  8. 记2017深圳寻找工作

    第一次来到深圳的时候是在170326,这一天记得还是比较清楚的是因为之前去了北京,但是也就呆了两天之后就回到了武汉,再两天事情妥当之后就到了深圳这边来了,这一个星期不到的时间,算是我出生以来位置变动最 ...

  9. 2017.2.23工作日志

    今天登录了一下,发现我之前的文章又被删除了,估计再也不能发布职位了. 以后用这个地方,写一下工作日志,记录一下猎头的工作情况,希望可以保留的久一些. 每天早晨都想早起到公司,但是,每天都失望.... ...

最新文章

  1. 车联网,挖掘数据价值
  2. 在Java中实现单例模式的有效方法是什么? [关闭]
  3. go reflect 取指针_Go的方法集详解
  4. 织梦{dede:channel}无子栏目不显示同级栏目的两种修改方法
  5. Dependency injection in .NET Core的最佳实践
  6. 无法向会话状态服务器发出会话状态请求。
  7. spring 的singleton 和prototype的区别和应用场合
  8. 改善代码设计 —— 优化物件之间的特性(Moving Features Between Objects)
  9. python如何制作一个工程软件_如何利用python制作一个解压缩软件-Go语言中文社区...
  10. 体验汉印T260标签打印机,让分类管理更简单
  11. STM32学习笔记---触摸屏
  12. java安卓模拟器和电脑通信_PC电脑和Android模拟器访问及模拟器之间tcp/udp通信
  13. offer拿到手软的大佬,研究生三年是如何度过的?
  14. PS磨皮滤镜Portraiture2.3简体中文绿色版32b/64b
  15. 计算机无法启动应用程序怎么办,应用程序0xc000007b无法正常启动解决办法
  16. 编写函数求解一元二次方程
  17. c语言程序编译与烧录,一种解释自定义脚本并烧录的方法与流程
  18. lex yacc 创建一个桌面计算器
  19. MySQL数据库基础 作者: SoumnsJ
  20. C# LeetCode 匹配子序列的单词数

热门文章

  1. Linux 3g上网卡 拨号,Ubuntu 3G上网卡拨号过程分析
  2. java seqlist_java_实现链表以及链表的测试类
  3. matlab避免使用for_MATLAB新手学习技巧第二波来袭
  4. DG Lecture 2 part 1: points, vectors, directional derivative
  5. 第一章 了解BaseApplication框架以及使用Ogre Application Wizzard
  6. python网页内容获取记录pkg
  7. iPhone4S安装Linux系统,别失望太早 iPhone 4S其实就是iPhone 5
  8. php定时发送生日模块消息_RabbitMQ之消息的可靠性投递
  9. 一等奖60万,首届“唱圆”杯AI翻译大赛报名中
  10. js html转盘点名,原生JS实现简易随机点名功能