benboonya

solid-principles-coding

SOLID Principles คืออะไรทำไม อาชีพ โปรแกรมเมอร์ ทุกคนต้องรู้จัก

SOLID Principles คือ 5 หลักการที่จะออกแบบ Object-Oriented Class โดยเป็นไปในแบบ Best Practice ที่ อาชีพ โปรแกรมเมอร์ ควรจะปฏิบัติตามในการวางโครงสร้างและออกแบบ Class ในการเขียนโปรแกรม หลักการ  5 อย่างนี้จะช่วยให้เราสามารถเขียนโค้ดได้เป็นแบบมืออาชีพมากขึ้น และเข้าใจว่าทำไมเราถึงควรใช้ Software Design Pattern ต่างๆใน Project ของเรา ไม่ว่าจะเป็น MVC, MVVM, MVP หรือ Design Pattern อื่นๆ ดังนั้นใครที่ต้องทำงานกับโค้ดทุกวันก็ควรรู้จักหลักการดังกล่าวไว้ SOLID นั้นย่อมาจาก The Single Responsibility Principle The Open-Closed Principle The Liskov Substitution Principle The Interface Segregation Principle The Dependency Inversion …

SOLID Principles คืออะไรทำไม อาชีพ โปรแกรมเมอร์ ทุกคนต้องรู้จัก Read More »

GitHub-product-2020

4 Product ใหม่น่าลอง จาก Github ในปี 2020

เมื่อช่วงกลางปีที่ผ่านมาทาง Github ได้มีการประกาศว่าจะมี feature เพิ่มเติมขึ้นมาบน Platform web จนถึงตอนนี้บาง feature ก็ได้มีการปล่อยเป็น public release ออกมาให้ใช้กันแล้ว เราลองมาดูกันว่า Product เหล่านี้จะช่วยอะไรเราในการเขียนโค้ดได้บ้าง Codespaces by Github เป็น Code Editor ที่อยู่บน Web Browser ที่มาพร้อม Environment ปกติแล้วการ Set up Development Environment ก่อนจะเริ่มทำโปรเจคนั้นไม่ใช่เรื่องง่าย และค่อนข้างกินเวลา ดังนั้น Github ก็เสนอทางแก้ให้ปัญหานี้โดยการนำ Environment  พร้อมทั้ง IDE ที่สร้างขึ้นโดยอ้างอิงจาก VS Code มารันบน Web Broswser โดยยังคงไว้ซึ่ง feature สำคัญของ VS Code และเรายังสามารถลง Extension ต่างๆขอ VS …

4 Product ใหม่น่าลอง จาก Github ในปี 2020 Read More »

concat-adapter-android-banner

สร้าง Nested RecyclerView ใน Android ด้วย ConcatAdapter

ConcatAdapter นั้นช่วยรวม RecyclerView Adapter หลายตัวเข้าด้วยกันเพื่อแสดงใน RecyclerView หนึ่งตัว ในยุคสมัยนี้ UI ของ Application มีมากมายหลายรูปแบบ และเมื่อ UI นั้นซับซ้อนขึ้น เราอาจเจอสถานการณ์ที่ทำให้ต้องใช้ RecyclerView อยู่ข้างใน RecyclerView อีกทีหนึ่ง หรือ เรียกว่า Nested RecyclerView ตัวอย่าง Application ที่ทำแบบนี้ก็มีอยู่ทั่วไปในชีวิตประจำวันเช่น Klook, Google Play Store จาก Screenshots ที่เห็นนั้นก็คงเดาได้ไม่ยากว่าน่าใช้ Nested RecyclerView ในการทำแหละ โดยหนึ่งในวิธีที่จะทำ Layout แบบนี้ก็คือการว่าโครงสร้างของ Adapter และ ViewHolder ประมานนี้ นี่คือวิธีสร้าง RecyclertView Adapter ด้านนอกสุดเพื่อควบคุม Content ข้างในของ Nested RecyclerView โดย Viewholder แต่ละตัวจะประกอบไปด้วย …

