php和javascript都是非常流行的编程语言,刚刚开始一个服务于服务端,一个服务于前端,长久以来,它们都能够和睦相处,直到有一天,一个叫做node.js的JavaScript运行环境诞生后,再加上PHP的swoole扩展的出生,一度让这两个语言成为比较讨论的对象,各种关于它们的对比信息在帖子、论坛、交流群等比比皆是,一些人说PHP好,一些人说node.js好,别担心,本文不是比较二者的,只是换一种思维看待它们之间的关系。
所谓的缺陷都是浮云
换一种思维看待PHP VS Node.js

浮云
node.js从之前的0.10.x版本到现在的7.5.0版本,PHP从1.0到现在的7.x,二者的版本更新都是非常快的,而且从每次更新的日志来看,都解决了很多bug,优化了很多性能及新增了很多功能等等,这说明了,很多缺陷都会在现在的版本或光棍影院今后的版本列为任务目标而被攻克掉,所以从某种程度上来说,所谓的缺陷都是浮云。
它们存在的意义是什么
换一种思维看待PHP VS Node.js

价值
对于JavaScript,ajax的出现让我们都知道,服务端仅仅传递数据过来就可以了,剩余的解析数据、渲染数据及处理数据的事情都由JavaScript来完成,而这些之前都是由服务端来完成的,换句话说,JavaScript已经可以分担服务端一部分事情了,直到基于Chrome的V8 JavaScript引擎的node.js的出现,让我们看到,原来JavaScript还可以运行在服务端。
从上面的描述不难发现,node.js存在的意义一方面是为JavaScript的发展增加活力,另一方面是让从事JavaScript的人多了一个从业方向-后端方向,能够让他们更清楚后端的一些业务逻辑,从而完善自己的编程思想,甚至让他们可以自豪的说一句,新视觉影院我什么都可以开发了。
对于PHP,我们大家都知道,还有其他ASP.NET、JSP、PYTHON等等,经过对比的学习,不难发现,PHP是入门最简单的一种,这也正体现了它开发效率高这个事实,这是其他几种语言无法比的,所以它的存在意义,就是时间最小化,即在最短的时间里完成我们需要的功能需求。
提供一种可选的决策方案
换一种思维看待PHP VS Node.js

决策PHP能够做的事情,node.js也可以,反之也是,所以选择它们很简单,如果公司前端多,就选择node.js,如果公司后端多,就选择PHP,当然这只是个人观点哈:)。

换一种思维看待PHP VS Node.js的更多相关文章

  1. 10最好用的Node.js工具、插件和资料库

    每一个称职的程序员都应该拥有一套极好的工具来提高自己的工作效率.在Livecoding.tv 上,那里的程序员分享了10个他们认为是最好用的工具.插件和资料库.据说,以下的这10个工具是使用Node. ...

  2. 使用Node.js实现数据推送

    业务场景:后端更新数据推送到客户端(Java部分使用Tomcat服务器). 后端推送数据的解决方案有很多,比如轮询.Comet.WebSocket. 1. 轮询对于后端来说开发成本最低,就是按照传统的 ...

  3. 《基于Node.js实现简易聊天室系列之详细设计》

    一个完整的项目基本分为三个部分:前端.后台和数据库.依照软件工程的理论知识,应该依次按照以下几个步骤:需求分析.概要设计.详细设计.编码.测试等.由于缺乏相关知识的储备,导致这个Demo系列的文章层次 ...

  4. Node.js调用C#代码

    在Node.js的项目中假如我们想去调用已经用C#写的dll库该怎么办呢?在这种情况下Edge.js是一个不错的选择,Edge.js是一款在GitHub上开源的技术,它允许Node.js和.NET c ...

  5. 10个最佳Node.js企业应用案例:从Uber到LinkedIn

    译者按: Node.js 8已经发布了,NPM模块每周下载量早已超过10亿,从Uber到LinkedIn都在使用Node.js,谁说JavaScript不能写后台? - 原文: 10 best Nod ...

  6. node.js核心技术

    一.知识结构: http模块:配置简单 的web服务,npm/cnpm工具 express框架:express中间件进行服务配置:路由:请求处理: DB服务:学习使用mysql关系型数据库: web接 ...

  7. node.js实现WebSocket

    最近在学习“HTML5游戏开发实战”,其中第8章内容是使用WebSocket来构建多人游戏---<你画我猜>.然而在实现过程中,却一直出错: 客户端请求时,服务器端会报错并终止: 而浏览器 ...

  8. 2、Node.js 第一个应用

    内容:三种变量申明方式,Node.js应用组成,第一个应用创建+代码 ################################################################# ...

  9. Node.js 笔记01

    一.Node.js 前言 1.node.js 之父 Ryan Dahl(瑞安达尔) ,技术好,颜值高! 数学系博士, 中途退学, 为了生活, 学习了Ruby On Rails接Web项目, 经过两年成 ...

随机推荐

  1. 枚举转List

    将枚举值转为list (name,value) 的形式 /// <summary> /// 获取口味 /// </summary> /// <returns>< ...

  2. O2O创业团队,遇到生死悠关的问题,希望大家支招?

    简单概括下情况:公司名下有两个内部创业团队,A团队成立3年以上,现在模式基本成熟稳定,有固定营收,但是还未收支平衡:B团队O2O项目,成立5个月左右,还处于萌芽阶段,技术+运营+市场共计9名成员,现总 ...

  3. Python3+Selenium3+webdriver学习笔记12(js操作应用:滚动条 日历 内嵌div)

    #!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记12(js操作应用:滚动条 日历 内嵌div)'''from ...

  4. pre-empting taskintel手册-Chapter7-Task Management

    这节描述了IA-32架构的任务管理功能,只有当处理器运行在保护模式的时候,这个功能才是有效的,这节的侧重点在32位任务和32位TSS结构上,关于16位的任务和16位TSS结构,请看7.6节,关于64位 ...

  5. 用配置文件方式启动mongodb集群

  6. 【UML】活动图Activity diagram(转)

    前言 在UML状态图的总结中说道,活动图和状态图是紧密相关的.它与流程图也有很多相似的地方. 定义 活动图是状态图的一种特殊形式.其中所有或多数状态都是活动状态,而且所有或多数转移都在源状态中的活动完 ...

  7. JS函数的length属性

    length 是函数对象的一个属性值,指该函数有多少个必须要传入的参数,那些已定义了默认值的参数不算在内,比如function(xx = 0)的length是0.. 另外在函数内部:arguments ...

  8. python_91_正则表达式

    常用的正则表达式: '.' 默认匹配除\n之外的任意一个字符,若指定flag DOTALL,则匹配任意字符,包括换行 '^' 匹配字符开头,若指定flags MULTILINE,这种也可以匹配上(r& ...

  9. Win10开机启动项

    键盘输入:win+r 输入命令:shell:startup

  10. java 自定义容器,实现foreach

    import java.util.Arrays; import java.util.Iterator; public class ArrayList implements Iterable<In ...