ข้อดีและข้อเสียของ HTML5 แนวทางแอพมือถือแบบเนทีฟและไฮบริดคืออะไร


25

ฉันต้องการพัฒนาแอปพลิเคชั่นมือถือ ฉันเพิ่งอ่านบทความในTelerik Forumซึ่งเปรียบเทียบกับแอปพลิเคชั่นมือถือสามประเภทและฉันไม่รู้ว่าควรเริ่มต้นจากที่ใด นี่คือรูปภาพที่อธิบายข้อดีข้อเสียของตัวเลือกการออกแบบมือถือที่แตกต่างกัน

แผนภูมิการออกแบบมือถือ Telerik

ในการตัดสินใจระหว่างตัวเลือกการออกแบบเหล่านี้ฉันต้องการทำความเข้าใจข้อดีข้อเสียของตัวเลือกสถาปัตยกรรมแต่ละตัวที่ระบุไว้ในแผนภาพ ข้อดีและข้อเสียของสถาปัตยกรรมแต่ละวิธีมีอะไรบ้าง


5
คำถามนี้ดูเหมือนจะเป็นไปตามต้นแบบนี้ คำถามดั้งเดิมดึงดูด 88 คำตอบมีเพียงหนึ่งคำถามเท่านั้นที่เป็นแบบอย่าง ฉันซาบซึ้งในความพยายามที่ผู้เขียนตั้งคำถามดั้งเดิม แต่ประวัติศาสตร์ไม่ได้ตอบคำถามเหล่านี้อย่างดีและฉันลงคะแนนให้ปิดคำถามนี้ตามนั้น
Robert Harvey

1
@just_name ขณะที่ถามว่าหัวข้อไหนดีกว่ากันฉันได้แก้ไขคำถามของคุณเพื่อขอรายการข้อดีข้อเสียของวิธีการสถาปัตยกรรมแต่ละวิธี จากนั้นฉันเปิดคำถามของคุณอีกครั้ง หวังว่าคุณจะได้คำตอบที่ดีกว่าตอนนี้
maple_shaft

จากถ้อยคำที่ฉันคาดว่าจะเห็นการอภิปรายของหลักการทั่วไปที่ไม่ใช่ความชรา (เช่นอายุการใช้งานแบตเตอรี่การเชื่อมต่อ / ตัดการเชื่อมต่อ ฯลฯ ) แทนที่จะมี HTML5 อีกสิ่งหนึ่งที่มีมาก่อน
Den

คุณอาจพบบทความนี้เกี่ยวกับกระบวนการตัดสินใจของ LinkedIn ที่น่าสนใจ
Brian

คำตอบ:


23

ฉันเป็นนักพัฒนามือถือที่ใช้เวลามากมายในการพิจารณาปัญหานี้

คุณถามทำไม?

ส่วนใหญ่คุณหวังว่าจะลดต้นทุนการพัฒนาแอปโดย:

  • การใช้ทักษะการพัฒนา HTML5 / Javascript ที่มีอยู่
  • การกำหนดเป้าหมายหลายแพลตฟอร์มโดยไม่ต้องเขียนหลายแอพตั้งแต่เริ่มต้น
  • ไม่ต้องรักษารหัสหลายฐานในอนาคต

เหตุผลอาจรวมถึง:

  • การพัฒนา HTML5 / Javascript นั้นรับรู้ว่า "ง่ายกว่า" กว่าการพัฒนาแพลตฟอร์มดั้งเดิม
  • หลีกเลี่ยงการชำระค่าธรรมเนียมการลงทะเบียนโปรแกรมผู้พัฒนา
  • หลีกเลี่ยงข้อ จำกัด เนื้อหาของ appstore (การพนันและอื่น ๆ )
  • หลีกเลี่ยงการซื้อฮาร์ดแวร์สำหรับการพัฒนา (เช่น Mac สำหรับการพัฒนา iPhone)

คำนิยาม

ลองสร้างสิ่งที่เราหมายถึงโดยวิธีการทั้งสามวิธีที่กล่าวถึง:

เนเชอรัล
แอพที่ติดตั้งบนอุปกรณ์มักจะมาจาก app store (แม้ว่าบางครั้งจะสามารถไซด์โหลด) สำหรับวัตถุประสงค์ของการสนทนานี้ UI ของแอปที่ใช้ในท้องถิ่นมักจะไม่ประกอบด้วยมุมมองเว็บแบบเต็มหน้าจอเท่านั้น

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

