唯有自己的思想需要不断重构

  工作六年,积累的不只有技术,记得大二不喜欢自己的专业,经常跑到学校图书馆借书,印象最深的要说《网站重构》,书很厚,但内容却出奇的有趣,不是一本枯燥的纯技术教学书籍,第一次了解到浏览器历史,一部战争史,很有意思,之后课堂上我都是坐在最后一排,老师讲课,我看自己的兴趣;《网站重构》之后,开始看了不少前端开发相关的书,哦,对了,还有一本《深入浅出ajax》也很有趣;

  

  当然了,那时候也做过一些网站:组队参加学校的南粤杯网页设计大赛,拿下了一等奖,后来是学校的专业网站,还有龙洞校区的后勤部网站;之后也接了一些学校外面的外包项目,钱不多,但真的很充实;以为掌握了不少的技能,少年狂傲,总觉得自己很厉害,临近毕业的时候,各大公司开始校招,我的目标都在大的互联网公司,尤其是TX,在我眼中触手可及

  第一次看到了自己的无知,在TX的校招面试中,被“打得体无完肤”,很受打击,才发现自己所积累的远远不够;之后去了第一家公司,开发人员加上我只有三个人,是的,创业公司,不,准确来讲,一个创业团队;在里面我几乎是看不到未来,在这个小团队里,我用得上的技能就是我在学校时实践得来的能力,偶尔总会想起为何当初的那一场面试我会这么糟糕;

  毕业后几个月,在同学的推荐下去了深圳,公司比以前的更大了,薪水也有增长,用到的技能依然是以前所熟悉的能力;开始意识到,只依靠工作难以提高自己的技能,我需要跟更多的人交流,更专业的平台,让自己的技能更加专业化以及系统化,然后实践,才有竞争力,当时我也有更荒唐的做法,通过去一些公司面试来验证自己的进步及不足;

  后来,我去了TX,那时候没有了刚毕业时的狂傲,也意识到自己要的并不是能进BAT,而是真正的技能提升,我好胜,越得不行,越要尝试,迅速让自己成长起来,变得比周边的人都强,比不过的,也要拉近距离,在斗争中成长;

  好景不长,喜爱的战场消失了,京腾合并中,顺理成章地进了JD,平台变了,经过一些积累,有了一些机会,在JD里面当上了导师,指导新员工;后来也是基于自己的考虑,决定要离开到广州发展,在离开JD的时候,好朋友推荐我去WX事业部,WX那边也直接在微信上面问我要不要过去,也是在广州,有争扎过,但是最终没有去,而是进了VIP;

  主导M站的前端重构工作,这是进VIP后一个最有意思的工作,说实话,这几年前端变化非常快,按照自己的经验,设计了全新的LEGO式架构模型,作为这次M站重构的前端架构师,进行M站的重构,时间比较长,但能够平稳地进行,到目前为止也基本完成了,过程中,遇到了很多问题,破除了很多障碍,后来也在公司年中战略会议中,做了15分钟的演讲;这两年,也在公司内部做过一些分享,也在外面参加过一些分享活动;真的很有意思;曾经两次回到大学城校招,找回了当初自己的感觉,其实我发现毕业生很多都很优秀,只可惜招聘名额很有限,没法博爱,要残忍拒绝很多求职面试者;自己有类似的经历,不过竞争再大,也只能更加努力,找准方法,但愿他们后来都能找到更好的工作;

  这六年,积累的不只有技术,更多的是方法,提升自己的方法,无论哪一种方法,只要适合自己足矣,也是后来才总结出当初《网站重构》给我带来的感受:唯有自己的思想需要不断地重构;拥有的能力是暂时的,需要跑好这一场马拉松。

时间: 2024-10-14 00:38:11

唯有自己的思想需要不断重构的相关文章

【重构.改善既有代码的设计】8、重新组织数据(更优雅的面向对象)

重新组织数据 Self Encapsulate Field(自封装值域) 自封装值域 就是 getter and setter,这就没啥好说的了. Replace Data Value with Object(以对象取代数据值) 比如:不用字符串表示电话号码,而用一个电话号码的类表示. 好处:更容易扩展,比如:以后需要一个函数来提取号码中的区号时,就可以直接写在这个类里面了. Change Value to Reference(将实值对象改为引用对象) 引用对象可以是指针.引用.下标等. 好处:

发布Hessian服务作为服务内部基础服务

摘要:Hessian经常作为服务内部RPC工具来使用,速度快效率高.重构代码的核心思想就是把共用的代码段提出来,使代码结构优化:架构设计类似,把基本的共用的服务提出来,使架构优化.下面讲述一下我在具体应用中使用Spring3.2.4在Tomcat7.0.47下发布Hessian4.0.37服务的过程. 关键词:Spring, Hessian, JAVA, 架构设计, Hibernate, Tomcat Hessian经常作为服务内部RPC远程过程调用工具来使用,速度快效率高,我们的项目也不例外的

