Back

Mendix Release 10.16 – ก็ยังคงเป็นผู้นำ

เป็นที่รู้กันดีว่า Mendix ได้รับการจัดอันดับเป็นผู้นำใน Gartner® Magic Quadrant ปี 2024 สำหรับ Low-code application platforms (LCAP) 8 ปีติดต่อกัน ด้วยความช่วยเหลือจากทุกท่านที่ทำให้เราได้มีการพัฒนาอย่างต่อเนื่อง เราขอมอบสิ่งที่ใหม่ ๆ ให้ทุกท่านโดยการนำเสนอ release ใหม่ นั่นก็คือ 10.16 ซึ่งก็เป็นประจำของทุกเดือน ที่มีการปรับปรุ่งสิ่งใหม่ ๆ หลาอย่าง เช่น การเพิ่มปุ่มสลับแท็บให้ไปข้างหน้าหรือถอยหลังให้ Structure mode สำหรับ Mac อัพเดรต widget หลายตัว การรองรับการใช้งานแบบ Offline สำหรับ PWA บน iOS รวมถึงการปรับปรุง connector และ Integration ต่าง ๆ นอกจากนี้ การปรับปรุงการสร้าง app ที่ง่ายและเร็วขึ้น รวมไปถึงการจัดการระบบต่าง ๆ (Governance) การปรับปรุงในส่วนของ Portal เช่น มีอะไรใหม่ ๆ และการสอบในหลายภาษา

Studio Pro

อัพเดรตทั่วไป

ปุ่ม Back and Forward

เพื่อให้ง่ายและเร็วในการเปลี่ยน Documents (Page/Microflow/Domain Model …) ต่าง ๆ คุณสามารถเปิดความสามารถนี้ได้โดยไปที่ Edit > Preference > New features ซึ่งจะช่วยให้คุณสามารถเป็น Documents ได้อย่างรวดเร็ว จากนี้คุณยังสามารถใช้คีย์ลัด คือ ctrl + – และ ctrl + shift + – บน Windows และ command + shift + – บน Mac

Structure mode สำหรับ Mac (ทดลอง)

เราพัฒนา Structure mode เพื่อช่วยให้แสดง widget ได้ชัดเจนขึ้น ไม่เน้นเรื่องของ Styling แต่จะเน้นเรื่องโครงสร้างของหน้า การพัฒนาในส่วนนี้ได้ข้อเสนอแนะจากผู้ใช้ โดยนักพัฒนาหลายคนชอบ Structure mode ปัจจุบันเปิดให้ใช้งานในเวอร์ชั่นทดลองสำหรับผู้ใช้ Mac และสามารถเปิดใช้งานได้ในการตั้งค่า New features > Use modern structure mode (experimental) ฟีเจอร์ใหม่ที่กำลังพัฒนาอยู่เพื่อช่วยให้ทำงานได้สะดวกขึ้นในการแก้ไขในทุก ๆ รูปแบบในเร็ว ๆ นี้ สามารถใช้ได้ทั้งเว็บและ native mobile อย่างไรก็ตามการสร้าง app native mobile บน Mac ยังไม่รองรับ โหมดใหม่นี้จะเปิดใช้งานสำหรับ Windows ในอนาคต แต่ตอนนี้สามารถเลือกใช้ได้เฉพาะผู้ใช้ Mac

เลิกใช้ Java 11 and 17

การใช้ Java เวอร์ชันเก่าอาจทำให้แอปพลิเคชันล้าหลัง เนื่องจากฟีเจอร์ที่ล้าสมัย ประสิทธิภาพที่ช้าลง และความเสี่ยงด้านความปลอดภัย การอัปเกรดเป็น Java เวอร์ชันใหม่ที่ได้รับการสนับสนุน เช่น Java 21 ช่วยแก้ปัญหาเหล่านี้ได้ง่ายและมีค่าใช้จ่ายในการย้ายข้อมูลต่ำ โดยตั้งแต่ Mendix 9.24.23 และ Mendix 10 ได้รองรับ Java 21 แล้ว ซึ่งสามารถอัปเกรดได้ผ่าน App Settings เพื่อให้แอปพลิเคชันทำงานได้ดีขึ้น ปลอดภัย และเป็นไปตามมาตรฐานการพัฒนาทันสมัย