ไฮบริด
ของแอปไฮบริดinstanceofapp พื้นเมือง

คนส่วนใหญ่อาจจะเข้าใจแอพไฮบริดว่าเป็นแอพมือถือหน้าเว็บเดียว (มักจะเลียนแบบรูปลักษณ์ของแอพเนทีฟ) แต่บรรจุเป็นแอปเนทีฟที่เข้าถึงบริการเนทีฟ (à la Phonegap)

อย่างไรก็ตามในความเป็นจริงแล้วมีสเปกตรัมระหว่างรุ่น Phonegap และแบบดั้งเดิมซึ่งฉันจะมาในภายหลัง

เว็บมือถือ

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

  • HTML / Canvas UI เท่านั้น
  • ไม่มีการเข้าถึงกิจกรรมและบริการของอุปกรณ์บางอย่าง
  • ไม่สามารถแสดงในร้านค้าแอป (ส่งผลกระทบต่อการค้นพบ)
  • สามารถเป็นแบบเต็มหน้าจอและมีไอคอนหน้าจอหลักบน iOS อย่างไรก็ตามนี่เป็นประสบการณ์ที่แปลกและไม่คุ้นเคยสำหรับผู้ใช้ส่วนใหญ่

หากคุณสามารถใช้ชีวิตกับทุกสิ่งข้างต้นให้อ่านเพิ่มเติมเกี่ยวกับความท้าทายของแอพพลิเคชั่นเว็บแบบเนทีฟแบบหน้าเดียว อย่างไรก็ตามส่วนนี้จะไม่สมบูรณ์หากไม่มีการอ้างอิงแอป FT

Financial Times FT เว็บแอปเป็นตัวอย่างที่มีชื่อเสียงของรูปแบบของการตรวจสอบนี้ นี่คือคุณลักษณะที่น่าสนใจจากหนังสือพิมพ์ UK Guardian เกี่ยวกับเรื่องนี้

แน่นอนว่ามันเป็นผลงานทางวิศวกรรมที่โดดเด่น โปรดทราบว่าขณะนี้ยังคงให้บริการเฉพาะในiOS เท่านั้น - สิ่งนี้บอกฉันว่าพวกเขากำลังพบว่าการแก้ไขความท้าทายของการพัฒนาข้ามเบราว์เซอร์ขั้นสูงนั้นเป็นเรื่องยากมาก

แอปพลิเคชันเว็บแบบเนทีฟแบบหน้าเดียว

ส่วนนี้ใช้กับทั้งมือถือและแอพพลิเคชั่นสไตล์ Phonegap

รูปลักษณ์และความรู้สึกแบบเนทีฟภายในเว็บแอปมักจะประสบความสำเร็จด้วยกรอบงานเช่นSencha Touchซึ่งมีชุดส่วนประกอบ UI สำหรับให้คุณใช้

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

วิธีหลักที่เฟรมเวิร์กเหล่านี้ประสบคือพยายามเลียนแบบความซับซ้อนของ UI ของแพลตฟอร์ม เอฟเฟกต์กระดอนเล็ก ๆ น้อย ๆ ที่สวยงามที่คุณได้รับเมื่อคุณเลื่อนไปที่ส่วนท้ายของรายการบน iPhone หรือไม่ กรอบงานของคุณต้องจำลองใน Javascript เป็นไปไม่ได้ที่จะสร้างใหม่อย่างสมบูรณ์มันจะมีแนวโน้มที่จะชะลอตัวลงและผู้ใช้ของคุณจะติดอยู่ใน "หุบเขาลึกลับ" ของแอพที่มีลักษณะเหมือนคนพื้นเมือง แต่ไม่ชัดเจนและไม่ใช่ด้านเทคนิค ผู้ใช้จะไม่สามารถวางนิ้วบนทำไม

ตำนาน "HTML5 / Javascript นั้นง่าย"

การกระจายตัวของอุปกรณ์ภายในเว็บเบราว์เซอร์นั้นมีมากมายและเมื่อคุณได้รับมากกว่า HTML และ CSS พื้นฐานที่สุดคุณจะสังเกตได้ว่าสิ่งต่าง ๆ ไม่ได้ผลอย่างที่คุณคาดหวัง คุณอาจพบว่าตัวเองใช้เวลามากขึ้นในการแก้ปัญหา UI ที่เล่น ๆ มากกว่าที่คุณบันทึกไว้ หากคุณเป็นเจ้าของภาษาโปรดทราบว่า webviews ของแอปพลิเคชันดั้งเดิมนั้นไม่เหมือนกับเบราว์เซอร์อุปกรณ์และมีปัญหาการกระจายตัวของมันเอง

