Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-5546

[C#] Remove IArrowArray and use Array base class.

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 0.13.0
    • Fix Version/s: None
    • Component/s: C#
    • Labels:
      None

      Description

      In .NET libraries, we have historically favored classes (abstract or otherwise) over interfaces. See Choosing Between Classes and Interfaces. The main reasoning is that you can add members to a class over time, but once you ship an interface, it can never be changed. You can only add new interfaces.

       In light of this, we should remove the IArrowArray interface, and instead just the base `Array` class as the abstraction for all Arrow Arrays.

      As part of this, we should also consider renaming `Array` because it conflicts with the System.Array type. Instead we should consider naming it `ArrowArray` to make it unique from the very common System.Array type in .NET.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              eerhardt Eric Erhardt
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: