众所周知, 如今的后端开发主要是负责接口的开发, 而前后端分离又是当下最流行的. 如果使用 python 技术栈, 通常情况下我们会选择 flask 全套,django,或者 tornado. 他们的模板引擎, session 功能在当下的后端开发中是基本不用的. 同时由于它们开始的时候是基于 python2 写的, 造成了现在代码中充斥着大量丑陋的兼容性代码. 再次, 它们依赖的许多第三方库也包含了许多为 python2 写的代码, 这样造成了恶性循环, 学习它们的源码必须要学习 python2 中一些被淘汰的东西, 而我们可能只是想看看其中某些功能的逻辑而已. 因此, 我用极少的代码实现了一个极简的 web 框架 xweb.(项目地址:https://github.com/gaojiuli/xweb)
xweb 摒弃了一切为了 python2 而写的代码, 因此代码量特别少, 看过 xweb 源码的人都知道, 它的逻辑非常清晰, 代码也是很容易理解的.
xweb 不包含任何第三方库, 这让大家的学习成本进一步降低. 因为吸收了 flask, bottle, sanic 等框架中的一些优点, 我精简了 xweb 的 api, 使得上手轻松, 学习成本极低.
xweb 是基于 wsgi 写的, 因此所有适合 flask 的部署方法, xweb 也都支持.
使用 xweb 写出的接口代码, 别人很容易理解, 别人也能很容易参与进开发.
v2ex 帖子: xweb: 一款无依赖的 Python web 框架(低于 500 行代码)
(项目地址:https://github.com/gaojiuli/xweb)
xweb 的 README 就是全部文档了, 短短一页就表述清楚了所有 api.
让 web 开发的学习成本降到最低, 不管是开发也好, 源码学习也好, xweb 都是非常推荐使用的.
xweb(web 框架) + xorm(ORM 库,未写) + xparser(数据验证库,未写).构成一个完整体系, 它们共同特点是源码简洁, api 精简, 摒弃 python2. 这个体系会使得后端接口开发更加容易, 接口代码也更加优雅. 如果有朋友对我的想法有兴趣, 可以一起参与进来.
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
1
taowen 2017-03-09 19:17:47 +08:00 via Android
支持一下
|
3
MemoryCorner 2017-03-09 20:55:12 +08:00 1
支持!
|
4
loading 2017-03-09 20:56:05 +08:00 via Android
已 unstart
|
6
PythonAnswer 2017-03-09 21:11:55 +08:00 via Android 1
一直用 bottle 干这样的事情,你得超越它啊。
|
7
prasanta OP @PythonAnswer 谢谢你的支持。
|
8
Kilerd 2017-03-09 21:49:58 +08:00
我觉得更像一个原型产品。 毫无新意。
|
10
realwangyibo 2017-03-09 22:34:26 +08:00 via iPhone
已支持
|
11
liantian 2017-03-10 12:50:21 +08:00 via Android
作为一个业余 python ,随便说说。
web.py bottle django flask 一路用来,有 7 年了,都是写工作无关的 app ,非生产,现在只用 django 和 flask 。 django 就不说了,概括就是一应俱全。 flask 对比 web.py 和 bottle 的优势很大来自于无数方便的第三方扩展,我想用 orm 只需要 pip 个 flask-sqlalchemy ,想用管理后台只要 pip 个 flask-admin 。 扩展性好,扩展资源丰富,尽可不需要自己造轮子,这才是 flask 成功的原因吧。 一个太简洁的框架,也意味着使用过程中需要自己造太多的轮子,这感觉很不 python ,用业余的角度,感觉很难成功..... |
12
prasanta OP @liantian 我这样是为了低耦合, 后续我会实现 orm 与 validator 功能.
由于它们之间是互相独立的, 因此可以随意用到其他地方. 分开开发不同库的好处你应该可以理解吧 ? 以后使用 xweb + xorm +xdata 能够快速实现开发. 而单独的 xweb 只负责 request 的接收,以及 response 的返回. |