และเมื่อแอพของคุณมีความซับซ้อนในการใช้งานมากขึ้นคุณจะพบว่าคุณต้องมีทักษะ jquery พื้นฐานเพื่อให้ Javascript ของคุณสะอาดและบำรุงรักษา

ที่กล่าวมาเป็นไปได้อย่างสมบูรณ์ในการสร้างแอพที่ใช้งานง่ายและใช้งานได้อย่างรวดเร็วด้วยวิธีการนี้ แต่มันก็ค่อนข้างชัดเจนเมื่อแอพกำลังทำอยู่

ไกลออกไปตามสเปกตรัม

ดังนั้นเราต้องการ UX ที่ดีกว่าแอพ Phonegap สไตล์ที่สามารถให้ได้โดยไม่ต้องเขียนทุกอย่างตั้งแต่เริ่มต้นหลายครั้ง อะไรที่พวกเราสามารถทำได้?

แบ่งปันรหัสที่ไม่ใช่ UI

มีเทคนิคหลากหลายสำหรับการแบ่งปันตรรกะทางธุรกิจข้ามแพลตฟอร์มที่มีอยู่หลายตัว Google ได้เปิดตัวJ2ObjCซึ่งแปล Java เป็น Objective-C ด้วยการใช้รหัสอย่างระมัดระวังทำให้สามารถใช้ไลบรารี Java บนทั้ง Android และ iOS

ไลบรารี่เช่นCalatravaและKirinอนุญาตให้เขียนโค้ดเบสใน Javascript (และดังนั้นสิ่งใดก็ตามที่สามารถคอมไพล์ไปยัง Javascript) ได้รับการจัดการจากโค้ดเนทีฟ คำเตือน: ฉันทำงานให้กับแพลตฟอร์มในอนาคตที่สร้างคิริน; เราประสบความสำเร็จอย่างมากในการใช้งานบน iOS ด้วย Javascript ที่สร้างจาก Java ด้วย GWT โดยที่โค้ด Java ยังทำงานบน Android

ใช้ webviews ... ตามความเหมาะสม

webviews เต็มหน้าจอมีงานจำนวนมากที่ต้องทำเพื่อให้สามารถเลียนแบบการเปลี่ยนหน้าจอและเอฟเฟกต์การตีกลับ แต่มุมมองทางเว็บภายใน Chrome แอปในเครื่องสามารถแยกแยะได้จาก Native

มีวิธีการที่เป็นมาตรฐานและมีเอกสารที่ดีสำหรับแอพและการดูเว็บออนไลน์เพื่อสื่อสาร

รายการและตารางสามารถทำงานได้ดีโดยเฉพาะอย่างยิ่งเมื่อทำในลักษณะนี้อย่างไรก็ตามการป้อนข้อความเป็นตัวอย่างของสิ่งที่จัดการได้ดีที่สุด (สำหรับการควบคุมแป้นพิมพ์แบบเต็ม)

สรุป

วิธีการที่เหมาะสมสำหรับคุณขึ้นอยู่กับความซับซ้อนของแอพของคุณและ UI ระดับใดที่คุณพึงพอใจ

คำขวัญของฉัน: ใช้ webviews ทุกที่ที่คุณทำได้ แต่ให้แน่ใจว่าผู้ใช้ของคุณไม่สามารถบอกได้


2
คำตอบที่ดี! และสิ่งที่ดีที่คุณพูดถึง J2ObjC ฉันไม่รู้เรื่องนั้น
momo

4

ก่อนอื่นให้สำรวจความคิดเห็นนี้เพื่อดูว่าเกิดอะไรขึ้น!

เปรียบเทียบระหว่างสามประเภท: ทำความเข้าใจกับตัวเลือกการพัฒนาแอปพลิเคชันมือถือของคุณ

การเปรียบเทียบระหว่าง native และ hyprid:

HTML5 vs Native

HTML5 vs Native App: ตัวเลือกไหน?

อันนี้ดีจริงๆ: แอพพื้นฐานของ HTML5: ข้อควรพิจารณาที่สำคัญสำหรับกลยุทธ์มือถือของคุณ

