Desktop programma of web applicatie?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jan terhuijzen

jan terhuijzen

19/09/2018 19:16:10
Quote Anchor link
Ik ben van plan om een boekhoudprogramma te ontwikkelen. Niet om later te verkopen als commerciële software, maar om lokaal binnen hetzelfde gebouw te gebruiken. Zie het als een doe het zelf project. Natuurlijk zijn er tal van professionele, betrouwbare online boekhoudprogramma's en offline computerprogramma's (ook gratis). Maar daar gaat het niet om..

Ik heb veel ervaring met het ontwikkelen van zowel webapplicaties als desktop apps. Ik heb jaren gewerkt met Java, en tegenwoordig vooral met het .NET framework van Microsoft. (C# met WPF).

Ik twijfel nu tussen de volgende keuzes:

- Een niet-web gebaseerd programma ontwikkelen dat op de computer zelf draait.
- Een webapplicatie die in XAMPP draait op een lokale computer. PHP, Mysql, etc. Ik wil dit zonder webhosting laten draaien, vandaar XAMPP op een computer die als 'server' en database werkt en door andere pc's eventueel via lokaal IP adres te bereiken is.

In veel gevallen verdient een webapplicatie de voorkeur. Maar dan wel gehost, zodat het overal via internet te bereiken is. Daardoor komen de gegevens altijd uit één bron (de database). En het is makkelijk om een systeem te maken met gebruikers/accounts (als er meerdere medewerkers zijn, of een boekhouder die wil meedoen).

Maar bij een desktop programma zijn de voordelen dat de software op de pc draait en dat je niet steeds bestanden zoals offertes, excel bladen, PDF's etc. hoeft te uploaden en te downloaden. Want deze staan gewoon op de pc en kunnen zelfs door het programma rechtstreeks worden gegenereerd of aangepast, zonder downloads.

Daarnaast kun je ook een hybride systeem maken. Bijvoorbeeld een lokale XAMPP server voor het 'backend' gedeelte dat alle data bewaart in zijn database en een beetje vergelijkbaar is met een REST api. En een desktop programma dat als gebruikers interface werkt, en via lokaal netwerk communiceert met de XAMPP server.

De volgende opties heb ik overwogen voor dit project:
1. XAMPP server en volledige (lokale) web applicatie.
2. XAMPP server als backend, en desktop applicatie als user interface (i.v.m. de native mogelijkheden op de pc zoals bestanden direct bewerken in word of excel files uitlezen).
3. Volledige desktop applicatie. De data wordt tussen alle andere apparaten die het programma draaien gesynchroniseerd via het lokaal netwerk.

Mijn vragen zijn:
- Is naar jullie ervaring XAMPP erg belastend voor een gewone pc om te draaien? Dus een pc waarop nu XAMPP draait, gebruikt die veel van zijn resources en wordt die merkbaar traag?
- Heeft iemand ervaring met het maken van een self-hosted applicatie?
- Welke keuze zou volgens jullie het handigste zijn, of wat is jullie advies?

Uiteraard kan deze vraag opinie gebaseerd zijn, maar ook dan wil ik graag je mening.
 
PHP hulp

PHP hulp

14/11/2024 04:20:25
 
Rob Doemaarwat

Rob Doemaarwat

19/09/2018 19:59:03
Quote Anchor link
Optie 4: Desktop applicatie met centrale database (MySQL of iets anders). Bestanden lezen/schrijven via de gewone fileserver.

Als je tijd over hebt zou ik voor optie 2 gaan. Nu meer werk, maar mocht je er ooit een web-front-end tegenaan willen plakken, dan kan dat vrij eenvoudig.

Wil je snel klaar zijn, en de beste user experience dan zou ik voor bovenstaande optie 4 gaan.
Gewijzigd op 19/09/2018 20:00:33 door Rob Doemaarwat
 
- Ariën  -
Beheerder

- Ariën -

21/09/2018 12:39:41
Quote Anchor link
Verder zou ik XAMPP niet op een gewone PC draaien, maar toch eentje die vaak sterker is dan een gemiddelde desktop-pc. Meer geheugen, betere processor, SSD i.p.v. HDD. Een LAMP-setup (met Linux i.p.v. Windows) zou ik overigens nog meer aanraden, omdat dit standaard al weinig geheugen nodig heeft, en naar zeggen zelfs stabieler is.

Ik heb de Windows XAMPP overigens nog nooit gezien als een productie-software waar bedrijfskritische programma's op draaien.
 
Thomas van den Heuvel

Thomas van den Heuvel

21/09/2018 15:31:28
Quote Anchor link
Los daarvan, je (de eindgebruiker) wilt bij voorkeur geen extra toeters en bellen installeren om een applicatie te kunnen gebruiken. Dat is omslachtig en creëert ook een afhankelijkheid.
Gewijzigd op 21/09/2018 15:31:54 door Thomas van den Heuvel
 
Aad B

Aad B

21/09/2018 22:25:17
Quote Anchor link
- Welke keuze zou volgens jullie het handigste zijn, of wat is jullie advies?
Geen desktop applicatie, vraagt veel onderhoud, zeker in het begin. Nieuwe versie, bugpatching.
XAMPP op elke PC/Laptop is ook zeer onderhoudsgevoelig, ook daar moet alle php, mysql etc onderhouden en gepatched. In de praktijk komen dit soort configuraties echt niet (meer) voor.
Mij lijkt een centrale server (Linux) met een complete web omgeving en MySQL de meest efficiente oplossing. Creeer ook een dev/test environment op een tweede server en ga niet ontwikkelen op de productieserver.
 
Frank Nietbelangrijk

Frank Nietbelangrijk

22/09/2018 10:34:57
Quote Anchor link
Dat wat Thomas zegt is erg belangrijk. Eindgebruikers die zelf een database server moeten installeren dat gaat m niet worden.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.