โปรแกรมมิ่งที่ผมชอบ <ณ ปัจจุบัน>
เอาละครับ ก็ผ่านกันมาแล้วประมาณ 1 ปีกว่าตั้งแต่เริ่ม Blog นี้ แต่ละวัน แต่ละเดือนที่ผมทำ ผมมักจะพูดอะไรมากมายเกี่ยวกับ Programming (อย่างน้อยก็มีบ้างและ) คร่าวนี้ผมจะมาวิจารณ์ภาษาที่ผมชอบแล้วแนวทางในการเลือกของผมกัน โดยผมจะเล่าความเป็นมาก่อนว่าทำไมผมถึงเลือกแต่ละภาษา
โดยเลือกถึงความจำเป็นก่อนในการพัฒนาเว็บสมัยนี้ มักจะต้องประกอบด้วยหลายภาษามากมาย ไหนจะต้องเป็นมิตรกับมาตรฐานเว็บ และไหนจะต้องเพิ่มลูกเล่นให้กับเว็บไซค์ดังนั้น เราจะต้องเรียนรู้อะไรหลายอย่างถึงจะทำเว็บได้อย่างมีมาตรฐาน โดยผมได้เลือกเล่นแบบ HTML มากกว่าเล่น Flash ดังนั้นผมเลยต้องรู้ดังนี้เป็นอย่างน้อย
- HTML/XHTML
- Javascript
- CSS
- ภาษาโปรแกรมมิ่งสักภาษาหนึ่ง
อันนี้คือสิ่งที่ผมต้องเรียน ดังนั้นจะสังเกตุว่าเรามีสิทธิ์เลือกจริงๆก็คือ ตัวภาษาโปรแกรมมิ่งสักภาษาหนึ่งนั้นเอง นอกเหนือจากนั้นก็คือพวก Framework ต่างๆที่ทำให้งานเราเสร็จเร็วขึ้นนั้นเอง โดยผมมีวิธีเลือกก็คือ “เขียนง่าย รู้สึกดี ใช้แล้วชอบ ผลงานออกมาเร็ว และก็บำรุงรักษาง่าย” ผมไม่แน่ใจว่าผมได้อิทธิพลมาจากการที่ผมเรียน Software Engineer มารึเปล่า เพราะผมเห็นเรื่องการบำรุงรักษาเป็นเรื่องใหญ่เลย แล้วก็รวมถึงการเขียนที่จะต้องส่งผลต่ออารมณ์ผู้เขียนที่ทำให้อยากเขียนไปเรื่อยๆ เพราะผมไม่ใช่ Programmer เต็มตัว แต่เป็น Software Engineer ผมเลยติดว่าทำยังไงให้ ทำผลงานได้สำเร็จอย่างรวดเร็วและได้ผลลัพธ์ที่มีมาตรฐาน และอีกนัยหนึ่งก็คือผมต้องการเครื่องมือที่มีประสิทธิภาพ และทำให้ผมทำงานได้อย่างมีความสุข
เอาละครับมาถึงตรงนี้ขอพูดถึงภาษาและเฟร์มเวิร์คที่ผมชอบ ณ ปัจจุบันนี้กันเลยนะครับเอาละ
- jQuery เป็น javascript framework ที่ผมต้องพูดถึงทุกครั้ง และไม่ว่ายังไงเจ้าตัวนี้และทำให้ผมสนุกในการเขียน javascript อย่างว่าครับ มันอาจจะไม่ใช่ tools ที่สมบูรณ์นักแต่ว่า มันเป็นตัวที่เขียนง่าย รู้สึกดีัใช้แล้วชอบ ได้ผลงานเร็ว ตามที่ผมชอบ แต่อย่างไรก็ตามในเรื่องของความสมบูรณ์ของการนำ UI Component ยังใช้ยากอยู่นิดหน่อยแต่พอรับได้ และไม่อืด
- PHP เป็นภาษาสำหรับทำงานที่จริงจัง ที่ต้องการความเร็ว ความถูกต้อง ความเป็นมาตรฐาน โดยผมมีความเคยชินกับมันพอสมควรทำให้ ผมเขียนมันได้ดีกว่า ภาษาที่ชอบอื่นๆ แต่ข้อเสียคือการเขียนมันยังไม่สวยงาม อย่างที่ผมอยากได้
- Codeigniter เป็น Framework ที่ดีตัวหนึ่งและนิยมในต่างประเทศแต่ในไทยเขายังนิยม CakePHP กันมากกว่า เหตุผลที่ผมชอบเจ้า CI เนี้ยคือความง่าย และต่อเติมได้ง่าย แล้วเตรียมสิ่งจำเป็นพื้นฐานมาให้พร้อมแล้ว Code เขียนง่ายเพราะยังใช้แบบเดิมๆไถไปได้ง่าย เกิดเว็บได้เร็ว แต่เสียดายที่ยังขาด Object Relational Mapping ซึ่งถ้ามีเจ้าตัวนี้ผมว่า CI เป็น Framework ที่ดีที่สุดสำหรับผมเลยก็ว่าได้
- CSS เป็นสิ่งที่ผมไม่ได้คิดจะอยากเป็นหรอกครับ แต่มันจำเป็นในการทำเว็บซึ่งพอเขียนไปเรื่อยๆ ก็จะรู้ว่ามันไม่ได้ยากมาก แถมรู้สึกสนุกอีกตะหากเมื่อใช้กับ jQuery CSS เนี้ยเอาไว้จัดหน้าตาต่างๆในเว็บและมันเป็นมาตรฐาน ซึ่งเมื่อทำเป็นแล้ว คุณจะรักมันครับ เพราะมันทำให้ Code XHTML/HTML ของคุณสวยงามมาก
- Ruby เป็นภาษารัก ภาษาใหม่ซึ่งผมชอบที่ความสวยงามของภาษา และการเขียนที่สนับสนุนการทำ DRY (Don’t Repeat Yourself) ข้อดีมีมากมาย ไม่ว่าจะเป็นภาษาที่ทำให้ code เราอ่านเหมือนภาษาอังกฤษ ทำให้เรื่องการบำรุงรักษาง่ายขึ้นมากแถมยังเพิ่มขีดความสามารถในการทำงาน (productivity) เพราะมันเขียนน้อยได้เยอะเนี้ยและ
- Ruby on Rails เป็น Framework ทำเว็บสำหรับ Ruby ซึ่งข้อดีมันจะเกิดขึ้นต่อเมื่อเราเป็นแล้วนั้นเอง Rails เป็น Framework ที่เยี่ยมยอดมากครับ ถ้าเราเข้าในใน Concept แล้วก็วิธีการใช้งานแล้ว คุณจะรักมันครับ แต่ข้อเสียก็เยอะอยู่ Learning Curve ช่วงแรกถือว่ายาก พอสมควรเลยครับ แถมการนำขึ้น server (deploy) ก็ยังยากกว่า PHP
โดยจริงๆแล้วผมก็เคยจับ Python มาแปปนึง (แปปจริงๆไม่เกิน 2 อาทิตย์) ซึ่งพอเจอ Ruby ต้องขอบอกทันทีว่าผมถูกจริตกับการเขียนด้วย Ruby มากกว่า แล้วตอนนี้ผมก็แน่ใจว่า I say no to Python and say yes to Ruby อนาคตก็ยังไม่แน่นอนว่าจะเรียนภาษาอะไรเพิ่ม แต่ผมว่าในช่วง 1 ปีผมคงยังไม่เปลี่ยนแน่ๆ แต่ผมก็ต้องขอบอกว่าภาษาที่ทำให้ผมเขียนได้ดีและเก่งขึ้นมากๆ ก็คงหนีไม่พ้นภาษา Java ซึ่งเป็นภาษาครูเลยก็ว่าได้ ถ้าไม่มี Java มาก่อนผมว่าการเขียน code ของผมก็ไม่พัฒนาได้เร็วขนาดนี้
และขอฝากถึงทุกๆคนที่พึงเริ่มหรือกำลังหาสิ่งที่ชอบ ว่าศึกษาไปเรื่อยๆจนกว่าจะสิ่งที่เรียกว่าใช้นะครับ แต่ในการทำงานจริงๆแล้ว เขาจะใช้ภาษาที่เ้หมาะสมกับงาน แต่สำหรับผมแล้ว มันไม่สำคัญเลย เพราะผมอยากทำในสิ่งที่ผมชอบและใจรักมากกว่า และผมจะทำมันให้ดีที่สุด
งานที่ล้ำเลิศเกิดจากความรักในการทำงานนั้น
ปล. อยากให้ทุกๆคนที่อ่านมา share กันนะครับ
| Tweet |
เนื้อหาคล้ายกันที่น่าสนใจ
