paint-brush
ມັນຮູ້ສຶກແນວໃດທີ່ຈະຮຽນຮູ້ JavaScript ໃນປີ 2016ໂດຍ@jjperezaguinaga
727,354 ການອ່ານ
727,354 ການອ່ານ

ມັນຮູ້ສຶກແນວໃດທີ່ຈະຮຽນຮູ້ JavaScript ໃນປີ 2016

ໂດຍ Jose Aguinaga11m2016/10/03
Read on Terminal Reader
Read this story w/o Javascript

ຍາວເກີນໄປ; ອ່ານ

<em>ບໍ່ມີ</em> ກອບ <a href="https://hackernoon.com/tagged/javascript" target="_blank"><em>JavaScript</em></a> <em>ຖືກສ້າງຂື້ນໃນລະຫວ່າງການຂຽນບົດຄວາມນີ້.</em>

Companies Mentioned

Mention Thumbnail
Mention Thumbnail

Coin Mentioned

Mention Thumbnail
featured image - ມັນຮູ້ສຶກແນວໃດທີ່ຈະຮຽນຮູ້ JavaScript ໃນປີ 2016
Jose Aguinaga HackerNoon profile picture

ບໍ່ມີ ກອບ JavaScript ຖືກສ້າງຂື້ນໃນລະຫວ່າງການຂຽນບົດຄວາມນີ້.

ຕໍ່ໄປນີ້ແມ່ນໄດ້ຮັບການດົນໃຈຈາກບົດຄວາມ “ມັນເປັນອະນາຄົດ” ຈາກ Circle CI. ທ່ານສາມາດອ່ານຕົ້ນສະບັບ ໄດ້ທີ່ນີ້ . ຊິ້ນນີ້ແມ່ນພຽງແຕ່ຄວາມຄິດເຫັນ, ແລະຄືກັບກອບ JavaScript, ມັນບໍ່ຄວນຖືກປະຕິບັດຢ່າງຈິງຈັງ.

Hey, ຂ້ອຍໄດ້ຮັບໂຄງການເວັບໃຫມ່ນີ້, ແຕ່ເພື່ອຄວາມຊື່ສັດ, ຂ້ອຍບໍ່ໄດ້ຂຽນລະຫັດເວັບຫຼາຍໃນສອງສາມປີແລະຂ້ອຍໄດ້ຍິນພູມສັນຖານປ່ຽນແປງເລັກນ້ອຍ. ເຈົ້າເປັນນັກພັດທະນາເວັບທີ່ທັນສະໄໝທີ່ສຸດຢູ່ບ່ອນນີ້ບໍ?

- ຄໍາສັບຕົວຈິງແມ່ນວິສະວະກອນ Front End, ແຕ່ແມ່ນແລ້ວ, ຂ້ອຍແມ່ນຄົນທີ່ຖືກຕ້ອງ. ຂ້ອຍເຮັດເວັບໃນປີ 2016. Visualisations, music player, flying drones that play football, you name it. ຂ້ອຍພຽງແຕ່ກັບຄືນມາຈາກ JsConf ແລະ ReactConf, ດັ່ງນັ້ນຂ້ອຍຮູ້ວ່າເຕັກໂນໂລຢີຫຼ້າສຸດໃນການສ້າງແອັບຯເວັບ.

ເຢັນ. ຂ້ອຍຈໍາເປັນຕ້ອງສ້າງຫນ້າທີ່ສະແດງກິດຈະກໍາຫຼ້າສຸດຈາກຜູ້ໃຊ້, ດັ່ງນັ້ນຂ້ອຍພຽງແຕ່ຕ້ອງການເອົາຂໍ້ມູນຈາກຈຸດສິ້ນສຸດ REST ແລະສະແດງມັນຢູ່ໃນຕາຕະລາງການກັ່ນຕອງບາງ, ແລະປັບປຸງມັນຖ້າມີຫຍັງປ່ຽນແປງໃນເຄື່ອງແມ່ຂ່າຍ. ຂ້ອຍຄິດວ່າອາດຈະໃຊ້ jQuery ເພື່ອດຶງຂໍ້ມູນແລະສະແດງຂໍ້ມູນ?

- ໂອ້ພຣະເຈົ້າບໍ່, ບໍ່ມີໃຜໃຊ້ jQuery ອີກຕໍ່ໄປ. ທ່ານຄວນພະຍາຍາມຮຽນຮູ້ React, ມັນແມ່ນ 2016.

ໂອ້, ຕົກລົງ. ປະຕິກິລິຍາແມ່ນຫຍັງ?

- ມັນເປັນຫ້ອງສະຫມຸດທີ່ເຢັນທີ່ສຸດທີ່ເຮັດໂດຍຜູ້ຊາຍບາງຄົນໃນເຟສບຸກ, ມັນກໍ່ນໍາເອົາການຄວບຄຸມແລະການປະຕິບັດໃຫ້ກັບແອັບພລິເຄຊັນຂອງເຈົ້າ, ໂດຍຊ່ວຍໃຫ້ທ່ານສາມາດຈັດການການປ່ຽນແປງມຸມເບິ່ງຕ່າງໆໄດ້ຢ່າງງ່າຍດາຍ.

ຟັງຄືວ່າດີ. ຂ້ອຍສາມາດໃຊ້ React ເພື່ອສະແດງຂໍ້ມູນຈາກເຊີບເວີໄດ້ບໍ?

- ແມ່ນແລ້ວ, ແຕ່ທໍາອິດທ່ານຈໍາເປັນຕ້ອງເພີ່ມ React ແລະ React DOM ເປັນຫ້ອງສະຫມຸດໃນຫນ້າເວັບຂອງທ່ານ.

ລໍຖ້າ, ເປັນຫຍັງສອງຫ້ອງສະຫມຸດ?

- ດັ່ງນັ້ນຫນຶ່ງແມ່ນຫ້ອງສະຫມຸດຕົວຈິງແລະອັນທີສອງແມ່ນສໍາລັບການຈັດການ DOM, ເຊິ່ງໃນປັດຈຸບັນທ່ານສາມາດອະທິບາຍໃນ JSX.

JSX? JSX ແມ່ນຫຍັງ?

-JSX ແມ່ນພຽງແຕ່ການຂະຫຍາຍ syntax JavaScript ທີ່ຄ້າຍຄືກັບ XML. ມັນເປັນວິທີອື່ນທີ່ຈະອະທິບາຍ DOM, ຄິດວ່າມັນເປັນ HTML ທີ່ດີກວ່າ.

HTML ແມ່ນຫຍັງຜິດ?

-ມັນແມ່ນປີ 2016. ບໍ່ມີໃຜຂຽນລະຫັດ HTML ໂດຍກົງອີກຕໍ່ໄປ.

ສິດ. ແລ້ວ, ຖ້າຂ້ອຍເພີ່ມສອງຫ້ອງສະຫມຸດນີ້ແລ້ວຂ້ອຍສາມາດໃຊ້ React ໄດ້ບໍ?

