Tags:
Java

มหากาพย์จาวาบน iOS นั้นเป็นอีกหนึ่งเรื่องราว (นอกเหนือจาก Flash) ที่ก่อกำเนิดคำพูดของสตีฟ จ๊อบส์ ว่า "Nobody uses Java anymore." แต่ที่ล่าสุดออราเคิลก็สาธิตจาวาที่ทำงานบน iOS แล้ว

แอพพลิเคชั่นสาธิตบน iPod Touch และหน้าจอเขียนด้วย HTML5 แต่ส่วนควบคุมด้านหลังเป็นจาวาทั้งหมด โดย JVM จะถูกรวมไว้ในแอพพลิเคชั่นเป็นไบนารีเดียวกัน

แนวทางนี้เป็นแนวทางแบบเดียวกับผู้ผลิตเครื่องมือพัฒนารายอื่นๆ ที่พยายามพัฒนาแพลตฟอร์มที่เขียนแอพพลิเคชั่นครั้งเดียวแล้วรันได้ในหลายระบบปฎิบัติการเช่น Mono Touch แม้ที่ผ่านมาแอปเปิลจะเคยพยายามห้ามการพัฒนาด้วยเครื่องมือแบบนี้ แต่ข้อกำหนดเหล่านี้ก็ถูกแก้ไขไปแล้ว

คำถามสำคัญอาจจะเป็นคำถามว่าเครื่องมือพัฒนาชุดนี้จะวางตลาดได้จริงเมื่อใหร่ และจะทันกับความนิยมของภาษา Objective-C ที่กำลังได้รับความนิยมอย่างรวดเร็วหรือไม่

ที่มา - The Server Side

Comments

By: totiz
ContributoriPhoneAndroid
totiz's blog
on 07/10/11 9:43 #342257 toggle
totiz's picture

ผมชอบทั้ง Java และ Objective-C นะ มีข้อดีกันคนละแบบ แต่เท่าที่ได้สัมผัสการเขียนโปรแกรมแบบเขียนครั้งเดียวแล้วรันได้ในหลายระบบปฎิบัติการ มันจะมีข้อเสียแถมมาด้วยคือ เราจะไม่สามารถใช้ข้อดีของแต่ละระบบปฎิบัติการได้เลย โดยเฉพาะ api พิเศษ ทุกอย่างจะเป็น generic หมด(ทั่วไป) ทำให้ไม่สามารถดึงความสามารถสูงสุดออกมาจากตัวโปรแกรมได้

By: toooooooon
iPhoneWindows PhoneAndroidBlackberry
toooooooon's blog
on 07/10/11 9:47 #342260 Reply to:342257 toggle
toooooooon's picture

หมายถึงถูกขวางด้วย runtime หรือพวก jvm แม่นก่อ

By: shinosuke
iPhoneAndroidUbuntuWindows
shinosuke's blog
on 07/10/11 9:54 #342266 Reply to:342260 toggle
shinosuke's picture

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

By: totiz
ContributoriPhoneAndroid
totiz's blog
on 07/10/11 10:12 #342279 Reply to:342266 toggle
totiz's picture

ใช่ครับ จริงๆ ผมชอบวิธีของ MonoTouch กับ MonoDroid นะ คือจะไม่พยายามถึงขนาดเขียนครั้งเดียวแล้วรันได้ทุกระบบ แต่แทนที่ด้วยการสร้างฐานจากภาษาเดียวกัน และเรียกใช้ api เฉพาะของแต่ระบบได้โดยแยกโปรเจคกันไป จะแชร์โค้ดเฉพาะส่วน Logic หรือ Modal เท่านั้น

By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 07/10/11 10:06 #342271 Reply to:342260 toggle
PaPaSEK's picture

พูดง่ายๆ คือไม่ได้ใช้ native code และ native function มั้ง

By: zipper
Android
zipper's blog
on 07/10/11 15:14 #342448 Reply to:342257 toggle
zipper's picture

ถ้าแก้ปัญหาด้วยการมี Library เฉพาะล่ะ?

By: IceDagger
IceDagger's blog
on 07/10/11 16:13 #342475 Reply to:342257 toggle
IceDagger's picture

ใช้ขีดจำกัดสายเลือดไม่ได้ซินะครับ :D (ใครอ่านนารุโตะจะ get เอง)

By: best
iPhoneAndroid
best's blog
on 07/10/11 11:46 #342331 toggle
best's picture

ขอโทษ จริงๆๆครับผมอ่านแล้วไม่เข้าใจเลย ผมคงอ่อนเกินไป

By: PaPaSEK
ContributorAndroidWindowsIn Love
PaPaSEK's blog
on 07/10/11 11:59 #342341 Reply to:342331 toggle
PaPaSEK's picture

ไม่เข้าใจตรงไหน หรือว่าอยากได้ข้อมูลเพิ่มตรงไหนถามได้เลยครับ

ผมจะคอยเข้ามาช่วยตอบให้เท่าที่ช่วยได้ มีอีกหลายคนในนี้ที่เก่งๆ และมีความรู้เยอะ ยินดีมาช่วยตอบแน่นอนครับ

By: aga2405
Windows PhoneAndroidSymbian
aga2405's blog
on 07/10/11 15:10 #342447 toggle
aga2405's picture

Objective-C ก็ใช้ได้บน แมคเท่านั้นใช่ไหมครับ แล้วแต่คุณหากเลือกแล้ว ตอ้งใช้เวลานานเข้าใจกับมันแล้วต้องยึดติดกับเขาไปเลย ซึ่งความเห็นผมไม่ชอบนัก กับช่วงที่ผ่านมา แห่กันซื้อ แมคบุค เพื่อได้ทำแอพ ของ ios

native code สร้างได้ต้องรู้คุณสมบัติ Hardware เฉพาะเลยครับ แน่นอนได้ความสามารถ มากมาย

alternative ทางเลือกครับ ทำแล้วเลือกไปใช้บนแพลตฟอร์มไหน

By: manster
iPhoneAndroidUbuntuWindows
manster's blog
on 07/10/11 18:52 #342554 toggle
manster's picture

ชอบคำพูดที่ว่า "Nobody uses Java anymore" เพราะเอามาฟ้องอยู่ได้ ให้มันจบไปเลย พวก troll ทั้งหลาย