วันอังคารที่ 14 มีนาคม พ.ศ. 2560

มารู้จัก PlatformIO IDE Tool ที่กำลังมาแรงสำหรับงานพัฒนาด้าน IoT

มารู้จัก PlatformIO IDE Tool ที่กำลังมาแรงสำหรับงานพัฒนาด้าน IoT


หลังจากที่ได้ลองเล่น PlatformIO มาสักระยะแล้ว รู้สึกว่ามันเป็น Tool ที่ดีมาก ๆ ตัวหนึ่งสำหรับการพัฒนาโปรแกรม  และตัว PlatformIO เองก็พึ่งปล่อย IDE ออกมาได้ไม่นานทำให้หลายคนอาจจะยังไม่รู้จัก บทความนี้เราเลยจะมาพูดถึง PlatformIO IDE กันครับ
ก่อนหน้านี้ถ้าเราจะพัฒนาโปรแกรมบน Arduino Framework  เราก็ต้องใช้ Arduino IDE  แต่ถ้าเราต้องการจะพัฒนาบน mbed Framework ก็ต้องไปใช้ Online IDE ของ mbed หรือใครจะ Export Project มาพัฒนาแบบ Offline ก็ได้   ประกอบกับปัจจุบันมีชิปตระกูลต่าง ๆ มีการพัฒนาค่อนข้างเร็ว  ทำให้เครื่องมือในการพัฒนามีความหลากหลายมากขึ้น   ดังนั้นถ้าเราจะพัฒนาโปรแกรมบน ARM , AVR , ESP8266 ก็จะต้องติดตั้ง Tool สำหรับชิปต่าง ๆ หลายตัว

ด้วยสาเหตุนี้จึงมีการพัฒนา PlatformIO ขึ้นมา  โดยจะรวบรวมเครื่องมือต่าง ๆ ที่จำเป็น  เช่น Toolchain ของ MCU ตระกูลต่างๆ  , Uploader (Programmer) , framework (Library)  ทำให้เราสามารถพัฒนาโปรแกรมบนบอร์ดต่าง ๆ เพียงแค่กำหนด Configuration ของ Project ให้ตรงตามบอร์ดที่เราใช้งาน นอกจากนี้ PlatformIDE ยังใช้ Atom TextEditor ซึ่งมาพร้อมกับ Plugin ต่าง ๆ ทำให้เราสามารถพัฒนาโปรแกรมได้สะดวกมากเลยครับ
ถ้าจะพูดง่าย ๆ ก็คือ สามารถใช้ PlatformIO IDE แทน Arduino IDE และ Mbed Online IDE ได้เลย

PlatformIO CLI & PlatformIO IDE

พอพูดถึง PlatformIO หลายคนจะมองไปที่ IDE เลย  ซึ่งจริง ๆ แล้วเราควรจะรู้จักทั้งสองตัว  ทั้ง CLI (Command Line Interface) และ IDE  (Integreted Development Environment)  เพราะมันทำงานร่วมกันอยู่ครับ
PlatformIO CLI คือ โปรแกรมที่ทำงานโดยใช้ Command line ในการสั่งงาน ถ้าเราเข้าใจการทำงานของ PlatformIO และใช้คำสั่งต่าง ๆ ของ PlatformIO เป็น  เราก็สามารถใช้ TextEditor ตัวไหนก็ได้เขียน Code  เพราะตัว CLI จะเป็นตัวที่จัดการให้ทั้งหมดเวลาเรา Compile และ Upload
platformio-demo-wiring
PlatformIO IDE คือ Atom TextEditor ที่มี Package ที่จำเป็นสำหรับการพัฒนาต่าง ๆ  โดย User สามารถเรียกใช้งานคำสั่งต่างๆ  ผ่านทาง GUI ได้เลย  ไม่ต้องไปนั่งจำคำสั่งต่าง ๆ ของ CLI
platformio-ide-laptop.5d785317
นอกจาก PlatformIO CLI และ PlatformIO IDE จะทำงานร่วมกันได้อย่างดีแล้ว   ตัว PlatformIO CLI เองก็สามารถทำงานร่วมกับ Text Editor ตัวอื่นได้  เช่น Eclipse , Sublime Text , Qt

ทำไม PlatformIO IDE ถึงน่าใช้

  • Cross -Platform : รองรับทั้ง OS X , Windows , Linux
  • รองรับการพัฒนาบอร์ดต่างๆ  มากกว่า 200 บอร์ด
  • C/C++ Intelligent Code Completion  ทำให้เราไม่ต้องพิมพ์จนจบคำสั่งก็จะมี Popup ขึ้นมาให้เราเลือกใช้ได้เลย
  • Smart Code Linter มีการบอก Warning และ Error ตามบรรทัดต่าง ๆ อย่างสวยงาม
  • มี Terminal สำหรับใช้งาน CLI  และ  Serial Monitor
  • มี Configuration Template สำหรับการ Compile บน Cloud โดยใช้ CI (Continuous Integration)
  • สามารถจัดการ Library ต่าง ๆ ได้ง่ายโดยใช้ CLI
  • Hot Key ของ Atom ทำให้เราเขียนโค้ดได้เร็วขึ้น
  • สามารถกำหนด Configuration ให้เรียกใช้ Library ของ Arduino  ได้
  • ใช้ Git บน Terminal ของ PlatformIO IDE ได้เลย
  • Upload hex file ลงบอร์ดอัติโนมัติ
PlatformIO IDE น่าใช้ขนาดนี้เปลี่ยนจาก Arduino IDE มาใช้ PlatformIO IDE กันเถอะครับ ^^

ไม่มีความคิดเห็น:

แสดงความคิดเห็น