Hirdetés

Keresés

Új hozzászólás Aktív témák

  • Peter Kiss

    őstag

    válasz tototos #5621 üzenetére

    Kicsit áthegesztettem: Visual Studio 2013-as project

    Nyilván nem tudom, működik-e rendesen, de van benne pár ötlet.

    Megjegyzések:
    - parser-t nem összekeverni: adattárolóval (DataSet), mentő megoldása (CreateFile)
    - parser, saver, writer blabla dolgokat mindig érdemes IDisposable interface-szel ellátni
    - DataSet ne maradjon véletlenül sem gazdátlanul, mert a ctor-ban alapból van egy GC.SuppressFinalize((object) this); hívás
    - nem kell mindennek mindent ismernie
    - miért nem XML-lel megy?
    - CultureInfo csak parse-olásnál volt állítva, mentésnél nem, de parse esetén sem volt visszaállítva
    - a többit nézd meg

  • Karma

    félisten

    válasz tototos #5621 üzenetére

    Három dolog vágott szembe elsőre:

    1) A System.Type.GetType(string) egy törékeny, és teljesen felesleges mellélövés, használd inkább a typeof operátort. Így biztos, hogy nem írod el a névteret, és azt a típust jelenti, amit szeretnél.

    Például System.Type.GetType("System.String") helyett typeof(String).

    2) Másrészt a kódod rettenetesen redundáns.
    a) Például a két konstruktort (filename paraméteres és paraméter nélküli) simán össze tudnád vonni egybe, opcionális paraméterrel vagy a this konstruktor láncolással.
    b) Magában a konstruktorban jön ki nagyon, hogy ismételed önmagad: ugyanaz a szerkezet ismétlődik újra meg újra meg újra, copy-paste-tel gondolom egyszerű volt megírni, de ez is nagyon törékeny és karbantarthatatlan. Az oszlopok definícióit ki kéne szervezned egy static readonly tömbbe (benne pl. string+Type Tuple-ökkel), és for ciklussal helyettesíteni az ismétlődő részeket.

    3) Túl hosszú és monolitikus. A 600 soros blob helyett szét kéne szedni – felelősség szerint – 100-150 soros darabokra.

Új hozzászólás Aktív témák

Hirdetés