Why a ComboBox Is Not Enough

Je bouwt zakelijke applicaties. Je lost herhaaldelijk dezelfde problemen op.

Je bouwt zoekfuncties voor klanten. Je bouwt autocomplete-velden voor producten. Je bouwt selectie-popups.

De meeste UI-bibliotheken behandelen deze als afzonderlijke widgets. Ze noemen ze lookups of autocomplete-boxen. Dit is een fout.

Dit zijn geen verschillende problemen. Het is hetzelfde probleem. Ik noem dit concept een Locator.

Zakelijke applicaties vertrouwen op referenties.

  • Een verkooporder verwijst naar een klant.
  • Een factuur verwijst naar een leverancier.
  • Een transactie verwijst naar een product.

Databases slaan deze op als ID's. Gebruikers denken niet in ID's. Gebruikers denken in namen, codes of barcodes.

Het echte probleem is niet hoe je een ID opslaat. Het probleem is hoe een gebruiker de juiste entiteit vindt met behulp van wat hij weet.

Een ComboBox werkt voor kleine lijsten. Gebruik het voor landen of valuta's. Deze lijsten hebben een paar dozijn rijen.

Een ComboBox schiet tekort bij grote datasets. Je kunt niet door 100.000 klanten scrollen. Op deze schaal ben je niet langer iets aan het selecteren uit een lijst. Je bent een record aan het lokaliseren.

Een Locator is geen UI-control. Het is een gedrag.

Een Locator doet meer dan alleen een waarde retourneren. Het lost een zakelijke referentie op.

Wanneer een gebruiker een product selecteert, heeft de app meer nodig dan alleen een ProductId. Het heeft de eenheidsprijs nodig. Het heeft het btw-tarief nodig. Het heeft de maateenheid nodig.

Een Locator biedt dit allemaal door de referentie binnen een specifieke context op te lossen.

De UI kan veranderen:

  • Op een desktop ziet het eruit als twee doorzoekbare velden.
  • In een grid ziet het eruit als een aangepaste editor.
  • Op mobiel ziet het eruit als een zoekscherm.

Het uiterlijk verandert, maar het gedrag blijft hetzelfde.

Een goede Locator respecteert de gebruiker. Ervaren gebruikers gebruiken het toetsenbord. Een Locator moet een selectie onmiddellijk voltooien als hij een unieke match vindt. Hij moet pas om een keuze vragen als er meerdere matches zijn.

Stop met het behandelen van zoeken, autocomplete en popups als ongerelateerde widgets. Erken de Locator als een fundamenteel concept voor zakelijke software.

Bron: https://dev.to/tbebekis/-fundamental-concepts-of-business-applications-i-why-a-combobox-is-not-enough-pb4