前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >各大主流语言web框架代码行数对比

各大主流语言web框架代码行数对比

作者头像
老钱
发布2018-08-14 17:47:52
1.2K0
发布2018-08-14 17:47:52
举报
文章被收录于专栏:码洞码洞

Go

  1. gin 4762
  2. echo 4903
  3. iris 27854 肿
  4. buffalo 9391

Node

  1. koa 1667
  2. express 4051
  3. sails 17100 肿

Python

  1. tornado 21666
  2. werkzeug 20801
  3. flask 7489
  4. bottle 3756
  5. web.py 10830
  6. django 119701 泰肿

Ruby

  1. sinatra 2580
  2. grape 7229
  3. rails 130379 泰肿

Java

  1. spring-core 75207
  2. spring-aop 25984
  3. spring-web 49017
  4. spring-webmvc 60246
  5. spring-beans 51070
  6. spring-context 76356
  7. spring-boot 50847

统计方法

统计的时候我发现有些框架的代码比我想象的大的太多,所以我对这些代码量大的代码进行了反复统计,去掉路径包含test/example/benchmark/vendor等的代码,进行wc -l汇聚得到的最终结果。

这样直接对比对某些框架来说是不公平的。有些框架注释比较多,有些框架几乎没有注释。我的统计方法里面没有把注释去掉。不过注释并不是最重要的区别,最大的区别在于有些框架是微内核,有些框架是full-stack的。fullstack的框架可以直接拿来即用,而微内核一般还需要引入额外的插件和扩展才能达到相似的效果。除此之外还有一个重大的区别是HTTP服务器在某些语言中是内置的,而另外一些语言的HTTP服务器则需要单独编写。

从源码学习角度来说,自然还是应该选择微内核的,代码量大了阅读起来会是一头雾水。微内核短小精悍,浓缩的都是精华。

学习源码的相关链接

  1. https://github.com/pyloque/httpkids 1200行代码的Java Web框架
  2. https://github.com/pyloque/ormkids 2000行代码的Java ORM框架
  3. https://github.com/pyloque/rpckids 700行代码的Java RPC框架
  4. https://github.com/pyloque/iockids 200行代码的Java依赖注入框架
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-05-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 码洞 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Go
  • Node
  • Python
  • Ruby
  • Java
  • 统计方法
  • 学习源码的相关链接
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档