kdeng / my-blogs

Kefeng's blogs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Python, NodeJS和Java的比较

kdeng opened this issue · comments

最近因为转型到 Data 方面,因为要协助公司的 Data Analyse,用Python写了三个月的Report Automation,又因为其他的要求,用到了Google CloudFunction,因为 Google Cloud Function目前只支持 NodeJS,所以手上是三个开发语言切换的来。

个人想法:

  • Java适合所有的情况,不管是用在 ETL,还是Business Logical 部分,都是一流(可能是因为Java背景),个人还是喜欢Java,但是在对大数据处理的时候,单个Java app一定处理不了,因为Memory Leak,而且大量的 CSV slice,Java这边没有Python 里面的 Pandas 好用
  • Python 在做 ETL 部分,非常的流畅,就是为大数据而生的感觉,加上 Pandas的支持,感觉只有Memory没限制,任何数据都能处理,不用考虑Xmx和PermSize的问题。
  • NodeJS 感觉在Python和Java之间,以前用了NodeJS做了很多AWS Lambda Function,做 Stateless Function,NodeJS 是首选。的确是最轻量级的开发语言。

其实每个语言都有自己的优势,关键是看Business requirement和你现在工作的平台。另外,个人感觉golang和lua非常值得看看。尤其在devops方面,golang 比 Python要popular一些。