公司很无聊,突然想比较一下,很多种不同的服务端语言, 于是就有了下面这篇文章

Coldfusion

  • Based on JAVA

Pros

  • Based on Tags, easy to learn, very easy to learn, connot be easier.
  • Based on JAVA, easy hosting on Win/Linux
  • Better build-in debugging tools
  • The query operations are very easy

Cons

  • JSON support is not good?
  • Price
  • Based on JAVA, run virtual machine need more memory/resource
  • Powerful server required
  • Not free as JAVA, not easy to extend
  • Support community is not large

PHP

  • Open-source

Pros

  • Free!!
  • Free 3rd apps
  • Free hosting
  • Large support community
  • Many 3rd libs
  • Very low system requirements
  • OOP
  • Interpreted language, easier and faster relatively

Cons

  • Output: needs to wrap the output(something like AJAX in JS), which is clumsy
  • Security, required some additional tools for security consideration

JAVA

Props

  • OOP
  • Better for bigdata analytics
  • Cross-platform, can be compiled for many OS3
  • Memory safe(GC is good)
  • Static type checking, you can find the error in Dev Env

Python

Pros

  • Security, better security than php
  • More compact and clean syntax for dev
  • Many powerful standard lib

Cons

  • Speed, slower than C?
  • Mobile Dev is not very good
  • Memory consumption
  • Database access

Node

Pros

  • Performance(Real fast)
  • Written in JS
  • Highly extensible, NodeJS will provide low-level API which is easy to control all.
  • AJAX, JSON, HTTP Server are easy to use
  • Single-threaded (will create multipld-node process)
  • High compatibility of NOSQL
  • Rich community-driven open-source modules. NPM is cool!

Cons

  • Single thread, would be difficult for complex I/O operation, asynchronos programming is hard To understand
  • Not suitable for large and complex Web Apps
  • Single-threaded
  • Upgrade usually. (May need to rewrite a project for some new changes?)

Reference