สร้าง Nested RecyclerView ใน Android ด้วย ConcatAdapter Read More »

หางาน-โปรแกรมเมอร์-หางาน-developer-จบใหม่

3 คำแนะนำสำหรับ อาชีพ โปรแกรมเมอร์ จบใหม่ ในการหางาน

การเริ่มต้นหางานของ อาชีพ โปรแกรมเมอร์ จบใหม่ นั้นสำหรับผู้เพิ่งเริ่มต้นนั้นอาจเป็นเรื่องยากซักหน่อยเพราะมองไปแต่ที่ไหนก็มีแต่คนประกาศรับ Senior Developer หรือ Senior โปรแกรมเมอร์ และต้องการคนที่มีประสบการณ์มากๆ ทั้งนั้น ดังนั้น อาชีพ โปรแกรมเมอร์ จบใหม่ และ developer จบใหม่ ที่เริ่มเดินทางสายนี้จะทำอย่างไรดีหละให้เรามีโอกาสถูกเรียกสัมภาษณ์มากขึ้นดีล่ะ  ในบทความนี้เราเลยจะมากล่าวถึง คำแนะนำที่ผู้เริ่มต้นทุกคนสามารถทำได้เพื่อเพิ่มโอกาสการ หางาน อาชีพ โปรแกรมเมอร์ และ หางานในสายงาน Developer โดย คำแนะนำที่ว่านี้จะโฟกัสไปที่เรื่อง Resume, Project ตัวอย่าง และ Sample Code เนื่องจากผมทำงานเป็น Mobile developer ซึ่งงานจะเป็น Front end ซะส่วนใหญ่ เลยจะของยกตัวอย่างทางด้าน Front end development ประกอบด้วย แต่คิดว่าสามารถนำไปประยุกต์ไม่ว่าจะเป็น Developer สายไหนก็ตาม  โดยต้องขอกล่าวไว้ก่อนว่านี่เป็นความเห็นส่วนตัวของผู้เขียน ไม่ได้มีส่วนเกี่ยวข้องกับองค์กร หรือ บริษัทที่ผู้เขียนกำลังทำงานอยู่แต่อย่างใด …

3 คำแนะนำสำหรับ อาชีพ โปรแกรมเมอร์ จบใหม่ ในการหางาน Read More »

android-ภาษา-dart

เมื่อ Android developer ลองเรียน ภาษา Dart

เมื่อไม่นานมานี้ผมได้ลองเรียน Flutter Course จาก Website appbrewery.co ในชื่อ Course “The Introduction to Flutter Development with Dart.” โดยภาษาที่ใช้ในการเขียน Flutter ก็คือภาษา Dart ในบทความนี้ผมเลยอยากมาพูดถึงภาษา Dart ในมุมมองของ Android developer ซึ่งทำงานกับภาษา Kotlin โดยส่วนใหญ่ โดยผมจะกล่าวถึง Syntax ของ ภาษา Dart เป็นหลัก Syntax ก่อนหน้าที่ผมจะใช้ภาษา Kotlin นั้น ผมเคยใช้ภาษา Java ในการเขียน Android มาก่อน ความรู้สึกแรกที่ได้เห็นภาษา Dart และลองเขียนดู คือ Syntax มันดูไม่แปลกตานัก โดยจากความเห็นส่วนตัวของผมภาษา Dart นั้นดูคล้ายกับ Java มากกว่า Kotlin แต่ถ้าจะพูดให้ชัดเจนขึ้นมากอีกหน่อยผมว่า …

เมื่อ Android developer ลองเรียน ภาษา Dart Read More »

 เพิ่มประสิทธิภาพการทำงาน-โปรแกรมเมอร์

4 วิธีเพิ่ม Productivity สำหรับ โปรแกรมเมอร์

