我正在尝试用对象重写现有系统。我已经创建了一些基本对象,但我坚持如何让他们按照我的想法工作。嵌套对象和检索数据的位置?
这些是基本类:
Public Class Course
Public AcadPeriod As String
Public AoSCode As String
Public AoSPeriod As String
Public Title As String
Public Reviews As New Reviews
End Class
Public Class Courses
Inherits CollectionBase
Public Sub Add(ByVal cse As Course)
List.Add(cse)
End Sub
End Class
Public Class Review
Public ReviewID As String
Public Categories As Categories
End Class
Public Class Reviews
Inherits CollectionBase
Public Sub Add(ByVal rev As Review)
List.Add(rev)
End Sub
End Class
Public Class Category
Public CategoryID As String
Public CategoryName As String
Public Comment As String
Public MeasureValue As Integer
Public CompletedBy As String
Public CompletedDate As DateTime
End Class
Public Class Categories
Inherits CollectionBase
Public Sub Add(ByVal cat As Category)
List.Add(cat)
End Sub
End Class
我希望能够做的就是像下面写代码:
课程([CourseCode])评论(1).Categories( [CategoryID])。评论 或 课程(i).Reviews(1).Categories(x).Comment
[和]之间的字符表示来自调用应用程序的某些值。
我的问题的第二部分与检索数据的最佳方式有关。在实例化时,我是否可以自动检索对象内部检索的所有日期(可能需要检索相当多的数据),或者有像GetReviews(在Course对象内)或GetComments(在Review对象内)这样的方法,在这些对象变为可用之前调用? 这些方法是否应该简单地在父对象中填入这些对象,或直接将对象返回给调用应用程序?
但是,我想要检索课程对象作为一些观点。对我来说,在Course对象本身中使用这种方法似乎是错误的。 (Courses.GetCourses([StaffMember]))
我真的只是试图进入编程OO,因为我已经以非常程序化的方式使用.Net直到现在。是否有任何人都可以推荐的书籍作为如何使用面向对象的指南以及根据手边的任务使用它的不同方式? 我在过去创造了许多课程,这些课程对我来说一直很好,但我努力研究如何以尽可能最好的方式将它们放在一起。
谢谢您的回答说唱,我认为这两种方法的结合将是完美的,我的问题。 我已经标记你为答案,非常感谢。 – hermiod 2009-12-06 19:30:33