Mendix 10.24 และ Mendix 11 จะไม่รองรับ Java 11 และ 17 อีกต่อไป โครงการที่ใช้ Java เหล่านี้ใน Mendix 10.16 ขึ้นไปจะแสดงคำเตือนการเลิกใช้ เมื่อแปลงโปรเจกต์ไปเป็น Mendix 10.24 หรือ 11 ระบบจะอัปเดตเวอร์ชัน Java เป็น 21 โดยอัตโนมัติ ทั้งนี้ Mendix 8 และ 9 จะไม่ได้รับผลกระทบจากการเปลี่ยนแปลงนี้

เพื่อให้แอปพลิเคชันและโมดูลใน Marketplace ที่ใช้ Java Actions ทำงานได้อย่างราบรื่น เราแนะนำให้อัปเกรดเวอร์ชัน Java โดยเร็วที่สุด และศึกษาคู่มือ Java Version Migration สำหรับปัญหาที่อาจเกิดขึ้น การอัปเกรดล่วงหน้าจะช่วยป้องกันปัญหาในอนาคต

แผนสำรองสำหรับ Managed Dependencies ในกรณี Offline

Managed Java dependencies ช่วยในการจัดการ libraries ในโปรเจค ลดการผิดพลาด และเพื่อให้เกิดความมั่นใจ Mendix ใช้ Gradle ในการดึง Libraries จาก public repositories แต่หากติดปัญหาเรื่อง firewall เราแนะนำการตั้งค่า Local repository mirror เช่น Sonatype Nexus โดยทำตามตั้งค่าใน Studio Pro เพื่อใช้ repository ที่ต้องการ

ในบางกรณีการตั้งค่า repository mirror อาจจะทำไม่ได้ เราจึงได้เพิ่มกลไกสำหรับใช้ embedded dependencies ซึ่งจะช่วยให้นัพกพัฒนาสามารถทำงานกับโมดูลที่มีการใช้ Java dependencies แม้จะ Offline แต่จะเสียในเรื่องของการจัดการ dependencies

ตั้งแต่ Mendix version 10.16.0, 10.12.7 และ 10.6.17 เป็นต้นไป ทุกการจัดการ dependencies จะรวมเข้าไปใน module เมื่อมีการ export ถ้าไม่สามารถต่อ public repositories ระบบจะใช้ embedded dependencies เหล่านี้เมื่อทำการนำเข้า module แต่หากเชื่อมต่อได้จะ embedded dependencies ก็จะไม่เข้ามา

Widgets

Rich text

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

ขอบอกว่า Rich Text เวอร์ชันก่อนหน้านี้สร้างด้วย TinyMCE ซึ่งน่าเสียดายที่จะกำลังจะยุติการสนับสนุนสำหรับเวอร์ชันของ open-source

ดังนั้น เราขอแนะนำให้อัปเดตเป็น Rich Text v4

Data widgets – storing association filters

Data Grid 2 ที่ให้ผู้ใช้บันทึก filter ต่าง ๆ ได้ อย่างไรก็ตาม การ filter ข้อมูลด้วย drop-down ที่ผ่าน association นั้นยังไม่สามารถทำได้ แต่ในเวอร์ชันใหม่นี้สามารถทำได้แล้ว ช่วยให้สามารถจัดเก็บและโหลด filter ของ association ได้ ทั้งนี้ฟังก์ชันนี้ไม่สามารถทำงานร่วมกับการโหลดข้อมูลแบบ lazy loading ได้ ดังนั้นจึงต้องตั้งค่า lazy loading ของ column เป็น false

Support for WebP Images

WebP เป็นรูปแบบภาพแบบใหม่ที่พัฒนาโดย Google ซึ่งมีการบีบอัดแบบไม่สูญเสียคุณภาพ ช่วยให้โหลดหน้าเว็บได้เร็วขึ้น ลดการใช้ bandwidth และยังคงคุณภาพที่สูง เหมาะสำหรับการเพิ่มประสิทธิภาพและประสบการณ์การใช้งานที่ดี ขณะนี้ Mendix รองรับ WebP ทั้ง Static และ Dynamic คุณสามารถอัปโหลด WebP ไปยัง images collection หรือจะเก็บไว้ที่ System.Image entity และแสดงได้ทุกที่ใน web app และ native mobile หวังว่าจะตื่นเต้นกับการปรับปรุ่งที่ยอดเยี่ยมนี้