ในอาชีพ Developer หรือ อาชีพ โปรแกรมเมอร์ Productivity ในการทำงานนั้นถือเป็นเรื่องที่สำคัญ ในบางครั้งเราต้องเจอกับสถานการณ์ที่ต้องทำงานในเวลาอันจำกัด การที่เราสามารถเพิ่ม Productivity ในการทำงาน ให้เร็วรวดและเรียบร้อยนั้นถือเป็น Skill ที่สำคัญในสายอาชีพ โปรแกรมเมอร์ เลยก็ว่าได้ ดังนั้นวันนี้จะขอมาพูดถึงเทคนิคในการ เพิ่ม Productivity ในการทำงานของโปรแกรมเมอร์ เพื่อให้เราสามารถสร้างผลงานได้อย่างรวดเร็วและเรียบร้อยได้ ถ้าอยากเพิ่ม Productivity อย่า Multitask เวลาเขียนโค้ด   ทุกวันนี้คงจะเป็นเรื่องปกติของหลายๆคนที่นั่งดู TV ไปแล้วไสลด์ Facebook ดูไปพร้อมๆกันซึ่งนั่นก็เป็นเรื่องปกติสมองของเราสามารถรับข้อมูลจากสองช่องทางได้อย่างไม่มีปัญหา แต่เมื่อผมดู TV หรือ Youtube ขณะที่เขียนโค้ดไปด้วย Productivity นี่ตกฮวบเลยทีเดียว เพราะว่าระหว่างเขียนโค้ดนั้นเราต้องคิดหลายอย่างก่อนจะพิมพ์อะไรลงไป ถ้าโดนขัดด้วยการรับข้อมูลจากช่องทางอื่น ก็จะทำให้กระบวนการทำงานของเรานั้นช้าลง บางครั้งถ้าต้องการโฟกัสกับงานมากๆผมก็ปิดช่องทางการสื่อสารเช่น Line หรือ Slack ไปเลยแล้วค่อยเปิดดูอีกทีในเวลาต่อมา อยากเพิ่ม Productivity ต้องรู้จักกับ Code Editor ของเราให้ทะลุปรุโปร่ง   ถ้าถามว่าโปรแกรมอะไรที่ …

4 วิธีเพิ่ม Productivity สำหรับ โปรแกรมเมอร์ Read More »

อุปนิสัย-อาชีพ-โปรแกรมเมอร์

5 อุปนิสัยของ อาชีพ โปรแกรมเมอร์ที่ดี

การทำงานในสาย อาชีพ โปรแกรมเมอร์นั้น ต้องมีการเรียนรู้และพัฒนาตัวเองอยู่เสมอ แต่นอกจากการเรียนกรู้และพัฒนาตัวเองแล้วเราสามารถทำอะไรเพื่อทำให้เราก้าวหน้าได้อีกกันนะ? บทความนี้จะกล่าวถึง 5 อุปนิสัยที่อาชีพโปรแกรมเมอร์ควรมีโดยผู้อ่านสามารถลองไปประยุกต์ใช้ดูเพื่อทำให้เรามีการพัฒนาและเติบโตในสายงาน อาชีพ โปรแกรมเมอร์ หรือ Developer ได้อย่างยั่งยืนมากขึ้น 1. อาชีพ โปรแกรมเมอร์ที่ดีควรให้ความสำคัญกับธุรกิจด้วย บางครั้ง อาชีพ โปรแกรมเมอร์ อย่างเราอาจให้ความสำคัญกับ Tech Stack, Structure ของโค้ด, tool หรือ technology มากเกินไป จนหลงลืมไปว่าโค้ดที่เรากำลังเขียนอยู่นั้นมีจุดประสงค์อย่างไรในทางธุรกิจ ดังนั้นถึงแม้ว่าหน้าที่ของ โปรแกรมเมอร์ คือการเขียนโค้ดแต่ไม่ควรสนใจเพียงแต่ เรื่องเชิงเทคนิคเพียงอย่างเดียว บางทีคุณอาจจะลองถามตัวเองดูว่า สิ่งที่เรากำลังสร้างขึ้นนั้นก่อให้เกิดผลประโยชน์ทางธุรกิจรึเปล่า หรือ เราใช้เวลามากเกินไปในสิ่งที่ไม่จำเป็นนัก เช่น เราจะเขียนโค้ดเพื่อแก้ปัญหาอย่างหนึ่ง แต่เรามองว่ามีวิธีที่ใช้เวลานานแต่จะได้โค้ดที่มีประสิทธิภาพ กับวิธีที่ใช้เวลาเขียนไม่นานแต่ทำงานได้โค้ดที่มีประสิทธิภาพปานกลาง เราต้องมาลองคิดและตัดสินใจโดยมีข้อจำกัดทางธุรกิจมาร่วมด้วยว่าควรทำแบบไหน 2. เมื่อคุณคิดว่างานเสร็จแล้ว… ???????? จ้า สำหรับ อาชีพ โปรแกรมเมอร์ หรือ Developer ที่เริ่มทำงานใหม่ๆอาจคิดว่างานเสร็จแล้วหลังจากที่เราเขียนโค้ดให้มันทำงานได้ตามที่เราต้องการ แต่จริงๆงานที่แท้จริงเพิ่งเริ่มหลังจากที่โค้ดทำงานได้ต่างหาก งานที่แท้จริงเพิ่งเริ่มหลังจากที่โค้ดทำงานได้   …

