 |
ความคิดเห็นที่ 32 |
#29 อธิบายง่ายๆก็คือ แอนดรอยด์สามารถทำFreezeแบบiOSได้ทันทีถ้าโปรแกรมเมอร์ต้องการ แต่ไอโฟนไม่สามารถทำMultitaskได้ครับ
อันที่จริง ระบบFreezeของไอโฟน ก็คือFast App Switchingซึ่งมีในแอนดรอยด์และWebOSมาตั้งแต่เริ่มออกแล้ว
และถ้าตัวโปรแกรมเลือกใช้Fast App Switching(ไปBackground Stateเลยโดยไม่เข้าService State)แทนMultitask ผลก็จะเหมือนกัน คือไปกองที่RAMเหมือนกัน
เห็นคุณชอบยกตัวอย่างเกม งั้นเอาตัวอย่างเช่นเกมที่ต้องวัดพิกัดเครื่อง(แกนX,Y,Z) วัดพิกัดที่อยู่(Location Base,AR) ถ้าเป็นโหมด Freeze ทันที่กลับเข้าเกม ต้องมีการเขียนProcessเพื่อรองรับการคำนวนพิกัดใหม่โดยเทียบกับพิกัดเดิมหลังจากมันกลับมาใช้งาน(ซึ่งยากกว่า และบางกรณีอาจทำไม่ได้) แต่ Multitask จะคำนวนให้ในระหว่างนั้นเลย
หรือการSync Contact,Update,Download และในอนาคตก็จะมีPushแบบBB ระหว่างที่คุณทำอะไรค้างอยู่โดยไม่ต้องรอรอบใหม่
สรุปว่าของแบบเดียวกันที่น้อยกว่า ตัดทางเลือกในการพัฒนา บังคับพฤติกรรมคนใช้ คือสถาปัตยกรรมที่ฉลาดกว่า? อันนี้เรียกงานง่ายครับ งานฉลาดคือจะออกแบบยังไงให้มันกินทรัพยากรน้อยที่สุดด้วยเงื่อนไขที่กว้างที่สุด
แต่ถ้าคุณหมายถึง"ฉลาดกับผู้ใช้งาน"อันนี้ก็ถูกครับ(ในตอนนี้) เพราะงานง่ายกว่า ให้ผลที่ใกล้เคียงกัน คนใช้ส่วนใหญ่แทบไม่รู้สึก
แต่ Architecture คือสิ่งที่จะเป็นพื้นฐานของOSไปอีกนานครับ อย่างWMและซิมเบี้ยนที่มันห่วยก็เพราะแต่เดิมออกแบบสถาปัตยกรรมไว้จำกัดเลยขยายยาก WM7จึงต้องรื้อพื้นฐานใหม่ทั้งหมด
ปล.วัสดุกับงานประกอบไอโฟนก็กินขาดนะ ที่ราคาเท่ากันแล้วงานประกอบ+วัสดุเท่ากันนี้หายากมาก ยิ่งเจ้า4นี่สุดยอดเลย(ถ้าไม่นับเสาสัญญาณ)
[เพิ่มเติมหน่อย พึ่งเห็น] Freezeกินแรมน้อย??? มันคือการเอาโปรแกรมทั้งตัวไปกองกันที่แรมนะครับ มันจะกินแรมน้อยได่้ยังไง
เพียงแต่มันมีระบบจัดสรรว่า ถ้ามีการเรียกใช้โปรแกรมใหม่แล้วแรมไม่พอ จะลบโปรแกรมไหนออกจากระบบก่อน ของiOSน่าจะใช้FIFO ส่วนแอนดรอยด์ใช้LRU
แก้ไขเมื่อ 13 ส.ค. 53 22:05:15
จากคุณ |
:
YF-01
|
เขียนเมื่อ |
:
13 ส.ค. 53 13:10:46
|
|
|
|
 |