推荐学习书目
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
xuegj1010
V2EX  ›  Python

代码写大了,该如何规划、布局、架构?

  •  
  •   xuegj1010 · Jun 1, 2018 · 5384 views
    This topic created in 2951 days ago, the information mentioned may be changed or developed.

    小白一个,感觉代码写的越大就越乱,看着很不舒服,不知道该怎么布局,怎样才能让自己的代码看起来更舒服,结构更清晰。python 的设计模式也看不明白,看明白了也不会用。看看自己写的东西,真是糟心~~,文件一多,python 文件互相引用,引着引着就乱了。。。看着 github 上 star 多的项目代码,看着就很舒服,再看看自己写的,感觉就是一坨一坨。。。

    系统各位大神能给小弟出出主意,该怎么进步。

    24 replies    2018-06-02 12:00:47 +08:00
    kindjeff
        1
    kindjeff  
       Jun 1, 2018 via iPhone   ❤️ 2
    照着别人的抄
    zynlp
        2
    zynlp  
       Jun 1, 2018 via iPhone   ❤️ 1
    kiss 原则了解一下?
    xrlin
        3
    xrlin  
       Jun 1, 2018   ❤️ 2
    多拆分,多分层,少用魔法,避免魔数,逻辑复杂的要添加注释,多写测试。
    qiaobeier
        4
    qiaobeier  
       Jun 1, 2018
    照着抄 +1,当然不要瞎抄,一边思考一边抄。
    Raymon111111
        5
    Raymon111111  
       Jun 1, 2018
    领域划分
    jinhan13789991
        6
    jinhan13789991  
       Jun 1, 2018
    领域划分+1,然后单元测试覆盖,自动化测试,持续集成。
    设计模式~
    anotherlf
        7
    anotherlf  
       Jun 1, 2018 via Android   ❤️ 5
    只要代码起作用,大坨有什么关系?
    用这些代码先实现一个小目标,然后雇佣楼上楼下的帮你重构就好了。
    fuckshiter
        8
    fuckshiter  
       Jun 1, 2018 via iPhone
    多写,多看别人的代码,然后反过来对比自己,一步一步来,谁小白的时候不是写的乱乱的
    quickma
        9
    quickma  
       Jun 1, 2018
    多看书啊
    fatedier
        10
    fatedier  
       Jun 1, 2018
    考虑下换个语言不~
    misaka19000
        11
    misaka19000  
       Jun 1, 2018
    一个字:拆

    把组件和模块拆分开来,每一个模块再继续拆,如此反复,同样对于代码段也观察能否继续拆分,保持方法最小原则,如此反复进行重构
    Light3
        12
    Light3  
       Jun 1, 2018

    然后比如说重复的代码 变一个模块 一点点来少很多的
    woodface2233
        13
    woodface2233  
       Jun 1, 2018 via iPhone
    花 100w 现金每年请人吧。
    shilyx
        14
    shilyx  
       Jun 1, 2018
    多学多练,法无定法
    realpg
        15
    realpg  
    PRO
       Jun 1, 2018
    代码写大了才去考虑这些问题的,多半即使考虑了也会有更多的这个问题……

    我个人的习惯,不管写多小,都是有规划有架构,突然增大了负载也可以 handle
    chemzqm
        16
    chemzqm  
       Jun 1, 2018
    用类型语言好一些
    hobochen
        17
    hobochen  
       Jun 1, 2018
    《设计模式》了解一下?
    LukeChien
        18
    LukeChien  
       Jun 1, 2018 via Android
    Java 了解一下
    picture2200
        19
    picture2200  
       Jun 1, 2018 via Android
    大了就拆,拆了太多了就合并。
    glfpes
        20
    glfpes  
       Jun 1, 2018 via Android
    花一个季度重构个 2.0 版本吧。。。
    limbo0
        21
    limbo0  
       Jun 2, 2018 via Android
    先分层,再划分
    wuqiangroy
        22
    wuqiangroy  
       Jun 2, 2018
    拆分,然后把类似的相同调用的归为一起。
    多文件夹。
    wuqiangroy
        23
    wuqiangroy  
       Jun 2, 2018
    你可以参考参考 java 的结构。
    RonaldoC
        24
    RonaldoC  
       Jun 2, 2018
    高内聚低耦合
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   913 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 127ms · UTC 20:33 · PVG 04:33 · LAX 13:33 · JFK 16:33
    ♥ Do have faith in what you're doing.