C++ 程序员为什么看不起php程序员

我觉得C++ 虽然速度快,但是编译起来很复杂,要写各种dependency 才不会导致因编译顺序产生的失败。namespace 的乱用和混用让人摸不着头脑。不同的Cpp可以共用一个h,你都找不到申明在哪里。

PHP就好多了。类似java,文件名就是class 名,继承简单,完全面向对象。这就是面向对象编程的真正好处。看代码时很好理解,除了map, vector的操作很奇葩以外。

既然如此,C++程序员为什么看不起PHP呢?

写了4年php,写了6年c++。

不是看不起php,只是觉得一个解释型脚本语言和一个编译型的程序语言不太具备可比性。

个人觉得php应该和python lua js 等这类语言做比较,毕竟从题主的题干上就可以看出来,其可能没有理清编译型语言和解释型语言的概念,所以才会吐槽c++的编译过程。

一个典型的区别是php必须依托环境来执行,php本身也是有很多模块来构成。这无论组织还是架构都与python 等语言非常相像。如果把php的二进制文件当作虚拟机的话,和java以及c#都是比较接近的。因为题主才对这几种感到熟悉。

而事实是,以上几种语言脱离了解释器或者虚拟机是无法运行的,但c++与他们不同,甚至于其运行所依赖的模块中也有一大部分是由c++完成的。

这是所谓c++程序员对以上几种语言的“看不起”的原因,而实际上根本没有看不起的说法,因为根本没有可比性。就像飞鸟会看不起鱼吗?

写网页的时候有人用c++吗?有,c++甚至可以再写一套php出来。只是这么做划算与否的问题,而显然反之而言,php自身的局限性较大。但php在网页领域也非c++可以比拟的。

存在即为合理,这么简单的道理,怎么就这么多人不懂呢。

但是,以上是对语言本身的讨论,下面是我对程序员的一些看法。

我 个人窃以为,每个合格的,称职的,真正的程序员都应该学习并了解c++。因为连栈是什么都不懂,连堆不知道怎么分配的人,甚至从来没有发现字自己引以为傲 的技术,自己写的代码,均是他人封装了不知道多少层的产物的人,是可悲而又可怜的。整天嚼他人唾下之物,岂不如嚼蜡般索然,而又无味?

就好像学计算机的看不起修电脑的,虽然也会修,但毕竟不是干这个的,能干但没电脑城修电脑的速度快,同理,修电脑的也干不来程序开发的活,专属领域都不同,非要说,c++更加底层,包含了php,所以理所当然傲视其他语言。遇到汇编也是被鄙视,五十步笑百步。

(0)

