NPM คืออะไร สำหรับการพัฒนา Application บน Node.js คำสั่ง npm มีส่วนสำคัญมากสำหรับเรา เพราะ npm มันคือ package manger command หรือตัวที่เราใช้ในการ ติดตั้ง อัพเดท ลบ หรือจัดการแพ็กเกจหรือโมดูลต่างๆ ที่เกี่ยวข้องกับ Node.js โดยเรามาดูคำสั่ง npm เบื้องต้นที่ใช้งานกันบ่อยๆ ครับ

พอดีมีทำระบบเล็กๆ ใช้ LINE notify แจ้งเตือนพนักงานภายในบริษัท เลยมาบันทึกวิธีทำไว้ โดยลักษณะการทำงานก็คือใช้ PHP ยิงเข้า API ของ LINE เพื่อส่งข้อความเข้า Group LINE ที่เราสร้างขึ้น เพื่อไม่ให้เป็นการเสียเวลามาเริ่มกันเลย

Gatsby.js คือ Modern site generator ตัวช่วยสร้างเว็บแบบ Static ของฝั่ง React ที่ทำง่ายอย่างรวดเร็ว ประโยชน์ที่ได้รับคือ สนับสนุน SEO, Progressive Web Application เพราะด้วยที่เป็น Static site มีแค่ HTML/CSS/Javascript จึงเอาไปรันที่ไหนก็ได้ เดี๋ยวเรามาลองติดตั้งครับ

ปัจจุบันผมเขียน React อยู่แต่มีข้อเสียอยู่จุดนึง คือมันไม่สนับสนุน SEO มากนัก ซึ่งมันจะต้องใช้การทำ Server-side rendering (SSR) คือไปพ่น HTML ฝั่ง Server เพื่อให้ Bot มันไต่เว็บเพื่อเก็บมา Index นั่นเอง ซึ่งถ้าเป็น React คงต้อง config ต่างๆมากมายกว่าจะได้ออกมา

หลังจากใช้ Docker ใช้งานมาได้สักระยะ เลยคิดว่าทำบล็อกขึ้นมาเหมือนกับที่เคยเขียนบล็อก การใช้คำสั่ง Git เลยดีกว่า เพราะบางคำสั่งดูแล้วถ้าไม่ได้ใช้นานๆเข้าอาจจะลืม ไว้ทั้งสำหรับตัวเองกลับมาดูและสำหรับคนอื่นทั่วไปด้วยเลยแล้วกัน

พอดีใน App ที่เขียนโดย React มีต้องใช้การแปลง Object ไปเป็น Query String Parameters สำหรับใช้ใน URL อีกที เลยมาเขียน Blog วิธีทำไว้อีกครั้ง

CloudFlare คือ ผู้ให้บริการ CDN (Content Delivery Network) ซึ่งมีทั้งแบบฟรีและแบบเสียเงิน มี Server หลายแห่งทั่วโลก ประโยชน์หลักที่ได้รับคือเรื่อง Performance และ Security

หลังจากเขียน React โดยใช้ Create React App มาสักระยะ จึงมาบันทึกวิธีการติดตั้งเพื่อใช้งานไว้อีกครั้ง เหตุผลที่ใช้มันก็เพื่อลดขั้นตอนการ Config ต่างๆ อาทิเช่น Webpack, Babel หรืออื่นๆที่เกี่ยวข้อง

โดยปกติโปรแกรมเมอร์มักจะใช้ Terminal ในการพิมพ์คำสั่งต่างๆ เพื่อใช้งานบน Mac อาทิบ่อยๆ อาทิเช่น cd เพื่อเข้าไปยัง Directory ต่างๆ หรือแม้กระทั่ง ssh เพื่อ Remote เข้า Server เป็นต้น ส่วนตัวแล้วผมมักจะจำ Path หรือ IP ไม่ได้ ! ก็เลยต้องอาศัยการตั้งคำสั่งเฉพาะแทนเพื่อให้สั้นกระชับ

ไฟล์ .gitignore คือไฟล์ที่บอกว่า ไฟล์หรือโฟลเดอร์ไหนบ้างที่จะ Untrack ไม่ต้องนำขึ้น git repository ทีนี้มีบางครั้งที่เราอาจจะมีการแก้ไข หลัง push ทุกสิ่งอย่างขึ้น git repository ไปแล้ว