Kurzusok
/
Racket
Racket
/
Feladatok
/
Bankszámla
Bankszámla

Bankszámla

Nehéz

Bevezetés

Miután évekig töltötted ki az űrlapokat és vártál, végre megszerezted a banki engedélyedet. Ez azt jelenti, hogy hivatalosan is jogosult vagy arra, hogy saját bankot nyiss, hurrá!

Az elsődleges feladatod, hogy az informatikai rendszereket működésbe hozd. Egy kemény munkanap után már tudsz számlákat nyitni és zárni, valamint kezelni tudod a pénzfelvételeket és a befizetéseket.

Mivel nem volt kedved teszteket írni, meghívsz néhány barátot, hogy segítsenek tesztelni a rendszert. Öt perc után azonban az egyik barátod azt állítja, hogy elveszítette a pénzét! Bár biztos vagy benne, hogy a kódod hibamentes, elkezded átnézni a naplókat, hogy kivizsgáld a dolgot.

Ah, igen, ahogy sejtetted, a barátod a hibás! Megosztotta a tesztelési hitelesítő adatait egy másik barátjával, és együtt összeesküdtek, hogy ugyanazon a számlán párhuzamosan fizessenek be és vegyenek fel pénzt. Ki tenne ilyet?

Miközben te azzal érvelsz, hogy fizikailag lehetetlen, hogy valaki párhuzamosan férjen hozzá a számlájához, a barátod önelégülten közli, hogy a banki szabályok megkövetelik, hogy támogasd ezt. Így hát nincs párhuzamos banki támogatás, nincs élesítési jelzés. Sóhajtva feljegyzed magadnak, hogy holnap foglalkoznod kell ezzel. Ez legalább egy nappal kitolja az indulás dátumát, de hát...

Utasítások

A feladatod, hogy bankszámlákat valósíts meg, amelyek támogatják a nyitást, a zárást, a pénzfelvételt és a befizetést.

Mivel a bankszámlákat sokféle módon el lehet érni (interneten, mobiltelefonon, automatikus terheléssel), a banki szoftverednek lehetővé kell tennie, hogy a számlákat több szálból vagy folyamatból (a megnevezés a programozási nyelvedtől függ) párhuzamosan, biztonságosan el lehessen érni. Előfordulhat például, hogy sok befizetés és pénzfelvétel zajlik párhuzamosan; gondoskodnod kell róla, hogy ne alakuljon ki versenyhelyzet aközött, amikor kiolvasod a számla egyenlegét, és amikor beállítod az új egyenleget.

A számlát le is kell tudni zárni; a lezárt számlával szembeni műveleteknek sikertelennek kell lenniük.

Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
Racket Exercism

Készen állsz elkezdeni a(z) Bankszámla feladatot?

Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Racket nyelvet 84 feladat segítségével, valódi emberi mentorálással, mindez ingyen.