Denboraldia: JavaScript-en denbora konpontzeko 9 urteko bidaia | Mewayz Blog Skip to main content
Hacker News

Denboraldia: JavaScript-en denbora konpontzeko 9 urteko bidaia

Iruzkinak

8 min read Via bloomberg.github.io

Mewayz Team

Editorial Team

Hacker News

Sarrera: Denboraren izaera iheskorra kodean

Hamarkadetan zehar, datak eta orduak JavaScript-en maneiatzea garatzaileentzat oso mingarria izan da. 1995ean aurkeztutako `Date' objektu jatorrizkoa, funtsean, Java-ren `java.util.Date'-ren bilgarri mehea zen, bere oinarrizko akatsak heredatuz. Erabiltzailearen tokiko sistematik edo UTCtik haratago ordu-eremuetarako laguntza falta zuen, akatsetarako joera duen kode bat ekartzen zuen API aldagarri bat zuen eta hilabete nahasiak eta zero indexatuak eskaintzen zituen. Aplikazioak globalagoak eta banatuagoak izan ziren heinean, gabezia hauek gogaitasun txikietatik software fidagarria eraikitzeko oztopo handietara hazi ziren. Mewayz bezalako plataformentzat, non ordu-eremu ezberdinetan zereginak, ordutegiak eta datuak koordinatzea negozio-eragiketetarako funtsezkoa den, denbora-oinarri sendoa ez da luxua, ezinbestekoa da. Hau Temporal-en istorioa da, ia hamarkada bat behar izan zuen API moderno bat sortzeko, azkenean JavaScript ekosistema osorako denbora finkatzea helburu duena.

Bide luzea zita hobe baterako

Temporal-en bidaia serio hasi zen 2015 inguruan, TC39 batzordeko txapeldunek bultzatuta, JavaScript lengoaia garatzen duen taldeak. Helburua asmo handikoa zen: aldaezina den data eta orduetarako liburutegi estandar berri eta integral bat sortzea, ordu-eremua ezagutzen duena eta kontzeptu ezberdinetarako mota bereiziak eskaintzen dituena (data arruntak eta denboraren une zehatzak, esaterako). Prozesua nahita zorrotza izan zen, komunitatearen iritzi zabala, polyfill inplementazio anitz eta proposamen iteratiboen faseak barne. Inkubazio luze hau funtsezkoa izan zen iraganeko akatsak saihesteko eta APIak hainbat erabilera-kasu bete ditzakeela ziurtatzeko, data-hautatzaile soiletatik hasi eta finantza-transakzio-sistema konplexuetaraino, datozen hamarkadetan.

Temporal APIaren berrikuntza nagusiak

Tenporalak denbora konpontzen du objektu-eredu argi, logiko eta aldaezina sartuz. `Date` klase bakar eta nahasia ez bezala, Temporal-ek objektu bereiziak eskaintzen ditu helburu ezberdinetarako, hala nola `Temporal.PlainDate` (egutegiko data ordurik gabekoa), `Temporal.Instant` (denbora-puntu bakarra) eta `Temporal.ZonedDateTime` (data eta ordu osoa ordu-eremu zehatz batean). Kezkak bereizte honek akats arrunten klase zabala ezabatzen du. Bere aldaezintasunak esan nahi du eragiketa bakoitzak objektu berri bat itzultzen duela, kodea aurreikusteko eta arazketa errazteko. Gainera, ordu-eremu guztietarako lehen mailako laguntza barne hartzen du, IANA ordu-eremuen datu-basea erabiliz, eta ertz-kasu zailak kudeatzen ditu, esaterako, udako orduaren trantsizioak eta jauzi-segundoak zehaztasun esplizituarekin.

  • Aldaezintasuna: Denborazko objektu guztiak aldaezinak dira; metodoek instantzia berriak itzultzen dituzte, ustekabeko albo-ondorioak saihestuz.
  • Bereizketaren bidezko argitasuna: Data, ordu, data-ordu eta data-ordu zatikatuen mota desberdinek garatzaileen asmoa esplizitu egiten dute.
  • Lehen mailako ordu-eremuak: IANA ordu-eremuen datu-baserako euskarria integratua, tokiko ordua eta UTC baino askoz haratago.
  • Analisi eta formateatu integrala: ISO 8601 kateetarako eta formatu eredu pertsonalizatuetarako laguntza sendoa.

