กำลังจะทำ Project โปรแกรมร้านอาหาร ที่พนักงานสามารถสั่งอาหารผ่าน App Android ไปที่เครื่อง PC ในห้องครัวได้ และสามารถเช็คบิลบนค่าอาหารบน App ตัวนี้ แต่นึกไม่ออกว่า จะรับส่งข้อมูลกันด้วยวิธีไหน จะใช้ Web Service หรือ จะส่ง ไฟล์ SQLite โยนกันไปมาระหว่าง App กับ PC
web service ส่งข้อมูลก็น่าจะเพียงพอ ไม่ต้องถึงกับส่ง SQL มาด้วย
ก็ POST เหมือนเวบฟอร์มธรรมดา ส่วนขากลับก็แล้วแต่การออกแบบ จะคืนมาเป็นข้อความธรรมดา หรือแบบมีรูปแบบก็ JSON
อยากมีมาตรฐานอีกนิดก็ทำแบบ RESTful Web Services
เท่าที่ผมหาข้อมูลจากเว็บต่างประเทศ เรื่อง Android (Java) Simple Send and recieve with Server เค้าจะรับส่งข้อมูลด้วย JSON ซึ่งใช้งานง่าย และมีอยู่ในหลาย Platform เหมาะกับการรับส่งข้อมูลขนาดเล็ก
สมมุติ ผมต้องการส่งข้อมูล Order สั่งอาหาร ไปที่ Server ประกอบด้วยข้อมูล
- หมายเลขโต๊ะ
- รหัสอาหาร
- จำนวน
ถ้าสั่งไปสัก 20 รายการ จะส่งข้อมูลด้วยวิธี JSON ได้มั้ยครับ
Json เป็นแค่ format ข้อมูลครับคุณจะส่งข้อมูลอะไรก็ได้เยอะแค่ไหนก็ได้
My iOS apps
My blog
ถ้าพัฒนาบนแอนดรอยด์ ผมแนะนำ JSON ครับ เพราะเขียนตัว Interface data ง่าย
ลองใช้ XML แล้วต้อง implement เองอีรุงตุงนังพอสมควรครับ
แต่ถ้าคิดจะขยับขยายไปแพลตฟอร์มอื่นๆ แบบหวังผลในระยะยาว (เผื่อทำให้เจ้าอื่น) ก็ลอง XML ครับ
ตอนรับเป็น JSON ตอนส่งก็เป็น JSON ครับ
แต่กรณีส่งเยอะๆ ก็ส่งเป็น JSON แบบ POST ถ้า parameter ไม่เยอะก็แบบ GET ครับ
อันนี้จากประสบการณ์ที่ทำ
SERVER เป็น REST .NET
Client เป็น iPhone ครับ
เอิ่ม คุณใช้งาน POST กับ GET ผิดวัตถุประสงค์นะ
ขายต่อนิดนึง
POST เอาไว้ใช้แก้ไขอะไรบน Server
GET ใช้เวลาที่ต้องการข้อมูลจาก Server ไม่ต้องการเปลี่ยนแปลงอะไร
ทำเป็น Mobile Web App ก็พอมั้งครับ ?
ตึกโป๊ะ!!
เหมือนร้านเหล้าชื่อดังแห่งนึงในเชียงใหม่
พนักงานถือไอพอดทัชเวลารับออเดอร์
แค่ในร้านอาหาร POST , GET ก็พอแล้ว ไม่ต้องเข้ารหัสเป็น JSON อะไรเลย
อันที่จริงอย่างที่ข้างบนบอก JSON เป็นแค่ format
จริงๆจะ XML จะ JSON จะ String เฉยๆ หรือจะส่งเป็น Binary ก็มีค่าเท่ากัน
เพราะเป็นระบบที่มี Client น้อย (ไม่เหมือน Client เป็นพันเป็นหมื่น)
ถ้าสมมุติตัว Modem ในร้านเกิดมีปัญหา ใช้เน็ตไม่ได้สัก 2 ชม. จะทำยังไง ผมว่าหาแผนสองไว้ก็ดีนะ
ระบบแบบนี้เขามีแผนสำรองไว้อยู่แล้วครับ
พลาดแค่ชั่วโมง นี่ก็เสียหายกันหลายหมื่น
แผนสองก็กลับมาใ้ช้กระดาษเหมือนเดิมไงครับ
ต้องมี printer 2 ตัวเป็นอย่างน้อยครับในระบบนี้
1.ที่ครัว
2.ที่แคชเชียร์
เครื่องแคชเชียร์เป็นเครื่อง server ทำหน้าที่ออก ออกบิล
ที่ครัว print ออกรายการอาหารครับ
interfa ทำไว้ 2 ที่ครับที่แคชเชียร์ กับตัว android
ถ้า wifi มีปัญหาก็ไปสง order ที่ แคชเชียร์แทนครับจบ
ถ้าเอาง้ายก็ http://seesharpgears.blogspot.com/2010/10/ksoap-android-web-service-tutorial-with.html ลองอ่านดูครับแต่งานนี้ไม่เล็กน่ะครับทำ 2ที่ pc and android