Pluggable widget API – กำหนดค่าเริ่มต้นของ datasources

เมื่อเดือนที่แล้ว เราได้เปิดฟีเจอร์ที่สามารถกำหนดค่าเริ่มต้นของ actions สำหรับ pluggable widgets และใน release นี้ยังสามารถกำหนดค่าเริ่มของ datasource เช่น Entity, Database, Microflow, Nanoflow หรือ Associations ได้อีกด้วย เนื่องจาก widget มักถูกปล่อยออกมาเป็นส่วนหนึ่งของ module และในบางครั้ง widget ควร/สามารถ ใช้ domain module ของ widget จะทำให้ Developer กำหนดค่าต่าง ๆ น้อยลง

Example XML:

<property key="dbSource" type="datasource" required="true" isList="true"
        defaultType="Database" defaultValue="Shop.Customer">
    <caption>Database data source</caption>
    <description />
</property>
<property key="microSource" type="datasource" required="true" isList="true"
    defaultType="Microflow" defaultValue="Shop.MF_Customers">
    <caption>Microflow data source</caption>
    <description />
</property>
<property key="assocSource" type="datasource" required="true" isList="true"
        defaultType="Association" defaultValue="Shop.Customer/Shop.Order_Customer/Shop.Order">
    <caption>Association data source</caption>
    <description />
</property>

Mobile

Offline support for Progressive Web Apps (PWAs) on iOS

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

Mendix รองรับการสร้างแอปที่เน้นการทำงานแบบออฟไลน์ในรูปแบบแอปมือถือเนทีฟและ Progressive Web Apps (PWAs) เดิม PWA รองรับเฉพาะบนอุปกรณ์ Android แต่ในเวอร์ชันนี้ได้ขยายการรองรับไปยัง iOS ทำให้สามารถสร้างแอปมือถือแบบเว็บที่ทำงานออฟไลน์ได้ทั้ง iOS/Android


การรองรับ offline-first สำหรับ PWA บน iOS พร้อมใช้งานสำหรับแอปที่สร้างด้วย Mendix 10.16.0 ขึ้นไป โปรดดูรายละเอียดเพิ่มเติมในเอกสารของเรา

Android 15 Support for Native Mobile Apps

ในเดือนนี้ Google ได้มีการอัปเดตเกี่ยวกับระบบปฏิบัติการ Android ในการ release ครั้งมีการปรับปรุงเรื่องของ performance และยืดอายุการใช้งานของ battery ในขณะเดียวกันก็มีการเพิ่มความสามารถใหม่เข้าไปด้วย เราเชื่อว่าจะเป็นเรื่องเกี่ยวกับ “Private Spaces” ที่มีความปลอดภัยมากขึ้น ด้วยการออกแบบที่มีการเก็บข้อมูลที่ sensitive ใน app ต่าง ๆ มันจะเป็นจุดเปลี่ยนสำหรับ app ที่ใช้ในองค์กร

ในขณะที่ iOS มีการอัปเดตบ่อยให้ผู้ใช้งานได้อย่างรวดเร็ว Android มีการอัปเดตที่นานกว่าเพราะมีความหลากหลายของอุปกรณ์ แต่ด้วยที่ Mendix เราจะมีการอัพเดตล่วงหน้าไปก่อน เราแจ้งให้ทราบว่า native mobile app ที่พัฒนาด้วย Mendix 10 รองรับ Android 15 เรียบร้อยแล้ว เพียงแค่อัปเดต native template เวอร์ชันล่าสุด และสร้าง Build Native App ขึ้นมาใหม่ เพียงเท่านี้ app ของคุณก็พร้อมรองรับการใช้งาน

โปรดทราบว่า การอัปเดตครั้งนี้ไม่สามารถทำผ่านระบบ over-the-air ได้ เวอร์ชันอัปเดตของ native template สำหรับ 9.24 จะพร้อมให้ใช้งานได้เร็ว ๆ นี้

อ่านเพิ่มเติมเกี่ยวกับ Android 15 บน Official Google Blog

