软件随想录-

  这篇文章就是自己想到哪写到哪了,关于自己对于软件的一些思想片段。

  关于SQL,sql是一个被低估的技术点,大部分程序员自嘲自己是crud程序员。其实我用过nodejs,php,java等,单纯来讲web项目,确实就是对数据库的操作。增删改查是个永恒的话题。尤其接手一个新项目的时候。我的习惯就是先看表结构,大概知道具体的业务是干什么的。然后如果是app或者网站,自己就用一下,然后大概就知道,每个功能会投射到具体的关系型表结构上。如果涉及到重构的话,那么自己用浏览器或者Charles等抓包软件,自己把接口参数和返回结构梳理出来,整理个接口文档。基本老的代码,不用看了,自己具体也知道项目是干什么的了。从这个层次来看,确实一个项目无非就是表结构和接口文档。中间的代码无论是php,Python还是java,我想大概逻辑都是一样的。如果上手一门新语言,那么先要学会的就是调试,自己想清楚具体的表结构和接口文档,那么拿下这个项目也是不在话下了。

  关于应用层的思考。目前从事大数据工作,Hadoop,Spark,kafka,ElasticSearch等技术都有再用,实际上了,这些都是工具。本质来讲应用层的东西,使用来看,自己跟着官网下来,搭建环境,写一下api调用,基本也算能用了。无论什么新技术,这样跟下来基本也没啥问题。遇到问题,无非百度,Google等,或者各种技术论坛或者技术群问问题,总能解决。从这个维度来思考,实际上技术的门槛并不高。你跟一个会这门技术使用的人的差距,也许就是一天或者多看一点东西,多操作一些东西。我想我接触了这么久的软件开发,以及和很多人共事,大部分人可能都是这样,学习一门技术,然后应用它,遇到问题了,自己搜答案解决。但是这些东西很浅,不足以构成核心竞争力。

  说了上面两个观点,那怎么办了。我说下我现在的看法。做事情和方法论。我们每天都在做事情,但是做事情本身也有方法规律可言。那么再完成事情本身的情况下,我们要不断优化完成事情的流程。正常遇到了问题,解决了,但是为什么会遇到问题。说明我们还是有知识的盲点。所以,要建立自己的体系,然后在体系内思考,遇到自己的知识盲点,那么补起来,加入到自己的知识和思维体系里面。人的思维和知识体系本身就是一个需要迭代的东西,只有这样,你才能不断进化成更好的技术人员。

  最后,我们怎么去安排自己的学习工作了。还是分两种学习的目的,一种是做项目或者工作任务,那么就以完成项目为目标。还有另一种是纯知识点的学习,这种的产出就是思维导图或者核心笔记或者面试题。总之,一定要带着解决问题或者有产出的方式去学习和做事情。为了学习而学习,为了工作而工作,肯定不可取,也只会越来越迷茫。不然怎么度过自己的职业危机了。

  加油,不要去逃避自己遇到的问题,直面它们,解决它们,这个世界是没有捷径的,看似最困难的那条路,也许就是捷径。

猜你喜欢

转载自www.cnblogs.com/QuestionsZhang/p/11520605.html