以一个简单的项目来学习面向对象编程(设计模式和多线程)

下面的项目是两年前学校老师布置的一个小项目,当时自己用了一种很笨拙的方式实现了,现在用面向对象的思想和多线程重构这个项目. 问题描述: 西宝高速仿真模拟 西安市到宝鸡市之间是我省主要的高速公路客运路线之一,经过简化后的客运路线端点.中途停靠点和里程如下图所示(括号里是简称,里程的单位是公里): 限定条件 (1) 从XN始发至BJ的客车和从BJ始发至XN的客车均有两种车型:沃尔沃(限定乘客人数为40人):依维柯(限定乘客人数为21人).沃尔沃的速度为2公里/分钟,依维柯的速度为1.4公里/分钟.

戏说移动江湖开发历程

大主线 细说移动开发历程 大技术 组件化开发 1.组件路由 2.组件配置动态加载 3.组件骨架架构 插件化开发 1.静态插件化 2.动态插件化 细节雕琢 1.网络层的优化和架构* 2.动态埋点的实现* 3.技术层架构(MVP,MVVM等模式) 大天地 后续按照大技术块各个技术点深入浅出的分享出来,请订阅关注. 前言 本文阅读需要8分钟. 你可能的收获: 理解整个公司移动开发的基线和主线 学会移动开发组开发过程碰到问题和解决方案 学会移动开发过程各个技术的细枝末叶 希望能给读者开发项目有点启发和思

Java 8——接口中个的默认方法和静态方法

在Java SE 8之前,interface只是事物的抽象,用来定义统一的抽象事物和描述事物的抽象行为和属性. 但是在Java SE 8中,增加了可以在interface中增加默认实现的行为和事物的静态行为. 一.为什么? java迭代了如此多的版本且主要采用的都是演化的思想而非重构(为了保证与历史的兼容性). 这样就容易出现很多比较难以处理的问题,接口在发布之后就已经被定型,除非我们能够一次性更新所有该接口的实现.比如某个历史接口有很多实现,需要在历史接口中增加一个行为,那么久需要在它的所有实

月下无限连?拒绝无休止switch!

拒绝无休止switch 一.前言 前天碰到个需求,其实很简单,就是Excel导入,Excel模板长下面这样: 按我平常的逻辑是这样做的: 用文件输入流读取Excel,根据Excel的版本生成不同的对象,比如XSSFWorkbook或是HSSFWorkbook new一个工作簿,读取内容 按行遍历,按cell单元格读取 读取到值后,根据业务逻辑进行处理,最后存入entity 这个需求按这个逻辑下来,循环取值的代码是这样的: 1 if (CollectionUtils.isNotEmpty(rowL

编程思想┊从实例谈面向对象编程(OOP)、工厂模式和重构

有了翅膀才能飞,欠缺灵活的代码就象冻坏了翅膀的鸟儿.不能飞翔,就少了几许灵动的气韵.我们需要给代码带去温暖的阳光,让僵冷的翅膀重新飞起来.结合实例,通过应用OOP.设计模式和重构,你会看到代码是怎样一步一步复活的. 为了更好的理解设计思想,实例尽可能简单化.但随着需求的增加,程序将越来越复杂.此时就有修改设计的必要,重构和设计模式就可以派上用场了.最后当设计渐趋完美后,你会发现,即使需求不断增加,你也可以神清气闲,不用为代码设计而烦恼了. 假定我们要设计一个媒体播放器.该媒体播放器目前只支持音频

yarn对mapreducev1的重构,根本的思想是将 JobTracker 两个主要的功能分离成单独的组件,这两个功能是资源管理和任务调度 / 监控。

为从根本上解决旧 MapReduce 框架的性能瓶颈,促进 Hadoop 框架的更长远发展,从 0.23.0 版本开始,Hadoop 的 MapReduce 框架完全重构,发生了根本的变化. 新的 Hadoop MapReduce 框架命名为 MapReduceV2 或者叫 Yarn, yarn对mapreducev1的重构,根本的思想是将 JobTracker 两个主要的功能分离成单独的组件,这两个功能是资源管理和任务调度 / 监控. https://www.ibm.com/developer

Android 项目代码重构思想总结

代码重构的根本思想是模块化.灵活性.高内聚.低耦合. Android 项目代码重构: 将与业务逻辑无关的公共基本资源.工具类等等抽取到一个lib 工程中,主程序中只放与业务逻辑相关的代码和工具类: 1.将公共资源类进行抽取,包括: string.xml color.xml styel.xml drable  中自定义的shap .selector.anim 这些资源基本是和程序业务逻辑无关的,将其放到主工程中只会增加代码量影响对程序业务逻辑的理解. 工程项目所特有的资源可以采取继承于lib库工程