- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
嘿,只是一些寻求建议的初学者。
class Board():
def __init__(self):
self.x = 0
self.y = 0
def SelectSquare(self,direction):
#based on some value from direction
self.x += 1
#or
self.y += 1
#return square at self.x and self.y
鉴于上面的代码,像这样创建将在对象内部更改的属性是不好的做法吗?
最佳答案
完全没问题。它符合面向对象编程范式,即 ( Wikipedia ):
A feature of objects is that an object's own procedures can access and often modify the data fields of itself
只有两点:
使用 snake_case 作为您的方法名称,而不是 PascalCase
如果一个方法改变了属性,那么最好不要让它返回某些东西。当编码人员在知道返回值的情况下调用此方法时,他们可能会惊讶于还有另一个副作用。
决定函数是否应该返回一些东西——在这种情况下最好不要改变实例——否则不返回一些东西,在这种情况下它改变实例是完全没问题的。这条规则当然也有异常(exception)。这里重要的是调用者不应该对“副作用”感到惊讶。
关于python - 在它自己的方法中更改类的属性是不好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65375015/
如果您想分享更多信息,可以在这里找到整个资源 指针: https://github.com/sergiotapia/DreamInCode.Net 基本上,我的API将为其他开发人员提供
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 5 年前。 Improve this qu
我不是 SCM 工具的经验丰富的用户,尽管我确信它们的用处,当然。 我在以前的工作中使用了一些不起眼的商业工具,在当前的工作中使用了 Perforce,并在我的小型个人项目中使用了 TortoiseS
所以我想知道一些我应该避免在 javascript 中做的事情以获得良好的 SEO 排名。在我的下一个站点中,我将广泛使用 jquery 和 javascript,但不想牺牲 SEO。那么您认为我应该
基本上,我想知道什么是避免 future CSS 代码出现问题和混淆的最佳方法... 像这样命名 CSS 属性: div#content ul#navigation div.float-left (真
我是一名优秀的程序员,十分优秀!