面试官:同学,说一说面向对象有什么好处?

神仙开发者:我觉的面向对象编程没有什么好处。

面试官:为什么(摊手、问号脸)?

神仙开发者:因为在面向对象的时候,我对象总是跟我说话,问我在淘宝上挑的衣服哪个好看,没有安静的适合编程的环境,所以面向对象编程没有好处。

面试官:好的,今天就到这里吧,回去等通知吧。

最早之前的开发都是面向过程编程,直到高级语言出现,使得面向对象编程普及开来,到现在为止,不管前端、后端,统统都是面向对象编程。当然这都是正经的说法,随着互联网的发展,关于程序员的传说也越来越多,下面几个面向 XX 的编程,也是真真假假自在其中。

面向其他开发者编程

面向其他开发者编程,什么意思呢。有些同学天然的认为,刚刚正式进入一个公司从事开发岗位,一定要有个高手带,没人带就没法开始编程。

还有就是在遇到问题的时候,第一反应是求职于同事,或者微信、qq 等技术群,而不是想要自己想办法。往往在求助他人碰壁的时候,间歇性的进阶到面向搜索引擎编程,碰壁次数达到一定次数后,量变引起质变,会进入到面向搜索引擎编程的稳定态,也就是下面的面向搜索引擎编程。

关于这种现象,可以看这篇关于提问的文章。为什么你提的问题没人回答

面向搜索引擎编程

面向搜索引擎编程又分为高阶和低阶两种,高阶用户面向 Google 编程,低阶用户面向百度编程。

现在互联网这么发达,90% 的问题可能都能通过搜索得到答案。在互联网还没有这么发达的时候,能帮助开发者解决问题往往就是几本书,如果书上找不到解决办法,那就靠调式、读源码还有运气了。

面向百度编程

有些同学碍于 qiang 的阻止,或者一直以来的习惯就是用百度。所以遇到解决不了的问题就开始 baidu.com 了,有问题,上百度。大多数时候,百度都不是那么好用,除了有永远排在顶部的各种广告之外,就是 某SDN 在百度的权重那真是异常的大,好多文章自然不必说了,最起码充斥着很大一部分的垃圾文章。

面向 Google 编程

这一般都是由面向百度编程的同学进阶来的,当你有一天,或者说迟早有一天,你终于忍不了百度对于技术问题的无解了,那就自然而然的到了 Google 这里。不瞒各位,我就是面向 Google 编程的忠实实践者。一般碰到不是那么明显的问题,第一个想法就是 Google 一下,一般是输入关键字后,一口气打开第一页结果中的7、8 个,然后基本上扫一眼就知道哪个是能解决的,哪个是无关或者扯淡的。这个时候,如果碰到英文页面,最好有 Google 翻译配合使用,效果更好呦。

其实不管是百度还是 Google ,当然都能解决一些问题,但是还是不要一碰到问题,想都不想,马上打开搜索引擎开始搜。有时候遇到问题先尝试自己解决,自己没办法解决再考虑问搜索引擎也不迟。重要的是,你还得会用,不要以为谁都能通过问题现象顺利的找到解决方案,我发现有些同学还真的就不会用,不知道怎么搜索。

面向产品经理编程

这类的同学也很多,产品经理当然只是个代指,可以理解为提出需求和设计方案的人。拿到需求就开始哐哐一顿开发,着实痛快利落。但其实,我想有些开发同学遇到过对需求有疑问的情况,觉得这需求怎么这么怪异,这设计好像不是很合理,能发现问题已经很好了,针对问题找产品经理讨论那简直是更好了。可怕的是有些同学根本就不思考,需求设计来了就照做。还有一些同学是想到了,但是想想就憋在肚子里了,难道是因为打不过产品经理的原因吗。

面向薪资编程

这往往出现在刚要进入职场或者工作一两年的同学,薪资是最重要也是唯一重要的考量因素。只要工资给的够,开发什么不重要,用什么开发不重要,都能做。哪怕是去东南亚也都在考虑范围内。

那么,我们选择面向薪资编程是不是有错呢,当然,也没错,上班为了什么,为了理想吗、为了抱负吗、为了自我实现吗,说没有,好像就有点肤浅了。好,是的,是为了理想抱负和自我实现,更重要的也是为了钱。

但也不是说,只要工资高就可以了,在工资差距不太大的情况下,还是要看开发东西的价值、行业等。比如说开发高并发的互联网系统和企业内部系统来说,应该首选互联网项目。在比如说赌博平台、无良贷款平台等,这些,给多少钱都不能干。一旦面向它们编程,就是面向监狱大门编程。

无论面向什么编程,都要面向对自己有提升的方向编程。

不要吝惜你的「推荐」呦

欢迎关注,不定期更新本系列和其他文章
古时的风筝 ,进入公众号可以加入交流群

