标签: organization

Python应用程序的最佳项目结构是什么?

想象一下,您希望在Python中开发一个非平凡的最终用户桌面(而不是Web)应用程序.构建项目文件夹层次结构的最佳方法是什么?

理想的功能是易于维护,IDE友好,适用于源代码控制分支/合并,以及易于生成安装包.

特别是:

  1. 你把源头放在哪里?
  2. 你把应用程序启动脚本放在哪里?
  3. 你把IDE项目放在哪里?
  4. 你在哪里进行单位/验收测试?
  5. 你在哪里放置非Python数据,如配置文件?
  6. 你在哪里为pyd/so二进制扩展模块放置非Python源代码如C++?

python directory-structure project-structure organization

691
推荐指数
8
解决办法
33万
查看次数

管理CSS爆炸

我一直非常依赖CSS来处理我正在开发的网站.现在,所有的CSS样式都是基于每个标签应用的,所以现在我试图将它移动到更多的外部样式,以帮助进行任何未来的更改.

但现在问题是我注意到我正在进行"CSS爆炸".我很难决定如何在CSS文件中最好地组织和抽象数据.

我在网站中使用大量div标签,从一个基于表格的网站转移.所以我得到了很多看起来像这样的CSS选择器:

div.title {
  background-color: blue;
  color: white;
  text-align: center;
}

div.footer {
  /* Styles Here */
}

div.body {
  /* Styles Here */
}

/* And many more */
Run Code Online (Sandbox Code Playgroud)

这还不算太糟糕,但由于我是初学者,我想知道是否可以就如何最好地组织CSS文件的各个部分提出建议.我不想为我网站上的每个元素都有一个单独的CSS属性,而且我总是希望CSS文件相当直观且易于阅读.

我的最终目标是使CSS文件易于使用并展示其提高Web开发速度的能力.这样,将来可能在这个网站上工作的其他人也会参与使用良好编码实践的做法,而不是像我那样去做.

css organization

681
推荐指数
10
解决办法
4万
查看次数

Django项目工作目录结构的最佳实践

我知道实际上没有单一的正确方法.但是我发现很难创建一个运行良好的目录结构,并为每个开发人员和管理员保持干净.github上的大多数项目都有一些标准结构.但它没有显示在pc上组织其他文件和所有项目的方法.

在开发机器上组织所有这些目录最方便的方法是什么?您如何命名它们,以及如何将其连接并部署到服务器?

  • 项目(您正在处理的所有项目)
  • 源文件(应用程序本身)
  • 存储库的工作副本(我使用git)
  • 虚拟环境(我更喜欢把它放在项目附近)
  • 静态根(用于编译的静态文件)
  • 媒体根(用于上传的媒体文件)
  • 自述
  • 执照
  • 文件
  • 素描
  • 示例(使用此项目提供的应用程序的示例项目)
  • 数据库(如果使用sqlite)
  • 您通常需要的任何其他项目成功的工作

我想解决的问题:

  • 目录的好名称,以便他们的目的明确.
  • 将所有项目文件(包括virtualenv)保存在一个地方,这样我就可以轻松地复制,移动,存档,删除整个项目或估算磁盘空间使用情况.
  • 创建一些选定文件集的多个副本,例如整个应用程序,存储库或virtualenv,同时保留我不想克隆的其他文件的单个副本.
  • 只需通过rsyncing选定的一个目录,将正确的文件集部署到服务器.

django directory-structure project-structure organization

144
推荐指数
4
解决办法
10万
查看次数

大型backbone.js网络应用程序组织

我目前正在开发一个基于backbone.js构建的大型Web应用程序,并且在组织,"僵尸"等方面遇到了很多问题.所以我决定做一个主要的代码重构.我已经编写了一堆辅助函数来处理"僵尸"; 但是,我想从一开始就为代码创建一个很好的结构/组织.我没有在大型的backbone.js组织上找到很多很棒的教程/示例,所以我从头开始,想看看我是否可以就我开始的地方得到一些意见.

