Syntax Checking แบบถูกสุขอนามัยบน Sublime

cover

หัวข้อพูดถึงการเขียนโค้ดแบบถูกสุขอนามัย แค่ดูจากภาพนี้มันต้องถูกสุขอนามัยแน่ๆ (credit http://www.zerochan.net/948521)

 

ก่อนจะเริ่มอ่านบทความนี้ หากใครยังไม่รู้จัก Sublime ขอแนะนำให้อ่านบทความที่แล้วก่อนนะครับ เพื่อความง่ายในการเข้าใจ

สวัสดีทุกคนอีกครั้งนะครับ วันทำงาน/วันเรียน ของทุกคนเป็นยังไงกันบ้างครับ มีความสุขกับ  Errors กันดีมั้ยครับ แต่ถ้าถามผมนี่ สุขทั้งน้ำตาเลยครับ ฮาาา แงงงง

เข้าใจว่าในการเขียนโปรแกรมนั้นปกติทุกคนมักเจอเจอกับปัญหา errors บ้าง โค้ดรันไม่ผ่านบ้าง อะไรพวกนี้กันเป็นปกติอยู่แล้ว โดยเฉพาะพวกที่เขียนภาษาสคริปต่างๆ เช่น PHP, Javascript, Python, etc. เพราะส่วนใหญ่พวกนี้ ไม่ค่อยมี IDE เฉพาะทางให้ใช้กันเท่าไหร่ ฉะนั้น เวลาเขียนโค้ดออกมาเลยไม่ค่อยต่างจากเขียนบน Notepad มากนัก เพราะเราไม่สามารถเทสพวก Syntax error อะไรได้เลย
Continue Reading…

Sublime กับความขี้เกียจ

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

  1. จำ syntax ภาษาไม่ได้
  2. พิมพ์ช้า
  3. ขี้เกียจ

Continue Reading…

Graph Programming

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

พูดถึง Graph Programming ต้องย้อนกลับไปตั้งแต่ผู้เขียนยังเรียนอยู่มหาลัยฯ ปี 2 ซึ่งตอนนั้นผู้เขียนได้เรียนวิชา Data Structure and Algorithm ซึ่งในวิชานั้น ก็มีการสอนถึง Data Structure หลายๆตัว เช่น Queue, Stack, Linklistและก็รวมทั้ง Graph นี้ด้วย แต่สิ่งที่ต่างกันคือ ถ้าเป็น Queue, Stack หรือ Linklistอาจารย์เค้าจะเจาะเข้าไปให้เราดูโค้ด เอาไปใช้งาน แต่พอเป็น Graph กลับมีแค่การอธิบายทฤษฎี และการนำเอาไปใช้ ไม่ได้ลงโค้ด ผู้เขียนจึงได้ไปถามอาจารย์ท่านว่า ทำไมถึงไม่มีการสอนเชิงลึกเกี่ยวกับเรื่องนี้ ซึ่งอาจารย์ท่านก็ได้ตอบกลับมาว่า “เพราะแต่ละคน มีพื้นฐานไม่เท่ากันนะสิ ถึงแม้ว่าแต่ละคน จะเรียนมาเหมือนกัน แต่ในเมื่อสุดท้าย แต่ละคนมีพื้นฐานที่ไม่เท่ากันแล้ว จะสอนเรื่องให้ยากเกินไปเลยไม่ได้”

การรับส่งข้อมูลระหว่างฟอร์มโดยวิธีอย่างง่าย

บทความวันนี้ เป็นคำถามจากทางผู้อ่านถามเข้ามา แต่เผอิญคนเขียน ดันลืมทำช่องให้กรอก Email ตอบกลับซะนี่… ผู้เขียนเลยคิดว่า เขียนเป็นบทความขึ้นมาใหม่เลยดีกว่า ง่ายดี
เรามาดูคำถามกันเลยดีกว่า
สร้างข้อมูลค้นหา mysql จาก VB ค้นหาข้อมูล ที่อยู่ใน mysql โดย link จาก form1 ใส่ข้อมูลที่ค้นหา แล้ว มาแสดงที่ form2 ที่เป็น txtbox นะครับ ทำไงหรอครับ
คำตอบ อันนี้ไม่ยากครับ เหมือนกับการส่ง String จาก form1 เข้าไปแสดงบน control ซักอันบน form2 นั่นแหละครับ ซึ่งเราอาจทำการส่งผ่าน Method ใดๆที่เราสร้างขึ้นมาบน form2 แล้วให้ Method นั้นๆ เรียกใช้ Me.Show()ก็พอแล้วครับ

MySQL (Again) with PHP

สวัสดีกันอีกครั้งในวันร้อนๆ แฉะๆ อีกที วันนี้ หากใครอ่านหัวเรื่องแล้ว และยังพอจำบทความที่แล้วๆกันได้ ก็คงจะนึกขึ้นมาได้ว่า ไอ้คนเขียนมันหากินกับ MySQL อีกแล้วเรอะ!!!ใช่แล้วครับ เราจะกลับมาพบกับ MySQL กันอีกครั้ง แต่ด้วยเทคโนโลยีที่เปลี่ยนไป ลืม .NET ทั้งหลายไปซะ เพราะคราวนี้ เราจะมายำกับ PHP
เอ.. ทำไมต้องเป็น PHP ละ ก็ในเมื่อเราเป็นแบบ .NET ไปแล้ว แถม .NET ก็เอาไปเขียนเว็บเป็น ASP .NET ได้ ไอ้คนเขียนมันจะมาสอนสิ่งที่ทำได้แล้วทำไม??? อ่า…จริงๆแล้วคำตอบของผู้เขียนก็ง่ายๆครับว่าทำไมเราถึงควรรู้อะไรที่มันทับซ้อนกันบ้าง เพราะแม้บางครั้ง เราจะเก่งสุดๆ หรือเซียนมากๆในภาษาใดภาษาหนึ่ง แต่ในหลายๆครั้ง คนที่จะเลือกแนวทางการทำงานของคุณ ก็ไม่ใช่ตัวคุณเอง แต่เป็นเจ้านายของคุณ(เรื่องสมมุติเท่านั้นนะ ไม่ใช่ชีวิตจริงของผู้เขียนเล๊ยยย ไม่เล๊ยยยยยยย TT-TT)

Continue Reading…

คลาสนี้ใครๆก็รัก เข้ามาหาไม่หยุดหย่อน แล้วจะประกาศที่ไหนดีละ โอ้แม่คุณ Static Class

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

Continue Reading…

MySql with C#, VB .NET

Programming Style ใน entry นี้ จะเป็นตอนพิเศษหน่อย คือจะเป็นการสอนการทำการโปรแกรมมิ่งผ่าน Database เบื้องต้น บน .NET Framework ซึ่ง เราจะทำงานบนองค์ประกอบที่ชื่อว่า OLEDB บน ADO.NET โดยจั้งใจเขียนเพื่อเพื่อนในสาขา ที่ไม่เคยได้เรียน VB หรือ C# มาก่อน
ทีนี้ เนื่องจากส่วนใหญ่องค์กร มักจะใช้ฐานข้อมูลที่ฟรี ฉะนั้น ในบทความนี้ เราจะยกตัวอย่างฐานข้อมูล MySQL เข้ามาใช้ในการอธิบาย เพื่อให้สามารถนำไปประยุกต์ใช้ได้โดยง่าย
สำหรับคนที่ต้องการหา MySQL มาลงในเครื่อง ถ้าอยากจะลงง่ายๆ แนะนำให้หา XAMPP มาลง เพราะเผื่ออนาคตต้องศึกษาพวก PHP หรืออะไรที่เกี่ยวกับเว็บ จะได้ใช้ XAMPP เป็นเซิฟเวอร์ในเครื่องได้เลย

Continue Reading…

ความรู้มากมาย แต่เริ่มต้นเขียนโปรแกรมไม่ถูกซักที ตอนที่ 2 – การออกแบบ(2)

หลังจากที่หายไปนาน (ยุ่งๆ + ขี้เกียจ) เรามาต่อตอน 2 กันดีกว่า สำหรับซีรีส์  “ความรู้มากมาย แต่เริ่มต้นเขียนโปรแกรมไม่ถูกซักที” ของเรา

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

Continue Reading…

ความรู้มากมาย แต่เริ่มต้นเขียนโปรแกรมไม่ถูกซักที ตอนที่ 1 – การออกแบบ(1)

ความรู้มากมาย แต่เริ่มต้นเขียนโปรแกรมไม่ถูกซักที ตอนที่ 1 – การออกแบบ(1)

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

Continue Reading…

การเปลี่ยนพฤติกรรมของ Class ขณะ Runtime

ก่อนอื่นในคราวนี้ ผู้เขียนจะขอลองเปลี่ยนไปเขียนเป็น C# แทน เนื่องจากตัว IDE ของ Visual Studio นั้น สามารถออกแบบ GUI(Graphics User Interface) ได้ง่ายกว่า IDE หลายๆตัวของ java มาก โดยผู้เขียน จะพยายามไม่ใช้ความสามารถบางชนิด ที่ภาษาอื่นๆบางภาษาไม่มี เพื่อความสะดวกในการทำความเข้าใจร่วมกัน (คนอ่าน: ไอคนเขียน จะสลับไปๆมาๆทำไมว๊ะ!!! คนเขียน: สลับไปเถอะ โค้ดเหมือนกันจะตาย = =)

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

Continue Reading…