ONIPHP

ONIPHP

แชร์

03/03/2021

พอดีน้องในกลุ่มทักมาว่า ถ้าอยากจะ convert interger 10000 ให้เป็น 100.00 จะต้องเขียนประมาณไหนใน js อีกคนในกลุ่มก็บอกว่าหา lib มาช่วยสิ แต่แอดมินมันติส ก็เลยเขียนให้สดๆใน 3 นาที บะหมี่สุกพอดี ก็หาๆจาก google แล้วนำมาประกอบกันก็จะได้ประมาณนี้ 😘

ปล. ถ้าพบบัค ก็เม้นมาได้เลยครับผม

const convertMoney = (amount) => {
let decimal_length = 2;
const full_integer = amount.toString().slice(0, -(decimal_length)).replace(/\B(?=(\d{3})+(?!\d))/g, ",");
const decimal = amount.toString().padStart(decimal_length, "0").slice(-(decimal_length));
return full_integer + '.' + decimal;
}

21/02/2021

ไม่ได้มาอัพเดทนาน มาพิมพ์อะไรให้อ่านไปเพลินๆน๊ะ

*** React ***
ได้มีโอกาสรับงานธนาคารแห่งนึง จะเป็นการทำ KYC Form ที่ต้องมีการต่อกับ api ยิบยับไปหมด ...คือตอนแรกเลยคนจ้างบอกว่าใช้ React ซึ่งบอกตรงๆเลยว่าไม่เคยเขียนมานานมาก และเป็นการเขียนแบบเก่าที่ไม่ใช่แบบ function(hook) 4-5 ปีได้แล้วล่ะมั๊ง แต่ก็คิดว่าแค่ React มันจะไปยุ่งยากอะไรมาก แต่พอเค้าบอกว่าเค้าใช้ Material-UI ในการทำหน้าตาเว็ป ถึงกับกุมขมับไปเลย เพราะว่าปกติใช้ Bootstrap3,4 จนเรียกได้ว่าขั้นเทพแล้ว ก็เลยเหมือนต้องเรียนรู้ใหม่หมดทั้ง Project ไปเลย แต่สรุปก็รับงานมาด้วย Timeline ที่บีบคั้นมาก แค่ 20 วัน และทำใน Code เดิมซึ่งมี Error ประปรายอีก - -'

ทุกอย่างเครียดไปหมด ความกดดันมหาศาล ซึ่งถ้าจะอ่าน React ให้จบก่อนก็คงไม่ได้ เพราะเค้าจะให้เราอัพเดทงานทุกวัน ถามทุกวันว่าถึงหน้าไหนแล้ว จะเสร็จวันไหน ก็เลยต้องอาศัย Code เดิมที่ใช้เวลาอ่านสั้นๆ นำมาแปะลองผิดลองถูกทันที พอทำไปได้ 3 วัน ปรากฏว่าไปอ่านเจอว่า React มีแบบ function(hook) ซึ่งทำให้การเขียน Code สั้นมากๆ เสียเวลาทำไป 3 วันแล้วด้วย Code แบบเดิมๆ แต่มันอดใจไม่ได้ที่ต้องการจะทำอะไรต้องดีที่สุด ก็เลยปรับกลับเป็น Hook ทั้งหมด แต่พอเริ่มปรับก็เริ่มเข้าใจมากขึ้น ก็เลยใช้เวลาแค่ชั่วโมงเดียวก็เป็น Hook ได้ทั้งหมด
แต่...ส่วนที่ยากกว่า React ก็คือ Material UI ที่ต้องจะทำอะไรทีก็ต้องไปดู Doc ทีนึง เนื่องจากไปส่อง Code เดิมแล้ว เขียนได้ไม่ดีขั้นรุนแรงเลยทีเดียว ตัดสินใจสร้าง Component ใหม่หมด เพื่ออนาคตที่ดีกว่า

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

