xoox | Oct. 2nd, 2006 04:00 pm Visķēpīgākais darbs, ar kādu esmu saskāries programmēšanā ir datumu un laiku intervālu apstrāde. Piemēram, kāds datums būs šonakt tieši 0:00:00 ?? Šodiena vai rītdiena? Rītdiena? A pamēģiniet to iestāstīt jūzerim, kurš parāda uz tuvāko diennakts veikalu, kurš strādā no 00:00 līdz faking 24:00!!! Un, protams, tieši tā viņš grib ievadīt arī aplikācijā!
Jā, un pamēģiniet neapjukt šo laika intervālu pārklāšanās intervālu noteikšanā: 1) Darbdiena vai brīvdiena vai svētku diena (Lieldienu aprēķināšana, sestdiena, kas ir arī svētku diena...) 2) 00.00-08.00, 08-00-20.00 vai 20.00-24.00/00.00 (jūzeris ievada 00:00, good luck izdomāt vai tas ir sākuma vai beigu laiks un to visu user-friendly! formātā) 3) Laiks ir ilgāks par 3 stundām, par 5 stundām, ņemot/neņemot vērā jaunas dienas pienākšanu. 4) Cilvēks lieto abonementu, kurš SAVUKĀRT ir derīgs darbdienās vai brīvdienās, noteiktos pulksteņlaikos vai noteiktās nedēļas dienās/darbdienās/brīvdienās ieskaitot/neieskaitot svētku dienas. Kā arī tam ir derīguma termiņš, kurš arī jāņem vērā. 5) Cilvēks var apmaksāt pasūtījumu ar priekšapmaksas karti, kas arī var būt derīga tikai noteiktās dienās vai pulksteņlaikos.
Sanāk reāli mēsli. Tagad es saprotu, kāpēc mans komunālo pakalpojumu rēķins ir tik fakin sarežģīts un neintuitīvs. Ir GRŪTI programmēt ko tādu. Bet nu, turpināsim meklēt patiesību. Tomēr kaut kas manī saka, ka sistēmai jābūt pavisam vienkāršai. Lasīt komentārus |