بایگانی برچسب: s

Microsoft.NET Collection interfaces

Figure 7-1. Collection interfaces
Figure 7-1. Collection interfaces

کالکشن ها از چیز هایه خیلی لازم برنامه نویسی اند و آدم زیاد این interface ها رو میبینه و از کنارشون میگذره ، مخصوصا  IEnumerable ها که تو LINQ حرف اول رو میزنند .

رویه نمودار ارث بری ها هم که با پیکان مشخص شده اند هم مهم و آموزنده هستند . اینکه یکم هم توضیح بیشتر هم از این کتاب  C# in a Nutshell اضافه کنم که به فهم بهتر این ۳ گروه کمک می کنه

The inheritance hierarchy for these interfaces was shown in Figure 7-1. The easiest way to summarize them is as follows:

  • IEnumerable<T>: Provides minimum functionality (enumeration only)
  • ICollection<T>:Provides medium functionality (e.g., the Count property)
  • IList <T>/IDictionary <K,V>: Provides maximum functionality (including “random” access by index/key)

LINQ to XML and X-DOM types hierarchy

O'Reilly - C# 4.0.in.a.Nutshell.4th.Edition.Feb.2010-Figure 10-1. Core X-DOM types
Figure 10-1. Core X-DOM types

واقعا این نمودار زیبا تویه فهم معماری LINQ to XMLخیلی کمک می کنه و خیلی واجبه و بدون فهمش کار پیش نمیره.

Figure 10-2. A simple X-DOM tree
Figure 10-2. A simple X-DOM tree

مثال شکل Figure 10-2. A simple X-DOM tree هم که یک نمونه ساده هست که ساختار X-DOM کد زیر رو نشون میده

string xml = @”<customer id=’123′ status=’archived’>
<firstname>Joe</firstname>
<lastname>Bloggs<!–nice name–></lastname>
</customer>”;
XElement customer = XElement.Parse (xml);

FIGURE-5-1-The-XDocument-class-family-simplifies-LINQ-access-to-XML-data.
FIGURE-5-1-The-XDocument-class-family-simplifies-LINQ-access-to-XML-data

شکل FIGURE 5-1 هم از کتاب MCTS Exam 70-516 Accessing Data with Microsoft .NET Framework 4 فصل Chapter 5: LINQ to XML درس ۲ به نام Lesson 2: Querying with LINQ to XML انتخاب شده که مشابه همون شکل رو گذاشته و برای نشون دادن کلاس های abstract از نقطه چین به جای لوزی استفاده کرده و ارث بری  هم که در هر دو ار یک فلش و پیکان استفاده شده

برای فهم بهتر و کلی هم که این ۲ توضیح رو داشته باشیم .

XObject is the abstract base class for all XML content. It defines a link to the Parent element in the containership tree as well as an optional XDocument.
XNode is the base class for most XML content excluding attributes. The distinguishing feature of XNode is that it can sit in an ordered collection of mixed-type XNodes.