相关推荐

  • C++ 程序员为什么看不起php程序员

    我觉得C++ 虽然速度快,但是编译起来很复杂,要写各种dependency 才不会导致因编译顺序产生的失败.namespace 的乱用和混用让人摸不着头脑.不同的Cpp可以共用一个h,你都找不到申明在哪里. PHP就好多了.类似java,文件名就是class 名,继承简单,完全面向对象.这就是面向对象编程的真正好处.看代码时很好理解,除了map, vector的操作很奇葩以外. 既然如此,C++程序员为什么看不起PHP呢? 写了4年php,写了6年c++. 不是看不起php,只是觉得一个解释型脚

  • 微信小程序去哪里找 小程序到底如何使用(附小程序名单)

    微信小程序要去哪里找?又该怎么用?秘密全在这里 微信小程序正式发布 看完你也会玩小程序!  2017年1月9日,是一个值得载入互联网史册的日子. 这一天,零点刚过,张小龙和他的团队,在夜色笼罩下,正式发布了微信小程序. 所以,从这一刻开始,只要有开发者登录小程序后台,并在「开发管理」页面点击了「发布」按钮,就会有一个小程序,降临到这个世界上. 而微信小程序,这个设定为「无处不在」的产品,切切实实地「在」你身边了,并即将给你的生活带来新的变化. 那么,小程序到底是什么?小程序的入口在哪里?小程序到

  • Call 从一个批处理程序调用另一个批处理程序,并且不终止父批处理程序。

    Call 从一个批处理程序调用另一个批处理程序,并且不终止父批处理程序.call 命令接受用作调用目标的标签.如果在脚本或批处理文件外使用 Call,它将不会在命令行起作用. 语法 call [[Drive:][Path] FileName [BatchParameters]] [:label [arguments]] 参数 [Drive:}[Path] FileName  指定要调用的批处理程序的位置和名称.filename 参数必须具有 .bat 或 .cmd 扩展名.  BatchPara

  • Android编程实现在一个程序中启动另一个程序的方法

    本文实例讲述了Android编程实现在一个程序中启动另一个程序的方法.分享给大家供大家参考,具体如下: Android 开发有时需要在一个应用中启动另一个应用,比如Launcher加载所有的已安装的程序的列表,当点击图标时可以启动另一个应用. 一般我们知道了另一个应用的包名和MainActivity的名字之后便可以直接通过如下代码来启动: Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEG

  • 微信小程序使用uni-app开发小程序及部分功能实现详解

    目录 一.uni-app 1.简介 2.开发工具 3.新建 uni-app项目 4.把项目运行到微信开发者工具 二.实现tabBar效果 1.创建tabBar页面 2.配置tabBar 三.配置网络请求 1.依照官网提示安装.导入.使用 2.实战 四.uni-app 里面小程序分包 1.创建分包目录 2.在 pages.json 文件中配置 3.创建分包页面 五.公用方法封装 六.搜索功能 1.搜索组件 2.搜索建议实现 3.本地存储 4.过滤器 七.上拉加载.下拉刷新 1.上拉加载 2.下拉刷

  • 微信小程序使用ucharts在小程序中加入横屏展示功能的全过程

    目录 前言 实现思路 实现步骤 1. 添加一个按钮用来开启横屏模式 2. 准备一个容器 总结 前言 由于手机屏幕宽度的限制,当数据量较大时,观看体验并不是很好,因此横屏展示的功能就显得必要了,还好ucharts官方提供了横屏展示的功能,可以免去自己手改的麻烦,不过在实现的时候还是需要注意一些地方. 本文只贴出了部分关键实现代码而非全部代码,仅提供思路和实现参考. 实现思路 开启横屏显示的配置如下: opts: { rotate: true, } 现在只需要在页面中提供一个按钮作为入口,动态改变o

  • C#程序员应该养成的程序性能优化写法

    曾经在网上听过这样一句话 程序的可读性和性能是成反比的 我非常赞同这句话,所以对于那些极度影响阅读的性能优化我就不在这里赘述了 今天主要说的就是一些举手之劳即可完成的性能优化 减少重复代码 这是最基本的优化方案,尽可能减少那些重复做的事,让他们只做一次 比较常见是这种代码,同样的Math.Cos(angle) 和Math.Sin(angle)都做了2次 优化前 private Point RotatePt(double angle, Point pt) { Point pRet = new Po

  • python计算程序开始到程序结束的运行时间和程序运行的CPU时间

    执行时间 方法1 复制代码 代码如下: import datetimestarttime = datetime.datetime.now()#long runningendtime = datetime.datetime.now()print (endtime - starttime).seconds 方法 2 复制代码 代码如下: start = time.time()run_fun()end = time.time()print end-start 方法3 复制代码 代码如下: start

  • 微信小程序学习之初探小程序

    前言 9月21日,传言已久的微信应用号正式以"微信公众平台小程序"的名义发布,依然采取了内测制度,目前只有少部分开发者可使用."微信之父"张小龙在朋友圈介绍,这种小程序是一种不需要下载安装即可使用的应用,用户扫一扫或者搜一下即可打开应用,对用户来说应用触手可及,对微信来说体现了用完即走的理念.应用号出来之后,有人说微信这次要颠覆AppStore了,开发者直接基于微信开发小程序就可以了,不用开发什么App了.更有人说微信就是一个操作系统,真的如此吗?不管怎样,我们下面

  • 微信小程序之电影影评小程序制作代码

    本文实例为大家分享了微信小程序制作影评小程序的具体代码,供大家参考,具体内容如下 这是博主的项目包含的文件截图: 首先如图建立文件夹和page页面 然后app.json页面更新代码如下: { "pages": [ "pages/hotPage/hotPage", "pages/comingSoon/comingSoon", "pages/search/search", "pages/more/more" ]

随机推荐