- ບໍ່​ແມ່ນ​ຂ້ອນ​ຂ້າງ​. ທ່ານຈໍາເປັນຕ້ອງເພີ່ມ Babel, ແລະຫຼັງຈາກນັ້ນທ່ານສາມາດນໍາໃຊ້ React.

ຫໍສະໝຸດອື່ນບໍ? Babel ແມ່ນຫຍັງ?

-Oh, Babel ແມ່ນ transpiler ທີ່ອະນຸຍາດໃຫ້ທ່ານເພື່ອເປົ້າຫມາຍສະບັບສະເພາະຂອງ JavaScript, ໃນຂະນະທີ່ທ່ານຂຽນລະຫັດໃນສະບັບຂອງ JavaScript ໃດ. ທ່ານບໍ່ຈໍາເປັນຕ້ອງລວມເອົາ Babel ເພື່ອໃຊ້ ReactJS, ແຕ່ເວັ້ນເສຍແຕ່ວ່າທ່ານເຮັດ, ທ່ານກໍາລັງຕິດຢູ່ກັບການໃຊ້ ES5, ແລະຂໍໃຫ້ເປັນຈິງ, ມັນແມ່ນປີ 2016, ທ່ານຄວນຂຽນລະຫັດໃນ ES2016+ ຄືກັບເດັກນ້ອຍທີ່ເຢັນ.

ES5? ES2016+? ຂ້ອຍກຳລັງຫຼົງທາງຢູ່ບ່ອນນີ້. ES5 ແລະ ES2016+ ແມ່ນຫຍັງ?

-ES5 ຫຍໍ້ມາຈາກ ECMAScript 5. ມັນເປັນສະບັບທີ່ຄົນສ່ວນໃຫຍ່ຕັ້ງເປົ້າໝາຍຕັ້ງແຕ່ມັນຖືກປະຕິບັດໂດຍຕົວທ່ອງເວັບສ່ວນໃຫຍ່ໃນປັດຈຸບັນ.

ECMAScript?

- ແມ່ນແລ້ວ, ເຈົ້າຮູ້, ມາດຕະຖານການຂຽນ JavaScript ແມ່ນອີງໃສ່ໃນປີ 1999 ຫຼັງຈາກການເປີດຕົວຄັ້ງທໍາອິດໃນປີ 1995, ກັບຄືນໄປໃນເວລາທີ່ JavaScript ມີຊື່ວ່າ Livescript ແລະພຽງແຕ່ດໍາເນີນການຢູ່ໃນ Netscape Navigator. ນັ້ນເປັນເລື່ອງທີ່ສັບສົນຫຼາຍໃນເມື່ອກ່ອນ, ແຕ່ຂອບໃຈໃນປັດຈຸບັນສິ່ງທີ່ຈະແຈ້ງຫຼາຍ ແລະພວກເຮົາມີ 7 ສະບັບຂອງການຈັດຕັ້ງປະຕິບັດນີ້.

7 ສະບັບ. ສໍາລັບທີ່ແທ້ຈິງ. ແລະ ES5 ແລະ ES2016+ ແມ່ນ?

- ສະ​ບັບ​ທີ​ຫ້າ​ແລະ​ທີ​ເຈັດ​ຕາມ​ລໍາ​ດັບ​.

ລໍຖ້າ, ສິ່ງທີ່ເກີດຂຶ້ນກັບຄັ້ງທີ VI?

- ເຈົ້າຫມາຍຄວາມວ່າ ES6? ແລ້ວ, ຂ້າພະເຈົ້າຫມາຍຄວາມວ່າ, ແຕ່ລະສະບັບແມ່ນ superset ຂອງຫນຶ່ງທີ່ຜ່ານມາ, ດັ່ງນັ້ນຖ້າຫາກວ່າທ່ານກໍາລັງໃຊ້ ES2016+, ທ່ານກໍາລັງໃຊ້ຄຸນສົມບັດທັງຫມົດຂອງສະບັບທີ່ຜ່ານມາ.

ສິດ. ແລະເປັນຫຍັງຕ້ອງໃຊ້ ES2016+ ຫຼາຍກວ່າ ES6 ແລ້ວ?

-ດີ, ທ່ານສາມາດໃຊ້ ES6, ແຕ່ເພື່ອໃຊ້ຄຸນສົມບັດເຢັນໆເຊັ່ນ async ແລະລໍຖ້າ, ທ່ານຈໍາເປັນຕ້ອງໃຊ້ ES2016+. ຖ້າບໍ່ດັ່ງນັ້ນ, ທ່ານກໍາລັງຕິດຢູ່ກັບເຄື່ອງກໍາເນີດ ES6 ທີ່ມີ coroutines ເພື່ອສະກັດການໂທ asynchronous ສໍາລັບການຄວບຄຸມທີ່ເຫມາະສົມ.

ຂ້ອຍບໍ່ຮູ້ວ່າເຈົ້າເວົ້າຫຍັງ, ແລະຊື່ທັງຫມົດນີ້ແມ່ນສັບສົນ. ເບິ່ງ, ຂ້ອຍພຽງແຕ່ໂຫລດຂໍ້ມູນຈາກເຄື່ອງແມ່ຂ່າຍ, ຂ້ອຍເຄີຍສາມາດລວມເອົາ jQuery ຈາກ CDN ແລະພຽງແຕ່ໄດ້ຮັບຂໍ້ມູນດ້ວຍການໂທ AJAX, ເປັນຫຍັງຂ້ອຍຈຶ່ງເຮັດບໍ່ໄດ້?

- ມັນເປັນຜູ້ຊາຍປີ 2016, ບໍ່ມີໃຜໃຊ້ jQuery ອີກຕໍ່ໄປ, ມັນຈົບລົງໃນລະຫັດ spaghetti ຫຼາຍ. ທຸກຄົນຮູ້ວ່າ.

ສິດ. ດັ່ງນັ້ນທາງເລືອກຂອງຂ້ອຍແມ່ນການໂຫຼດສາມຫ້ອງສະຫມຸດເພື່ອດຶງຂໍ້ມູນແລະສະແດງຕາຕະລາງ HTML.

- ດີ, ທ່ານລວມເອົາສາມຫ້ອງສະຫມຸດເຫຼົ່ານັ້ນແຕ່ມັດພວກເຂົາຂຶ້ນກັບຕົວຈັດການໂມດູນເພື່ອໂຫລດໄຟລ໌ດຽວເທົ່ານັ້ນ.

ຂ້ອຍເຫັນ. ແລະຜູ້ຈັດການໂມດູນແມ່ນຫຍັງ?

- ຄໍານິຍາມແມ່ນຂຶ້ນກັບສະພາບແວດລ້ອມ, ແຕ່ໃນເວັບໂດຍທົ່ວໄປແລ້ວພວກເຮົາຫມາຍເຖິງສິ່ງໃດແດ່ທີ່ສະຫນັບສະຫນູນໂມດູນ AMD ຫຼື CommonJS.

