Archive for the 'การพัฒนาเว็บ' Category

SWOT ของ Adobe Flex

SWOT เป็นคำที่ย่อมาจาก Strong Weakness Opportunity Threat ตามลำดับดังนั้นวันนี้ผมจะมาวิเคราะห์โดยคร่าวๆให้ฟังกันนะครับโดยแปลแต่ละคำได้ดังนี้นะครับ Strenght = จุดแข็ง , Weakness = จุดด้อย , Opportunity = โอกาส , Threat = อุปสรรค

Strenght -

  • จุดแข็งของ Adobe Flex ตอนนี้คือเป็น RIA ที่มี User Interface ให้เรียกใช้สวยงาม
  • ใช้หลัก ActionScript 3.0 ทำให้การเขียนอยู่ในรูป OO แต่ในขณะเดียวกันก็สามารถทำให้เป็น Component Based ได้อย่างง่ายด้าย
  • เพราะความเป็น RIA ทำให้กิน Bandwidth น้อยกว่าการทำ Flash ธรรมดาอยู่มาก
  • การติดต่อกับ J2EE มี Service มาให้ใช้เรียบร้อยทำให้สามารถดึง ถ่ายข้อมูลผ่าน J2EE ได้ง่ายมาก
  • มี Animation ติดตัวมาบางทำให้ผู้เขียน Web Application ไม่จำเป็นต้องรู้ Script ในการทำ Animation มากนัก
  • มีการทำระบบ Cache แล้วใน Version 3.0 ทำให้โหลดเร็วขึ้นมาก

Weakness -

  • จุดอ่อนสำคัญเลยคือถ้าการเขียน Application ไม่ดีจะทำให้กิน Ram และ Bandwidth มาก
  • การตั้งชื่อ Class / Method บางทีมันก็เป็นคำศัพท์ที่คนไทยเข้าใจยาก
  • เรียนรู้ยาก เพราะภาษามีโครงสร้างในตัวของมันเอง ทำให้เริ่มต้นอาจจะยาก แต่ทำไปนานๆแล้วจะรู้แล้วว่ามันออกแบบมาดี

Opportunity -

  • โอกาสสำคัญจริงๆเลยนะครับ คือตอนนี้ Adobe AIR มาแล้วนะครับส่วนใครที่ยังไม่รู้ว่ามันทำอะไรได้นะครับ ผมจะสรุปคร่าวๆ มันเป็นตัว Compile จากภาษา HTML AJAX FLEX ไปเป็น Application บน Desktop ได้ทุก Platform เอะหมายความว่าไง อนาคตเราไม่จำเป็นต้องจับหลายภาษาอีกแล้ว ?
  • ทาง Adobe เมื่อได้รวบ Macromedia เข้าไปแล้วทำให้การทำงานทั้งส่วน Web และ Design ผูกเข้าด้วยกันอนาคตงานที่เราจะได้จะความสวยเป็นของแถมแน่ๆ อย่าง Flex นี้เป็นตัวอย่าง ยิ่งถ้ามีคนทำ Component เยอะๆ อนาคตเรามีหน้าที่แค่ Code ไม่ต้องไปใส่ใจ ว่าเราทำ UI ไม่เก่ง

Threat -

  • อุปสรรคที่ไม่แน่ว่าอาจจะเกิดขึ้นหรือไม่ก็คือเรื่องที่ Microsoft จะทำให้ IE รองรับกับ Platform Silverlight ของตัวเองมากกว่าที่จะรองรับทางฝั่ง Adobe หรือไม่
  • มันใช้ Technology ที่จะมาแรงจริงๆหรือไม่ หรือแค่แรงชั่วคราวเพราะเดียวจะมี Adobe Apollo มาด้วย แต่มันยังใช้ Flex เป็นพื้นฐานอยู่ดี
  • ตัวภาษาเองเป็น Open Source มี SDK ให้ครบแต่กลับสนับสนุนไปในทาง Flex Builder มากกว่าซึ่งเหมือนจะขาย Software ไปในตัวเอง ถ้าของแท้ก็ 499$ เอง
  • คู่แข่งตัวฉกาจอีกแล้วนั้นคือ Silverlight ของตัว Microsoft แต่ทว่าดูๆแล้วตอนนี้ยังเดาไม่ได้ว่าใครเจ๋งกว่า แต่เรื่อง UI Adobe ยังนำอยู่
  • ถึงแม้ดูเหมือนจะออกแบบมาดีทุกอย่าง แต่ก็ขาดเรื่องความ Plain อยู่มาก เพราะถ้าพัฒนาด้วย Flex ล้วนๆโดยไม่ใช้ Flex Builder เลยนี้ผมว่าเขียนยากอยู่เหมือนกันนะ