Enpresa-aplikazio modernoetarako ondorioak

Temporal-en etorrerak aldaketa sismiko bat suposatzen du muga eta ordu-eremuetan funtzionatzen duten aplikazioak eraikitzeko. Mewayz bezalako negozio sistema eragile modular baterako, hau funtzio fidagarriagoak eta eraikitzeko errazagoak bihurtzen dira zuzenean. Demagun New York, Londres eta Singapurreko talde baterako "EOD azaroaren 15ean" ezarritako proiektu-epea. Temporal-ekin, epe hori zehaztasunez irudikatzea, gordetzea eta erabiltzaile bakoitzarentzat zuzen bistaratzea zeregin sinplea bihurtzen da, ez akatsez betetako proba bat. Finantza-txostenak, lan-fluxu automatizatuak antolatzeak eta denbora-zigiluaren auditoretza-erregistroek garatzaileek benetan fida dezaketen denborazko primitibo bati etekina ateratzen diote.

"Promises-en geroztik JavaScript-en aurrerapen garrantzitsuena da tenporala. Azkenean, denbora behar bezala kudeatzeko tresnak ematen dizkie garatzaileei, eta hori oinarrizkoa da aplikazio serio ia guztietan". – TC39 batzordeko laguntzaile bat.

Aurrera begira: Denboraldiaren Argitasunaren Aro Berria

Temporal JavaScript hizkuntzan erabat txertatzen doan heinean, bere polyfill dagoeneko erabilgarri dago gaur egun, datarekin lotutako akatsak iraganeko erlikia diren etorkizunari begirada bat eskainiz. Bederatzi urteko ibilbideak oinarrizko API konplexu eta egokia lortzeko konpromisoa azpimarratzen du. Plataformentzat eta garatzaileentzat, Temporal hartzeak epe luzerako egonkortasunean eta argitasunean inbertitzea dakar. Mewayz-en, hunkituta gaude Temporal-ek gure moduluen denbora-logika sustatzeko duen ahalmenarekin, garatzaileek negozio-soluzio berritzaileak eraikitzera bideratu ahal izateko, denboraren korapilatsuekin borrokatu gabe. JavaScript-en denboraren konponketa jada ez da urruneko amets bat; zorrotz landutako errealitatea da.

💡 DID YOU KNOW?

Mewayz replaces 8+ business tools in one platform

CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.

Start Free →

Ohiko galderak

Sarrera: Denboraren izaera iheskorra kodean

Hamarkadetan zehar, datak eta orduak JavaScript-en maneiatzea garatzaileentzat oso mingarria izan da. 1995ean aurkeztutako `Date' objektu jatorrizkoa, funtsean, Java-ren `java.util.Date'-ren bilgarri mehea zen, bere oinarrizko akatsak heredatuz. Erabiltzailearen tokiko sistematik edo UTCtik haratago ordu-eremuetarako laguntza falta zuen, akatsetarako joera duen kode bat ekartzen zuen API aldagarri bat zuen eta hilabete nahasiak eta zero indexatuak eskaintzen zituen. Aplikazioak globalagoak eta banatuagoak izan ziren heinean, gabezia hauek gogaitasun txikietatik software fidagarria eraikitzeko oztopo handietara hazi ziren. Mewayz bezalako plataformentzat, non ordu-eremu ezberdinetan zereginak, ordutegiak eta datuak koordinatzea negozio-eragiketetarako funtsezkoa den, denbora-oinarri sendoa ez da luxua, ezinbestekoa da. Hau Temporal-en istorioa da, ia hamarkada bat behar izan zuen API moderno bat sortzeko, azkenean JavaScript ekosistema osorako denbora finkatzea helburu duena.

Bide luzea zita hobe baterako

Temporal-en bidaia serio hasi zen 2015 inguruan, TC39 batzordeko txapeldunek bultzatuta, JavaScript lengoaia garatzen duen taldeak. Helburua asmo handikoa zen: aldaezina den data eta orduetarako liburutegi estandar berri eta integral bat sortzea, ordu-eremua ezagutzen duena eta kontzeptu ezberdinetarako mota bereiziak eskaintzen dituena (data arruntak eta denboraren une zehatzak, esaterako). Prozesua nahita zorrotza izan zen, komunitatearen iritzi zabala, polyfill inplementazio anitz eta proposamen iteratiboen faseak barne. Inkubazio luze hau funtsezkoa izan zen iraganeko akatsak saihesteko eta APIak hainbat erabilera-kasu bete ditzakeela ziurtatzeko, data-hautatzaile soiletatik hasi eta finantza-transakzio-sistema konplexuetaraino, datozen hamarkadetan.