Riiight. ແລະ AMD ແລະ CommonJS ແມ່ນ…?

- ຄໍາ​ນິ​ຍາມ​. ມີວິທີການອະທິບາຍວິທີການຫຼາຍຫ້ອງສະຫມຸດ JavaScript ແລະຫ້ອງຮຽນຄວນພົວພັນກັບ. ທ່ານຮູ້, ສົ່ງອອກແລະຕ້ອງການ? ທ່ານສາມາດຂຽນໄຟລ໌ JavaScript ຫຼາຍອັນທີ່ກໍານົດ AMD ຫຼື CommonJS API ແລະທ່ານສາມາດນໍາໃຊ້ບາງສິ່ງບາງຢ່າງເຊັ່ນ Browserify ເພື່ອມັດພວກມັນ.

ຕົກລົງ, ມັນສົມເຫດສົມຜົນ ... ຂ້ອຍຄິດວ່າ. Browserify ແມ່ນຫຍັງ?

- ມັນເປັນເຄື່ອງມືທີ່ອະນຸຍາດໃຫ້ທ່ານສາມາດມັດ CommonJS ອະທິບາຍການຂຶ້ນກັບໄຟລ໌ທີ່ສາມາດດໍາເນີນການໃນຕົວທ່ອງເວັບ. ມັນຖືກສ້າງຂື້ນເພາະວ່າຄົນສ່ວນໃຫຍ່ເຜີຍແຜ່ການເພິ່ງພາອາໄສເຫຼົ່ານັ້ນຢູ່ໃນທະບຽນ npm.

npm ທະບຽນ?

- ມັນເປັນບ່ອນເກັບມ້ຽນສາທາລະນະໃຫຍ່ຫຼາຍທີ່ຄົນສະຫລາດເອົາລະຫັດແລະການເພິ່ງພາອາໄສເປັນໂມດູນ.

ຄືກັບ CDN ບໍ?

- ບໍ່ແມ່ນແທ້. ມັນຄ້າຍຄືກັບຖານຂໍ້ມູນສູນກາງທີ່ທຸກຄົນສາມາດເຜີຍແຜ່ແລະດາວໂຫລດຫ້ອງສະຫມຸດໄດ້, ດັ່ງນັ້ນທ່ານສາມາດນໍາໃຊ້ພວກມັນຢູ່ໃນທ້ອງຖິ່ນເພື່ອພັດທະນາແລະຫຼັງຈາກນັ້ນອັບໂຫຼດພວກມັນໃສ່ CDN ຖ້າທ່ານຕ້ອງການ.

ໂອ້, ຄື Bower!

- ແມ່ນແລ້ວ, ແຕ່ມັນແມ່ນປີ 2016, ບໍ່ມີໃຜໃຊ້ Bower ອີກຕໍ່ໄປ.

ໂອ້, ຂ້ອຍເຫັນ ... ສະນັ້ນຂ້ອຍຈໍາເປັນຕ້ອງດາວໂຫລດຫ້ອງສະຫມຸດຈາກ npm ແລ້ວ?

- ແມ່ນແລ້ວ. ດັ່ງນັ້ນ, ສໍາລັບຕົວຢ່າງ, ຖ້າທ່ານຕ້ອງການໃຊ້ React, ທ່ານດາວໂຫລດໂມດູນ React ແລະນໍາເຂົ້າໃນລະຫັດຂອງທ່ານ. ທ່ານສາມາດເຮັດສິ່ງນັ້ນໄດ້ສໍາລັບເກືອບທຸກຫ້ອງສະຫມຸດ JavaScript ທີ່ນິຍົມ.

ໂອ້ຍ, ຄື Angular!

-Angular ແມ່ນສະນັ້ນ 2015. ແຕ່ແມ່ນ. Angular ຈະຢູ່ທີ່ນັ້ນ, ຄຽງຄູ່ກັບ VueJS ຫຼື RxJS ແລະຫ້ອງສະຫມຸດເຢັນໆ 2016 ອື່ນໆ. ຕ້ອງການຮຽນຮູ້ກ່ຽວກັບສິ່ງເຫຼົ່ານັ້ນ?

ໃຫ້ຕິດກັບ React, ຂ້ອຍ ກຳ ລັງຮຽນຮູ້ຫຼາຍຢ່າງເກີນໄປດຽວນີ້. ດັ່ງນັ້ນ, ຖ້າຂ້ອຍຈໍາເປັນຕ້ອງໃຊ້ React ຂ້ອຍດຶງມັນຈາກ npm ນີ້ແລະຫຼັງຈາກນັ້ນໃຊ້ Browserify ນີ້ບໍ?

- ແມ່ນແລ້ວ.

ມັນເບິ່ງຄືວ່າສັບສົນເກີນໄປທີ່ຈະພຽງແຕ່ຍຶດເອົາການເພິ່ງພາອາໄສແລະຜູກມັດພວກມັນເຂົ້າກັນ.

- ມັນແມ່ນ, ນັ້ນແມ່ນເຫດຜົນທີ່ທ່ານໃຊ້ຜູ້ຈັດການວຽກງານເຊັ່ນ Grunt ຫຼື Gulp ຫຼື Broccoli ເພື່ອອັດຕະໂນມັດການແລ່ນ Browserify. Heck, ທ່ານຍັງສາມາດໃຊ້ Mimosa.

ຂີ້ອາຍ? ອຶ? ບຣັອກໂຄລີ? Mimosa? ພວກເຮົາກໍາລັງລົມກັນກ່ຽວກັບຕອນນີ້?

- ຜູ້​ຈັດ​ການ​ວຽກ​ງານ​. ແຕ່ພວກມັນບໍ່ເຢັນອີກຕໍ່ໄປ. ພວກເຮົາໄດ້ໃຊ້ພວກມັນຄືກັບປີ 2015, ຫຼັງຈາກນັ້ນພວກເຮົາໄດ້ໃຊ້ Makefiles, ແຕ່ຕອນນີ້ພວກເຮົາຫໍ່ທຸກຢ່າງດ້ວຍ Webpack.

Makefiles? ຂ້າພະເຈົ້າຄິດວ່າສ່ວນຫຼາຍແມ່ນໃຊ້ໃນໂຄງການ C ຫຼື C ++.

- ແມ່ນແລ້ວ, ແຕ່ປາກົດຂື້ນຢູ່ໃນເວັບທີ່ພວກເຮົາມັກເຮັດໃຫ້ສິ່ງທີ່ສັບສົນແລະຫຼັງຈາກນັ້ນກັບຄືນໄປບ່ອນພື້ນຖານ. ພວກເຮົາເຮັດແນວນັ້ນທຸກໆປີ, ພຽງແຕ່ລໍຖ້າມັນ, ພວກເຮົາຈະເຮັດການຊຸມນຸມຢູ່ໃນເວັບໃນຫນຶ່ງປີຫຼືສອງປີ.

