在Python开发环境中组织属于同一项目的代码的最佳方法是什么?Python项目组织的工作和做法是什么?你是否将文件中的每个类分开?
Project A
Classes
"subsystem1"
class1
class2
subsystem1Module
"subsystem2"
"utils"
"etc"
Tests
Whatever
etc?
Run Code Online (Sandbox Code Playgroud)
有什么建议?哦,请描述每种类型组织的(可能)问题.
什么是组织Python代码的最佳实践?
基本上,我在R中构建了一个相当大的预测模型,其中包含大约10~15个单独的脚本文件,用于收集,排序,分析和显示我的数据.我想保持一定程度的模块化,并从控制脚本或某种可比较的控制机制运行每个部分,而不是像以前在matlab中所做的那样.这可能在R?
我已经读过这个帖子以及它的相关主题,但是找不到这个确切的答案. 组织R源代码
假设您正在构建一个大型应用程序,并且您希望网站上有大量的javascript.即使你将javascript分成每页使用javascript的1个文件,你仍然会有大约100个javascript文件.
保持文件系统有条理的最佳方法是什么,在页面上包含这些文件,并保持代码结构本身的组织?一直以来,都可以选择将产品缩小以进行生产.
放置之间有什么区别:
autocmd FileType ruby setlocal ts=2
Run Code Online (Sandbox Code Playgroud)
在我~/.vimrc和放置:
setlocal ts=2
Run Code Online (Sandbox Code Playgroud)
在~/.vim/ftplugin/ruby.vim?
如果没有区别,我应该在哪里放置特定于一种文件类型的命令?
什么是团体? 您可以使用CKAN组来创建和管理数据集的集合.这可以是为特定项目或团队或特定主题编目数据集,也可以是帮助人们查找和搜索您自己发布的数据集的一种非常简单的方法.
什么是组织? CKAN组织用于创建,管理和发布数据集集合.用户可以在组织内拥有不同的角色,具体取决于他们创建,编辑和发布的授权级别.
两者都用于创建和管理数据集的集合.
有人可以解释CKAN中组织和团体之间的区别吗?
好的,所以我们都知道标准的SVN设置
trunk\
branches\
tags\
Run Code Online (Sandbox Code Playgroud)
我意识到建议标签应该有"特殊"提交.我从来没有真正使用过标签目录,但我不知道为什么会这样.
我的理解是标签\将包含诸如"Version1Release \,Version2Release \,ThatTimeWeUpgradedEverthing \"之类的内容等等.但是,如果您要进入并需要对Version1Release进行更改,那么它应该是一个分支,如果标签应该永远不会改变,那么在源代码控制中制作副本的意义何在?只需做一个注释修订712是我们的版本1发布.
我想我的困惑是,似乎标签是永远不会改变的版本.但源代码控制就是保留更改文件的历史记录.我知道这是一个次要的组织论点,但我很好奇人们的想法.
我正在研究如何将一些第三方代码导入到git存储库中.第三方代码是ST提供的"stm32f10x_stdperiph_lib".
lib实际上是一堆普通的c文件(和头文件),你只需要在执行STM32项目时包含和构建它们.
问题是他们只提供一个zip文件,他们确实发布了新版本,所以我想添加更多的控件.
所以我的计划是编写一个执行此操作的小脚本:
我的问题从最后一步开始,如何使用新文件导入和覆盖旧文件(并删除不再包含的文件)?
在对这个主题进行了一些研究之后,我一直在尝试使用模式来组织我的jQuery代码(例如,Rebecca Murphy 在jQuery会议上做过这方面的演示).
昨天我检查了(显示)模块模式.结果看起来有点像我认为的YUI语法:
//global namespace MyNameSpace
if(typeof MNS=="undefined"||!MNS){var MNS={};}
//obfuscate module, just serving as a very simple example
MNS.obfuscate = function(){
//function to create an email address from obfuscated '@'
var email = function(){
$('span.email').each(function(){
var emailAddress = $(this).html().replace(' [ @ ] ','@');
$(this).html('<a href="mailto:' + emailAddress + '">' + emailAddress + '</a>');
});
};
return {
email: email
};
}();
//using the module when the dom's ready
jQuery(document).ready(function($){
MNS.obfuscate.email();
});
Run Code Online (Sandbox Code Playgroud)
最后我有几个模块.一些自然包括"私有成员",在这种情况下,它意味着变量和/或函数,这些变量和/或函数仅对该模块中的其他函数很重要,因此不会在return语句中结束.
我认为将模块中的部分连接(与搜索有关的所有内容)组合在一个模块中是有意义的,给出了整个结构.
但在写完这篇文章 …
在使用Xcode开发了四年之后,我开始问自己(好吧,是的,我知道,有点太晚了但是当你深入编码时你看不到其他东西)文件和文件夹的结构和组织是什么样的是一个遵循某种指导方针的好人.
我看到了Google 编码指南,我想知道这个问题的主题是否有任何类似的文档.
我可以看到,如果您在Xcode中创建一个新项目(我使用的是最新版本),您有一个与该应用程序名称相同的文件夹,然后在"支持文件"中,然后是框架和产品.最后两个很好,但我只是想知道我是否添加了一些图形和其他类和静态库等等,我如何命名它们以及放置它们的位置(例如:一些标准图形,如图标和默认图像将进入"支持文件"中名为"design"或"standard design"的文件夹.这样的规则.
这是因为当你开始处理多个项目(我的意思是每天3-4个)你想在同一个文件夹中找到相同的东西,甚至因为将来的更新和引用,你会知道在哪里找到正确的东西在正确的地方.
在Ansible最佳实践页面上:http://docs.ansible.com/ansible/playbooks_best_practices.html#top-level-playbooks-are-separated-by-role 它显示了一个示例,其中主要playbook site.yml包含一对其他顶级剧本webservers.yml和dbservers.yml.在这些剧本中,他们每个人都有共同的角色.我将所有组的一些库存文件在一台主机上运行.另一个库存文件我每个组都有一个主机.对于组中一个主机的情况,如果我运行site.yml,您可以看到共同角色被播放两次,一个用于webservers.yml,另一个用于dbservers.yml.
什么是避免这种情况的解决方案?我想你可以从webservers.yml和dbservers.yml中取出共同的角色,而在site.yml中有一个任务,它既针对公共角色,也针对公共角色.但后来我不能单独配置一个常见的网络服务器或数据库服务器.