Version Control

เมื่อเราพยายาม “merge changes” หรือ “revert a commit” ตอนนี้ Studio Pro จะตรวจสอบว่ามีใคร commits มาไหม และแจ้งให้คุณ pull สิ่งที่มีการเปลี่ยนแปลง เพื่อความไหลลื่นในการทำงาน

ตามคำเรียกร้อง เราได้มีการเพิ่มคีย์ลัด Alt + Enter เมื่อเราใส่ข้อความตอน commit แล้วกด Alt + Enter ก็จะ commit & push ให้ทันท!

Integration และ connectors

External Database Connector

External Database Connector ตอนนี้รองรับการใช้ Client Certificates สำหรับการยืนยันตัวตนกับฐานข้อมูล PostgreSQL โดยสามารถให้ client certificate และ client key เพื่อยืนยันตัวตนของแอป Mendix กับฐานข้อมูลที่มีอยู่ ช่วยให้การเชื่อมต่อกับฐานข้อมูลปลอดภัยยิ่งขึ้น

Updates to all platform-supported AWS connectors

เราได้อัปเดต AWS connector ทั้งหมดให้รองรับ Mendix Studio Pro 9.24.2 เพื่อให้ส่วนประกอบ UI ของบางตัวเชื่อมต่อใช้งานได้กับ React Client ใหม่ นอกจากนี้ยังได้อัปเกรด SDK ที่ใช้ในตัวเชื่อมต่อแต่ละตัว ซึ่งทำให้สามารถใช้งานฟีเจอร์ใหม่บางอย่างใน Amazon Bedrock connector ได้ สำหรับข้อมูลเพิ่มเติมดูส่วนอัปเดต Amazon Bedrock connector ในหมวด Smart Apps ด้านล่าง

AI – Smart apps

Make Mendix apps smarter with Snowflake Cortex Analyst

Cortex Analyst มีการเพิ่มตัวเชื่อมต่อ Snowflake REST SQL โดยใข้ AI ช่วยในการใช้โมเดลภาษาขั้นสูง (LLMs) เพื่อให้การแปลงข้อความเป็น SQL มีความแม่นยำสูง นี่เป็นฟีเจอร์ของ Snowflake Cortext ที่จะช่วยเพิ่มความสามารถในการสร้าง app ที่สามารถตอบคำถามเชิงธุรกิจจากข้อมูลที่เก็บไว้ใน Snowflake ได้อย่างแม่นยำ

ด้วยความช่วยเหลือจาก Cortex Analyst ผู้ใช้สามารถถามคำถามที่เป็นธรรมชาติและจะได้รับคำตอบที่ตรงความต้องการโดยไม่ต้องเขียน SQL ตัวอย่างตามด้านล่าง

ตัวอย่างของ Mendix application ด้วย Cortex Analyst-based chatbot

Web Crawler support and PromptTemplates in the Amazon Bedrock Connector

ใน release ที่ออกมาก่อนหน้านี้ที่มีการสนับสนุนบางส่วนสำหรับ Amazon Bedrock “Web Crawler” เป็น knowledge base เกี่ยวกับ data source (ช่วงทดสอบ) ใน release นี้ SDK ของ Bedrock ได้มีการอัปเดตเพิ่มและมี data source ประเภทใหม่เพิ่มอย่างครบถ้วน ซึ่งจะช่วยให้ลูกค้าสามารถติดต่างแหล่งของ data source ได้ ฟีเจอร์นี้เปิดใช้งานสำหรับการดำเนินการที่มี knowledge base ที่เข้ากันได้ (Retrieve, RetrieveAndGenerate และ InvokeAgent)

เลือก Data source ใน AWS Console

เราได้มีการเพิ่มฟิลด์ PromtTemplate เป็น parameter ที่ส่งไป: Add Retrieve and Generate Request Extension action ปรับเปลี่ยนรูปแบบคำสั่ง knowledge base สามารถเปลี่ยนค่าเริ่มตอนของคำสั่งได้ด้วยตัวเอง เพื่อปรับแต่งคำสั่งที่ส่งไปยังโมเดลเพื่อการสร้างคำตอบ ด้วย solution นี้ คุณสามารถควบคุมคำตอบได้ว่าจะสามารถตอบถามได้หรือไม่ โดยใช้ข้อมูลที่อยู่บน knowledge base ของ Amazone Bedrock