ຮ້ອງໄຫ້. ທ່ານກ່າວເຖິງບາງສິ່ງບາງຢ່າງທີ່ເອີ້ນວ່າ Webpack?

- ມັນເປັນຕົວຈັດການໂມດູນອື່ນສໍາລັບຕົວທ່ອງເວັບໃນຂະນະທີ່ເປັນປະເພດຂອງ runner ວຽກງານເຊັ່ນດຽວກັນ. ມັນຄ້າຍຄືກັບ Browserify ເວີຊັນທີ່ດີກວ່າ.

ໂອເຄ. ເປັນຫຍັງມັນດີກວ່າ?

- ດີ, ອາດຈະບໍ່ດີກວ່າ, ມັນເປັນພຽງແຕ່ຄວາມຄິດເຫັນຫຼາຍກ່ຽວກັບວິທີການຂຶ້ນກັບການຜູກມັດຂອງທ່ານ. Webpack ອະນຸຍາດໃຫ້ທ່ານໃຊ້ຕົວຈັດການໂມດູນທີ່ແຕກຕ່າງກັນ, ແລະບໍ່ພຽງແຕ່ CommonJS ເທົ່ານັ້ນ, ດັ່ງນັ້ນຕົວຢ່າງທີ່ສະຫນັບສະຫນູນ ES6 ແບບພື້ນເມືອງ.

ຂ້ອຍສັບສົນທີ່ສຸດກັບເລື່ອງ CommonJS/ES6 ທັງໝົດນີ້.

- ທຸກຄົນແມ່ນ, ແຕ່ທ່ານບໍ່ຄວນສົນໃຈກັບ SystemJS ອີກຕໍ່ໄປ.

ພຣະເຢຊູຄຣິດ, ຊື່ອື່ນ -js. ຕົກລົງ, ແລະນີ້ SystemJS ແມ່ນຫຍັງ?

-Well, ບໍ່ເຫມືອນກັບ Browserify ແລະ Webpack 1.x, SystemJS ເປັນຕົວໂຫຼດໂມດູນແບບເຄື່ອນໄຫວທີ່ຊ່ວຍໃຫ້ທ່ານສາມາດຜູກມັດຫຼາຍໂມດູນໃນຫຼາຍໄຟລ໌ແທນທີ່ຈະມັດພວກມັນຢູ່ໃນໄຟລ໌ໃຫຍ່.

ລໍຖ້າ, ແຕ່ຂ້ອຍຄິດວ່າພວກເຮົາຕ້ອງການສ້າງຫ້ອງສະຫມຸດຂອງພວກເຮົາໃນໄຟລ໌ໃຫຍ່ຫນຶ່ງແລະໂຫລດນັ້ນ!

- ແມ່ນແລ້ວ, ແຕ່ເນື່ອງຈາກວ່າ HTTP/2 ກໍາລັງມາໃນປັດຈຸບັນການຮ້ອງຂໍ HTTP ຫຼາຍແມ່ນດີກວ່າ.

ລໍຖ້າ, ດັ່ງນັ້ນພວກເຮົາບໍ່ສາມາດເພີ່ມສາມຫ້ອງສະຫມຸດຕົ້ນສະບັບສໍາລັບ React ??

- ບໍ່​ແມ່ນ​ແທ້. ຂ້າພະເຈົ້າຫມາຍຄວາມວ່າ, ທ່ານສາມາດເພີ່ມພວກມັນເປັນສະຄິບພາຍນອກຈາກ CDN, ແຕ່ທ່ານຍັງຈະຕ້ອງໃສ່ Babel ຕໍ່ໄປ.

ຮ້ອງໄຫ້. ແລະນັ້ນແມ່ນບໍ່ດີບໍ?

- ແມ່ນແລ້ວ, ເຈົ້າຈະລວມເອົາທັງ babel-core, ແລະມັນຈະບໍ່ມີປະສິດທິພາບໃນການຜະລິດ. ໃນການຜະລິດ, ທ່ານຈໍາເປັນຕ້ອງໄດ້ປະຕິບັດຊຸດຂອງວຽກງານລ່ວງຫນ້າເພື່ອໃຫ້ໂຄງການຂອງທ່ານກຽມພ້ອມທີ່ເຮັດໃຫ້ພິທີການເພື່ອເອີ້ນຊາຕານເບິ່ງຄືວ່າເປັນສູດໄຂ່ຕົ້ມ. ທ່ານ​ຈໍາ​ເປັນ​ຕ້ອງ​ໄດ້​ຫຼຸດ​ຜ່ອນ​ຊັບ​ສິນ​, uglify ໃຫ້​ເຂົາ​ເຈົ້າ​, inline css ຂ້າງ​ເທິງ​ເທົ່າ​ນັ້ນ​, defer scripts​, ເຊັ່ນ​ດຽວ​ກັນ​ກັບ -

ຂ້ອຍໄດ້ຮັບມັນ, ຂ້ອຍໄດ້ຮັບມັນ. ດັ່ງນັ້ນຖ້າທ່ານບໍ່ລວມເອົາຫ້ອງສະຫມຸດໂດຍກົງໃນ CDN, ທ່ານຈະເຮັດແນວໃດ?

- ຂ້ອຍຈະຖ່າຍທອດມັນຈາກ Typescript ໂດຍໃຊ້ Webpack + SystemJS + Babel combo.

ຕົວພິມ? ຂ້ອຍຄິດວ່າພວກເຮົາຂຽນລະຫັດໃນ JavaScript!

-Typescript IS JavaScript, ຫຼືດີກວ່າ, ເປັນ superset ຂອງ JavaScript, ໂດຍສະເພາະ JavaScript ໃນຮຸ່ນ ES6. ເຈົ້າຮູ້ບໍ່, ສະບັບທີ 6 ທີ່ພວກເຮົາເວົ້າມາກ່ອນ?

ຂ້າ​ພະ​ເຈົ້າ​ຄິດ​ວ່າ ES2016+ ເປັນ superset ຂອງ ES6 ແລ້ວ! ເປັນຫຍັງພວກເຮົາຕ້ອງການໃນປັດຈຸບັນນີ້ເອີ້ນວ່າ Typescript?

-Oh, ເນື່ອງຈາກວ່າມັນອະນຸຍາດໃຫ້ພວກເຮົານໍາໃຊ້ JavaScript ເປັນພາສາພິມ, ແລະຫຼຸດຜ່ອນຄວາມຜິດພາດ run-time. ມັນແມ່ນປີ 2016, ທ່ານຄວນເພີ່ມບາງປະເພດໃສ່ລະຫັດ JavaScript ຂອງທ່ານ.

ແລະ Typescript ແນ່ນອນເຮັດແນວນັ້ນ.

-Flow ເຊັ່ນດຽວກັນ, ເຖິງແມ່ນວ່າມັນພຽງແຕ່ກວດເບິ່ງການພິມໃນຂະນະທີ່ Typescript ແມ່ນ superset ຂອງ JavaScript ທີ່ຕ້ອງໄດ້ຮັບການລວບລວມ.

