小白经验贴:思考问题的方式比“经验”之说更重要

全文共2879字 , 预计学习时长8分钟
小白经验贴:思考问题的方式比“经验”之说更重要文章插图
图源:unsplash
不要仅以经验去评判一名开发人员 , 这远远不够 。 正如谷歌CEO所说:“我雇佣了比你们更有经验的开发人员 , 但你们在这里的工作效率比我雇佣的任何人都要高 , 取得的成就也更多 。 ”
不管你是有20年的实际工作经验 , 还是刚刚进入科技行业 , 没有实习经验只有一个大学学位 。 无论是过去还是现在 , 当涉及到效率、生产力和原始编程天赋时 , 多年来积累的知识并不绝对重要 。 以资历去判断一名开发人员的聪慧程度或他是否值得尊重 , 这并不科学 。
笔者刚进入Salesforce开发顾问行业时 , 完全不知道如何为这个平台实现解决和集成方案 。 现在 , 笔者正在创造公司的记录 , 我被认为是行业中最有前途的开发人员之一 , 经常被招聘人员和其他企业主联系 , 几乎完全依靠自己的力量来设计解决方案 , 并且没有失败过 。
在进入这个行业后 , 笔者只用了三个月的时间就超越了同行 。 在最初的三个月里 , 我们几乎都在坚持不懈地训练和学习 。
· 我没有天分 , 不算是有天赋的开发人员 。
· 我不是很懂编程 。
· 我无法凭直觉在一瞬间找到解决方案 。
· 我还有很多要学 。
以上这些大多数人拥有的特质 , 我都具备 。 在本文中 , 笔者将确切地告诉你 , 是什么让我脱颖而出成为一名开发人员 , 并最终以惊人的速度完成编程任务和项目——其他更有经验的开发人员无法跟上的速度 。
小白经验贴:思考问题的方式比“经验”之说更重要文章插图
尽早建立最佳编码实践回顾为获得计算机科学学位所花的全部时间 , 笔者认为自己是一个不合格的程序员 , 我几乎不知道如何解决实际的编程问题 。
笔者非常想解决编程项目分配的任务 , 现在我可以轻松用一个晚上的时间完成 。 对笔者来说 , 理解实现一个解决方案所需要的逻辑 , 甚至理解完成一项任务所需要的面向对象原则 , 都是非常困难的 。 如果没有谷歌 , 笔者肯定不会继续钻研计算机 , 而是会去攻读哲学或商业学位 。
但某一个时刻 , 笔者开始发现自己的技能出现转变 。 通过开始观察编程语言实际工作的方式、具体设计原则的使用和实现方式、设计代码时要避免的事情以及所采用的最佳实践 , 笔者注意到了自己处理问题方式发生的转变 。
【小白经验贴:思考问题的方式比“经验”之说更重要】笔者开始用所学到的原则来设计和思考解决方案 , 这让我以一种更有目的性和方向性的方式来组织我的想法 。
小白经验贴:思考问题的方式比“经验”之说更重要文章插图
图源:unsplash
从编程的角度来说 , 对笔者最重要的书籍是Robert C. Martin的《干净代码:敏捷软件工艺手册》 , 强化了这些原则并将它们深记于心 。
其中函数命名、简化代码以及构造类的方式 , 在开发方式中发挥了很大的作用 。 让我真正地退后一步 , 思考所写的内容 , 思考该如何组织代码的——注意内容是否合乎逻辑 , 是否具有可读性 。
关于可读性、设计简单性 , 更重要的是解决一个需求往往引发快速生产不会过时、可重用、可扩展的代码 。 也就是说 , 作为一名程序员 , 我们应该了解最佳编码实践、所使用的语言或框架的限制、可靠的原则、设计模式和快速应用 。
仅仅编写有效的代码是不够的 , 还需要编写容易理解的、模块化的、能够经受时间考验的代码 。 这需要更多的思考 , 但它将会使你不断地构建并为你创建的应用程序产生更多的价值 。
小白经验贴:思考问题的方式比“经验”之说更重要文章插图
将编程视为创作艺术的工具编程常常被视为一种神话般的技术——几乎就像一种外语 , 很难翻译 , 只有受过良好训练的人才能优美地书写它 。 但事实并非如此 , 你需要重建对编程的看法 , 不仅仅把它看作是一门技术工艺 。
我看待代码的角度 , 与画家看待画笔、机械师看待它的扳手、木匠看待它的锤子一般 。 代码是一种工具 , 可以通过它推动实现最终目标和架构解决方案 。
伟大的艺术家区别于常人的是他们运用工具的能力 , 这些工具与他们的思想和想象力相结合 。 那个艺术家和一个艺术家在同一个位置开始 , 使用同样的工具——空白画布、颜料和画笔 。 请记住 , 当你茫然地盯着空白的IDE时 , 试着编写第一行代码 。