28 ตุลาคม 2557

[Android Dev Tips] สิ่งที่เรียกว่า Development


        ขอแทรกบทความเล็กๆซักหน่อย เนื่องจากไปเจอเหตุการณ์ชวนเงิบเล็กน้อย โดยเฉพาะคนทั่วไปที่หลงเข้ามาอ่าน (ที่ไม่ใช่สาย Geek หรือสาย Dev) และยังเอามาเล่าอะไรให้ฟังเล่นๆได้ด้วย

        เรื่องมีอยู่ว่า

        "อยากเป็น Developer แบบเจ้าของบล็อก อยากจะโมรอมเป็นบ้าง"

        คำถามนี้เกิดขึ้นในกลุ่มหนึ่งบน Facebook ที่เจ้าของบล็อกจำศีลอยู่ เจ้าของบล็อกก็ได้แต่ร้อง เฮ้ย! ไม่ใช่แล้ว! เจ้าของบล็อกเป็น App Developer ไม่ใช่ Rom Modifier นะเฮ้ย!



Developer และ Modifier?

        ก่อนอื่นขอแยกนิยามระหว่างคำสองคำนี้เสียก่อน โดย Developer แปลง่ายๆก็จะเป็น "นักพัฒนา" ส่วน Modifier ก็คือ "นักดัดแปลง"

        สองคำนี้รู้กันอยู่แล้วว่ามันต่างกัน แต่เอาเข้าจริงกลับเป็นอะไรที่เข้าใจกันยาก โดยเฉพาะบนระบบแอนดรอยด์ที่โคตรจะเปิดกว้างมากจนใครๆก็สามารถเข้าถึงมันได้ ดังนั้นเจ้าของบล็อกจะขอแยกแบบง่ายๆเป็นสองแบบคือ App และ Rom

        เจ้าของบล็อกเชื่อว่ามีผู้ที่หลงเข้ามาอ่านคิดว่านักพัฒนาแอพฯจะต้องโมรอมเป็นด้วย และบ่อยครั้งที่เจ้าของบล็อกเจอคนถามและเข้าใจผิดว่าเป็น Developer ก็ต้องโมรอมได้น่ะสิ

        อย่าบอกนะว่าผู้ที่หลงเข้ามาอ่านก็เคยโดนถามแบบนี้!?

        เอาเข้าจริงในแอนดรอยด์นั้นจะแบ่งเป็นสองแบบหลักๆคือ App Developer และ Rom Modifier


App Developer 

        นักพัฒนาแอพฯหรือคนที่เขียนโปรแกรมขึ้นมาเป็นแอพฯซักตัวเพื่อให้ผู้ใช้ดาวน์โหลดไปใช้งานกัน ซึ่งเจ้าของบล็อกก็เป็นหนึ่งในนั้นเช่นกัน (และผู้ที่หลงเข้ามาอ่านหลายๆคนด้วย)


Rom Modifier 

        นักโมรอมหรือเหล่าผู้ใช้ที่ค่อนข้าง Geek หรือ Superuser พอสมควร ที่ดัดแปลงระบบแอนดรอยด์ของเดิมให้เปลี่ยนไปตามใจชอบ เช่น เปลี่ยนภาพใน System UI นู่นนั่นนี่ เป็นต้น


        ซึ่งทั้งคู่นั้นจะมีแนวทางต่างกันไปอย่างสิ้นเชิง เพราะ App Developer ต้องเข้าใจใน Programming รวมไปถึงด้านต่างๆที่เกี่ยวข้องกับ App Development จะเรียกว่า Programmer ก็ว่าได้ แต่สำหรับ Rom Modifier ไม่จำเป็นต้องเข้าใจใน Programming นัก แต่ต้องเข้าใจในตัวระบบแอนดรอยด์เพื่อปรับแต่งไฟล์ในการทำงานของระบบได้

        ดังนั้นขอบอกไว้ ณ ที่นี้เลยว่า "App Developer กับ Rom Modifier มันคนละสายกันเว้ยยยยย"



แบบไหนเก่งกว่ากันล่ะ?

        เป็นคำถามที่ค่อนข้างน่าเบื่อ เพราะเป็นคำถามตูดหมึกที่วัดความเก่งด้วยการเอาชื่อมาเปรียบเทียบ แต่ถึงกระนั้นก็ขอพูดถึงเพื่อดักทางไว้ก่อน

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



กลับมามองที่ตัวคุณเองที่เป็น App Developer 

        บทความนี้ไม่ได้จะมากำหนดหรือแบ่งว่าอันไหนเป็นอะไร เพราะคำว่า Rom Modifier มันไม่มีอยู่จริง (โดนเจ้าของบล็อกหลอกแล้ว~) แต่ที่เจ้าของบล็อกเอามาเล่าให้ฟังก็เพราะว่าคำทั้งสองนี้สื่อความหมายได้ดีกับ App Development ในปัจจุบันนี้


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

        ถึงกระนั้นความสบายก็ย่อมทำให้เกิดความขี้เกียจ ไม่ว่าจะเป็น ไม่สนใจพื้นฐาน ต้องการแต่ตัวอย่าง ทำไม่ได้ก็หาโค๊ดตามเว็ปแล้วทำตาม หรือแม้กระทั่งการซื้อโค๊ด ซึ่งสิ่งที่ได้ก็ได้ออกมาเป็นแอพฯหนึ่งตัวเหมือนกัน

        แต่นั่นเรียกว่า App Development จริงๆหรือ?

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

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

         บอกได้เลยว่าแอพฯที่ประสบความสำเร็จนั้นล้วนมาจากการ Development กันทั้งนั้น หาใช่ Modification แต่อย่างใด


        สุดท้ายก็อยากให้ลองกลับมาดูตัวเองกันว่า

        ผู้ที่หลงเข้ามาอ่านเป็นแบบไหนอยู่?




เหล่าพันธมิตรแอนดรอยด์

Devahoy Layer Net NuuNeoI The Cheese Factory Somkiat CC Mart Routine Artit-K Arnondora Kamonway Try to be android developer Oatrice Benz Nest Studios Kotchaphan@Medium Jirawatee@Medium Travispea@Medium