ໂອ້... ແລະກະແສແມ່ນບໍ?

- ມັນເປັນຕົວກວດເຊັກແບບຄົງທີ່ທີ່ເຮັດໂດຍຜູ້ຊາຍບາງຄົນໃນເຟສບຸກ. ພວກເຂົາເຈົ້າໄດ້ຂຽນລະຫັດມັນຢູ່ໃນ OCaml, ເພາະວ່າ ການຂຽນໂປຼແກຼມ ທີ່ເປັນປະໂຫຍດ ແມ່ນຫນ້າຫວາດສຽວ.

OCaml? ການຂຽນໂປຼແກຼມທີ່ມີປະໂຫຍດ?

- ມັນແມ່ນສິ່ງທີ່ເດັກນ້ອຍທີ່ເຢັນໃຊ້ໃນປັດຈຸບັນຜູ້ຊາຍ, ທ່ານຮູ້, 2016? ການຂຽນໂປຼແກຼມທີ່ມີປະໂຫຍດ? ຫນ້າທີ່ຄໍາສັ່ງສູງ? ແກງ? ຫນ້າທີ່ບໍລິສຸດ?

ຂ້ອຍບໍ່ຮູ້ວ່າເຈົ້າເວົ້າຫຍັງ.

- ບໍ່ມີໃຜເຮັດໃນຕອນເລີ່ມຕົ້ນ. ເບິ່ງ, ທ່ານພຽງແຕ່ຕ້ອງການຮູ້ວ່າການຂຽນໂປຼແກຼມທີ່ເປັນປະໂຫຍດແມ່ນດີກ່ວາ OOP ແລະນັ້ນແມ່ນສິ່ງທີ່ພວກເຮົາຄວນໃຊ້ໃນປີ 2016.

ລໍຖ້າ, ຂ້ອຍໄດ້ຮຽນ OOP ໃນວິທະຍາໄລ, ຂ້ອຍຄິດວ່າມັນດີບໍ?

- ດັ່ງນັ້ນ Java ກ່ອນທີ່ຈະຖືກຊື້ໂດຍ Oracle. ຂ້າພະເຈົ້າຫມາຍຄວາມວ່າ, OOP ແມ່ນດີໃນຍຸກສະໄຫມ, ແລະມັນຍັງມີການນໍາໃຊ້ໃນມື້ນີ້, ແຕ່ໃນປັດຈຸບັນທຸກຄົນກໍາລັງຮູ້ວ່າການດັດແກ້ລັດທຽບເທົ່າກັບການເຕະເດັກນ້ອຍ, ດັ່ງນັ້ນໃນປັດຈຸບັນທຸກຄົນກໍາລັງຍ້າຍໄປຢູ່ໃນວັດຖຸທີ່ບໍ່ປ່ຽນແປງໄດ້ແລະການຂຽນໂປຼແກຼມທີ່ເປັນປະໂຫຍດ. guys Haskell ໄດ້ໂທຫາມັນເປັນເວລາຫລາຍປີ, ແລະຢ່າເຮັດໃຫ້ຂ້ອຍເລີ່ມຕົ້ນກັບ Elm guys- ແຕ່ໂຊກດີໃນເວັບຕອນນີ້ພວກເຮົາມີຫ້ອງສະຫມຸດເຊັ່ນ Ramda ທີ່ອະນຸຍາດໃຫ້ພວກເຮົາໃຊ້ການຂຽນໂປຼແກຼມທີ່ເປັນປະໂຫຍດໃນ JavaScript ທໍາມະດາ.

ທ່ານພຽງແຕ່ຖິ້ມຊື່ສໍາລັບ sake ຂອງມັນ? Ramnda ແມ່ນຫຍັງ?

- ບໍ່. ຣາມດາ. ເຊັ່ນດຽວກັນກັບ Lambda. ທ່ານຮູ້, ທີ່ຫ້ອງສະຫມຸດ David Chambers?

David ແມ່ນໃຜ?

- David Chambers. ຜູ້ຊາຍເຢັນ. ຫຼິ້ນ​ແນວ​ເກມ​ລັດ​ຖະ​ປະ​ຫານ​ທີ່​ຫມາຍ​ຄວາມ​ວ່າ​. ຫນຶ່ງໃນຜູ້ປະກອບສ່ວນສໍາລັບ Ramda. ທ່ານກໍ່ຄວນກວດເບິ່ງ Erik Meijer ຖ້າທ່ານຈິງຈັງກ່ຽວກັບການຮຽນຮູ້ການຂຽນໂປຼແກຼມທີ່ເປັນປະໂຫຍດ.

ແລະ Erik Meijer ແມ່ນ ...?

- ໂປລແກລມທີ່ມີປະໂຫຍດເຊັ່ນດຽວກັນ. ຜູ້ຊາຍຫນ້າຫວາດສຽວ. ລາວມີການນໍາສະເຫນີຫຼາຍບ່ອນທີ່ລາວຖິ້ມ Agile ໃນຂະນະທີ່ໃຊ້ເສື້ອຍືດສີແປກໆນີ້. ເຈົ້າຄວນກວດເບິ່ງບາງສິ່ງທີ່ມາຈາກ Tj, Jash Kenas, Sindre Sorhus, Paul Irish, Addy Osmani-

ຕົກລົງ. ຂ້ອຍຈະຢຸດເຈົ້າຢູ່ທີ່ນັ້ນ. ທັງຫມົດນັ້ນແມ່ນດີແລະດີ, ແຕ່ຂ້າພະເຈົ້າຄິດວ່າທັງຫມົດນັ້ນແມ່ນສັບສົນແລະບໍ່ຈໍາເປັນສໍາລັບການພຽງແຕ່ດຶງຂໍ້ມູນແລະສະແດງມັນ. ຂ້ອຍແນ່ໃຈວ່າຂ້ອຍບໍ່ຈໍາເປັນຕ້ອງຮູ້ຈັກຄົນເຫຼົ່ານີ້ຫຼືຮຽນຮູ້ສິ່ງເຫຼົ່ານັ້ນທັງຫມົດເພື່ອສ້າງຕາຕະລາງທີ່ມີຂໍ້ມູນແບບເຄື່ອນໄຫວ. ໃຫ້ກັບຄືນໄປຫາ React. ຂ້ອຍຈະເອົາຂໍ້ມູນຈາກເຊີບເວີດ້ວຍ React ໄດ້ແນວໃດ?

- ດີ, ທ່ານບໍ່ໄດ້ດຶງຂໍ້ມູນດ້ວຍ React, ທ່ານພຽງແຕ່ສະແດງຂໍ້ມູນດ້ວຍ React.

ໂອ້, ຂໍໂທດຂ້ອຍ. ດັ່ງນັ້ນເຈົ້າໃຊ້ຫຍັງເພື່ອດຶງຂໍ້ມູນ?

