[CLJS][ReactNative] เขียน React Native ด้วย ClojureScript และ re-frame - 2017-04-18 20:30:00

ClojureScript นั้นเป็นถาษาตระกูล Lisp ภาษานึงซึ่งจะคอมไพล์โค้ดไปเป็น Javascript เราจึงสามารถเขียนโปรแกรม Javascript ใดๆได้ด้วยเจ้าภาษานี้ โดย ClojureScript เป็นภาษาที่ดีมากๆ สำหรับการนำมาพัฒนาส่วน UI ของแอปพลิเคชันทั้งหลาย ไม่ว่าจะเว็บหรือบนมือถือก็ตาม สิ่งที่ทำให้ผมคิดว่ามันเป็นภาษาที่ดีมากๆสำหรับการพัฒนา UI ก็คือการมี Hot Reload (Figwheel) ที่ดีและเสถียรมาก ซึ่งเป็นสิ่งที่ทำให้ Feedback loop ของการพัฒนาเราเร็วขึ้น เพราะว่าเมื่อเราแก้ไขโค้ดแล้วทำให้เราสามารถเห็นสิ่งที่เราแก้ไขได้ทันทีโดยไม่ต้อง reload หรือต้องกดปุ่มต่างๆจนมาถึงหน้าจอที่เรากำลังแก้อยู่ แล้วก็ยังมี REPL ที่เราจะสามารถทดลองโค้ด ทดลองรันฟังก์ชันก่อนที่เราจะเอาไปใช้งานจริงได้อีกด้วย ในที่นี้ผมจะมาพาเขียน React Native (Mobile App) โดยจะใช้ ClojureScript framework ที่ชื่อว่า re-frame Pre-requisite NodeJs runtime ดาวน์โหลดได้จากที่นี่ JDK สำหรับรัน Clojure ดาวน์โหลดได้จากที่นี่ Leiningen เป็น Build tools สำหรับ Clojure ดาวน์โหลดได้จากที่นี่ Setup เราจะสร้าง React Native โปรเจ็กท์ ที่ใช้ Expo เพื่อความง่ายในการรันโปรเจ็กท์ขึ้นมา

[CLJS][ReactNative] Create React Native app with ClojureScript - 2017-04-18 20:30:00

ClojureScript is Lisp dialect which compile to Javascript ecosystem. So we can write any Javascript software with ClojureScript. And ClojureScript is very good language to develop application’s UI. Because it have very good tools like Figwheel and REPL. Figwheel is good hot load tool. You don’t have to do tedios work like click, click,… to navigate to things you work on. It’s work most of the time (AFIK: React try to do hot load but can’t catch Figwheel yet).