V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
0x0208v0
V2EX  ›  Python

Python 有没有好的新的开源 web 后端项目值得学习?比如 superset/redash/awx,主要想学习面向对象封装 CRUD/事物,以及,如何处理不同业务模块的关系。有不错项目的老哥欢迎贴 github 链接

  •  
  •   0x0208v0 · 2021-12-23 13:45:19 +08:00 · 3368 次点击
    这是一个创建于 848 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如题,由于自己一直在对业务 CRUD ,想学习如何封装业务。本人代码风格很容易面向过程,所以想找一些好的开源项目学习吸收经验。
    不在乎 star 的多少,欢迎各位推荐项目,一起学习
    第 1 条附言  ·  2021-12-23 17:20:43 +08:00

    谢谢各位给我整不会了,是我没有表达清楚,不是想要看Web框架,而是想知道怎么封装业务对象,事务应该怎么在面向对象的风格里面处理,是不是需要搞一堆DAO VO BO 乱七八糟的O,需不需要搞一堆Service...

    有没有把业务逻辑封装得很好的开源项目,想去学习一下

    不想看什么框架源码,也不想看框架的插件源码,也不想看ORM源码, 因为它们是基础技术层面的

    26 条回复    2021-12-27 09:24:52 +08:00
    thinkershare
        1
    thinkershare  
       2021-12-23 13:50:40 +08:00
    你需要的不是 Web 框架, 而是需要学习建模了架构设计
    2i2Re2PLMaDnghL
        2
    2i2Re2PLMaDnghL  
       2021-12-23 13:53:07 +08:00
    学习正确的封装逻辑,窃以为最恰当的方法是写函数式语言。
    0x0208v0
        3
    0x0208v0  
    OP
       2021-12-23 14:03:23 +08:00
    @thinkershare 看了一堆理论还是没办法实战,所以想找些开源系统来看看
    thinkershare
        4
    thinkershare  
       2021-12-23 14:19:05 +08:00
    @v2exblog 如果你一定要把语言限制为 python, 我也一时想不起来有啥比较合适的, Java 和 C#的, 我倒是看过一些, 不过你说看了一堆理论, 没法实战, 看这种理论的书, 需要先过一遍, 然后自己试着写一写, 过个半年再去看看, 有些书看个三四遍, 慢慢就理解了, 而且每次会有新的收获. 我写 C#/Java 基于 Class 的显示变量类型的 Web 项目比较多, Python 一般只用来搞机器学习, 看有没有大佬出来给你提供参考
    thinkershare
        5
    thinkershare  
       2021-12-23 14:20:27 +08:00
    @v2exblog 思想应该都是相通用的, 如果你也有其它强类型语言的基础, 也可以去看看其它语言的 Web 开源项目
    yuyue001
        6
    yuyue001  
       2021-12-23 14:48:55 +08:00   ❤️ 1
    web 后端?直接看看 [Django]( https://www.djangoproject.com/) ?
    自成一体,功能比较完整,有官方中文文档。
    根据需求拆分一下模块,很容易上手的。

    看别的项目,感觉没啥用,各家需求不一。
    直接写,有问题直接问。
    yuyue001
        7
    yuyue001  
       2021-12-23 14:55:10 +08:00
    看了你的历史,使用 Python 工作几年了? https://www.v2ex.com/t/815543

    直接看 Flask 源码吧,不是很复杂,WSGI 什么的。

    架构啥的,看 http://icyfenix.cn/
    或者买几本书 https://book.douban.com/subject/30329536/
    netconf
        8
    netconf  
       2021-12-23 15:20:52 +08:00 via Android
    可以试下 ror
    TimePPT
        9
    TimePPT  
       2021-12-23 15:36:24 +08:00
    Django +1
    meiyoumingzi6
        10
    meiyoumingzi6  
       2021-12-23 16:31:26 +08:00
    Django admin 看下
    antonia0912
        11
    antonia0912  
       2021-12-23 16:40:20 +08:00
    不算是 Web 后端项目,但是是 Python 写的开源项目,今年挺火的,可以扫一眼 [Jina]( https://github.com/jina-ai/jina)
    redvoilin
        12
    redvoilin  
       2021-12-23 16:42:49 +08:00
    web 开发还是看 ruby on rails 吧
    johnsona
        13
    johnsona  
       2021-12-23 16:48:36 +08:00 via iPhone
    我看过你说的项目 一看到 orm 自动改表我就头大 窃以为学 java 吧
    ila
        14
    ila  
       2021-12-23 16:52:45 +08:00 via Android   ❤️ 1
    楼主是想看项目的业务处理部分吧
    weidaizi
        15
    weidaizi  
       2021-12-23 17:03:46 +08:00
    我来跑个题 : )
    不同的武器有各自不同的擅长领域,例如 搞底层,搞游戏引擎 c/c++是首选(接近于没得选),做数据 python 是首选;大部分公司新开坑的项目是不会选 python 做后端的(自己建站或者维护老代码另说),看楼主之前的帖子( https://www.v2ex.com/t/815543)说想做架构师,建议看看 java + spring 或者 go 吧,选择比努力重要
    0x0208v0
        16
    0x0208v0  
    OP
       2021-12-23 17:22:18 +08:00
    @weidaizi 谢谢老哥,封装来说确实 java + go 有更完善的业务架构相关的代码,就连凤凰架构都是用 Java 来举例,实在不行我就看看相关开源是怎么封装的
    rationa1cuzz
        17
    rationa1cuzz  
       2021-12-23 17:23:50 +08:00
    其实 Django 和 Flask 源码就可以
    charmToby
        18
    charmToby  
       2021-12-23 17:24:11 +08:00
    推荐 Go 或者 Java 吧,Python 写后端感觉差点意思,我 github 主页写过一些 Python Web 的 demo ,很简单可以瞅一眼。
    ila
        19
    ila  
       2021-12-23 17:37:07 +08:00 via Android   ❤️ 1
    业务处理部分的个人封装都是经验,不轻易分享
    pengtdyd
        20
    pengtdyd  
       2021-12-23 18:11:25 +08:00
    推荐 Flask 吧,看未来吧
    beginor
        21
    beginor  
       2021-12-24 08:42:36 +08:00 via Android
    fastAPI + asyncpg 用起来还可以
    Rebely
        22
    Rebely  
       2021-12-24 09:38:57 +08:00
    djangoss, full-stack-fast-api ,
    我觉得这两个是不错的且少有的优秀的 python 后端开源项目
    非大佬还是能学到不少东西的
    Rebely
        23
    Rebely  
       2021-12-24 09:39:42 +08:00
    Ehco1996/django-sspanel
    hahaba
        24
    hahaba  
       2021-12-24 18:40:22 +08:00
    血泪教训,后端你还是用 Java 的 sp 一把梭,用 python 坑苦了我,花几个月时间用 java 重构了
    0x0208v0
        25
    0x0208v0  
    OP
       2021-12-24 19:19:48 +08:00
    @xunbug java 的 sp 是什么
    zepc007
        26
    zepc007  
       2021-12-27 09:24:52 +08:00
    @v2exblog sp ,SpringBoot 全家桶
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2610 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 04:39 · PVG 12:39 · LAX 21:39 · JFK 00:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.