在课程结构方面,是否有关于项目顺序的官方C#指南?
它会去:
我很好奇是否有关于物品顺序的硬性规定?我到处都是.我想坚持一个特定的标准,所以我可以到处做.
真正的问题是我的更复杂的属性最终看起来很像方法,他们觉得在构造函数之前顶部不合适.
有什么提示/建议吗?
在Kotlin中,具有至少一个参数的函数可以定义为常规非成员函数,也可以定义为扩展函数,其中一个参数是接收者.
对于范围界定,似乎没有区别:两者都可以在类和其他函数内部或外部声明,并且两者都可以或不可以具有相同的可见性修饰符.
语言参考似乎不建议在不同情况下使用常规函数或扩展函数.
所以,我的问题是:扩展功能何时优于常规非成员功能?当常规的扩展?
foo.bar(baz, baq)VS bar(foo, baz, baq).
它只是一个函数语义的提示(接收器肯定是焦点)或是否有使用扩展函数使代码更清洁/开辟机会的情况?
我刚刚尝试用Pylint lint一些代码,最后剩下的错误是
R0902: too-many-instance-attributes (8/7)
Run Code Online (Sandbox Code Playgroud)
我理解限制实例属性数量的基本原理,但有七个看起来有点低.我也意识到短号不应该有最后一个字.但是,我想知道我应该做什么,而不是:
def __init__(self, output_file=None, output_dir=None):
"""
Set the frobnicator up, along with default geometries
"""
self.margin = 30
self.pos = [0, 0]
self.sep = [5, 5]
self.cell = [20, 20]
self.frobbr = library.Frobbr()
page = self.frobbr.get_settings('page')
self.lim = [page.get_width() - self.margin,
page.get_height() - self.margin]
self.filename = output_file
self.moddir = output_dir
Run Code Online (Sandbox Code Playgroud)
我应该将几何包装到一个字典中,做一些其他的事情来阻止Pylint抱怨,或者只是忽略它(我真的不想这样做)?
python instance-variables pylint code-readability code-structure
我有一个用Java编写的应用程序.In存储在多个文件中.它使用不同的类和不同的方法.代码又大又复杂.如果我有代码的图形模型(某种有向图),我认为理解代码会更容易.是否有一些标准的代码可视化方法.我正在考虑使用UML(不确定它是一个正确的选择).谁能推荐我一些东西?
添加:
我考虑两种可能性:
增加2:
有免费的东西会很高兴.
我在反应原生中编写我的第一个应用程序,我的js文件变得非常大.拆分文件的正确方法是什么.
如果我有类似的东西
var MyClass = React.createClass({
...
})
Run Code Online (Sandbox Code Playgroud)
我可以将其保存myclass.js在另一个js文件中并通过某些命令包含吗?
以与.cpp文件相同的顺序对头文件中的方法进行排序是一种很好的方式,但通常这个顺序在开发过程中会变得粗糙.
如何将cpp文件中的方法重新排序为头文件中给出的顺序?
我有兴趣深入研究Erlang的C 源代码,并尝试了解幕后发生的事情.我在哪里可以找到有关代码设计和结构的信息?
我正在尝试改进我的javascript代码的文档,并遵循JSDoc指南http://usejsdoc.org/.
我找不到如何记录故意的副作用.例如,以下方法:
/**
* @description
* Paints the object red.
* @return
*/
Painter.paintItRed = function(someObj){
someObj.color = "red";
};
Run Code Online (Sandbox Code Playgroud)
您如何记录该方法直接作用于传递的对象的事实?一个不同的例子:
/**
* @description
* If the user has not setUp a config, show config Modal.
* @return
*/
User.checkConfig = function(user){
if(!user.config.valid){
showConfigModal();
}
};
Run Code Online (Sandbox Code Playgroud)
这些是人为的例子和可能的"代码味道",但这是另一个问题.我正在研究如何记录这种行为(好的或坏的)的一些最佳实践.也许比这更好的东西//IMPORTANT!! This method is dangerous!
我被指派在一个庞大的Java项目上做一些工作,并且几个迭代开发人员的影响是显而易见的.没有标准的编码风格,格式,命名约定或类结构.这是我和Javadoc一起上课的好日子,单元测试是一个快乐的白日梦.
到目前为止,我们这个项目的人已经"融入",适应我们正在进行的任何类别的现有惯例,但现在是时候强加一些秩序和一致性.
这是一项艰巨的挑战,我正在寻找人们可能对此类任务提出的任何建议.是否有任何特别有效的策略,或者需要注意的陷阱?尝试是一个好主意吗?
编辑添加:我不想给人一种项目不好的印象 - 它实际上是设计稳固而且写得很好.它只是感受它的年龄和维护的必然性......
我需要检测用户滚动的方向 - "向上"或"向下".基于此答案中的代码:如何确定jQuery滚动事件的方向?
我试图将它包装在一个函数中,因此它有点区别 - 但不幸的是,它不起作用.我认为它与我如何返回值有关,但方向总是"向上".作为JavaScript的新手,我在解决这个问题时遇到了问题.
这是代码:
$(document).ready(function () {
'use strict';
var lastScrollTop = 0,
st,
direction;
function detectDirection() {
st = window.pageYOffset;
if (st > lastScrollTop) {
direction = "down";
} else {
direction = "up";
}
lastScrollTop = st;
return direction;
}
$(window).bind('scroll', function() {
detectDirection();
console.log(detectDirection());
});
});
Run Code Online (Sandbox Code Playgroud)
我也建立了一个小提琴.
你能帮我找一下问题所在吗?
code-structure ×10
javascript ×3
java ×2
.net ×1
c ×1
c# ×1
c++ ×1
code-cleanup ×1
code-reuse ×1
coding-style ×1
erlang ×1
formatting ×1
header ×1
jquery ×1
jsdoc ×1
kotlin ×1
legacy ×1
libraries ×1
pylint ×1
python ×1
react-native ×1
refactoring ×1
return ×1
schema ×1
scroll ×1
uml ×1