- ທ່ານໃຊ້ Fetch ເພື່ອດຶງຂໍ້ມູນຈາກເຄື່ອງແມ່ຂ່າຍ.

ຂ້ອຍຂໍໂທດບໍ? ເຈົ້າໃຊ້ Fetch ເພື່ອດຶງຂໍ້ມູນບໍ? ໃຜ​ທີ່​ຈະ​ຕັ້ງ​ຊື່​ສິ່ງ​ເຫຼົ່າ​ນັ້ນ​ຈໍາ​ເປັນ​ຕ້ອງ​ມີ​ພະ​ນັກ​ງານ​.

- ຂ້ອຍຮູ້ບໍ? Fetch ມັນເປັນຊື່ຂອງການປະຕິບັດພື້ນເມືອງສໍາລັບການປະຕິບັດ XMLHttpRequests ຕໍ່ເຄື່ອງແມ່ຂ່າຍ.

ໂອ້, ດັ່ງນັ້ນ AJAX.

-AJAX ແມ່ນພຽງແຕ່ການນໍາໃຊ້ XMLHttpRequests. ແຕ່ແນ່ນອນ. Fetch ອະນຸຍາດໃຫ້ທ່ານເຮັດ AJAX ໂດຍອີງໃສ່ຄໍາສັນຍາ, ເຊິ່ງຫຼັງຈາກນັ້ນທ່ານສາມາດແກ້ໄຂເພື່ອຫຼີກເວັ້ນການ callback hell.

ໂທກັບ hell?

- ແມ່ນແລ້ວ. ທຸກໆຄັ້ງທີ່ທ່ານປະຕິບັດການຮ້ອງຂໍ asynchronous ກັບເຄື່ອງແມ່ຂ່າຍ, ທ່ານຈໍາເປັນຕ້ອງລໍຖ້າການຕອບສະຫນອງຂອງມັນ, ເຊິ່ງຫຼັງຈາກນັ້ນເຮັດໃຫ້ທ່ານເພີ່ມຫນ້າທີ່ພາຍໃນຫນ້າທີ່, ເຊິ່ງເອີ້ນວ່າ pyramid callback ຈາກ hell.

ໂອເຄ. ແລະຄໍາສັນຍານີ້ແກ້ໄຂມັນບໍ?

- ແທ້ຈິງແລ້ວ. ໂດຍການຈັດການການໂທຫາກັບຄືນໄປບ່ອນຂອງທ່ານໂດຍຜ່ານຄໍາສັນຍາ, ທ່ານສາມາດຂຽນງ່າຍກວ່າທີ່ຈະເຂົ້າໃຈລະຫັດ, ເຍາະເຍີ້ຍແລະທົດສອບໃຫ້ເຂົາເຈົ້າ, ເຊັ່ນດຽວກັນກັບປະຕິບັດຄໍາຮ້ອງຂໍພ້ອມໆກັນໃນເວລາດຽວແລະລໍຖ້າຈົນກ່ວາພວກເຂົາທັງຫມົດຖືກໂຫລດ.

ແລະທີ່ສາມາດເຮັດໄດ້ດ້ວຍ Fetch?

- ແມ່ນແລ້ວ, ແຕ່ພຽງແຕ່ຖ້າຜູ້ໃຊ້ຂອງທ່ານໃຊ້ຕົວທ່ອງເວັບສີຂຽວ, ຖ້າບໍ່ດັ່ງນັ້ນທ່ານຈໍາເປັນຕ້ອງປະກອບມີ Fetch polyfill ຫຼືໃຊ້ Request, Bluebird ຫຼື Axios.

ຂ້ອຍຈໍາເປັນຕ້ອງຮູ້ຈັກຫ້ອງສະໝຸດເພື່ອຄວາມເຫັນແກ່ພະເຈົ້າ? ມີຈໍານວນເທົ່າໃດ?

- ມັນເປັນ JavaScript. ມັນຕ້ອງມີຫ້ອງສະຫມຸດຫຼາຍພັນຫ້ອງທີ່ທຸກຄົນເຮັດສິ່ງດຽວກັນ. ພວກເຮົາຮູ້ວ່າຫ້ອງສະຫມຸດ, ໃນຄວາມເປັນຈິງ, ພວກເຮົາມີຫ້ອງສະຫມຸດທີ່ດີທີ່ສຸດ. ຫໍສະຫມຸດຂອງພວກເຮົາແມ່ນ huuuge, ແລະບາງຄັ້ງພວກເຮົາປະກອບມີຮູບພາບຂອງ Guy Fieri ໃນໃຫ້ເຂົາເຈົ້າ.

ເຈົ້າພຽງແຕ່ເວົ້າ Guy Fieri ບໍ? ໃຫ້ຂອງນີ້ໄປກັບ. ຫໍສະໝຸດ Bluebird, Request, Axios ເຫຼົ່ານີ້ເຮັດຫຍັງ?

- ພວກເຂົາເປັນຫ້ອງສະຫມຸດເພື່ອປະຕິບັດ XMLHttpRequests ທີ່ກັບຄືນຄໍາສັນຍາ.

ວິທີການ AJAX ຂອງ jQuery ເລີ່ມຕົ້ນກັບຄືນຄໍາສັນຍາເຊັ່ນກັນບໍ?

- ພວກເຮົາບໍ່ໄດ້ໃຊ້ຄໍາວ່າ "J" ໃນປີ 2016 ອີກຕໍ່ໄປ. ພຽງແຕ່ໃຊ້ Fetch, ແລະ polyfill ມັນໃນເວລາທີ່ມັນບໍ່ຢູ່ໃນຕົວທ່ອງເວັບຫຼືໃຊ້ Bluebird, Request ຫຼື Axios ແທນ. ຫຼັງ​ຈາກ​ນັ້ນ​, ການ​ຄຸ້ມ​ຄອງ​ຄໍາ​ຫມັ້ນ​ສັນ​ຍາ​ທີ່​ລໍ​ຖ້າ​ພາຍ​ໃນ​ການ​ທໍາ​ງານ async ແລະ​ຂະ​ຫຍາຍ​ຕົວ​, ທ່ານ​ມີ​ການ​ໄຫຼ​ຂອງ​ການ​ຄວບ​ຄຸມ​ທີ່​ເຫມາະ​ສົມ​.

ມັນ​ເປັນ​ຄັ້ງ​ທີ​ສາມ​ທີ່​ທ່ານ​ລໍ​ຖ້າ​ແຕ່​ຂ້າ​ພະ​ເຈົ້າ​ບໍ່​ຮູ້​ວ່າ​ມັນ​ແມ່ນ​ຫຍັງ.

