代码之家  ›  专栏  ›  技术社区  ›  adamJLev

最佳实践-如何团队分割django项目,同时仍然允许代码重用

  •  1
  • adamJLev  · 技术社区  · 14 年前

    我正在着手一个全新的项目,它将有两个主要组成部分:“ACME产品”(想想Gmail、Meebo等)和“网站”(帮助、信息、营销材料、促销登陆页等大量的营销诱因)。

    所以基本上url /acme/*

    问题:“站点”组件已超出我的控制范围,将由一个顾问团队处理,该团队将与市场部密切合作,我和我的团队将只负责ACME产品。

    • 单独发布(他们可以推出新的营销页面和功能,而不必担心我们的代码状态。甚至可能是单独的Subversion“项目”)
    • 尽可能减少影响(对我们的产品)任何飞行独角兽hocus pocus其他团队代码进入网站。
    • 仍然允许一些代码重用。

    你是怎么处理的?有什么想法吗? 谢谢!

    2 回复  |  直到 14 年前
        1
  •  2
  •   Alex Martelli    14 年前

    ACME产品必须是摇滚乐 有点与世隔绝 错误/代码阻塞了顾问 在市场营销方面取得成功

    在这种情况下,我最多会让ACME团队有时发布一些底层库供其他团队使用。。。但即便如此,这也是令人担忧的,除非与非常严格的约束一起使用,因为顾问可能会使用依赖于库实现的blooper之一进行编码,所以ACME基本上不能在发布库供顾问使用之后继续维护库(ACME可能认为保留API约束就可以了,但他们不能处理其他团队的重用问题。

    尽管我们需要知道许多具体的细节,但在应用层,两个团队的项目之间深层次的共同点似乎并没有那么多(第三方稳定的开放源代码项目提供了共同的独立于应用程序的功能,当然可以由任何一个或两个团队使用),因此,不管怎样,从“这里”来看,鼓励重用的成本与相应的回报并不相符。

        2
  •  3
  •   Ignacio Vazquez-Abrams    14 年前

    Django对应用程序的组件化意味着您可以有独立的团队来处理各种应用程序,模板标记和过滤器(当然,还有普通的Python函数)用于跨应用程序耦合。