Temporal APIaren berrikuntza nagusiak

Tenporalak denbora konpontzen du objektu-eredu argi, logiko eta aldaezina sartuz. `Date` klase bakar eta nahasia ez bezala, Temporal-ek objektu bereiziak eskaintzen ditu helburu ezberdinetarako, hala nola `Temporal.PlainDate` (egutegiko data ordurik gabekoa), `Temporal.Instant` (denbora-puntu bakarra) eta `Temporal.ZonedDateTime` (data eta ordu osoa ordu-eremu zehatz batean). Kezkak bereizte honek akats arrunten klase zabala ezabatzen du. Bere aldaezintasunak esan nahi du eragiketa bakoitzak objektu berri bat itzultzen duela, kodea aurreikusteko eta arazketa errazteko. Gainera, ordu-eremu guztietarako lehen mailako laguntza barne hartzen du, IANA ordu-eremuen datu-basea erabiliz, eta ertz-kasu zailak kudeatzen ditu, esaterako, udako orduaren trantsizioak eta jauzi-segundoak zehaztasun esplizituarekin.

Enpresa-aplikazio modernoetarako ondorioak

Temporal-en etorrerak aldaketa sismiko bat suposatzen du muga eta ordu-eremuetan funtzionatzen duten aplikazioak eraikitzeko. Mewayz bezalako negozio sistema eragile modular baterako, hau funtzio fidagarriagoak eta eraikitzeko errazagoak bihurtzen dira zuzenean. Demagun New York, Londres eta Singapurreko talde baterako "EOD azaroaren 15ean" ezarritako proiektu-epea. Temporal-ekin, epe hori zehaztasunez irudikatzea, gordetzea eta erabiltzaile bakoitzarentzat zuzen bistaratzea zeregin sinplea bihurtzen da, ez akatsez betetako proba bat. Finantza-txostenak, lan-fluxu automatizatuak antolatzeak eta denbora-zigiluaren auditoretza-erregistroek garatzaileek benetan fida dezaketen denborazko primitibo bati etekina ateratzen diote.

Aurrera begira: Denboraldiaren Argitasunaren Aro Berria

Temporal JavaScript hizkuntzan erabat txertatzen doan heinean, bere polyfill dagoeneko erabilgarri dago gaur egun, datarekin lotutako akatsak iraganeko erlikia diren etorkizunari begirada bat eskainiz. Bederatzi urteko ibilbideak oinarrizko API konplexu eta egokia lortzeko konpromisoa azpimarratzen du. Plataformentzat eta garatzaileentzat, Temporal hartzeak epe luzerako egonkortasunean eta argitasunean inbertitzea dakar. Mewayz-en, hunkituta gaude Temporal-ek gure moduluen denbora-logika sustatzeko duen ahalmenarekin, garatzaileek negozio-soluzio berritzaileak eraikitzera bideratu ahal izateko, denboraren korapilatsuekin borrokatu gabe. JavaScript-en denboraren konponketa jada ez da urruneko amets bat; zorrotz landutako errealitatea da.

Arraztu zure negozioa Mewayz-ekin

Mewayz-ek 208 negozio-modulu ekartzen ditu plataforma bakarrean: CRM, fakturazioa, proiektuen kudeaketa eta abar. Bat egin 138.000 erabiltzaile baino gehiago beren lan-fluxua erraztu duten.

Hasi doan gaur →

Try Mewayz Free

All-in-one platform for CRM, invoicing, projects, HR & more. No credit card required.

Start managing your business smarter today

Join 6,208+ businesses. Free forever plan · No credit card required.

Ready to put this into practice?

Join 6,208+ businesses using Mewayz. Free forever plan — no credit card required.

Start Free Trial →

Ready to take action?

Start your free Mewayz trial today

All-in-one business platform. No credit card required.

Start Free →

14-day free trial · No credit card · Cancel anytime