นี้ก็คือการวิเคราะห์แบบ SWOT คร่าวๆเกี่ยวกับ Flex นะครับ แต่ส่วนตัวผมขอไปวิเคราะห์ Dependency Pull / Push ก่อนนะครับเป็นการบ้านส่งอาจารย์ ไว้ผมจะมาเล่า share อีกนะครับช่วงนี้สอบอาจจะหายไปเลยนะ ^^

ความแตกต่างระหว่าง Adobe Flex & Adobe Flash

หลังจากที่ผมได้ลองพัฒนา Flex ควบคู่กับการศึกษา Flash ไปในตัวด้วย (เพราะสิ่งที่ผมกำลังจะทำให้บริษัท มันอยู่ในรูปของ Object โต๊ะอะไรต่างๆเลยต้องใช้ Flash มาผสม) โดย Concept หลักๆที่ผมได้เรียนรู้จากการศึกษาก็คือ

การที่เราจะต้องทำ Object flash ตัวหนึ่งเปลี่ยนสีได้ตามที่ต้องการ บน Flex ยากกว่าบน Flash มากนัก เท่าที่ผมลองทำแล้ว Flex สามารถที่จะทำได้ แต่ด้วย Code ที่ยุ่งยากแล้วไม่รู้ว่าทำไปแล้วจะได้ผลแค่ไหน ผมเลยมองว่า Flex เหมือนกับกึ่ง Animation บน Web แต่สิ่งที่ผมได้รับ Assign งานมา มันเหมือนกับทำ Animation ที่ผสมลูกเล่นต่างๆลงไป ผมเลยฝากมาบอกสำหรับคนที่กำลังใช้ Flex กะ Flash ความจริงถ้าคุณใช้ Flex , Flash เป็นอีกตัวที่คุณต้องเรียนรู้บางแต่ไม่ต้องมาก

แต่ถ้าคุณเป็นทางด้าน Animation โดยตรง ไม่จำเป็นที่จะต้องมาแตะ Flex เลยก็ได้ถ้า Boss คุณไม่ได้เจาะจงให้ใช้ Flex ความสามารถใน Flex นั้นสามารถเขียนได้หลายแบบมากๆ แต่โดยร่วมแล้วใครมาทำ Flex จะต้องรู้จัก MXML เพราะเป็นหัวใจหลักของ Flex แต่ Flex สามารถทำได้ด้วย ActionScript 3.0 ทั้งหมดเลยก็ได้ ดังนั้นไม่ใช่ว่า Flex จะต้องใช้ MXML เท่านั้นโดย ผมศึกษามาพอคร่าวๆ อีกหน่อยว่าใครใช้ J2EE จะรวมงานกับ Flex ได้อย่างยอดเยี่ยมเลยทีเดียว ไม่ต้องทำ XML เองโดยตรง

ดังนั้นผมขอสรุปว่าก่อนที่จะเริ่มใช้ Technology ใดๆนะครับ ควรจะศึกษาก่อนว่า มันเกิดมาเพราะอะไร และจุดประสงค์ของโปรแกรม มันคืออะไร ? ไม่ใช่แค่ว่า มันสามารถทำได้หรือไม่ เพราะไม่งั้นผมก็บอกตรงๆว่า Flex ก็ทำได้ แต่ว่ามันคุ้มไหมกับความยุ่งยากในการที่จะทำและบำรุงรักษาในอนาคต ? Flex เกิดมาเพื่อ Rich Internet Application , Flash เกิดมาเพื่อแสดง Animation ดังนั้นอย่าผิด Concept นะครับ…….

ActionScript 3.0 ตอนนี้ผมว่าเยี่ยมมากๆ คนที่จับ Java มาก่อนเจอ ActionScript 3.0 ก็เข้าใจได้อย่างรวดเร็วมีส่วนของ Package / Embed / Bindable เท่านั้นที่ต้องศึกษาเพิ่มเติม แต่ก็ทำง่ายมากๆ ขอบอกว่าใครกำลังมีโปรเจคเขียน Web นะครับลองใช้ Flex ดูแล้วจะได้ผลที่น่าพอใจมาก ความเร็วนี้ผมให้ 8/10 เลยเขียนดีๆ นี้เร็วมากใช้หลักการ Model-View-Controller !! + Algorithm ที่เป็นระบบ รับรองว่าเร็วมาก.. (ต้อง Install Adobe Flash Player 9 ก่อนนะครับถึงจะใช้ Flex ได้)

« Previous PageNext Page »