สรุปงาน DevNight #1 (Kotlin) @ The Brick Space

Jedsada Tiwongvorakul
20Scoops CNX
Published in
3 min readSep 15, 2017
สาวเชียงใหม่น่ารัก เนาะ อิอิ

เนื่องจากเจ้าของบล็อคได้มีโอกาสได้เข้าร่วมงานที่เกี่ยวกับภาษา Kotlin มาประมาณนึ่งก็เลยอยากจะนำความรู้ที่ได้รับมาส่งต่อให้กับคนที่สนใจในตัวภาษานี้ ภายในจังหวัดเชียงใหม่ จึงกลายมาเป็นงานที่ชื่อ DevNight #1 (Kotlin) วันนี้ก็เลยอยากจะนำเอาเนื้อหาและภาพบรรยากาศภายในงานมาให้ชมกันสักหน่อยว่าเป็นยังไง ไปดูกันเลย ปู้น ปู้น 🚃

สถานที่จัดงาน @ The Brick Space

เสื้อดำที่กำลังกดมือถือตัวจริงน่ารักมากเป็น Android Dev ด้วย อู้ววว

สถานที่เป็น Co-working space อยู่ตรง ถนนศิริมังคลาจารย์ ซอย 13 การเดินทางสะดวก เจ้าหน้าที่ใจดีมากแถมน่ารัก สำคัญเลยคือราคาเป็นกันเอง และถ้าหากใครที่แวะมาเที่ยวเชียงใหม่ หรือคนที่อยู่เชียงใหม่กำลังมองหาที่นั่งทำงานพบปะผู้คน หรือกำลังหาสถานที่จัดงานเจ้าของบล็อคก็แนะนำที่นี่เลยครับบรรยากาศชิวๆ ดี

เหล่าบรรดาทีมงาน และ Speaker ภายในงาน

เนื้อหาภายในงาน

ซึ่งเนื้อหาก็จะมาในแนวความรู้เบื้องต้นเกี่ยวกับตัวภาษา Kotlin และตัวอย่างการ Implement ออกมาเป็นแอพฯ ไม่ว่าจะเป็นในฝั่งของแอพฯแอนดรอย์ หรือในส่วนของฝั่ง Server Side ซึ่งก็เหมือนกับงาน Kotlin อื่นๆ แต่งานนี้มีจุดขายอยู่ที่ Speaker หน้าตาค่อนข้างที่จะดีพอสมควร 😎

โดยเนื้อหาจะแบ่งออกเป็น 4 หัวข้อด้วยกันดังนี้

  1. Introduction to Kotlin โดยเจ้าของบล็อคเอง Pond (Android Developer @ 20Scoops CNX)
  2. Kotlin for Server โดยพี่ Chai (Web Developer @ Nimble 3 หรือที่รู้จักกันในนาม Devahoy)
  3. การสร้าง Restful APIs โดยใช้ Ktor ซึ่งเป็น Web backend framework ของ Kotlinโดยพี่ Chai
  4. การสร้างแอพแอนดรอย์เชื่อมต่อกับ Restful APIs ด้วยภาษา Kotlin โดยเจ้าของบล็อคเอง

แต่ก่อนจะเข้าสู่เนื้อหาทางทีมงานมีสติกเกอร์มาแจกผู้ร่วมงานด้วยนะฮะ

ขอบคุณผู้ใหญ่ใจดีที่สนับสนุนด้วยนะครับ (20Scoops CNX และ Devahoy) สติกเกอร์ Kotlin Design by Hanii

อวดเสร็จละ ต่อไปเจ้าของบล็อคจะพาไปลงรายละเอียดของแต่ละหัวข้อกันสักหน่อยว่าพูดเกี่ยวกับอะไรกันบ้าง ไปดูกันเลย 🚀

เริ่มจากหัวข้อที่ 1 Introduction to Kotlin

มองดูดีๆ จะพบความน่ารักของ Speaker ซ่อนอยู่