5 อุปนิสัยของ อาชีพ โปรแกรมเมอร์ที่ดี Read More »

junior-developer-senior-developer

คุณสมบัติ อาชีพ โปรแกรมเมอร์ Junior programmer และ Senior programmer?

ความแตกต่างของคุณสมบัติ อาชีพ โปรแกรมเมอร์ระหว่างการเป็น Junior Programmer หรือ Senior Programmer วัดกันที่จำนวนปีของการทำงานอย่างเดียวเท่านั้นหรือ? หลายๆคนอาจสงสัยว่าเขาใช้อะไรเป็นมาตรฐาน ในการวัด คุณสมบัติ อาชีพ โปรแกรมเมอร์ ที่เห็นได้ชัดเจนก็อายุการทำงานนี่แหละ มีอะไรที่มากไปกว่าอายุหรือจำนวนปีของการทำงานอีกหรอ? วันนี้เรามาไขปริศนาหาปัจจัยและ คุณสมบัติ อาชีพ โปรแกรมเมอร์ ในการกำหนดการเป็น Junior Programmer หรือ Senior Programmer กันเถอะ ในความเป็นจริง ถึงจะเป็นไปได้ยากแต่บางครั้งอาจพบว่า Junior Programmer อาจจะมีอายุงานที่ผ่านๆมามากกว่า Senior Programmer ก็เป็นได้ ดังนั้นเราจะมาดูปัจจัยที่มากกว่าอายุงาน ซึ่งได้แก่… 1. คุณสมบัติ อาชีพ โปรแกรมเมอร์ ด้านความรู้ ความแตกต่างด้านความรู้ของ Junior Programmer และ Senior Programmer แน่นอนแหละว่า Senior จะมีความรู้มากกว่า Junior และการมีความรู้ในเรื่อง Design pattern, …

คุณสมบัติ อาชีพ โปรแกรมเมอร์ Junior programmer และ Senior programmer? Read More »

จอ Monitor Dell U2520D-เขียนโปรแกรม

แนะนำจอ Monitor เขียนโปรแกรม 2022