我面向 Google 编程,他面向薪资编程的更多相关文章

  1. 老李推荐:第14章1节《MonkeyRunner源码剖析》 HierarchyViewer实现原理-面向控件编程VS面向坐标编程

    老李推荐:第14章1节<MonkeyRunner源码剖析> HierarchyViewer实现原理-面向控件编程VS面向坐标编程   poptest是国内唯一一家培养测试开发工程师的培训机 ...

  2. go 学习笔记之go是不是面向对象语言是否支持面对对象编程?

    面向对象编程风格深受广大开发者喜欢,尤其是以 C++, Java 为典型代表的编程语言大行其道,十分流行! 有意思的是这两中语言几乎毫无意外都来源于 C 语言,却不同于 C 的面向过程编程,这种面向对 ...

  3. 函数式编程:面向可复用的map和pipeline机制的编程语言

    函数式编程:面向可复用的map和pipeline机制的编程语言

  4. [Google Guava] 4-函数式编程

    原文链接 译文链接 译者:沈义扬,校对:丁一 注意事项 截至JDK7,Java中也只能通过笨拙冗长的匿名类来达到近似函数式编程的效果.预计JDK8中会有所改变,但Guava现在就想给JDK5以上用户提 ...

  5. Python黑帽编程2.9 面向对象编程

    Python黑帽编程2.9 面向对象编程 我个人认为,计算机语言的发展,有两个方向,一个是从低到高的发展过程,在这个过程中,语言的思考和解决问题的方式是面向硬件的.硬件本质上处理的是信号,在此基础上, ...

  6. 新一代编程:scala泛函编程技术-唠叨

    准备了半年后,终于决定在这里开始我的scala编程技术学习体验撰写之旅.初步打算在这里把我学习.体验.掌握scala编程的过程与有兴趣的朋友分享.我想,虽然我这不是正式论文或者教课书之类的,但写个开场 ...

  7. 并发编程概述--C#并发编程经典实例

    优秀软件的一个关键特征就是具有并发性.过去的几十年,我们可以进行并发编程,但是难度很大.以前,并发性软件的编写.调试和维护都很难,这导致很多开发人员为图省事放弃了并发编程.新版.NET 中的程序库和语 ...

  8. Python黑帽编程2.1 Python编程哲学

    Python黑帽编程2.1  Python编程哲学 本节的内容有些趣味性,涉及到很多人为什么会选择Python,为什么会喜欢这门语言.我带大家膜拜下Python作者的Python之禅,然后再来了解下P ...

  9. [转]Windows网络编程学习-面向连接的编程方式

    直接附上原文链接:windows 网络编程学习-面向连接的编程方式

随机推荐

  1. Zabbix-3.4快速安装

    过多的介绍不写了,本篇文章主要是快速安装下zabbix服务,如果不知道zabbix监控原理,可以先去了解下. 用的是Centos7.2系统安装的zabbix-3.4 1.下载Zabbix-releas ...

  2. 🕸捕获与改写HTTPS请求

    前言 本文站在 macOS 用户的角度下,分享一下对 HTTPS 进行请求拦截.对响应进行修改的经验. 要注意的是,本文介绍的工具虽然一定程度上对 Windows 用户也适用 ,但并非所有工具都是免费 ...

  3. yield 实现range()函数

    def range(*args,step= 1): args = list(args) if len(args) == 2: yield args[0] while args[0]<args[1 ...

  4. java设计模式7.策略模式、模板方法模式、观察者模式

    策略模式 策略模式的用意,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换.策略模式使得算法可以在不影响到客户端的情况下发生变化. 环境角色:持有一个抽象策略角色的引用. 抽象策略 ...

  5. CF991C Candies 二分 第十五

    Candies time limit per test 1 second memory limit per test 256 megabytes input standard input output ...

  6. 【Leetcode】【简单】【66. 加一】【JavaScript】

    题目描述 66. 加一 给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一. 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字. 你可以假设除了整数 0 之外,这个整数不会以零 ...

  7. github初学者搭建自己的网站

    如何利用github打造博客专属域名 感谢园友的无私共享-- http://www.cnblogs.com/xuehaoyue/p/6551217.html 选分支 建立好库,在设置 这里选择博客类型 ...

  8. 深入SpringMVC视图解析器

    ViewResolver的主要职责是根据Controller所返回的ModelAndView中的逻辑视图名,为DispatcherServlet返回一个可用的View实例.SpringMVC中用于把V ...

  9. 【Offer】[10-1] 【斐波那契数列】

    题目描述 思路分析 Java代码 代码链接 题目描述  大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0). 思路分析 递归的思路,会出现很多重复的 ...

  10. java中存储机制堆栈。

    一.java的六种存储地址及解释 1) 寄存器(register):这是最快的存储区,因为它位于不同于其他存储区的地方——处理器内部.但是寄存器的数量极其有限,所以寄存器由编译器根据需求进行分配.你不 ...