ความคิดเห็นที่:

  • คุณสามารถเลือกหนึ่งในนั้นขึ้นอยู่กับสิ่งที่คุณมี (ทักษะ) และสิ่งที่คุณจะได้รับ (รูปลักษณ์ความรู้สึกประสิทธิภาพการใช้งาน ... )
  • นักพัฒนาแอพมือถือทุกคนควรมีวิสัยทัศน์ / ข้อกำหนดที่ชัดเจนเกี่ยวกับแอปพลิเคชันที่เขากำลังพัฒนาสำหรับเวอร์ชันแรกและอนาคต เพียงเพื่อให้แน่ใจว่าตัวเลือกที่เขาจะใช้จะไม่ จำกัด เขาในบางจุด
  • ไม่มีอะไรที่เหมือนกับการได้รับประสบการณ์ที่แท้จริงกับทั้งสามวิธีและการอัพเดทในเวลาเดียวกันสิ่งนี้จะให้ความรู้สึกและความสามารถในการตัดสินใจที่ถูกต้อง

2

หากคุณต้องการเข้าถึงฮาร์ดแวร์ของโทรศัพท์คุณควรสร้างแอพพื้นฐาน (ใน HTML5 คุณสามารถเข้าถึงส่วนประกอบฮาร์ดแวร์บางอย่างของอุปกรณ์เช่น GPS)

หากคุณคุ้นเคยกับการพัฒนาเว็บไซต์มากขึ้นคุณควรทำเช่นนั้นเว้นแต่ว่าคุณจะต้องสร้างแอพที่ใช้ในเครื่อง

เท่าที่คุณควรรู้ฉันจะบอกว่าคุณควรคำนึงถึงขนาดหน้าจอที่แตกต่างกันทั้งหมด (รวมถึงการวางแนวตั้งและแนวนอน) คุณควรจำไว้ว่าระบบปฏิบัติการเวอร์ชันต่าง ๆ (นี่เป็นมากกว่าสำหรับ Android) เนื่องจากสิ่งเหล่านี้เป็นอุปกรณ์พกพามีความเป็นไปได้ที่ผู้ใช้จะรับสายเรียกเข้าโทรศัพท์และยังไม่มีอำนาจในการคำนวณของเดสก์ท็อปหรือเซิร์ฟเวอร์


2

สำหรับฉันเมื่อเขียนแอปผู้บริโภคใด ๆ สิ่งที่สำคัญยิ่งต่อความสำเร็จคือการยอมรับของผู้ใช้และการรับรู้แอป เนื่องจากเหตุผลสี่ประการที่ต้องพึ่งพาแอพพลิเคชั่นดั้งเดิมแม้จะมีค่าใช้จ่ายเพิ่มเติมที่เกี่ยวข้องกับการเรียนรู้การฝึกอบรมและการสูญเสีย WORA (เขียนครั้งเดียวที่ใดก็ได้) คือ:

  1. แอปเริ่มต้นเร็วขึ้น
  2. การเลื่อนที่ราบรื่นขึ้น
  3. แอพที่สอดคล้องกันมากขึ้น UI ที่เชื่อมโยงกับระบบปฏิบัติการและแอพที่เหลือให้มากขึ้น
  4. การตอบสนอง UI ของแอปที่เร็วขึ้น

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

มันเป็นเหตุผลที่คล้ายกับสิ่งเหล่านี้ที่ Facebook ใช้กลยุทธ์แอพของพวกเขาในการสนับสนุนแอพพื้นฐานสำหรับ IOS และ Android:

กรุณาอ่าน:

Mark Zuckerberg: ความผิดพลาดที่ใหญ่ที่สุดของเราคือการเดิมพันมากเกินไปบน HTML5 http://techcrunch.com/2012/09/11/mark-zuckerberg-our-biggest-mistake-with-mobile-was-betting-too-much-on- HTML5 /

ทำไม Facebook ถึงดึงเว็บมือถือและพื้นเมืองด้วยแอพ iOS ใหม่ของมัน http://readwrite.com/2012/08/23/how-facebook-ditched-the-mobile-web-went-native-with-its-new- ใหม่ iOS แอป # awesm = ~ o9jDrRefxdgnpS

หวังว่านี่จะช่วยได้


2

เมื่อใช้ด้านล่างท่าทางปัจจุบันของฉันเกี่ยวกับความล้มเหลวนี้คือไฮบริดเป็นสิ่งที่ดีในการเริ่มต้นสำรวจแอพของคุณย้ำความคิดเห็นของลูกค้าอย่างรวดเร็วและทำให้ชุดคุณลักษณะมีความเสถียร จากนั้นเพื่อเขียนแอปพลิเคชันเป็นภาษาท้องถิ่นตามข้อมูลจำเพาะเพื่อเพิ่มประสบการณ์