我显然在全局命名空间中设置了我的代码; 但我也想保持这个命名空间相当干净.我的主要app.js使类文件本身与全局命名空间分开; 您可以使用reg()函数注册一个类(以便可以实例化它),而inst()函数可以从classes数组中实例化一个类.因此,除了3种方法之外,MyApp命名空间只有路由器,模型和视图:

var MyApp = (function () {

    var classes = {
        Routers: {},
        Collections: {},
        Models: {},
        Views: {}
    };

    methods = {

        init: function () {
            MyApp.Router = MyApp.inst('Routers', 'App');
            MyApp.Model = MyApp.inst('Models', 'App');
            MyApp.View = MyApp.inst('Views', 'App');
            Backbone.history.start();
        },

        reg: function (type, name, C) {
            classes[type][name] = C;
        },

        inst: function (type, C, attrs) {
            return new classes[type][C](attrs || {});
        }

    };

    return methods;

}());

$(MyApp.init);
Run Code Online (Sandbox Code Playgroud)

在模型,集合,路由器和视图中,我像往常一样工作,但是然后需要在文件的末尾注册该类,以便可以在以后实例化它(不会使命名空间混乱):

MyApp.reg('Models', 'App', Model);
Run Code Online (Sandbox Code Playgroud)

这似乎是组织代码的不必要的方式吗?其他人是否有更好的例子来说明如何使用许多路由器,集合,模型和视图组织真正的大型项目?

javascript jquery namespaces organization backbone.js

61
推荐指数
4
解决办法
2万
查看次数

Visual Studio中的Alphabetizing方法

Visual Studio 2008是否有任何类型的插件或工具可用于按字母顺序排列方法?理想情况下,我想要一个工具,可以自动或按需按字母顺序排列选择或指定类型(即只有方法,而不是成员变量).

resharper coding-style organization visual-studio-2008 visual-studio

57
推荐指数
4
解决办法
3万
查看次数

C++类头文件组织

对于那些必须处理分布在多个源文件和头文件中的大量相互依赖的类的人,您建议使用哪些C++编码和文件组织指南?

我在我的项目中遇到这种情况,解决跨越几个头文件的类定义相关错误已经变得非常头疼.

c++ header class file organization

51
推荐指数
5
解决办法
3万
查看次数

在适合任何地方的Rails应用程序中放置类的指南

我想知道是否有任何关于在Rails应用程序中放置非标准Ruby文件的最佳实践,哪些不适合任何默认目录(controllers/ models等).

我说的是控制器/模型等使用的类,但不是任何Rails基类的子类.包含从模型中提取的功能的类,以减少它们的负担.其中一些看起来像模型,但不是AR模型,其中一些看起来更像"服务",有些是介于两者之间或其他东西.

一些随机的例子:

  • 通过facebook等处理密码验证的"策略"类.
  • 封装params或"XCreator"对象的"XParams"对象处理params的处理以执行一些复杂的动作,最终导致创建一些AR模型
  • 向外部API发出请求或封装这些请求和响应的类
  • 可替代真实AR模型的假模型(例如访客用户)
  • Resque工作
  • 存储和读取Redis信息的类
  • 执行某些特定操作的类,如处理数据,生成报告等,并从Resque作业或rake任务调用

我现在已经有了很多这些,其中一些被添加到lib最后作为一堆随机类和模块,一些潜入app/models.我想以某种方式组织这个,但我不知道从哪里开始.

只应该进入AR车型app/models吗?或者也可以放置任何域或帮助模型?你如何决定某件事是模特?

如果不适合的一切都app进入lib?或许我应该添加一些新的自定义子目录app?什么子目录,以及如何划分自定义类?

你如何在你的项目中处理这个?我知道每个项目都有点不同,但必须有一些相似之处.

ruby directory ruby-on-rails organization models

42
推荐指数
2
解决办法
2万
查看次数

我应该如何组织通用编程库的目录结构?

我已经编写了我自己的通用PHP库一段时间了,我正在考虑如何组织目录结构,但我想在我正式化库的目录结构之前得到人们的想法.