-Await ຊ່ວຍໃຫ້ທ່ານສາມາດສະກັດການໂທ asynchronous, ຊ່ວຍໃຫ້ທ່ານສາມາດຄວບຄຸມໄດ້ດີກວ່າເມື່ອຂໍ້ມູນຖືກດຶງແລະເພີ່ມຄວາມສາມາດໃນການອ່ານລະຫັດ. ມັນຫນ້າຫວາດສຽວ, ທ່ານພຽງແຕ່ຕ້ອງການໃຫ້ແນ່ໃຈວ່າທ່ານເພີ່ມ stage-3 preset ໃນ Babel, ຫຼືໃຊ້ syntax-async-functions ແລະ transform-async-to-generator plugin.

ນີ້ແມ່ນບ້າ.

- ບໍ່, ບ້າແມ່ນຄວາມຈິງທີ່ວ່າທ່ານຈໍາເປັນຕ້ອງລວບລວມລະຫັດ Typescript ແລະຫຼັງຈາກນັ້ນ transpile ມັນກັບ Babel ເພື່ອໃຊ້ລໍຖ້າ.

ຈັ່ງໃດ? ມັນບໍ່ໄດ້ລວມຢູ່ໃນ Typescript ບໍ?

- ມັນເຮັດໃນຮຸ່ນຕໍ່ໄປ, ແຕ່ໃນຮຸ່ນ 1.7 ມັນພຽງແຕ່ເປົ້າຫມາຍ ES6, ດັ່ງນັ້ນຖ້າທ່ານຕ້ອງການໃຊ້ awai ໃນຕົວທ່ອງເວັບ, ທໍາອິດທ່ານຈໍາເປັນຕ້ອງລວບລວມລະຫັດ Typescript ເປົ້າຫມາຍ ES6 ແລະຫຼັງຈາກນັ້ນ Babel ທີ່ shit ເຖິງເປົ້າຫມາຍ ES5.

ໃນຈຸດນີ້ຂ້ອຍບໍ່ຮູ້ວ່າຈະເວົ້າຫຍັງ.

- ເບິ່ງ, ມັນງ່າຍ. ລະຫັດທຸກຢ່າງໃນ Typescript. ໂມດູນທັງຫມົດທີ່ໃຊ້ Fetch ລວບລວມພວກມັນເພື່ອເປົ້າຫມາຍ ES6, transpile ພວກມັນດ້ວຍ Babel ໃນຂັ້ນຕອນ preset-3, ແລະໂຫລດພວກມັນດ້ວຍ SystemJS. ຖ້າທ່ານບໍ່ມີ Fetch, polyfill ມັນ, ຫຼືໃຊ້ Bluebird, Request ຫຼື Axios, ແລະຈັດການກັບຄໍາຫມັ້ນສັນຍາທັງຫມົດຂອງທ່ານລໍຖ້າ.

ພວກເຮົາມີຄໍານິຍາມທີ່ແຕກຕ່າງກັນຫຼາຍຂອງງ່າຍ. ດັ່ງນັ້ນ, ດ້ວຍພິທີກໍານັ້ນ, ໃນທີ່ສຸດຂ້ອຍໄດ້ດຶງຂໍ້ມູນແລະຕອນນີ້ຂ້ອຍສາມາດສະແດງມັນດ້ວຍ React ຖືກຕ້ອງບໍ?

- ຄໍາຮ້ອງສະຫມັກຂອງທ່ານຈະຈັດການການປ່ຽນແປງຂອງລັດບໍ?

ເອີ, ຂ້ອຍບໍ່ຄິດຄືກັນ. ຂ້ອຍພຽງແຕ່ຕ້ອງການສະແດງຂໍ້ມູນ.

- ໂອ້, ຂອບໃຈພະເຈົ້າ. ຖ້າບໍ່ດັ່ງນັ້ນຂ້ອຍຈະຕ້ອງອະທິບາຍໃຫ້ທ່ານ Flux, ແລະການປະຕິບັດເຊັ່ນ Flummox, Alt, Fluxible. ເຖິງແມ່ນວ່າຈະມີຄວາມຊື່ສັດທ່ານຄວນໃຊ້ Redux.

ຂ້າພະເຈົ້າພຽງແຕ່ຈະບິນຜ່ານຊື່ເຫຼົ່ານັ້ນ. ອີກເທື່ອຫນຶ່ງ, ຂ້າພະເຈົ້າພຽງແຕ່ຕ້ອງການສະແດງຂໍ້ມູນ.

- ໂອ້, ຖ້າທ່ານພຽງແຕ່ສະແດງຂໍ້ມູນທີ່ທ່ານບໍ່ຕ້ອງການ React ເພື່ອເລີ່ມຕົ້ນ. ເຈົ້າຄົງຈະດີກັບເຄື່ອງຈັກສ້າງແບບຢ່າງ.

ເຈົ້າເວົ້າຫຼິ້ນຂ້ອຍບໍ? ເຈົ້າຄິດວ່າອັນນີ້ເປັນເລື່ອງຕະຫລົກບໍ? ເຈົ້າ​ປະຕິບັດ​ຕໍ່​ຄົນ​ທີ່​ເຈົ້າ​ຮັກ​ແບບ​ນັ້ນ​ບໍ?

- ຂ້ອຍພຽງແຕ່ອະທິບາຍສິ່ງທີ່ເຈົ້າສາມາດໃຊ້.

ຢຸດ. ພຽງແຕ່ຢຸດ.

- ຂ້ອຍຫມາຍຄວາມວ່າ, ເຖິງແມ່ນວ່າມັນພຽງແຕ່ໃຊ້ເຄື່ອງຈັກແບບແມ່ແບບ, ຂ້ອຍຍັງໃຊ້ Typescript + SystemJS + Babel combo ຖ້າຂ້ອຍເປັນເຈົ້າ.

ຂ້ອຍຈໍາເປັນຕ້ອງສະແດງຂໍ້ມູນໃນຫນ້າຫນຶ່ງ, ບໍ່ປະຕິບັດການເສຍຊີວິດ MK ຕົ້ນສະບັບຂອງ Sub Zero. ພຽງ​ແຕ່​ບອກ​ຂ້າ​ພະ​ເຈົ້າ​ວ່າ​ເຄື່ອງ​ຈັກ​ແມ່​ແບບ​ທີ່​ຈະ​ນໍາ​ໃຊ້​ແລະ​ຂ້າ​ພະ​ເຈົ້າ​ຈະ​ເອົາ​ມັນ​ຈາກ​ທີ່​ນັ້ນ​.

- ມີຫຼາຍອັນ, ເຈົ້າຄຸ້ນເຄີຍກັບອັນໃດ?

ເອີ, ຈື່ຊື່ບໍ່ໄດ້. ມັນເປັນເວລາດົນນານກ່ອນຫນ້ານີ້.

-jTemplates? jQote? ບໍລິສຸດ?

ເອີ, ບໍ່ດັງກະດິ່ງ. ອີກອັນຫນຶ່ງ?

- ຄວາມໂປ່ງໃສ? JSRender? MarkupJS? KnockoutJS? ອັນນັ້ນມີການຜູກມັດສອງທາງ.

ອີກອັນຫນຶ່ງ?

