No ke aha he mea pono ke hana hou i na huila?

No ke aha he mea pono ke hana hou i na huila?

I kekahi lā aʻe, ua nīnau au i kahi mea hoʻomohala JavaScript e noi ana i kahi kūlana kiʻekiʻe. Ua noi aku kekahi hoa hana i ka nīnauele e kākau i kahi hana e hana i kahi noi HTTP a, inā ʻaʻole i kūleʻa, e hoʻāʻo hou i nā manawa he nui.

Ua kākau pololei ʻo ia i ke code ma ka papa, no laila ua lawa ia e huki i kahi mea kokoke. Ina paha i hoike wale mai oia i kona maopopo pono i ke ano o keia mea, ina ua oluolu loa makou. Akā, ʻo ka mea pōʻino, ʻaʻole hiki iā ia ke ʻimi i kahi hopena kūleʻa. A laila ua hoʻoholo mākou e hoʻohuli i kahi hana me nā callbacks i kahi hana i kūkulu ʻia ma nā ʻōlelo hoʻohiki.

Aka, auwe. ʻAe, ua ʻike ʻia ua ʻike ʻo ia i kēlā code ma mua. Ua ʻike ʻo ia ma nā ʻōlelo maʻamau i ka hana ʻana o nā mea a pau ma laila. ʻO nā mea a mākou e makemake ai he kiʻi kiʻi o kahi hoʻonā e hōʻike ana i ka maopopo o ka manaʻo. Eia naʻe, he mea lapuwale ke code a ka moho i kākau ai ma ka papa. Loaʻa iā ia kahi manaʻo pohihihi loa i nā ʻōlelo hoʻohiki ma JavaScript a ʻaʻole hiki iā ia ke wehewehe maoli i ke kumu e pono ai lākou. No ke keiki liʻiliʻi, ua kala ʻia kēia, akā ʻaʻole kūpono ʻo ia i ke kūlana kiʻekiʻe. Pehea e hiki ai i kēia mea hoʻomohala ke hoʻoponopono i nā pōpoki i loko o kahi kaulahao paʻakikī o nā ʻōlelo hoʻohiki a wehewehe i nā poʻe ʻē aʻe i kāna hana?

Manaʻo nā mea hoʻomohala i nā code i hana ʻia i ʻike pono ʻia

I ka wā o ka hoʻomohala ʻana, ʻike mau mākou i nā mea hiki ke hana hou ʻia. Hoʻololi mākou i nā ʻāpana code i ʻole mākou e kākau hou iā lākou i kēlā me kēia manawa. No laila, ma ka nānā ʻana i ko mākou manaʻo āpau i nā ʻāpana koʻikoʻi, ke nānā nei mākou i ke code i hoʻopau ʻia a mākou e hana ai me kahi mea ʻike ponoʻī - manaʻo mākou e hana nā mea āpau e like me ka mea e pono ai.

A maʻamau, hana ia, akā inā paʻakikī nā mea, ʻoi aku ka hoʻomaopopo ʻana i ka mechanics ma mua o ka uku.

No laila, ʻo kā mākou moho no ke kūlana o ka mea hoʻomohala kiʻekiʻe i manaʻo i nā mea hoʻohiki e ʻike pono iā ia iho. Loaʻa paha iā ia kahi manaʻo pehea e hana ai iā lākou i ka wā e kū ai lākou ma kahi o ka code a kekahi, akā ʻaʻole maopopo ʻo ia i ke kumu nui a ʻaʻole hiki iā ia ke hana hou iā ia iho i ka wā o ka ninaninau. Ua hoʻomanaʻo paha ʻo ia i ka ʻāpana ma ka puʻuwai - ʻaʻole paʻakikī loa:

return new Promise((resolve, reject) => {
  functionWithCallback((err, result) => {
   return err ? reject(err) : resolve(result);
  });
});

Ua hana pū wau - a ua hana paha mākou a pau i kekahi manawa. Hoʻopaʻanaʻau wale lākou i kahi ʻāpana code i hiki iā lākou ke hoʻohana ma hope i kā lākou hana, ʻoiai he manaʻo nui wale nō ka hana o nā mea āpau ma laila. Akā inā maopopo maoli ka mea hoʻomohala i ka manaʻo, ʻaʻole pono ʻo ia e hoʻomanaʻo i kekahi mea - e ʻike wale ʻo ia i ka hana ʻana, a maʻalahi e hana hou i nā mea āpau e pono ai ma ke code.

E hoʻi i ke aʻa

I ka makahiki 2012, i ka wā ʻaʻole i hoʻokumu ʻia ka mana o nā papa hana mua, ua noho aliʻi ʻo jQuery i ka honua, a heluhelu wau i ka puke. Nā mea huna o ka JavaScript Ninja, i haku ʻia e John Resig, ka mea nāna i hana i ka jQuery.

Aʻo ka puke i ka mea heluhelu pehea e hana ai i kā lākou jQuery ponoʻī mai ka wā ʻōpala a hāʻawi i kahi ʻike kūʻokoʻa i ke kaʻina hana noʻonoʻo i alakaʻi i ka hana ʻana o ka waihona. I nā makahiki i hala iho nei, ua nalowale ʻo jQuery i kona kaulana mua, akā makemake nui wau i ka puke. ʻO ka mea i pīhoihoi nui iaʻu e pili ana iā ia, ʻo ia ka manaʻo hoʻomau i hiki iaʻu ke noʻonoʻo i kēia mau mea iaʻu iho. ʻO nā ʻanuʻu i hōʻike ʻia e ka mea kākau me he mea laʻa loa, maopopo loa a hoʻomaka wau e noʻonoʻo e hiki iaʻu ke hana maʻalahi i ka jQuery inā wau e iho i lalo.