这是我到目前为止:https: //github.com/homer6/altumo/tree/master/source/php

我以为我可以"按主题"或"按类别"进行.到目前为止,我只能想到一个我喜欢"按类别"的例子:Boost http://www.boost.org/doc/libs/1_46_1/?view=categorized

此外,Qt是按模块组织的,但我认为它有点乱,因为所有内容都有点填入QtCore http://qt-project.org/doc/qt-5/qtmodules.html

有任何想法吗?

提前致谢.

更新:我发现了一本非常好的书,它向我展示了许多伟大的图书馆设计惯例:http://www.apibook.com/blog/

更新:我发现了一篇有趣的文章提到了代码组织(http://highscalability.com/blog/2012/3/26/7-years-of-youtube-scalability-lessons-in-30-minutes.html).在底部,它说:"你的代码树会是什么样子?他希望用这些词来形容它:简单,实用,优雅,正交,可组合.这是理想的,现实有点不同."

php organization

34
推荐指数
3
解决办法
4273
查看次数

我该如何组织我的Xcode项目文件?

我试图围绕Xcode的文件组织 - 或者缺乏.我可以在项目中做我想做的所有事情,它看起来很棒,所有的"假"文件夹和结构.我去看文件系统和繁荣巨大的混乱.我已经尝试使用Create Folder Reference for any added folder选中的选项导入文件,并且有效.我在Xcode和文件系统中得到了我想要的结构.

问题:当我将文件添加到Xcode中作为文件夹引用的文件系统上的文件夹时,当我去看时它不在Xcode中,甚至在重新加载项目之后也没有.文件夹参考中的文件/子文件夹无法在Xcode中移动.当我在文件系统上移动它时,我在Xcode中得到红色链接(找不到文件?).

如何保持有组织的项目文件系统?如何设置项目以识别文件夹并在我的项目中显示其(当前和最新)文件和子文件夹?

我似乎遇到的另一个问题是,如果我使用文件夹参考并更改文件,除非我进行全面清理和重建,否则我的应用程序中的文件不会更新.如果我不使用文件夹引用,我的所有文件都会被转储到应用程序包的Res​​ource文件夹中,而不是我在项目中的漂亮结构中.

我应该关心吗?我应该只使用假文件夹,让一切都到处都不关心?我的应用程序包将是一团糟,文件系统将是一个烂摊子,但它将全部工作...我希望?

编辑:

我想要有组织的文件系统的最大原因是资源文件(图像,声音,其他数据文件等)不是在Xcode中编辑的.我必须通过文件系统在第三方应用程序中访问它们.如果它变得混乱,在其他第三方应用程序中更难找到和维护.

如果我想要一个如下所示的结构,会发生什么:

  • 图片/背景/ Name.png
  • 图片/图标/ Name.png
  • 图片/标题/ Name.png

我应该使用长文件名而不是文件夹来组织吗?

  • Images_Backgrounds_Name.png
  • Images_Icons_Name.png
  • Images_Titles_Name.png

filesystems xcode organization

32
推荐指数
3
解决办法
1万
查看次数

如何组织领域驱动的设计项目?

我已经开始学习DDD,并想知道其他人如何组织他们的项目.

我开始组织我的AggregateRoots:

MyApp.Domain(域模型的命名空间)

MyApp.Domain.Product
- 产品
- IProductService
- IProductRepository
- 等

MyApp.Domain.Comment
- 评论
- ICommentService
- ICommentRepository
- 等

MyApp.Infrastructure
- ...

MyApp.Repositories
- ProductRepository:IProductRepository
- 等

我遇到的问题是我必须将我的域名产品称为MyApp.Domain.Product.Product或Product.Product.我也与产品的linq数据模型发生冲突....我必须使用丑陋的代码行来解析两者之间的问题,例如MyApp.Domain.Product.Product和MyApp.Respoitories.Product.

我真的很想知道其他人如何组织他们的DDD解决方案......

我使用Visual Studio作为我的IDE.

非常感谢.

domain-driven-design organization

27
推荐指数
2
解决办法
1万
查看次数