ทางคนจ้างบอกว่า ให้แบ่งงานกันอย่างชัดเจนเลย ให้เราทำเฉพาะ UI ไป และอีกคนซึ่งเค้าเคลมว่าเขียน React มานานแล้ว มีประสปการณ์สูง มาผูก Api จะดีกว่า พอทีนี้ได้รับโจทย์ใหม่ทำแค่ UI ล้วนๆ ก็หวานหมูเลย เลยใช้เวลาเพิ่มอีก 2 วัน UI ทุกอย่างเสร็จหมด เพราะก่อนหน้านี้ทำ Component เตรียมไว้อย่างดีแล้ว ก็แค่เรียกมาใช้ แปะๆ ตามแบบ UI ก็เสร็จแล้ว อ่อลืมบอกว่า มีทั้งหมดโดยประมาณ 40 หน้าได้

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

จากนั้นก็เหมือนจะทำไม่ทันไปเรื่อยๆ ช้าจนคนจ้างต้องมากลับมาขอความช่วยเหลือ โดยให้ค่าจ้างเป็น Manday(รายวัน) ถ้าในวันนั้นเค้าเชื่อมั่นว่า "คนที่ไม่เคยเขียน React hook กับ Material UI สามารถจบงานได้จริง" แต่เอาความเป็นจริงไม่มีใครเชื่อมั่นหรอก เค้าก็ต้องทำแบบนั้นแหละ

*** Heroku ***
เรื่องนี้สั้นสุดๆ เพราะเพิ่งเกิดเมื่อเช้านี้เอง หลังจากตอนเช้าตรู่ มาเขียน code แถมให้ทางคนจ้างไป 10 นาที (10 นาที ก็ปิดไปหลายเคสอยู่นะ) เห็นใจเพราะโดน Manday หนักอยู่ ก็ไปเห็นใน Youtube เกี่ยวกับการขึ้นเว็บด้วย Heroku เลยคิดว่า เอาล่ะ วันนี้ถึงเวลาสักที ที่เราจะเรียนรู้ Heroku เท่าที่ศึกษามาสรุปแบบง่ายๆตามพื้นบ้านเลยเนอะ
- Heroku ก็คือ Web Hosting ฟรีๆ ไม่เสียตังค์
- Heroku ทำงานผ่านในรูปแบบของ Git
- Project ของเราไม่จำเป็นต้องผูก Git อื่นๆ ผูกเฉพาะ Heroku ก็ทำงานได้ แต่มันก็ไม่เข้าท่าเท่าไหร่
- ถ้า Project ของเราผูกกับ Github ใน Project ของเราก็จะมี Remote Git อยู่ 2 ตัวได้แก้ Remote origin github และ Remote Heroku อีกอันนึง
- เมื่อเราจะทำการ Deploy จะใช้ด้วยคำสั่ง git push heroku main ซึ่งเป็นค่า Default ให้รู้กันว่า ถ้าลง Branch นี้คือจะมีการ Deploy และอ่านไฟล์จาก package json
- เราสามารถนำพวก Static HTML (VueJs, ReactJs, AngularJs) ที่เป็นแบบ Frontend เพียวๆขึ้นได้ แต่ต้องมีการ Set ค่าบางอย่าง เพราะพวกนี้ไม่ใช่ค่าตั้งต้นของ Heroku ซะทีเดียว
- สามารถเอาพวก Config เช่น app.json, static.json ขึ้นไป Heroku โดยไม่กระทบกับ remote อื่นๆได้

ถ้าทำตาม starter guide ก็สามารถทำได้ไม่ยากนะครับ สู้ๆนะ ทุกคน 😘

ต้องการให้ธุรกิจของคุณ ธุรกิจ ขึ้นเป็นอันดับหนึ่ง บริการคอมพิวเตอร์และอุปกรณ์อิเล็กทรอนิกส์ ใน Bangkok?
คลิกที่นี่เพื่อเป็นสมาชิก?

เว็บไซต์

ที่อยู่


Bangkok
10900