หลายคนคงรู้จักกับ web application กันอยู่แล้ว ในความหมายของการสร้างโปรแกรมหรือแอปพลิเคชั่นให้สามารถทำงานในบราวเซอร์ต่างๆ เช่น Google Chrome หรือ Safari ได้ แต่ยังมีศัพท์อีกคำที่โผล่ขึ้นมานอกเหนือจากเว็บแอปทั่วไปนั่นก็คือ Progressive web application
แล้วมันต่างกับ web application แบบธรรมดาอย่างไร มาทำความรู้จักกับ Progressive web application กันเลยครับ
รู้จัก Progressive web application
Progressive web application (PWA) คือการทำเว็บไซต์ธรรมดา ให้ใกล้เคียงกับแอปพลิเคชั่นที่ดาวน์โหลดลงเครื่องมากที่สุด ทั้งในแง่รูปลักษณ์ ความเร็ว ไปจนถึงการใช้งาน สมกับคำเรียกที่ว่า Progressive (ก้าวหน้า) นั่นเอง
โดย Progressive web application จะมีการปรับการแสดงผลให้เหมาะกับอุปกรณ์ที่ใช้โดยเฉพาะ ไม่ว่าจะเป็น desktop mobile หรือ tablet
Google Developer ได้ระบุว่า Progressive web ที่แท้จริงควรมีคุณสมบัติ 3 อย่างคือ
- Reliable : มีความน่าเชื่อถือ สามารถใช้งานได้ตลอดแม้ว่าการทำงานของเครือข่ายจะไม่เสถียร
- Fast : ต้องเร็ว ไม่ว่าจะมีอนิเมชั่นสวยหรือสิ่งใดก็แล้วแต่ การตอบสนองต่อผู้ใช้สำคัญที่สุด
- Engaging : ผู้ใช้สามารถใช้งานมันไม่ต่างกับแอปพลิเคชั่นปกติ
หลายคนอาจเกิดข้อสงสัยว่า หากเป็นแบบนั้นล่ะก็โหลดแอปนั้นๆ มาเลยไม่ไวและสะดวกกว่าหรือยังไง คำถามนั้นถูกส่วนหนึ่งครับ แต่หากอิงจากสถิติและการใช้งานของบุคคลทั่วไปแล้ว โอกาสที่คนจะโหลดแอปต่างๆ มาใช้งานประจำนั้นยังน้อย ด้วยข้อจำกัดของเครื่อง การใช้งานของแต่ละบุคคล รวมถึง Trends ในการใช้งาน Application ต่างๆ ด้วยครับ
กลับกัน ผู้คนยังคงนิยมท่องเที่ยวในเว็บไซต์ต่างๆ ไม่ว่าจะเว็บประจำอย่าง Google หรือ Facebook และยังสรรหาเว็บไซต์ใหม่ๆ ที่น่าสนใจอยู่เรื่อยๆ
Progressive web app จึงกลายเป็นสิ่งสำคัญอย่างยิ่งในปัจจุบัน จนอาจพูดได้ว่ามันแทนที่ web app ธรรมดาไปเกือบหมดแล้วด้วยซ้ำ
ความแตกต่างระหว่าง Progressive web app กับ Web application ทั่วไป
คงไม่แปลกเท่าไหร่หากจะบอกว่ามองผ่านๆ แล้ว Progressive web app จะคล้ายคลึงกับ Web App ทั่วไปจริงๆ แต่หากลงลึกในรายละเอียดจะพบว่ามันมีความต่างกันพอสมควรครับ ซึ่งรายละเอียดหลักๆ คือ
- เปิดได้แม้ไม่มีอินเทอร์เน็ต Progressive web app จะทำการเก็บข้อมูลบางส่วนของผู้ใช้เอาไว้ในเครื่อง เมื่อมีการเปิดแอปในที่ๆ ไม่มีอินเทอร์เน็ตมันก็จะโหลดขึ้นมา ทำให้สามารถทำงานที่ไหนก็ได้ แต่อาจจะมีข้อจำกัด
- มีความรวดเร็ว เพราะมีการโหลดข้อมูลมาใช้ จึงทำให้มีการทำงานรวดเร็วกว่า Web application ปกติ จนแทบสังเกตไม่ได้ว่ามีการโหลดเกิดขึ้น
- สามารถแสดงผลได้แบบเต็มจอ ไม่มีหน้าจอส่วนควบคุมของเบราเซอร์มาครอบไว้ให้ดูขัดตา การทำงานจะเหมือนการใช้แอพเต็มจริงๆ
- มีการทำงานภายนอกเหมือนแอป เช่น สามารถสร้างทางลัดไว้ด้านนอกเพื่อเปิดเข้าได้ทันที ส่ง Notification ได้แม้ว่าจะไม่ได้เปิดแอปพลิเคชั่น มีการอัพเดทตลอดเวลาเพื่อลดความผิดพลาด
ซึ่งถ้าตัวเว็บแอปนั้นมีแอปพลิเคชั่นแยกอยู่แล้ว โดยส่วนมากทั้งสองอย่างนี้จะพยายามทำให้หน้าตาเหมือนกัน เพราะต้องการให้ผู้ใช้สามารถใช้งานได้อย่างลื่นไหล ไม่ติดขัด
จะสังเกตได้ว่าหลักๆ ที่ PWA ต้องการจะเป็นคือ ‘การเป็นแอปที่ใครๆ ก็เข้าถึงได้’ ซึ่งในปัจจุบันนักพัฒนาก็ยังปรับเปลี่ยนรูปแบบของมันให้ทันสมัยและเข้าถึงผู้คนมากขึ้น ตอบสนองความต้องการ Progressive web app ที่เพิ่มสูงขึ้นนั่นเอง
ข้อดีของ Progressive web application
การบอกว่าความแตกต่างของ Progressive web application กับเว็บแอปปกตินั้นเป็นข้อดีก็เห็นจะไม่ผิดนัก เพราะ Progressive ต้องการอัพเกรดตัวขึ้นจากเว็บแอปนั่นเอง โดยข้อดีที่เห็นได้ชัดก็คือ
- สามารถทำงานบางฟังก์ชั่นแบบออฟไลน์ได้
- กินทรัพยากรเครื่องต่ำ
- ปรับการแสดงผลได้ตามต้องการ
- มีความปลอดภัยสูงกว่าเว็บแอปธรรมดา
- ขั้นตอนการใช้งานไม่ยุ่งยาก เพราะไม่จำเป็นต้องเข้าผ่านสโตร์ รอโหลด Progressive web app แค่เข้าในหน้าเว็บก็ใช้งานได้ทันที
- ไม่ถูกจำกัดด้วย OS เนื่องจากรันผ่านเว็บเบราเซอร์
จริงๆ ประเด็นสำคัญหลักๆ ของ Progressive web app ก็คือการที่มันสามารถเปิดขึ้นที่ไหนก็ได้นี่ล่ะครับ (เหมือนเรามีทั้งเว็บทั้งแอปไปในตัว) เพราะหลายต่อหลายครั้งที่เราอยากใช้งานแอปบางตัว แต่มันดันไม่มีในระบบปฏิบัติการของเราเสียอย่างนั้น ก่อให้เกิดความหงุดหงิดตามมาไม่มากก็น้อย การถือกำเนิดของ Progressive web application จะเป็นการปฏิวัติวงการระดับหนึ่งทีเดียว
ซึ่งกรณีนี้ไม่ได้มีดีแค่สำหรับฝั่ง User แต่ฝั่ง Developer เองก็สบายขึ้นระดับหนึ่ง เพราะนอกจากจะไม่ต้องทำแอปแยกกับตัวเว็บไซต์เพื่อรองรับ OS จากหลายๆ ฝ่ายแล้ว ยังไม่ต้องฝ่าด่านมาตรการของ Store ที่บางครั้งยุ่งยากจนอยากจะถอดใจทีเดียว
การพัฒนา Progressive web application
การพัฒนา Progressive web application ยุ่งยากกว่าการพัฒนา web application ปกติอย่างแน่นอน เพราะนอกจากจะต้องพัฒนาให้กินทรัพยากรเครื่องน้อยที่สุด ยังต้องทำให้สามารถเชื่อมต่อกับแอปพลิเคชั่นของแบรนด์นั้นๆ ได้อย่างลื่นไหล
นอกเหนือจากทีมวางแผน ยังต้องมีฝ่ายกราฟิกคุณภาพที่สามารถปรับ UX/UI ให้ตัว PWA สามารถเข้ากับการใช้งานของลูกค้าได้อย่างสมบูรณ์แบบ ยังไม่นับการทำงานเบื้องหลังที่อาจมีความยุ่งยากมากขึ้น ตามความต้องการของลูกค้าแต่ละราย เช่น การทำระบบล็อกอินสำหรับพนักงาน ไปจนถึงการทำระบบอัพเดทเรียลไทม์ เป็นต้น
ดังนั้นหากจะพัฒนา application หรือ progressive web appliaction ควรเลือกทีมพัฒนาที่มีคุณภาพ สามารถเชื่อถือได้ จะเป็นผลดีกับตัวคุณหรือบริษัทของคุณในระยะยาวครับ เพราะว่ายุคปัจจุบันการใช้งานเป็นสิ่งสำคัญ ขอแค่เว็บแอปดี ทำงานเร็วไม่ติดขัด เป็นมิตรกับผู้ใช้ เท่านั้นก็สามารถซื้อใจลูกค้าได้ไม่น้อยแล้วล่ะครับ
สำหรับท่านใดที่สนใจบริการทำ Progressive Web Application ปรึกษาเราได้ฟรี ไม่มีค่าใช้จ่ายครับ 🙂