Sama koodi kahdessa eri paikassa
Sama koodi kahdessa eri paikassa
Varasin viime torstaina aikaa laboratorioon. Valitsin ajan ja aloin täyttää henkilötietojani. Kirjoitin henkilötunnukseni, nimeni ja puhelinnumeroni, jonka jälkeen painoin epähuomiossa enter:iä . Sähköpostiosoite oli vielä täyttämättä ja vahvista aika-buttonia ei ollut vielä painettu. Enterin painamisen jälkeen tuli tekstiviesti varatusta ajasta. Tämä oli minusta hieman hämmentävää, mutta sinänsä ymmärrettävää. Voihan olla, että aikaa varaavalla ei ole sähköpostia.
Mutta tämän tarinan pointti on siinä, että varatun ajan vahvistaminen tekevä koodi on kahdessa paikassa (enterin painamisen jälkeen ja vahvista varaus-buttonin painamisen jälkeen).
Jos ohjelmoija on toiminut järkevästi tämä koodi on omassa aliohjelmassaan. Ja aliohjelmaa kutsutaan molemmista paikoista. Jos ei on mahdollista, että koodia muutettaessa muutos tehdään vain toiseen paikkaan. Olisi hyvä jos kehtysympäristössä olisi seuraavanlainen tarkistus:
ennenkuin käyttäjä alkaa muuttaa koodia, hän voi valita muutettavan koodin ja automaattinen tarkistus tarkistaa onko samoja koodirivejä muualla ohjelmistossa.
Aina saman asian tekevä koodi ei ole identtinen muissa paikoissa, vaikka se tekeekin saman asian. Tällöin voisi tekoäly tarkistaa, löytyykö saman asian tekevää koodia muualta.
Mutta tämän tarinan pointti on siinä, että varatun ajan vahvistaminen tekevä koodi on kahdessa paikassa (enterin painamisen jälkeen ja vahvista varaus-buttonin painamisen jälkeen).
Jos ohjelmoija on toiminut järkevästi tämä koodi on omassa aliohjelmassaan. Ja aliohjelmaa kutsutaan molemmista paikoista. Jos ei on mahdollista, että koodia muutettaessa muutos tehdään vain toiseen paikkaan. Olisi hyvä jos kehtysympäristössä olisi seuraavanlainen tarkistus:
ennenkuin käyttäjä alkaa muuttaa koodia, hän voi valita muutettavan koodin ja automaattinen tarkistus tarkistaa onko samoja koodirivejä muualla ohjelmistossa.
Aina saman asian tekevä koodi ei ole identtinen muissa paikoissa, vaikka se tekeekin saman asian. Tällöin voisi tekoäly tarkistaa, löytyykö saman asian tekevää koodia muualta.
-
- Reactions:
- Viestit: 6058
- Liittynyt: 29 Marras 2022, 23:28
Re: Sama koodi kahdessa eri paikassa
Varaa myös aika psykiatrian poliklinikalle, ”ongelmasi” ovat sitä tasoa...
”Brainwashed on tyyppi joka latelee omakohtaista törkyy muitten päähän väheksyttävästi, - samalla mainostaen omaa figuuriaan.”
- anonymous admirer
- anonymous admirer
Re: Sama koodi kahdessa eri paikassa
Heh, heh. Edellinen ongelma on huomattu käytännössä.Brainwashed kirjoitti: ↑22 Huhti 2024, 10:49 Varaa myös aika psykiatrian poliklinikalle, ”ongelmasi” ovat sitä tasoa...
Re: Sama koodi kahdessa eri paikassa
Nuo ohjelmistot tekee paljon muutakin ja toteutus on kompromissi yleisyyden ja yksittäisen tapahtuman optimoinnin välillä. Tai usein rakennetaan uusia toimintoja vanhojen lisäksi ja päälle, jolloin joudutaan käyttämään olemassaolevia rutiineja.
While I had personally never felt the lack of a penis, I did admit that it was a handy thing to have along on a picnic…
D. Gabaldon
D. Gabaldon
-
- Reactions:
- Viestit: 6058
- Liittynyt: 29 Marras 2022, 23:28
Re: Sama koodi kahdessa eri paikassa
Huumorintajusi on tallella, eli ei sinulla ole niinkään päässä mitään vikaa per se, vaan kelailet vain hieman erikoisia asioita, sillee hyvällä tavalla.SHT kirjoitti: ↑22 Huhti 2024, 11:00Heh, heh. Edellinen ongelma on huomattu käytännössä.Brainwashed kirjoitti: ↑22 Huhti 2024, 10:49 Varaa myös aika psykiatrian poliklinikalle, ”ongelmasi” ovat sitä tasoa...
”Brainwashed on tyyppi joka latelee omakohtaista törkyy muitten päähän väheksyttävästi, - samalla mainostaen omaa figuuriaan.”
- anonymous admirer
- anonymous admirer
Re: Sama koodi kahdessa eri paikassa
Varmaan moni kelailee tuollaisia puolihuolimattomasti, mutta harvempi tekee niistä aloituksia tiedepalstalle.Brainwashed kirjoitti: ↑22 Huhti 2024, 11:22Huumorintajusi on tallella, eli ei sinulla ole niinkään päässä mitään vikaa per se, vaan kelailet vain hieman erikoisia asioita, sillee hyvällä tavalla.SHT kirjoitti: ↑22 Huhti 2024, 11:00Heh, heh. Edellinen ongelma on huomattu käytännössä.Brainwashed kirjoitti: ↑22 Huhti 2024, 10:49 Varaa myös aika psykiatrian poliklinikalle, ”ongelmasi” ovat sitä tasoa...
Facessa on muuten ryhmä nimeltään Länsimaisen ihmisen ahdistus. Siellä on usein samantyylisiä avautumisia erilaisista epätäydellisyyksistä.
While I had personally never felt the lack of a penis, I did admit that it was a handy thing to have along on a picnic…
D. Gabaldon
D. Gabaldon
Re: Sama koodi kahdessa eri paikassa
Tuo on yliopisto versio. Työelämässä koodi on kompromissi pienen ja ison rahan välillä.
Re: Sama koodi kahdessa eri paikassa
Mun ymmärtääkseni sairaanhoitopiirien systeemit on just tuollaisia purkkavirityksiä usean eri systeemin välillä, joista osa on jotain viime vuosituhannen juttuja. Ja vaikka tehdään isolla rahalla, lopputulos on väkisin himmeli, koska kaikkea ei ole mahdollista räjäyttää ja aloittaaa puhtaalta pöydältä.
Alusta asti uutena tehdyt systeemin on sitten oma juttunsa. Tai ne, joissa on vain selkeä ja tarkasti rajattu rajapinta muihin systeemeihin.
Mä olen tehnyt sairaalalla kuvauksia tutkijan roolissa, mutta tutkittaville tehtiin ihan normaalit kuvauslähetteet ja käynnit systeemiin + radiologi katsoi anatomiset kuvat läpi, koska olisi epäeettistä olla tekemättä sitä. Käytännössä dataa kulki potilatietojärjestelmän (ikivanha), ajanvaraus/lähetesysteemin, sairaalan oman tietoaltaan ja kuvantamislaitteen tietokannan välillä. Minunkin piti kirjautua mustaakseni kolmeen eri systeemiin ja syöttää sinne tietoja käsin. Ja välillä joku yhteys oli poikki ja datoja ei saanut siirtymään tai varausta ei löytynyt, jolloin tuli vielä enemmän käsitöitä. Tutkimuskäyttöön tuleva data luonnollisesti piti ladata itse kovalevylle, mikä sekin on sairaalalaitteessa melkoinen operaatio.
En yhtään ihmettele, että noihin palaa henkilökunnalla aikaa ja hermoja. Systeemit tahmaa, jumittaa ja sellainenkaan data, joka jo on jossain systeemissä, ei siirry toiseen automaattisesti.
While I had personally never felt the lack of a penis, I did admit that it was a handy thing to have along on a picnic…
D. Gabaldon
D. Gabaldon
- KultaKikkare
- Reactions:
- Viestit: 4969
- Liittynyt: 28 Marras 2022, 22:30
Re: Sama koodi kahdessa eri paikassa
Toi ominaisuus tulee suoraan webbiselaimesta ja on määritelty HTML speksissä. Ohjelmakoodissa ei tarvitse edes tietää klikkasiko käyttäjä submit nappia vai painoiko entteriä, selain lähettää lomakkeen tiedot samalla tavalla molemmissa tapauksissa.SHT kirjoitti: ↑22 Huhti 2024, 10:43 Mutta tämän tarinan pointti on siinä, että varatun ajan vahvistaminen tekevä koodi on kahdessa paikassa (enterin painamisen jälkeen ja vahvista varaus-buttonin painamisen jälkeen).
Jos ohjelmoija on toiminut järkevästi tämä koodi on omassa aliohjelmassaan. Ja aliohjelmaa kutsutaan molemmista paikoista.
https://html.spec.whatwg.org/multipage/ ... submission
"If the user agent supports letting the user submit a form implicitly (for example, on some platforms hitting the "enter" key while a text control is focused implicitly submits the form), then doing so for a form, whose default button has activation behavior and is not disabled, must cause the user agent to fire a click event at that default button."
Jos tuntuu ettei jaksa niin koittakaa vaan jaksaa.
Re: Sama koodi kahdessa eri paikassa
Minä en ole juurikaan tehnyt web-ohjelmointia, joten ajattelin asiaa siltä kannalta, että button ja textbox (jonka täyttämisen jälkeen painoin enteriä) ovat käyttöliittymässä. Joka tapauksessa toiminta ei ollut kuten käyttäjä olettaa. Varaus pitäisi vahvistaa ainoastaan painamalla vahvista varaus-buttonia.KultaKikkare kirjoitti: ↑22 Huhti 2024, 15:18Toi ominaisuus tulee suoraan webbiselaimesta ja on määritelty HTML speksissä. Ohjelmakoodissa ei tarvitse edes tietää klikkasiko käyttäjä submit nappia vai painoiko entteriä, selain lähettää lomakkeen tiedot samalla tavalla molemmissa tapauksissa.SHT kirjoitti: ↑22 Huhti 2024, 10:43 Mutta tämän tarinan pointti on siinä, että varatun ajan vahvistaminen tekevä koodi on kahdessa paikassa (enterin painamisen jälkeen ja vahvista varaus-buttonin painamisen jälkeen).
Jos ohjelmoija on toiminut järkevästi tämä koodi on omassa aliohjelmassaan. Ja aliohjelmaa kutsutaan molemmista paikoista.
https://html.spec.whatwg.org/multipage/ ... submission
"If the user agent supports letting the user submit a form implicitly (for example, on some platforms hitting the "enter" key while a text control is focused implicitly submits the form), then doing so for a form, whose default button has activation behavior and is not disabled, must cause the user agent to fire a click event at that default button."
Re: Sama koodi kahdessa eri paikassa
Ei se vahvistuksen lähtetävä koodi tässä ole ollut kahdessa paikkaa, html formit nyt vaan toimii defaulttina noin että jos focus on/ei ole sopivassa elementissä ja painaa enter niin selain lähettää formit. Nykyisin single page appeissa noihin tehdään estoja, ja yleensäkkin koko formit tehdään nykyisin toisin, eikä välttämätti edes käytetä formeja.
Sinänsä, esim. jonkinlaiset varmistukset koodataan kahteen paikkaan jos halutaan käyttäjäystävällisyyttä, toinen on selain, joka osaa heti kivasti ilmoittaa käyttäjille esim. väärän muotoisista salasanoista, ja sen lisäksi kontrollit ajetaan myös palvelinpäässä, jossa varmistetaan ettei käyttäjä lähetä esim. tarkoituksella muokattua ikävää payloadia, jossa olisi esim. vaikka nyt joku pankkijärjestelmissä tilisiirron summa vaihdettu johonkin täysin toiseen mikä pitäisi olla mahdollista.
Jotkut frameworkit rakentaa nuo automaattisesti molempiin päihin ja sit vähän käsin koodausta päälle.
Muutenhan tuollainen ajanvaraus tai oikeastaan mikä hyvänsä varaus on heti monimutkaisempi operaatio jos tehdään oikein, se aika pitäisi varata sille käyttäjälle jo heti kun aikaa tms. on valittu, ja sit seurataan esim. 15minuuttia viekö käyttäjä varauksen loppuun tms. jonka jälkeen se voidaan vapauttaa muille käyttäjille, ja sit kaikenlaista kontrollia vihamielisiä varaajia varten yms yms.
Lopputulos on sit kompromissi sen suhteen, paljon sen rakentamiseen halutaan käyttää rahaa.
Sinänsä, esim. jonkinlaiset varmistukset koodataan kahteen paikkaan jos halutaan käyttäjäystävällisyyttä, toinen on selain, joka osaa heti kivasti ilmoittaa käyttäjille esim. väärän muotoisista salasanoista, ja sen lisäksi kontrollit ajetaan myös palvelinpäässä, jossa varmistetaan ettei käyttäjä lähetä esim. tarkoituksella muokattua ikävää payloadia, jossa olisi esim. vaikka nyt joku pankkijärjestelmissä tilisiirron summa vaihdettu johonkin täysin toiseen mikä pitäisi olla mahdollista.
Jotkut frameworkit rakentaa nuo automaattisesti molempiin päihin ja sit vähän käsin koodausta päälle.
Muutenhan tuollainen ajanvaraus tai oikeastaan mikä hyvänsä varaus on heti monimutkaisempi operaatio jos tehdään oikein, se aika pitäisi varata sille käyttäjälle jo heti kun aikaa tms. on valittu, ja sit seurataan esim. 15minuuttia viekö käyttäjä varauksen loppuun tms. jonka jälkeen se voidaan vapauttaa muille käyttäjille, ja sit kaikenlaista kontrollia vihamielisiä varaajia varten yms yms.
Lopputulos on sit kompromissi sen suhteen, paljon sen rakentamiseen halutaan käyttää rahaa.