-PlatesJS? jQuery-tmpl? ມືຈັບ? ບາງຄົນຍັງໃຊ້ມັນ.

ບາງທີ. ມີຄວາມຄ້າຍຄືກັນກັບອັນສຸດທ້າຍບໍ?

- mustache, ຂີດກ້ອງ? ຂ້າ​ພະ​ເຈົ້າ​ຄິດ​ວ່າ​ປັດ​ຈຸ​ບັນ​ເຖິງ​ແມ່ນ lodash ມີ​ຫນຶ່ງ​ທີ່​ຈະ​ມີ​ຄວາມ​ຊື່​ສັດ​, ແຕ່​ວ່າ​ແມ່ນ​ປະ​ເພດ​ຂອງ​ປີ 2014​.

ເອີ.. ບາງທີມັນອາດຈະໃໝ່ກວ່າ.

-Jade? DustJS?

ບໍ່.

-DotJS? EJS?

ບໍ່.

-Nunjucks? ECT?

ບໍ່.

-Mah, ບໍ່ມີໃຜມັກໄວຍາກອນ Coffeescript ແນວໃດກໍ່ຕາມ. Jade?

ບໍ່, ເຈົ້າເວົ້າແລ້ວ Jade.

- ຂ້ອຍຫມາຍຄວາມວ່າ Pug. ຂ້ອຍຫມາຍເຖິງ Jade. ຂ້າພະເຈົ້າຫມາຍຄວາມວ່າ, Jade ໃນປັດຈຸບັນແມ່ນ Pug.

ຮ້ອງໄຫ້. ບໍ່. ຈື່ບໍ່ໄດ້. ເຈົ້າຈະໃຊ້ອັນໃດ?

- ອາດຈະເປັນພຽງແຕ່ ES6 ສະຕຣິງແມ່ແບບພື້ນເມືອງ.

ໃຫ້ຂ້ອຍເດົາ. ແລະນັ້ນຕ້ອງການ ES6.

- ຖືກຕ້ອງ.

ເຊິ່ງ, ຂຶ້ນກັບຕົວທ່ອງເວັບທີ່ຂ້ອຍກໍາລັງໃຊ້ຕ້ອງການ Babel.

- ຖືກຕ້ອງ.

ເຊິ່ງ, ຖ້າຂ້ອຍຕ້ອງການລວມໂດຍບໍ່ມີການເພີ່ມຫ້ອງສະຫມຸດຫຼັກທັງຫມົດ, ຂ້ອຍຈໍາເປັນຕ້ອງໂຫລດມັນເປັນໂມດູນຈາກ npm.

- ຖືກຕ້ອງ.

ເຊິ່ງ, ຕ້ອງການ Browserify, ຫຼື Wepback, ຫຼືສ່ວນຫຼາຍອາດຈະເປັນສິ່ງອື່ນທີ່ເອີ້ນວ່າ SystemJS.

- ຖືກຕ້ອງ.

ເຊິ່ງ, ເວັ້ນເສຍແຕ່ວ່າມັນເປັນ Webpack, ໂດຍສະເພາະຄວນຈະຖືກຈັດການໂດຍນັກແລ່ນວຽກ.

- ຖືກຕ້ອງ.

ແຕ່, ເນື່ອງຈາກວ່າຂ້ອຍຄວນຈະໃຊ້ການຂຽນໂປລແກລມທີ່ມີປະສິດຕິພາບແລະພາສາທີ່ພິມ, ຂ້ອຍຈໍາເປັນຕ້ອງໄດ້ລວບລວມ Typescript ກ່ອນຫຼືເພີ່ມ Flow ນີ້.

- ຖືກຕ້ອງ.

ແລະຫຼັງຈາກນັ້ນສົ່ງໃຫ້ Babel ຖ້າຂ້ອຍຕ້ອງການໃຊ້ລໍຖ້າ.

- ຖືກຕ້ອງ.

ສະນັ້ນຂ້ອຍສາມາດໃຊ້ Fetch, ສັນຍາ, ແລະຄວບຄຸມການໄຫຼເຂົ້າແລະ magic ທັງຫມົດນັ້ນ.

- ພຽງແຕ່ຢ່າລືມ polyfill Fetch ຖ້າມັນບໍ່ໄດ້ຮັບການສະຫນັບສະຫນູນ, Safari ຍັງບໍ່ສາມາດຈັດການກັບມັນໄດ້.

ເຈົ້າຮູ້ຫຍັງ. ຂ້າພະເຈົ້າຄິດວ່າພວກເຮົາເຮັດແລ້ວຢູ່ທີ່ນີ້. ຕົວຈິງແລ້ວ, ຂ້ອຍຄິດວ່າຂ້ອຍເຮັດແລ້ວ. ຂ້ອຍເຮັດແລ້ວກັບເວັບ, ຂ້ອຍເຮັດດ້ວຍ JavaScript ທັງຫມົດ.

- ນັ້ນດີ, ໃນສອງສາມປີພວກເຮົາທຸກຄົນຈະເຂົ້າລະຫັດໃນ Elm ຫຼື WebAssembly.

ຂ້ອຍພຽງແຕ່ຈະຍ້າຍໄປຢູ່ເບື້ອງຫຼັງ. ຂ້າ​ພະ​ເຈົ້າ​ພຽງ​ແຕ່​ບໍ່​ສາ​ມາດ​ຈັດ​ການ​ການ​ປ່ຽນ​ແປງ​ຈໍາ​ນວນ​ຫຼາຍ​ເຫຼົ່າ​ນີ້​ແລະ​ສະ​ບັບ​ແລະ​ສະ​ບັບ​, compilers ແລະ transpilers​. ຊຸມຊົນ JavaScript ແມ່ນບ້າຖ້າມັນຄິດວ່າໃຜສາມາດຕິດຕາມເລື່ອງນີ້ໄດ້.

- ຂ້ອຍໄດ້ຍິນເຈົ້າ. ທ່ານຄວນລອງຊຸມຊົນ Python ແລ້ວ.

ເປັນຫຍັງ?

- ເຄີຍໄດ້ຍິນ Python 3 ບໍ?

ປັບປຸງໃຫ້ທັນ: ຂອບໃຈສໍາລັບການຊີ້ typos ແລະຄວາມຜິດພາດ, ຂ້າພະເຈົ້າຈະປັບປຸງບົດຄວາມເປັນບັນທຶກໄວ້. ການສົນທະນາໃນ HackerNews ແລະ Reddit .

L O A D I N G
. . . comments & more!

About Author

Jose Aguinaga HackerNoon profile picture
Jose Aguinaga@jjperezaguinaga
Web3/Full-Stack. DevOps/Cryptography Enthusiast. Head of Engineering at @hoprnet, previously @MyBit_

ວາງປ້າຍ

ບົດ​ຄວາມ​ນີ້​ໄດ້​ຖືກ​ນໍາ​ສະ​ເຫນີ​ໃນ...