换一种思维看待PHP VS Node.js
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的更多相关文章
- 10最好用的Node.js工具、插件和资料库
每一个称职的程序员都应该拥有一套极好的工具来提高自己的工作效率.在Livecoding.tv 上,那里的程序员分享了10个他们认为是最好用的工具.插件和资料库.据说,以下的这10个工具是使用Node. ...
- 使用Node.js实现数据推送
业务场景:后端更新数据推送到客户端(Java部分使用Tomcat服务器). 后端推送数据的解决方案有很多,比如轮询.Comet.WebSocket. 1. 轮询对于后端来说开发成本最低,就是按照传统的 ...
- 《基于Node.js实现简易聊天室系列之详细设计》
一个完整的项目基本分为三个部分:前端.后台和数据库.依照软件工程的理论知识,应该依次按照以下几个步骤:需求分析.概要设计.详细设计.编码.测试等.由于缺乏相关知识的储备,导致这个Demo系列的文章层次 ...
- Node.js调用C#代码
在Node.js的项目中假如我们想去调用已经用C#写的dll库该怎么办呢?在这种情况下Edge.js是一个不错的选择,Edge.js是一款在GitHub上开源的技术,它允许Node.js和.NET c ...
- 10个最佳Node.js企业应用案例:从Uber到LinkedIn
译者按: Node.js 8已经发布了,NPM模块每周下载量早已超过10亿,从Uber到LinkedIn都在使用Node.js,谁说JavaScript不能写后台? - 原文: 10 best Nod ...
- node.js核心技术
一.知识结构: http模块:配置简单 的web服务,npm/cnpm工具 express框架:express中间件进行服务配置:路由:请求处理: DB服务:学习使用mysql关系型数据库: web接 ...
- node.js实现WebSocket
最近在学习“HTML5游戏开发实战”,其中第8章内容是使用WebSocket来构建多人游戏---<你画我猜>.然而在实现过程中,却一直出错: 客户端请求时,服务器端会报错并终止: 而浏览器 ...
- 2、Node.js 第一个应用
内容:三种变量申明方式,Node.js应用组成,第一个应用创建+代码 ################################################################# ...
- Node.js 笔记01
一.Node.js 前言 1.node.js 之父 Ryan Dahl(瑞安达尔) ,技术好,颜值高! 数学系博士, 中途退学, 为了生活, 学习了Ruby On Rails接Web项目, 经过两年成 ...
随机推荐
- 剑指offer课外两道习题解法
1.定义一个函数,删除字符串中所有重复出现的字符,例如输入“google”,删除重复的字符之后的结果为“gole”. 解题思路:像这种求字符串的重复字符,并且去掉重复字符,我们一般可以用哈希 ...
- iOS 应用架构 (二)
iOS 客户端应用架构看似简单,但实际上要考虑的事情不少.本文作者将以系列文章的形式来回答 iOS 应用架构中的种种问题,本文是其中的第二篇,主要讲 View 层的组织和调用方案.上篇主要讲 View ...
- Garmin APP开发之布局
上一章节介绍了garmin app开发的入门,包括garmin-sdk,开发工具的安装部署,文章结尾我们新建了我们的第一个app程序Garmin开发-入门: http://tieba.baidu.co ...
- COGS 1215. [Tyvj Aug11] 冗余电网
★ 输入文件:ugrid.in 输出文件:ugrid.out 简单对比时间限制:1 s 内存限制:128 MB TYVJ八月月赛提高组第2题 测试点数目:5 测试点分值:20 --内存 ...
- last命令
last——列出目前与过去登入系统的用户信息 命令所在路径:/usr/bin/last 示例1: $ last
- 《大规模 web服务开发》笔记
大规模服务: 可扩展,负载均衡,保证冗余,低运维成本,开发人数和开发方法的变化 数据处理: 磁盘—>内存—>缓存—>CPU 障碍: 持续增长的服务,”无法在内 ...
- python之函数默认参数的坑
坑 当你的默认参数如果是可变的数据类型,你要小心了 例题 # 正常没毛病的操作 def func(a,b=False): print(a) print(b) func(1,True) # 在实参角度, ...
- 实验十二 团队作业8:软件测试与Alpha冲刺
实验十二 团队作业8:软件测试与Alpha冲刺 实验时间 2018-6-13 Deadline: [6.13-6.19]之间任选连续5天的23:00,以团队随笔博文提交时间为准. 评分标准: 按时交 ...
- bootstrap历练实例:面板脚注
面板脚注 我们可以在面板中添加脚注,只需要把按钮或者副文本放在带有 class .panel-footer 的 <div> 中即可.下面的实例演示了这点: <!DOCTYPE htm ...
- 抓取oracle建表语句及获取建表ddl语句
抓取oracle建表语句及获取建表ddl语句 1.抓取代码如下: 1.1.产生表的语法资料 DECLARE-- v_notPartTable VARCHAR2(1000):= '&2'; -- ...