XML agyba fõbe

Kezdőlap Fórumok Programozás XML agyba fõbe

6 bejegyzés megtekintése - 11-16 / 16
  • Szerző
    Bejegyzés
  • #2052819
    Leslieman
    Felhasználó

      Hagy tegyem még hozzá, hogy NAGYON nem mindegy, hogy milyen módon dolgozod fel az XML-t.
      Ugyanis megint két módszer van arra, hogy hogyan dolgozod fel, kezeled az XML-t. Most éppen arra gondolok, hogy van soros hozzáférés (SAX), és van az, amikor az egész xml állományt beolvassa és felépíti a fa struktúrát a memóriában (DOM)  :wink1:.
      Az elsõ SOKKAL gyorsabb, de másképpen kell kezelni, míg a második esetben egyszerûbb az adatok kezelése a memóriában, mármint a programozónak.
      Az elsõt leginkább akkor érdemes használni, ha valami igen nagy XML állománnyal dolgozol, ahol már lassú/felesleges lenne az egészet egyszerre benyalni a memóriába.

      Visszatérve az érvényesítésre: Nem kell mindig. Akkor kell, ha kell  :).
      Mármint pl. ha magadnak írsz két progit, az egyik elõállít egy xml állományt a második pedig feldolgozza, akkor jó esély van rá, hogy sosem fog rossz XML állományt kapni a második progid. Ilyenkor max a fejlesztés idejére érdemes bekapcsolni az érvényesítést.
      Ha viszont pl. más cégtõl, internetes csatornán kap a második progid XML-t, akkor mindig érdemes érvényesíttetni, pont azért, mert nehogy már a te progid szálljon el mások (esetleges) bénasága és rossz állománya miatt.

      #2052820
      pointux
      Felhasználó

        Szerintem, ha magadnak csinálos, akkor xml sem nagyon. :))))
        De én mondjuk nem xml validate check-re gondoltam (ez egyébként tökéletes – a program szempontjából – adatnál sem biztos, hogy +, bár mindegy), hanem tovább megyek: ha ez pl egy dinamikus menü, konfig, vagy valamilyen dokumentum stb. szükséges a változók ellenõrzése is. Mert mi van, ha vársz egy paramétert és nem ott jelenik, meg vagy egyátalán nem jelenik meg stb. Ez is lassítja.
        De pl ez: mindig gyorsabb, mint a … >… > vagy akármi. (Még lehet, hogy akkor is, ha sima textként kezeled, mert kevesebb a karakter benne. :)))))

        „míg a második esetben egyszerûbb az adatok kezelése a memóriában, mármint a programozónak.”
        Ezt így azért nem mondanám. Semmi gond nincs vele… ráadásul biz esetben biztos, hogy parktikusabb is.

        #2052821
        kayapo
        Felhasználó

          Leslieman
          Elsõ lépésben a mai processzor ár/teljesítmény viszonylatok között a DOM semmivel sem lassabb a SAX annál is inkább mert a SAX nem végez validálást, a DOM meg igen és ezzel párhuzamosan állítja elõ az objektumokat, vagy tömböket és ez nemcsak hogy gyorsabb a programozó szempontjábol de átlátahtóbb, hatékonyabb, kezelhetõbb (Objet Orienteted Data Source – ODS), és a kód csak kevéssé lassul (RAM / Processzor kérdése). Persze tudom, hogy egyszer az isten vasa is elfogy de, kevéssé valószínû hogy ettõl.

          #2052822
          Leslieman
          Felhasználó

            Hmm….
            SAX és DOM is akkor végez validálást, ha kéred. (például csekdiszáut: http://xerces.apache.org/xerces2-j/javadocs/api/javax/xml/validation/ValidatorHandler.html)

            #2052823
            kayapo
            Felhasználó
              Leslieman wrote:
              Vagy mondjuk van egy akárhánymegás XML állományod, amibõl szeretnél két adatot megkeresni, beolvasni. Nehogy azt mondd, hogy jobb, ha beolvassuk az egészet, felépítõdik a memóriában az egész struktúra, megkeresed a két adatot, majd hagyjuk eldobni a felépített struktúrát!

              Ebben vitán felül egyetértünk. De errõl még annyit, hogy nem látom létjogosultságát egy 150 – 250 kByte -nál (ez 1600db, 160 karakteres sort jelent) nagyobb (gép függõ) XML álománynak, kivátel, ha azt nem kell az alkalmazásnak, csak egyszer – kétszer (indítás, leállítás) feldolgozni (betölteni a memóriába)

              #1882684
              csaba
              Felhasználó

                Ejjo mindenkinek!

                Programozgatok-programozgatok és eljutottam oda is, hogy PC-s alkalmazásokat is fejlesztketek. Gambas, Kdevelop, Kylix, Delphi, .NET stb. nyelveken. Az élet szép, minden nagyon jól megy, mert ha az egyik megtanultam, akkor a másik már csak egy kicsit különbözik, ráadásul az IDE-k sokat segítenek és az eseménykezeltség.
                Most éppen egy Mono-s progit irogatok (ami ügye így futni fog windows alatt is). XML-ben szeretném tárolni az adatokat. Egy relációs adatbázist terveztem meg. Elég egyszerû a felépítése, XML-be mégsem tudom, hogyan lehetne átültetni.

                Code:
                —Tabla1—
                  ID
                  String1

                —Tabla2—
                  ID
                  Tabla1_ID
                  Str…
                  …

                A Tabla1_ID és az 1. tábla ID mezeje között N:1-hez kapcsolat van. Azaz a Tabla1 1db bejegyzéséhez N számú másik bejegyzés párosulhat a 2. táblából. Ezt XML-be hogyan lehet átültetni?
                Remélem világos voltam…

              6 bejegyzés megtekintése - 11-16 / 16
              • Be kell jelentkezni a hozzászóláshoz.