ในหัวข้อนี้ก็จะพามารู้กับภาษาที่ชื่อว่า Kotlin ว่าคืออะไร ทำไมต้อง Kotlin และเข้ามาช่วยลดปัญหาของภาษา Java ยังไง รวมถึงรูปร่างหน้าตา และ ตัว Syntax ของภาษาแถมยังมีการเปรียบเทียบโค้ดระหว่าง Kotlin กับ Java ว่ามีความแตกต่างกันมากน้อยแค่ไหน โดยจะมีรายละเอียดดังนี้

  • การประกาศตัวแปรและฟังก์ชันของ Kotlin
  • การสร้าง Class และ Constructor ที่เปลี่ยนไปจาก Java
  • การสืบทอดที่ไม่ต้องมี keyword extends อีกต่อไป
  • การมาเข้า Data class ของ Kotlin
  • ความหมายและการสร้าง Extension Functions
  • ความหมายและการใช้งาน Safety Null (นี้คือจุดพีคของตัว Kotlin เลยนะ)
  • ฯลฯ

สามารถดูสไลด์ของหัวข้อนี้ได้จากด้านล่างนี้เลย 👇

หัวข้อที่ 2 Kotlin for Server

มีความตะมุตะมิ และที่สำคัญคือแม่เหล็กของงานนี้เลย

และในหัวข้อนี้แม่เหล็กของงานก็อธิบายในเรื่องของการทำ Single page app โดยใช้ Kotlin JavaSrcipt ว่ามีจะออกมาในรูปแบบไหน หน้าตาเป็นยังไง รวมถึงพามารู้จักกับวิธีการทำ Restful APIs โดยใช้ภาษา Kotlin ซึ่งก็ได้ยกตัวอย่าง framework ที่มีชื่อว่า Ktor มาอธิบายโดยจะมีรายละเอียดดังนี้

  • อธิบายถึงความสามารถของตัว Ktor
  • วิธีการอันเชิญเจ้า Ktor เข้ามายังโปรเจ็ค
  • อธิบายการใช้งานเบื้องต้น
  • ยกตัวอย่างการสร้าง Routing เช่น GET, POST และ DELETE
  • ฯลฯ

สามารถเข้าดูสไลด์ของเนื้อหานี้ได้จากด้านล่างนี้เลย 👇

ช่วงพักเบรคแวะกินเครื่องดื่มพร้อมกับพิซซ่า… 🍻🍕

ขอขอบคุณผู้ให้การสนับสนุน (20Scoops CNX) สำหรับอาหารด้วยนะครับ พิซซ่า พิซซ่า
เสื้อแดงร้อนแรงจริงๆ
ต้องขอขอบคุณผู้ใหญ่ใจดี (Nextzy) สำหรับน้ำชาด้วยนะครับ ไม่มีจิตนาในการโฆษณาใดๆ 🙏

เมื่อผู้ร่วมงานมีอาการได้ที่แล้วก็ได้เวลากลับมาเข้ามาสู่หัวข้อถัดไปกันเลย …

หัวข้อที่ 3 การสร้าง Restful APIs ด้วย Ktor

ถึงแม้จะปวดหัวกับโค้ด แต่ก็โคตรฮาเลยนะ

ในหัวข้อนี้ก็จะลงรายละเอียดในส่วนของตัวโค้ด ก็เริ่มตั้งแต่การสร้างโปรเจ็คว่าสร้างยังไงวิธีการ import เจ้าตัว Ktor เข้ามาในโปรเจ็ค การตั้งค่าสำหรับการเขียน Kotlin ในฝั่งของ Server Side ว่าต้องทำอะไรบ้าง และก็อธิบายโค้ดในส่วนของการใช้ Ktor ในการทำ Routing ว่ามีความแตกต่างจาก Express และ Hapi ยังไงอีกด้วย คือได้ความรู้ไปเต็มๆ เลยสำหรับในฝั่งของ Server Side สามารถเข้าไปดูตัวอย่างโค้ดได้จากด้านล่างนี้เลยนะครับ

และทางพี่ Chai ก็มีของแถมโดยการอธิบายการใช้งานตัว ngrok ที่เอาไว้สำหรับให้คนในทีมทดสอบ Service ที่เราทำไว้โดยยังไม่ต้อง deploy อันนี้โคตรคูล และถ้าใครอยากจะลองไปเล่นเจ้าของบล็อคเอาลิงก์มาแปะไว้ด้านล่างให้แล้ว

หัวข้อสุดท้ายของงาน การสร้างแอพแอนดรอยด์ด้วยภาษา Kotlin

เจ้าของบล็อคต้องลดน้ำหนักแล้ว ล่ะ

ในหัวข้อสุดท้ายก็จะพามาดูกันว่าการนำภาษา Kotlin มาใช้ในการเขียนแอพแอนดรอยด์ เนี่ยต้องตั้งค่าอะไรบ้าง และอธิบายในส่วนของการทำงานของโค้ดว่าในส่วนของการเรียกใช้งาน Service ที่ได้จากหัวข้อที่ 3 แลัวนำมาแสดง ว่าจะมีความแตกต่างจากการใช้ภาษา Java ยังไงบ้าง บอกเลยว่าลด lines of code ลงไปพอสมควร แถมยังมีลูกเล่นที่ Kotlin ได้เตรียมไว้ให้ใช้ทำให้ชีวิตดูมีระดับมากขึ้น สามารถเข้าไปดูตัวอย่างโค้ดได้จากด้านล่างนี้เลย

ส่งท้ายด้วยช่วงแจกของรางวัล (สนับสนุนจากแบรนด์ หมูใหญ่)

สวยไหม สวยไหม

ช่วงขายของ (Tie-in)

สามารถเข้าไปศึกษาภาษา Kotlin เพิ่มเติมจากแหล่งข้อมูลด้านล่างนี้เลยครับ (ฉบับภาษาไทย)

และเร็วๆนี้ ทาง Devahoy ได้เตรียมที่จะปล่อยบทความเกี่ยวกับเจ้า Kotlin เพิ่มเติมจากเนื้อหาภายในงานอย่างนี้แน่นอนก็รอติดตามกันได้เลยนะครับ

สำหรับใครที่สนใจตัวภาษา Kotlin และอยากจะเข้ามาแลกเปลี่ยนความคิดเห็นก็สามารถเข้ามาร่วมกันได้ที่กลุ่ม Thailand Kotlin Developer นี้เลยนะครับ

และถ้าใครไม่อยากพลาดงานแบบนี้ในเชียงใหม่ก็สามารถเข้ามาร่วมในกลุ่ม CNX Community of Practice ช่วงนี้มีบ่อยมาก

สรุป

ความคิดส่วนตัวคิดว่าในส่วนที่เจ้าของบล็อครับผิดชอบในการบรรยายนั้นยังออกมาไม่ค่อยดีสักเท่าไรนัก อาจจะเป็นเพราะมันคือครั้งแรกที่เจ้าของบล็อคได้เป็น Speaker ด้วยมั้ง ฮ่าๆ (มันจะตื่นเต้นหน่อยๆ) แต่ก็ยังดีที่มีพี่ทีมงานและพี่ Chai จาก Devahoy คอยประคับประคองกันไปจนจบงาน แต่ในส่วนของภาพรวมคิดว่าออกมาดีพอสมควรเลยละครับ สุดท้ายก็ต้องขอขอบคุณผู้ที่เข้ามาร่วมงานทุกท่านมาก เพราะมันเป็นกำลังใจที่ดีให้กับทีมงาน DevNight ที่จะจัดงานในครั้งถัดๆ ไป และถ้าหากมีข้อผิดพลาดต้องขออภัยด้วยนะครับไว้เจอกันใหม่ในงานถัดไปนะครับ 👋

--

--