Full-Stack คืออะไร ?
Back-End / Front-end คืออะไร?
คนที่กำลังจะเข้าวงการ developer หรือยังไม่ได้เข้าวงการก็ตามที ก็จะมีคำถามนี้อยู่ในใจเสมอๆ Full-stack คืออะไร ..
ทันทีที่เราเปิด Internet พิมพ์ URL ของ website กดเข้าปั๊บ … เว็บไซต์ที่ปรากฏอยู่ตรงหน้าเรานั้น โหลดข้อมูลมหาศาลมาแสดงผลภายในระยะเวลาอันรวดเร็ว แถมบางเว็บไซต์ ตัวเว็บยังมีการประมวลผล คิดนู่นคิดนี่ เยอะแยะมากมาย ก่อนที่จะมีการแสดงผลให้เราได้ชมกัน
ทราบไหมว่า ก่อนที่เว็บไซต์เว็บนึง จะมาถึงมือเรา ต้องผ่านมือคนผลิตมากี่คนกัน แล้วใครทำหน้าที่อะไรบ้าง? วงการทำเว็บไซต์ ก็เหมือนกับวงการอื่นๆ Creative Director ก็ทำหน้าที่คนละส่วนกับ Copywriter หรือเอาง่ายๆ ชาวไร่ก็ไม่เหมือนกับชาวนาครับ (เล่นโง่มาก ถถถถถ) เรามาดูกันดีกว่าว่า แค่ “เว็บไซต์” เนี่ย มันแตกแขนงไปได้กี่สาย แล้วใครมีชื่อตำแหน่งว่าอะไร แล้วทำอะไรบ้าง แล้ว Full-stack คืออะไร กันแน่?
Front-End Developer คือใคร ?
คนนี้ทำหน้าที่ประดิษฐ์ทุกอย่างที่มีส่วนโต้ตอบกับผู้ใช้หรือผู้ชมครับ
ข้อความทุกข้อความ ปุ่มทุกปุ่ม รูปภาพ ขนาดของ elements เว็บไซต์ พอดีกับหน้าจอคอมพิวเตอร์ไหม อยู่บนโทรศัพท์มือถือแล้วดูแปลกหรือเปล่า คนนี้เลยครับต้องรับผิดชอบ ทักษะพื้นฐานที่ต้องมีก็คือ ต้องเขียนภาษา HTML / CSS / JavaScript ได้ และถ้าสามารถใช้ Framework สำหรับการแสดงผลบางตัวได้ก็จะดีมาก เช่น AngularJS, ReactJS หรือ VueJS ครับ (จารย์ไปป์มีแพลนจะสอน VueJS เร็วๆ นี้ ส่วนตัวใช้แล้วชอบมากๆ) ถ้าสามารถเขียน API ดึงข้อมูลจากฝั่ง Back-end มาเชื่อมต่อได้ด้วยล่ะก็ จะเป็นที่ต้องการของตลาดมากๆ เลยทีเดียว
ถ้าเปรียบเทียบกับการสร้างบ้านแล้ว ถ้า Back-End Developer คือ วิศวกร หรือ สถาปนิก ที่ต้องคำนวนโครงสร้างของตัวบ้าน มาให้แข็งแรงและลงตัวแล้ว Front-End Developer ก็จะเป็นเหมือน “มัณฑนศิลป์” ที่จะมาทำหน้าที่ตกแต่งภายใน จัดวางเฟอร์นิเจอร์ต่างๆ ให้สวย มีสไตล์ และฟังก์ชั่นเพียบพร้อมนั่นเองครับ! จากประสบการณ์ส่วนตัวนะครับ (ขออภัยหากความจริงแล้วเป็นอีกอย่างหนึ่ง แต่ผมเจอมาอย่างนี้) Front-End Developer ค่อนข้างขาดตลาดครับ ในเมืองไทย ณ ตอนนี้ โดยเฉพาะ Front-End เก่งๆ หายากยิ่งกว่าเพชรเลย เพราะฉะนั้น ถ้ารู้ตัวว่าตัวเองพอจะมีหัวเรื่อง Design อยู่บ้าง และพอจะมีความรู้เรื่อง UI/UX (ออกแบบ Interface ให้สวยงาม และผู้ใช้ไม่เหนื่อย ไม่งง ที่จะใช้งาน) ก็หันมาทางนี้เถอะครับ ตลาดจะได้สมดุลบ้าง
คำเตือน! ขายของ! สำหรับใครที่สนใจจะเป็น Front-End Developer พลาดไม่ได้เด็ดขาดกับคอร์ส Front-End Warrior ของเรานะครับ 🙂
Back-End Developer คืออะไร ?
ก็พอจะเดาได้จากชื่อแล้วนะครับ มีข้างหน้าบ้านก็ต้องมีข้างหลังบ้านครับ …
Back-End Developer ทำหน้าที่วางระบบด้านหลังทั้งหมด ข้อมูลจะวิ่งจากไหนไปไหน ด้วยวิธีอะไร โครงสร้างเป็นอย่างไร ระบบความปลอดภัย ชนิดของฐานข้อมูลที่ใช้เก็บข้อมูล ฯลฯ เปรียบกับวงการสร้างบ้าน ก็ วิศวกร นี่เองครับ เว็บไซต์จะทำงานได้ หรือจะพัง ก็อยู่ที่คนนี้เลยครับ ถ้า Front-End Developer ออกแบบเว็บไซต์ซะสวยเลย แต่พอกดๆ ไปแล้ว เว็บบึ้ม (Error) คนนี้แหละครับ ที่ต้องรับผิดชอบ :p
ทักษะเบื้องต้นที่ใช้ จะเป็นทักษะการเขียน Flow Chart, ER Diagram เพื่อการวางระบบครับ ก่อนจะออกรบจริงๆ ก็ต้องรบบนกระดาษให้ชนะก่อน จริงไหม?
จากนั้น เมื่อมาถึงภาษาที่ใช้เขียน… ไม่รู้ว่าจะเรียกว่าโชคดี หรือโชคร้ายกันแน่ ที่ Back-End Developer นี้ มีภาษาให้เลือกเขียนเยอะแยะไปหมด แต่ละตัวก็จะมีข้อดี-ข้อเสียที่แตกต่างกันไป Back-End Developer ที่ดี ก็ควรเลือกภาษาที่เหมาะกับงานที่ใช้ครับ (ถ้าเขียนเป็นหลายภาษานะ) ถ้าให้ไล่ชื่อมาก็เช่น PHP, Ruby, Python, Java หรือกระทั่ง .Net ครับ นั่นแค่ตัวภาษาเองฐานข้อมูลที่ไว้ใช้เก็บข้อมูลอันมหาศาลก็มีให้เลือกอีกมากมาย ข้อดี-ข้อเสีย ไม่เหมือนกันอีกแล้ว ลองไล่ดูครับ: MySQL, Oracle, SQL Server, MongoDB และอื่นๆ อีกมากมาย …
Framework? ก็คล้ายกับ Bootstrap ของฝั่ง Front-End แหละครับ ของเล่น/ตัวช่วย ของฝั่ง Back-end ก็มีให้เลือกเล่นกันจนไม่รู้เบื่อเช่นกัน: Laravel, Rails, Zend, Symfony, CakePHP, CodeIgniter, Spring Framework และอื่นๆ … คำเตือน! ขายของล่วงหน้า! ไอ้พวกภาษาหรือ Framework ที่ไล่ๆ ชื่อมานี้ ทาง BCD Academy มีโครงการทำคอร์สในอนาคตหลายตัวมากครับ จับลูกกะตาดูกันไว้ให้ดีนะครับ ^_^
Full-Stack คืออะไร ?
อธิบายสั้นมากครับ — คนนี้ทำได้ทุกอย่างที่ Front-End และ Back-End ทำได้ครับ รวมอยู่ในตัวคนเดียวเลย
สรุปว่า โลภ นั่นเองครับ จบ ถถถ
ตอนนี้ ผม จารย์ไปป์แห่ง BCD Academy กำลังปั่นคอร์ส PHP และ Laravel ซึ่งจะนำพวกท่านเข้าสู่วงการ Back-end development นะครับ
ทันทีที่ท่านเรียน Front-end และ Back-end จบ ท่านก็พร้อมจะทำงานเป็น Full-stack developer ได้ทันที
เงินเดือนเดี๋ยวนี้หลักแสนซะด้วยนะ 😉
แล้วจะรีบมาอัพเดทเรื่องคอร์สนะครับ