ʻOiaʻiʻo, ʻoiaʻiʻo ʻaʻole hiki iaʻu ke hana i kekahi mea e like me kēia - ua hoʻoholo wau he paʻakikī loa ia. ʻO kaʻu mau haʻina ponoʻī he mea maʻalahi loa a naive i ka hana, a haʻalele wau. E hoʻokaʻawale wau i ka jQuery i nā mea ʻike ponoʻī, i ka hana kūpono āu e pono ai e manaʻoʻiʻo makapō. Ma hope mai, ʻaʻole hiki iaʻu ke hoʻopau manawa i ka ʻimi ʻana i ka mechanics o kēia waihona, akā e hoʻohana wale ia ma ke ʻano he pahu ʻeleʻele.

Akā ʻo ka heluhelu ʻana i kēia puke ua lilo wau i kanaka ʻokoʻa. Ua hoʻomaka wau e heluhelu i ka code kumu a ʻike i ka hoʻokō ʻana i nā hoʻonā he ʻoiaʻiʻo loa a maopopo loa. ʻAʻole, ʻoiaʻiʻo, ʻo ka noʻonoʻo ʻana i kahi mea e like me kēia ma kāu iho he moʻolelo ʻokoʻa. Akā ʻo ke aʻo ʻana i nā code o nā poʻe ʻē aʻe a hana hou i nā hoʻonā i loaʻa e kōkua iā mākou e hana i kahi mea ponoʻī.

ʻO ka hoʻoikaika ʻana i loaʻa iā ʻoe a me nā hiʻohiʻona āu e hoʻomaka ai e ʻike e hoʻololi iā ʻoe ma ke ʻano he mea hoʻomohala. E ʻike ʻoe i kēlā hale waihona puke maikaʻi āu e hoʻohana mau ai a maʻa ʻoe i ka noʻonoʻo ʻana ma ke ʻano he mea kilokilo, ʻaʻole ia e hana i ka hana kilokilo, akā hoʻoponopono wale i kahi pilikia me ka laconically a me ka waiwai.

I kekahi manawa pono ʻoe e pore ma luna o ke code, e nānā ana i kēlā me kēia pae, akā ʻo kēia ke ʻano, ke neʻe nei i nā ʻanuʻu liʻiliʻi, hiki iā ʻoe ke hana hou i ke ala o ka mea kākau i ka hopena. E ʻae kēia iā ʻoe e luʻu hohonu i ke kaʻina hana coding a hāʻawi iā ʻoe i ka hilinaʻi hou aʻe i ka hiki ʻana mai me kāu mau hoʻonā ponoʻī.

I koʻu hoʻomaka mua ʻana e hana me nā ʻōlelo hoʻohiki, me he mea lā iaʻu e like me ke kilokilo maʻemaʻe. A laila ua ʻike au ua hoʻokumu ʻia lākou ma nā kelepona hoʻokahi, a huli koʻu honua papahana i lalo. No laila ke kumu, ʻo ke kumu o ka hoʻopakele iā mākou mai nā callbacks, ua hoʻokō ʻia me ka hoʻohana ʻana i nā callbacks?!

Ua kōkua kēia iaʻu e nānā i ka mea me nā maka ʻokoʻa a ʻike ʻaʻole kēia he ʻāpana abstruse o ke code i mua oʻu, ka paʻakikī paʻakikī aʻu e hoʻomaopopo ʻole ai i koʻu ola. He mau hiʻohiʻona wale nō kēia i hiki ke hoʻomaopopo ʻia me ka pilikia ʻole me ka ʻimi pono a me ka hoʻolulu hohonu. ʻO kēia ke ʻano o ka poʻe e aʻo ai i ka code a ulu aʻe ma ke ʻano he mea hoʻomohala.

Hana hou i kēia huila

No laila e hoʻomaka a hana hou i nā huila: e kākau i kāu code hoʻopaʻa ʻikepili ponoʻī, hana i kahi ʻōlelo hoʻohiki homegrown, a i ʻole e hana i kāu hoʻoponopono hoʻokele mokuʻāina.
ʻAʻole ia he mea nui ʻaʻohe mea e hoʻohana i kēia mau mea āpau - akā i kēia manawa ua ʻike ʻoe pehea e hana ai. A inā loaʻa iā ʻoe ka manawa e hoʻohana ai i kēlā mau hanana i kāu mau papahana ponoʻī, a laila maikaʻi loa ia. Hiki iā ʻoe ke hoʻomohala iā lākou a aʻo i kekahi mea ʻē aʻe.

ʻAʻole ka hoʻouna ʻana i kāu code i ka hana, akā e aʻo i kahi mea hou. ʻO ke kākau ʻana i kāu hoʻokō ponoʻī o kahi hoʻonā e kū nei he ala maikaʻi loa ia e aʻo ai mai ka poʻe polokalamu polokalamu maikaʻi loa a no laila e hoʻomaikaʻi i kāu mau akamai.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka