Skip to main content
0
Basic ProgrammingIT ProfessionalsProductivityProgramming Concept

10 โปรเจคอัพสกิลโปรแกรมมิ่งยามว่าง

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

1. แอพจดโน๊ต

แอพพลิเคชันสำหรับจดโน๊ตถือว่าเป็นโปรเจคเริ่มต้นที่ดีสำหรับคนหัดเขียนโปรแกรมเลยก็ว่าได้ ระดับความยากง่ายก็ขึ้นอยู่กับฟีเจอร์ที่เราจะใส่ให้กับแอพของเรา อย่างแรกเลยคือเราจะได้ลองสร้าง UI เป็นครั้งแรกๆหลังจากที่งมอยู่กับโค้ดมาโดยตลอด ฟังก์ชันพื้นฐานที่แอพควรจะทำได้ก็คือการสร้าง แก้ไข และการลบโน๊ต ทำให้เราได้ทดสอบความเข้าใจในเรื่องพื้นฐานการเขียนโปรแกรม เช่นตัวแปร ฟังก์ชัน คลาส เป็นต้น หรืออาจะทำฟังก์ชันการตั้งเวลาแจ้งเตือนใส่ในโน๊ตแต่ละอันด้วยก็ได้ และยังเลือกได้ว่าเราจะเก็บข้อมูลไว้ยังไง เก็บเป็นไฟล์ลงในเครื่องหรือจะเก็บไว้ในฐานข้อมูล ก็ขึ้นอยู่กับความขยันและเรื่องที่เราสนใจศึกษา

2. เว็บเซิร์ฟเวอร์

สำหรับคนที่อยากจะทำเว็บถ้าได้ลองศึกษาการเขียน HTML หรือ JavaScript มาบ้างแล้ว โปรเจคนี้ก็ถือว่าน่าสนใจสำหรับใช้ต่อยอดความรู้ด้านนี้ได้ หรือใครที่อยากจะเขียนแอพที่ส่งข้อมูลติดต่อกับเซิร์ฟเวอร์ได้ก็ลองเลือกโปเจคนี้ไปทำได้เหมือนกัน โดยการสร้างเซิร์ฟเวอร์แบบง่ายๆนั้นในหลายๆภาษาก็มีเฟรมเวิร์คหรือเครื่องมือต่างๆที่ไม่ต้องตั้งค่าอะไรมาก ก็สามารถสร้างเว็บเซิร์ฟเวอร์ขึ้นมาได้แล้ว เช่น Express (JavaScript) และ Flask (Python) ซึ่งจะเลือกใช้เครื่องมือไหนมาใช้ก็สามารถใช้งานพื้นฐานได้เหมือนกัน

3. แอพแชท

มาลองดูการทำแอพแชทกันบ้าง โปรเจคนี้จะสร้างเป็นแอพพลิเคชันในมือถือ ในคอมพิวเตอร์ หรือเป็นเว็บก็ได้ สิ่งที่น่าจะได้ลองเล่นในการทำแอพนี้ก็คือเรื่องของการติดต่อรับส่งข้อมูล เพื่อให้การคุยกันเป็นไปอย่างราบรื่น อาจจะต้องเลือกเครื่องมือที่เหมาะสม เพื่อให้ข้อความส่งถึงกันได้อย่างรวดเร็ว เช่น socket.io เป็นต้น หรืออาจจะทำฟีเจอร์ให้แอพแชทของเราสมบูรณ์ยิ่งขึ้นด้วยการจัดการบัญชีผู้ใช้ การล็อกอิน การสร้างห้องแชทเดี่ยว/กลุ่ม และยังมีการเก็บข้อมูลการสนทนาต่างๆให้ลองออกแบบและสร้าง database ได้อีกด้วย

4. ระบบจัดการสินค้า

โปรเจคนี้เราน่าจะได้ลองเล่นเกี่ยวกับการจัดการข้อมูลให้เป็นระบบระเบียบ โดยให้นึกถึงตัวอย่างเช่นการจัดการสินค้าในสต๊อกของร้านค้า ที่จะต้องมีฟังก์ชันในการเพิ่ม ลบ แก้ไขสินค้าได้ ซึ่งจะคล้ายกันกับแอพจดโน๊ตของเรา ที่สามารถเพิ่มฟีเจอร์ได้เท่าที่เราต้องการทั้งการแจ้งเตือน การใส่รูปสินค้า แต่อีกส่วนที่น่าจะลองทำก็คือหน้าสรุปหรือ Dashboard ที่รวมข้อมูลหรือสถิติการซื้อ/ขายสินค้าของเรา โดยใช้ข้อมูลจากประวัติการจัดการสินค้า ก็น่าจะทำให้ได้ลองเล่นกับ database มากยิ่งขึ้นอีกด้วย

5. เกม XO

คราวนี้มาในแนวโปรเจคทำเกมกันบ้าง อย่างแรกเลยคือเครื่องมือในการสร้าง UI ก็ลองหยิบภาษาที่เราสนใจมาใช้ในการสร้างกันได้ สำหรับเกม XO หรือ tic-tac-toe นี้ก็เป็นเกมที่เล่นง่าย ใครๆก็เล่นเป็น ดังนั้นแล้วก็เป็นตัวเลือกที่ไม่ยากจนเกินไปที่จะลองเอามาใช้สำหรับอัพสกิลของเรา ซึ่งการสร้างก็ใช้เวลาไม่นาน แต่ต้องคิดลำดับการทำงานให้ดี ว่าการวางหมากในแต่ละครั้งเป็นตาของใคร และก็มีการตรวจสอบการวางครบ 3 ตัวในแนวต่างๆ เพื่อประกาศผู้ชนะในแต่ละเกม
แถมท้ายข้อนี้ด้วยการแนะนำ JavaScript library สำหรับสร้าง UI เช่น React ที่ถ้าใครสนใจอยู่ก็ลองเริ่มศึกษาจากการสร้างเกมนี้จาก tutorial ในเว็บไซต์ของ React ได้เลย

6. เกมหมากรุก

เพิ่มความแอดวานซ์ขึ้นมาอีกหน่อยจากโปรเจคทำเกม XO ในข้อก่อนหน้า จากการที่เคยมีแค่ X กับ O ก็เปลี่ยนมาเป็นตัวหมากหลายแบบบนกระดานหมากรุก จะเป็นหมากรุกไทยกรือหมากรุกสากลก็ได้เหมือนกัน ในโปรเจคนี้นอกจากจำนวนรูปแบบของตัวหมากแล้ว ก็คือจำนวนช่องที่เพิ่มขึ้นมาด้วยเช่นกัน เราจะต้องเขียนโค้ดเพื่อกำหนดความสามารถในการเดินของหมากแต่ละตัว ต้องเก็บตำแหน่งของหมากทุกตัว การกินกันของตัวหมาก และถ้าอยากเพิ่มความยากขึ้นไปอีกก็อาจจะลองทำบอทไว้เล่นแข่งกับเราไปด้วยก็ยังได้

7. เกมงูน้อย

อีกซักเกมนึงที่คุ้นเคยกันดีก็คือคือเกมงูนั่นเอง โปรเจคทำเกมงูอันนี้เราจะได้ลองเขียนโปรแกรมที่ต้องกำหนดการชนกันระหว่างงูกับสิ่งต่างๆ ว่าเป็นการกินอาหารหรือว่าเป็นการชนกำแพง อาจจะมีการเพิ่มหรือลดความเร็วในการเลื้อยเพื่อเพิ่มความสนุกในการเล่นด้วยก็ได้ และเพื่อที่จะควบคุมงูน้อยของเราให้เลื้อยไปกินอาหารได้ถูกทิศทางนั้น เราก็ต้องจับการ input จากผู้เล่นและนำไปแสดงผลกับตัวละครของเราให้ทันท่วงที เป็นโปรเจคเกมง่ายๆที่เอาไว้ทำเล่นยามว่างได้อย่างแท้จริง

8. แอพเลือกเมนูอาหาร

โปรเจคนี้เป็นไอเดียง่ายๆที่นำไปใช้งานได้จริง โดยเป็นแอพสำหรับสุ่มเลือกเมนูอาหารตามชื่อหัวข้อนั่นเอง สำหรับการสร้างขึ้นมาอาจจะไม่ได้ยากอะไร จากความง่ายนี้เราจะได้มีเวลาเอาไปใช้กับการออกแบบหน้าตา UI แอพของเราให้มีความสวยงามน่าใช้ ใช้งานง่าย และตอบโจทย์การใช้งานของเราเอง เพราะต่อให้โค้ดเราดีแค่ไหน แต่ถ้า UI มันแย่ก็คงไม่มีใครอยากใช้ การออกแบบที่ดีจึงช่วยเสริมทักษะโปรแกรมมิ่งของเราได้นั่นเอง และถ้าทำโปรเจคนี้เสร็จแล้วก็น่าจะทำให้เราไม่ต้องเจอกับคำถามที่ว่า “เที่ยงนี้กินอะไรกันดี” กันอีกต่อไป

9. แอพแจ้งเตือนสภาพอากาศ

เวลาว่างๆนอกจากอยู่บ้านแล้ว บางทีเราก็อยากจะออกไปเที่ยวบ้าง แต่หลายครั้งยังไม่ทันพ้นจากหน้าบ้านก็เจอฝนเทลงมา เทลงมา เทลงมา ต้องกลับไปหยิบร่ม หรือไม่ก็พับแผนการออกไปข้างนอกไปก่อนอยู่บ่อยๆ ถึงแม้ว่าการเช็คสภาพอากาศ ดูโอกาศที่ฝนจะตกจะทำได้ง่ายๆแค่เสิร์ชในกูเกิล หรือมือถือของหลายๆคนอาจจะมีเป็น widget อยู่ที่หน้าจอด้วยซ้ำไป แต่โปรแกรมเมอร์อย่างเราอะไรที่มันง่ายๆแบบนั้นเราไม่ทำหรอก เพื่อความเท่และเพื่อหาอะไรทำยามว่าง การทำแอพแจ้งเตือนสภาพอากาศก็เป็นสิ่งที่น่าสนใจ หลักๆก็คือจะได้ลองศึกษาการใช้งาน API ที่จะเป็นแหล่งข้อมูลสำหรับใช้งานในแอพของเรานั่นเอง อย่างข้อมูลสภาพอากาศก็ลองใช้จาก OpenWeather กันได้

10. ทำลำโพงบลูทูธ

โปรเจคสุดท้ายที่เอามาแนะนำในวันนี้เพื่อให้เข้ากับยุคสมัยที่อะไรๆก็ไร้สายกันหมด โดยลองทำให้ลำโพงเก่าๆซักตัวของเรา หรือลำโพงอะไรก็ได้ที่ไม่บลูทูธสามารถเชือมต่อผ่านบลูทูธได้ ถ้าได้ทำโปรเจคนี้เราก็จะได้ลองเล่นกับอุปกรณ์ที่จับต้องได้เพื่อใช้เป็นตัวรับสัญญาณบลูทูธ สำหรับคนที่เริ่มเหนื่อยกับการเขียนโค้ดอยู่แต่ในจอคอม ก็ลองพักมาผ่อนคลาย (?) มาเขียนโค้ดใส่อุปกรณ์ต่างๆแทนกันดีกว่า อย่างในโปรเจคนี้ก็ถ้าเลือกเป็น module ของ arduino มาใช้ในการทำ ก็จะได้อัพสกิลการเขียนโปรแกรมควบคุมอุปกรณ์ต่างๆเป็นของแถมอีกด้วยนะ

Develeper

Author Develeper

More posts by Develeper
Close Menu

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

ตั้งค่าความเป็นส่วนตัว

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

ยอมรับทั้งหมด
จัดการความเป็นส่วนตัว
  • คุกกี้ที่จำเป็น
    เปิดใช้งานตลอด

    ประเภทของคุกกี้มีความจำเป็นสำหรับการทำงานของเว็บไซต์ เพื่อให้คุณสามารถใช้ได้อย่างเป็นปกติ และเข้าชมเว็บไซต์ คุณไม่สามารถปิดการทำงานของคุกกี้นี้ในระบบเว็บไซต์ของเราได้
    รายละเอียดคุกกี้

  • คุกกี้สำหรับการติดตามทางการตลาด

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

บันทึกการตั้งค่า