Hallo allen,
Ik wil binnenkort als hobby-project een webapp bouwen. Het basis-idee is heel simpel, ik zit namelijk te denken aan een webbased database browser. Het idee hierbij is dat een gebruiker dmv klikken en selecteren (zonder enige SQL of wat dan ook), data uit een tabel op het scherm gepresenteerd krijgt. Verder moet het voor de gebruiker mogelijk zijn om in een nieuwe een tab een connectie te maken naar een andere database en data uit een tabel te selecteren en bekijken. En uiteraard mag de gebruiker ook meer dan 2 tabs aanmaken om meerdere tabellen tegelijkertijd te bekijken.
Ik zal een MVC framework gebruiken om de frontend van de processing laag te ontkoppelen. Op basis van de selectie/klik waarden van de gebruiker zal de processing layer een SQL query moeten genereren waarmee de gevraagde data opgehaald wordt. De processing layer delegeert deze taak naar de SQL generator die met een factory methode gecreerd wordt. Dit laatste omdat de SQL generator vendor specfieke queries zal moeten maken. De SQL generator is tevens het enige punt in het systeem wat vendor aware is en ook vendor details bevat. Frontend, processing layer en SQL generator worden middels interfaces aan elkaar gekoppeld en de processing layer wordt mbv dependency injection in de frontend geinjecteerd, en zoals gezegd de processing layer creert mbv een factory methode de juiste SQL generator (afhankelijk van de onderliggende type database). Ik twijfel nog of ik van iedere SQL generator een singleton moet maken die steeds hergebruikt wordt of dat ik iedere keer een nieuw object creer, graag hierover jullie mening.
De twee belangrijkste punten van dit design zijn flexibilteit en schaalbaarheid. Ik wil namelijk makkelijk ondersteuning voor een andere type database en nieuwe funtionaliteit kunnen toevoegen. Verder moet het design geen performance bottleneck zijn/worden en gemakkelijk opschalen naar gelang het aantal gebruikers/requests. Graag jullie op of aanmerkingen.
Verder nog het verzoek voor tips een ideen voor libraries of iets dergelijks welke ik kan gebruiken om een mooie frontend te kunnen maken zodat de gebruiker de data op een mooie manier gepresenteerd krijgt.
Ik wil binnenkort als hobby-project een webapp bouwen. Het basis-idee is heel simpel, ik zit namelijk te denken aan een webbased database browser. Het idee hierbij is dat een gebruiker dmv klikken en selecteren (zonder enige SQL of wat dan ook), data uit een tabel op het scherm gepresenteerd krijgt. Verder moet het voor de gebruiker mogelijk zijn om in een nieuwe een tab een connectie te maken naar een andere database en data uit een tabel te selecteren en bekijken. En uiteraard mag de gebruiker ook meer dan 2 tabs aanmaken om meerdere tabellen tegelijkertijd te bekijken.
Ik zal een MVC framework gebruiken om de frontend van de processing laag te ontkoppelen. Op basis van de selectie/klik waarden van de gebruiker zal de processing layer een SQL query moeten genereren waarmee de gevraagde data opgehaald wordt. De processing layer delegeert deze taak naar de SQL generator die met een factory methode gecreerd wordt. Dit laatste omdat de SQL generator vendor specfieke queries zal moeten maken. De SQL generator is tevens het enige punt in het systeem wat vendor aware is en ook vendor details bevat. Frontend, processing layer en SQL generator worden middels interfaces aan elkaar gekoppeld en de processing layer wordt mbv dependency injection in de frontend geinjecteerd, en zoals gezegd de processing layer creert mbv een factory methode de juiste SQL generator (afhankelijk van de onderliggende type database). Ik twijfel nog of ik van iedere SQL generator een singleton moet maken die steeds hergebruikt wordt of dat ik iedere keer een nieuw object creer, graag hierover jullie mening.
De twee belangrijkste punten van dit design zijn flexibilteit en schaalbaarheid. Ik wil namelijk makkelijk ondersteuning voor een andere type database en nieuwe funtionaliteit kunnen toevoegen. Verder moet het design geen performance bottleneck zijn/worden en gemakkelijk opschalen naar gelang het aantal gebruikers/requests. Graag jullie op of aanmerkingen.
Verder nog het verzoek voor tips een ideen voor libraries of iets dergelijks welke ik kan gebruiken om een mooie frontend te kunnen maken zodat de gebruiker de data op een mooie manier gepresenteerd krijgt.