ฉันออกจากเว็บมือถือแล้วเพราะมันมีจุดประสงค์ที่ต่างออกไปโดยสิ้นเชิง หากคุณต้องการที่จะอยู่ในร้านค้าแอพ Native / Hybrid เป็นวิธีที่จะไป ถ้าคุณต้องการทำให้การปรับใช้ง่ายขึ้นและเต็มใจเสียสละประสบการณ์และความสามารถด้านเทคนิคให้ไปที่เว็บมือถือ

Pro / Cons Native :

  • Pro: มันเหมาะกับประสบการณ์อุปกรณ์ที่เหลือไม่มีปัญหาหุบเขาลึกลับ
  • Pro: ส่วนใหญ่จะให้ประสบการณ์ UI ที่สอดคล้องราบรื่นไม่มีความล่าช้าไม่มี stutters
  • Pro: ข้อ จำกัด ทางเทคนิคเล็กน้อยคุณสามารถใช้อุปกรณ์ได้อย่างเต็มที่
  • Pro: เครื่องมือเนทิฟให้การปฏิบัติตามการตรวจสอบร้านค้าแอป
  • Pro: เฟรมเวิร์กดั้งเดิมประกอบด้วย tweaks ต่อแพลตฟอร์มแต่ละเวอร์ชันใช้เวลาน้อยลงในการปรับจูน
  • คอนดิชั่น: มันเป็นรุ่นสุดท้ายและดังนั้นจึงต้องใช้เวลาในการสร้างมากขึ้น
  • คอนดิชั่น: ต้องใช้นักพัฒนาที่พูดได้หลายภาษาซึ่งหายากและมีราคาแพง
  • คอนดิชั่น: จำเป็นต้องทำความคุ้นเคยกับ API ของแพลตฟอร์มอุปกรณ์ (iOS / Android / ฯลฯ )
  • คอนดิชั่นโค้งการเรียนรู้ที่สูงชัน
  • คอนดิชั่น: ชุดเครื่องมือที่แตกต่างกันต่อแพลตฟอร์ม

ไฮบริด Pro / Cons :

  • Pro: รหัสฐานเดียวเพื่อกำหนดเป้าหมายหลายแพลตฟอร์มอุปกรณ์
  • Pro: รอบการพัฒนาอย่างรวดเร็ว fexibility ที่ยิ่งใหญ่ในรูปแบบที่สมบูรณ์แบบสำหรับการสร้างต้นแบบและ MVP
  • Pro: เส้นโค้งการเรียนรู้ที่สะดวกสบายเอกสารจำนวนมากกรอบงานที่จะช่วยคุณ
  • Pro: ชุดเครื่องมือการพัฒนาเดี่ยว เครื่องมือดีบั๊กของ Chrome นั้นยอดเยี่ยม
  • Pro: หนึ่ง codebase เพื่อกำหนดเป้าหมายหลายแพลตฟอร์มอุปกรณ์
  • Pro: มีผู้พัฒนามากมายพร้อมที่จะเรียนรู้ได้ง่าย
  • คอนดิชั่น: ต้องใช้เฟรมเวิร์ก UI ที่เหมาะสมเพื่อปรับ UI สำหรับทุกแพลตฟอร์มที่แตกต่างกันเพื่อให้สอดคล้องกับประสบการณ์การใช้อุปกรณ์ มีโซลูชั่นที่เหมือนเคนโด้ UI , Sencha สัมผัส
  • คอนดิชั่น: จะต้องมีสติเกี่ยวกับการใช้หน่วยความจำและการคำนวณ, CSS, javascript ลูปบางอย่างสามารถชะลอแอปอย่างจริงจัง เครื่องมือที่ดีไม่สามารถใช้ในการดีบักได้
  • คอนดิชั่น: ยังไม่สุก, ทันใดนั้นสิ่งต่าง ๆ ก็สามารถเปลี่ยนแปลงได้, เครื่องมือต่าง ๆ ก็ดีขึ้นกว่าเดิม

2

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

อีกแง่มุมที่ดีที่ไม่ดีคือความช้า เวลาที่ใช้ในการแยกวิเคราะห์ข้อมูลระยะไกลอาจใช้เวลานาน ใช่คุณสามารถดึงข้อมูลล่วงหน้าได้ในระหว่างการโหลด แต่ในกรณีอื่น ๆ ทั้งหมดคุณไม่สามารถหลีกเลี่ยงความเชื่องช้าได้