สำหรับโปรแกรมเมอร์ จอ Monitor เขียนโปรแกรมนั้นมีความสำคัญ เวลาที่เราต้องเขียน Code เป็นเวลานาน เป็นเรื่องสำคัญที่เราควรมีจอมอนิเตอร์คู่ใจ ที่ช่วยให้ไม่ปวดตา โดยขนาดของมอนิเตอร์ที่เลือกนั้นควรจะมีขนาดพอเหมาะ เพื่อให้เราสามารถเปิดหน้าต่างของ Code Editor มากกว่าหนึ่งหน้าต่างพร้อมๆกันได้ โดยขนาดตัวอักษรในแต่ละจอไม่เล็กจนเกินไป หรือ Develop บางคนอาจต้องการจอมากกว่าหนึ่งจอเพื่อเปิดดู Design หรือ เอกสาร Specification ไปพร้อมๆกับการ Coding ด้วยซ้ำไป โดยในบทความนี้จะแนะนำจอ Monitor ขนาดไม่ใหญ่มากพอเหมาะกับโต๊ะทำงานไม่ว่าจะเป็นที่บ้านหรือ Office โดยจะอ้างอิงจากเว็บไซด์จัดอันดับและ Review Gadget ที่ได้ไปหาข้อมูลมาเช่น lifewire.com , rtings.com เป็นต้น โดยจอทั้งหมดที่จะกล่าวถึงเป็น Technology แบบ IPS(In-Plane Switching) ซึ่งจะมีสีที่แม่นยำไม่ว่าจะมองจากมุมไหนของจอภาพ Xiaomi Monitor Redmi C1 ขนาด: 23.8 นิ้ว ความละเอียด: Full HD (1920×1080) Refresh …

แนะนำจอ Monitor เขียนโปรแกรม 2022 Read More »

ไฟ-led-เส้น-ถนอมสายตา

ถนอมสายตาด้วย ไฟ LED เส้น ดูแลดวงตาก่อนจะสาย

ไฟถนอมสายตา ไฟ LED เส้น หรือ Led Light Strip นั้นสามารถช่วยถนอมสายตาจากการดู TV หรือใช้คอมพิวเตอร์ได้ โดยไฟ LED เส้น หรือ Led Light Strip นั้นไม่ได้มีไว้เพื่อความสวยงามเท่านั้นแต่ยังช่วยถนอมสายตาของเราในการทำงานกับจอคอมพิวเตอร์หรือดู TV ได้อีกด้วย การมีไว้ใช้ประกอบกับ การจัดโต๊ะทำงานที่ดี จะทำให้โต๊ะดูสวยงามน่าทำงานขึ้นมาเลยล่ะ  ทำไม ไฟ LED เส้น ถึงเป็นไฟถนอมสายตา และสามารถช่วยถนอมสายตาได้ล่ะ? ก่อนอื่นต้องเข้าใจการทำงานของตามนุษย์กันก่อน ทำไมการจ้องจอภาพถึงทำให้ตาของเราล้า? ตาของคนเราจะปรับระดับการรับแสงให้เข้าภาพและสภาวะที่เรามองไป ณ ขณะนั้น การที่เราจ้องไปยังจอคอมพิวเตอร์หรือจอทีวีนั้น ตาของเราไม่ได้ปรับแสงให้เข้ากับความสว่างขอจอทีวีเพียงอย่างเดียว แต่หากปรับการรับแสงให้พอดีกับความสว่างของบริเวณรอบๆจอภาพที่เรามองอยู่ด้วย ดังนั้นถ้าห้องที่เรามองดูจอคอมพิวเตอร์หรือ TV นั้นมืด หรือมีความสว่างโดยรวมน้อยกว่าจอภาพ ก็เหมือนกับการที่ตาของเราจ้องไปยัง รูปสี่เหลี่ยมสว่างๆที่ลอยอยู่ในความมืด ซึ่งสิ่งที่กล่าวมานั้นทำให้เกิดปัญหาขึ้นสองอย่าง คือเราจะมองจอภาพได้ไม่คมชัดเท่าที่ควร และ ดวงตาของเราจะล้าได้ง่าย โดยอาจเกิดอาการตาแห้งหรือมีน้ำตาซึมๆ ถ้าคุณกำลังมีปัญหากับสายตา ก่อนที่จะไปหาแพทย์ ลองสังเกตดูว่าบริเวณที่เราใช่เวลาจ้องไปเป็นเวลานานนั้น มีการจัดแสงอย่างเหมาะสมหรือไม่ ถ้าจัดแสงได้เหมาะสมก็เหมือนเราแก้ปัญหาที่ต้นเหตุ โดยไฟ …

ถนอมสายตาด้วย ไฟ LED เส้น ดูแลดวงตาก่อนจะสาย Read More »