มีการปรับปรุงประสบการณ์การใช้งานของนักพัฒนาในทุกองค์ประกอบ

เราได้รับการตอบรับความคิดเห็นและมุ่งเน้นเรื่องของการใช้งานของ Developer เราจึงได้เปิดตัว release ใหม่สำหรับการเชื่อมต่อต่าง ๆ

ในการ release เหล่านี้มีการปรับปรุงเล็กน้อยด้านประสบการณ์นักพัฒนา (DX) และประสบการณ์ผู้ใช้ (UX) เช่น ปุ่ม “Clean Chat” สำหรับ ConversationalUI และการกระทำที่ใช้งานง่ายเพื่อ “สร้างการสนทนาและตั้งค่าการกระทำ” นอกจากนี้ เรายังอัปเกรดแอป AIBotStarter, BlankGenAI App, GenAI Showcase App และ Support Assistant Starter App ให้สอดคล้องกับการอัปเกรด connector ล่าสุดและรวมถึงข้อเสนอแนะเพิ่มเติม

การอัปเกรดล่าสุดของ AI Bot Starter App ยังมีการเปลี่ยนแปลงสำคัญอีกอย่างหนึ่ง คือ การใช้ Converse ของ Bedrock การเปลี่ยนแปลงนี้ช่วยให้สามารถแนบเอกสารหลายฉบับเข้ากับข้อความได้ ซึ่งสามารถเป็นเอกสารประเภทอื่นที่ไม่ใช่แค่ PDF

เรียนรู้วิธีใช้การเรียกฟังก์ชันและไลบรารีพรอมต์ใหม่

นอกเหนือจากส่วนประกอบซอฟต์แวร์ของเราแล้ว เรายังเผยแพร่บล็อกโพสต์เพื่อแนะนำผู้ใช้ในการนำ AI มาใช้งาน บทความ “How to build Smarter Apps with Function Calling & Generative AI” (ด้านล่าง) อธิบายวิธีสร้างตัวแทนเสมือนด้วยวิธี low-code โดยใช้การเรียกฟังก์ชัน ซึ่งเป็นความสามารถของ LLM ที่เหนือกว่าการสร้างข้อความธรรมดา ดังที่แสดงใน Support Assistant Starter App ลองอ่านบล็อกและทดลองใช้ Starter App เพื่อเริ่มต้นด้วยตัวคุณเอง นอกจากนี้ เรายังเผยแพร่ตัวอย่างคำสั่งที่ออกแบบมาอย่างดีใน Prompt library ซึ่งเป็นคลังข้อมูลสาธารณะที่ออกแบบมาเพื่อลดเวลาการทำงานในกระบวนการออกแบบคำสั่ง คลังนี้จะได้รับการอัปเดตอย่างต่อเนื่อง

FURTHER READING

How to build
Smarter Apps with
Function Calling &
Generative AI

Governance

การจัดองค์ประกอบซอฟต์แวร์ (Software Composition) – เร็วและลื่นไหลขึ้น!

เราได้ปรับปรุงประสิทธิภาพของการจัดองค์ประกอบซอฟต์แวร์ครั้งใหญ่ ก่อนหน้านี้เราพบปัญหาบางประการกับการซิงค์ข้อมูลเนื่องจากการใช้งานที่สูงและปริมาณข้อมูลจำนวนมากที่ต้องประมวลผลและคำนวณตัวชี้วัด และตอนนี้…หลังการปรับปรุงประสิทธิภาพ ซอฟต์แวร์ทำงานได้เร็วและลื่นไหลขึ้น! หลังจากที่คุณสร้างชุดการปรับใช้ใน Free, Cloud, Cloud Dedicated, และ Private Clouds ระบบจะสร้าง SBOMs (รายการส่วนประกอบซอฟต์แวร์) เป็นไฟล์ .json โดยอัตโนมัติและปรากฏบนหน้า Software Composition ภายในไม่กี่นาทีเพื่อให้คุณใช้งานได้ทันที

และยังมีการอัปเดตอื่น ๆ สามารถอ่านรายละเอียดเพิ่มเติมได้ที่ Mendix Blog