ฉันพบว่าแอปดังกล่าวสิ้นสุดแอปราคาแพงกว่าแอปทั่วไป ฉันไม่แนะนำพวกเขาให้กับลูกค้าของฉันอีกต่อไป


1

ปัญหาใหญ่ของแอพไฮบริดคือการกระจายตัวของเฟรมเวิร์ก: มีอย่างชัดเจนมากกว่านั้น (Ionic, Xamarin, React Native ฯลฯ ) มากกว่าที่มีแพลตฟอร์มมือถือดั้งเดิมที่น่าสนใจ เฟรมเวิร์กเหล่านี้แข่งขันปรากฎขึ้นปฏิเสธดังนั้นการไฮบริดจะไม่ช่วยให้คุณรอดพ้นจากการกระโดดจากแพลตฟอร์มสู่แพลตฟอร์มแม้ว่าคุณวางแผนที่จะรักษาทีมปัจจุบันของคุณไว้ตลอดชีวิต

Google และ Apple พยายามอย่างดีที่สุดในการจัดหาและสนับสนุนบรรณาธิการผู้ตรวจแก้จุดบกพร่องการทดสอบเฟรมเวิร์กเครื่องมือการรีแฟคเตอร์และวิธีการอื่นในการพัฒนาสำหรับแพลตฟอร์มเหล่านั้น ดังนั้นฉันจะใช้ถ้อยคำทั่วไป " มันง่ายกว่ามากในการพัฒนาแอพไฮบริดแก้ไขด้วยตัวแก้ไขที่คุณชื่นชอบและเปิดในเบราว์เซอร์ " ด้วยการจองที่สมเหตุสมผล Xamarin และ React Native เป็นแพลตฟอร์มการพัฒนาเช่นเดียวกับ Swift หรือ Java / Android และในขณะที่ "สวัสดีโลก" อาจดูสั้นลงในที่สุดควรใช้เวลาเปรียบเทียบเพื่อเรียนรู้อย่างถูกต้อง

ถ้าไม่ว่าในกรณีใด ๆ ความต้องการส่วนประกอบพื้นฐานจะเกิดขึ้น (เช่นต้องมีห้องสมุดของบุคคลที่สามที่มีอยู่แล้ว) คุณจะจบลงด้วยสามเฟรมเวิร์กมากกว่าสอง: iOS, Android และไฮบริดเฟรมเวิร์กของคุณ ด้วยสถาปัตยกรรมที่ซับซ้อนมากขึ้น การดีบักแอพดังกล่าวการก้าวข้ามการโทรข้ามเลเยอร์การบันทึกเลเยอร์ทั้งหมดการทำให้รหัสซิงค์ตรงกันไม่สามารถทำได้ในบางครั้ง

บางคนบอกว่า " แอพจะมีลักษณะเหมือนกันทุกแพลตฟอร์ม " มันเป็นสิ่งที่ดีจริงเหรอ? แอพ Android ต้องมีลักษณะเหมือนแอพ Android และแอพ iOS ต้องมีลักษณะเหมือนแอป iOS

แล้วคุณสมบัติใหม่นี้ล่ะ? อุปกรณ์ที่สวมใส่? แอพพลิเคชั่นทันทีที่มีให้ในแพลตฟอร์ม Android? แสดงข้อมูลเพิ่มเติมบนจอแสดงผลภายนอกหรือไม่ แอพไฮบริดตอนนี้รองรับฟีเจอร์ดั้งเดิมมากมาย แต่พวกเขาสนับสนุนพวกเขาทั้งหมดหรือไม่? เมื่อใดก็ได้ทันที?

ในที่สุดไม่เพียง แต่ประสิทธิภาพและประสบการณ์การใช้งานของผู้ใช้ แต่ยังมีความปลอดภัยอีกมากที่ด้านบนของแอพพื้นฐาน ไฮบริดเฟรมเวิร์กเพิ่มเลเยอร์ของการอ้อมที่อาจมีข้อบกพร่องของตัวเองข้อบกพร่องด้านความปลอดภัย

เมื่อสรุปทั้งหมดข้างต้นภายใต้ความเป็นไปได้ในการเลือกฉันจะเลือกทั้งสองแอปพื้นฐานสำหรับ iOS และอีกหนึ่งสำหรับ Android หรืออีกวิธีหนึ่งคือออกแบบเว็บไซต์มือถือรุ่นโดยไม่ต้องกังวลกับการพัฒนาแอพสำหรับแพลตฟอร์มใด ๆ เลย .

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.