标签: class-design

在C++中是否有一种方法可以将类的接口呈现为除了少数几个类之外的所有类的私有?

我正在写一个B-link树及其伴随的子类,如数据页类和节点类等.

我想知道有没有办法保护节点和页面的公共接口,这样只有b-link树类本身才能访问它们,而不会同时将页面和节点的私有方法暴露给b-link类?

IE我已经想过简单地将页面和节点的"公共"界面更改为受保护的类别,然后将B-link树声明为朋友,但是这使得b-link树可以访问我想要保留的私有方法私人的.

c++ class-design

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

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

游戏中武器的类设计?

我喜欢制作游戏,现在第一次尝试使用移动设备.在那里,性能当然是一个比一台漂亮的PC更大的问题,我发现自己特别挣扎于武器(或者更具弹性)的类设计.它们需要进行大量更新,大量销毁/创建,并且通常需要进行大量更新.

目前我以明显的方式做到这一点,每当我开火并在撞击时摧毁它时,我都会制造一个射弹物体.每一帧所有活动的射弹都会被检查是否与其他物体发生碰撞.这两个步骤似乎肯定需要改进.有关如何有效处理此类对象的常用方法吗?

总的来说,我正在寻找关于如何进行清洁和高性能课程设计的建议,到目前为止,我的谷歌搜索技巧都很薄弱.

我很乐意就这个问题提出任何建议.

oop iphone class-design

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

在Python中定义一个类

class Car:
    pass

class Car():
    pass
Run Code Online (Sandbox Code Playgroud)

这两者有什么区别?和,

a = Car

a = Car()
Run Code Online (Sandbox Code Playgroud)

还有,上面这两个有什么区别?

最好的祝福

python class-design class

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

如何正确设计应包含双语信息的类

如果我的域对象应该包含2种语言的字符串属性,我应该创建2个单独的属性还是创建一个新类型BiLingualString?

例如,在工厂分类应用程序中,工厂域对象可以包含Plant.LatName和Plant.EngName.

整个域的双语属性数量不多,大约6-8,我只需要支持两种语言,信息应该同时以两种语言呈现给UI .(所以这不是locallization).在开发过程中,要求不会改变.

它可能看起来像一个简单的问题,但这个决定将对验证,持久性,对象克隆和许多其他事情产生影响.

负面我可以想到使用新的dualString类型:

  • 验证:如果我要使用DataAnattations,Enterprise Library验证块,Flued验证,这将需要更多的工作,对象图验证比简单的属性验证更难.
  • 持久性:即NH或EF需要更多复杂特性的工作.
  • OOP:更复杂的对象初始化,我必须在使用它之前初始化这个新的Type in构造函数.
  • 架构:转换对象以在层之间传递它们更加困难,自动映射工具将需要更多的手工工作.

c# oop dns domain-driven-design class-design

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

数据库服务器太忙了.打开DataContexts所需的建议

我昨天开始运行这个庞大的系统.成千上万的人同时连接..我正在使用SQL Server 2008和.NET 3.5(C#);

今天我注意到我的数据库服务器变得非常慢(顺便说一句,服务器机器确实能够轻松地处理10x这个应用程序,所以我必须弄乱我的连接或其他东西).

首先:My Business类分别创建了一个DataContext.在课堂上,像这样:

public class BusProduct : IDisposable
{
    //DataContext
    DBDataContext db = new DBDataContext();


    //Variable of type DAL.Products (that will be set on application level)
    public Products _attributes { get; set; }

    //Dispose
    public void Dispose()
    {
        Dispose(true);

        GC.SuppressFinalize(this);
    }

    protected virtual void Dispose(bool disposing)
    {
        if (disposing)
        {
            db.Dispose();
        }
    }

    /// Constructor
    public BusProduct()
    {
        try
        {
            //New object
            _attributes = new Product();
        }
        catch (Exception ex)
        {
            throw new Exception(ex.Message,ex);
        }
    } …
Run Code Online (Sandbox Code Playgroud)

c# database datacontext class-design sql-server-2008

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

没有多重继承怎么解决这个问题?

我有课名Controller_Home.它应该继承Controller_PermissionsController_Template.任何带前缀的类都Controller_必须从Controller类继承.

如果在PHP(我的情况)中支持多继承,我可以这样做:

class Controller_Home extends Controller_Permissions, Controller_Template {
Run Code Online (Sandbox Code Playgroud)

而且Controller_Permissions,Controller_Template:

Controller_Permissions extends Controller {

Controller_Template extends Controller {
Run Code Online (Sandbox Code Playgroud)

现在我需要做这样的事情:

class Controller_Home extends Controller_Template {

class Controller_Permissions extends Controller_Template {

Controller_Template extends Controller {
Run Code Online (Sandbox Code Playgroud)

好的,它有效!

现在我需要在Controller_Template没有权限的情况下使用(in Controller_Permissions).

怎么做而不重复代码?我不想要另一堂课Controller_TemplateWithoutPermissions.

控制器,模板和权限就是例如.

php oop inheritance class-design multiple-inheritance

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

uml中的类与接口

正如我们在OOP中所知,接口提供了一组没有实现的操作,但类是相反的.

在面向对象的设计中,我们使用uml接口有一组没有实现的操作,类也有一组没有实现的操作(我知道类除了操作之外还有属性)?

那么,UML有什么区别?

uml class-design class-diagram interface

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

类图 - 多个类使用同一个类

我正在为作业设计一个类图。在这个设计中,我使用一个名为 的单独类Currency来定义货币值及其功能。至少有四个其他类必须使用这个Currency类。

  • 如何在类图中显示它?我的意思是,我是否需要绘制从Currency班级到所有其他班级的关系(连接线)?
  • 有没有更好的办法 ?
  • 我在这里做错了什么?

oop uml class-design class-diagram

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

两次实现一个接口是不好的做法吗?

我对这个建筑难题一无所知,我很想听到一些批评或建议。

情况:

一个实体关系都已经共享(i节点)和独特的方法(IEntity或IRelation)

需要知道使用接口 IEntity 或 IRelation 的共享方法和唯一方法。

题:

在尝试使用 SOLID & DRY 原则进行编程时,以下架构是好还是坏?

附加信息:这个问题的主要原因是因为在第一个图中(当前实现) Entity 和 Relation 都实现了 INode 接口两次。

情况一:

情况一

情况二:

情况二

architecture uml class-design dry solid-principles

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