[Data Structure] Net. Data Structure (ตัวอย่าง)

โจทย์ จงจัดเก็บข้อมูลนิสิตได้แก่ รหัสนิสิต, ชื่อนิสิต, คะแนนสอบกลางภาค, คะแนนสอบปลายภาค, คะแนนควิช, คะแนน Project และ คะแนนเข้าห้องเรียง โดยใช้ ArrayIndexList จาก Library ของ Net. Data Structure การออกแบบ และสิ่งที่ต้องรู้  ArrayIndexList คือ โครงสร้างข้อมูล List หรือ Queue ซึ่งมีการจัดการข้อมูลแบบ FIFO (First In First Out) ง่ายๆเลย คือ ใครมาก่อนได้ก่อนนั้นเอง ตัวอย่างเช่น การเข้าแถวซื้ออาหาร Class ListTestNet เป็น Main ทำหน้าที่ทดสอบการใช้งาน โดยมีหน้าที่ต่างๆ ได้แก่ เพิ่มข้อมูล ดึงข้อมูลออก ตรวจสอบว่า List ว่าง หรือไม่ ลบข้อมูล แก้ไขข้อมูล แสดงขนาดของ List ออกจากโปรแกรม Class Student เป็น Data Class ไว้จัดเก็บข้อมูลนิสิต

[Data Structure] Net. Data Structure (แนะนำ)

UPDATE 2021: เว็บ net3.datastructures.net หายไปแล้วครับ … สิ่งที่ควรรู้ เมื่อ Download มาศึกษาไฟล์ java ซึ่งมีนามสกุล .jarQ: ไฟล์ .jar มัน คือ อะไรA: เป็นไฟล์ที่รวมรวมคลาสต่างๆเอาไว้ภายใน ให้เป็นกลุ่มๆ เหมือนไฟล์ .zip หรือ .rar มันเป็นคนละส่วนกับของที่มีแล้วใน java.util โดยในส่วนของ Net. Data Structure จะรวบรวมไฟล์ต่างๆ โดยจะมีในส่วน interface และการ implement ใช้งานในส่วนต่างๆ ซึ่งถ้าอยากรู้เราสามารถที่จะใช้โปรแกรมพวก java decomplier หรือ Download Source Code ศึกษาได้ เพื่อศึกษาการทำงานของ Data Structure แต่ละแบบว่ามีแนวคิด และการทำงานอย่างไร มันไม่ใช่ .net framework ของทาง microsoft

[Java] อยากรู้ Directory ของโปรแกรมที่เราทำงานอยู่

เมื่อทำงานที่เกี่ยวกับไฟล์ ไม่ว่าจะเป็นไฟล์รูป เท็กซ์ไฟล์ หรือไฟล์แบบอื่นๆ สิ่งที่สำคัญที่จะขาดไม่ได้เลยนั้น คือ Path ที่อยู่ของไฟล์ สำหรับนักพัฒนาโปรแกรมมือใหม่อาจจะยังไม่ใส่ใจเรื่องนี้ หรือคิดเพียงว่าเครื่องเราแสดงผล OK เป็นใช้ได้ แต่ปัญหาจะมาเกิดตอนไปรันที่เครื่องอื่นๆ เช่น กรณีตัวอย่าง โปรแกรมตัวอย่างนี้เป็นเกม Hang man ที่พัฒนาด้วยภาษา Java ซึ่งมีการกำหนด Path ของภาษา Background ตาม Code ต่อไปนี้ เมื่อนำรันที่เครื่องของน้อง กุ๊ก ปรากฏว่าสามารถแสดงผลได้สวยงาม ดังรูป น้อง กุ๊ก ส่งให้นายแว่นตรวจสอบปรากฏว่าภาษาพื้นหลังไม่ขึ้น ซวยและทีนี้ (นายแว่นวางไฟล์ไว้ในไดร์ฟ D) ปัญหา  เพราะโปรแกรมมีการกำหนดแบบ absolute path (กำหนดที่อยู่ไฟล์แบบละเอียด บอกว่าอยู่ไดร์ฟไหน อะไรอย่างไร) แนวทางแก้ไข เราปรับเปลี่ยน path ของรูปภาพ จากเดิมที่เป็น absolute path มาเป็นแบบ relative path (กำหนดทีอยู่ไฟล์แบบคร่าว คือ ส่วนแรกให้คอมมันหาให้ + ส่วนที่สอง คือ แสดง Path ไปหาไฟล์) absolute path “” relative path dirPath+”” ซึ่งเราจะต้องมาหาว่า dirPath ต้องเอาอะไรมาใส่ดี มารู้จักกับ System.getProperty(“user.dir”); คือ อะไร getProperty(): เป็นคำสั่งที่ช่วยค่า property ต่างๆของระบบปฏิบัติการออกมา “user.dir”: เป็น Parameterที่ช่วยบอกให้โปรแกรมมันไปดึง Path ที่อยู่ของโปรแกรม หรือไฟล์ Java ที่รันอยู่ ว่าอยู่ในโฟลเดอร์ไหน ไดร์ฟอะไร ทดสอบแก้ไขโดยการใช้ System.getProperty(“user.dir”); เพื่อเอาข้อมูล path ทีหายไปมาใส่ใน dirPath ตาม code ต่อไปนี้ ผลการทดสอบ โปรแกรมนี้สามารถแสดงผลได้อย่างสวยงาม และสามารถรันได้ทุกเครื่องแม้วามีสภาพแวดล้อมที่ต่างกัน สรุป จากตัวอย่างนี้จะแสดงการใช้คำสั่ง System.getProperty(“user.dir”); เพื่อมาหา Path…

[WF] Windows Workflow Foundation คือ อะไร

Windows Workflow Foundation เป็นหนึ่งในเทคโนโลยีที่มาคู่กับ Microsoft .Net Framework 3.0 เป็นต้นไป โดยมีจุดประสงค์ เพื่อตอบการทำงานขององค์กรที่มีการไหลเวียนของข้อมูลในรูปแบบต่างๆ อาทิ เช่น แบบ Sequential: มีการไหลของข้อมูล โดยมีลำดับขั้นตอนแน่นอนจากต้นไปจนจบ ยกตัวอย่าง เช่น ลำดับการขออนุมัติสินเชื่อในธนาคารที่ต้องมีการทำงานของ แต่ละแผนก ซึ่งมีลำดับการทำงาน การตรวจสอบที่แน่นอน แบบ State: ไม่มีลำดับขั้นตอนที่แน่นอน แต่จะเปลี่ยนการกระทำต่อเมื่อมีสิ่งเร้ามากระตุ้น ยกตัวอย่าง เช่น การตรวจสอบ Limit ของ Transaction ที่รายการซื้อใน แต่ละวันมีปริมาณไม่เท่ากัน และอาจะเกิดเหตุการณ์ต่างๆที่แตกต่างกัน ได้แก่ การแจ้งเตือน หยุดการซื้อ/ขาย หรือ แนะนำให้ผู้ใช้รอก่อน เป็นต้น Windows Workflow Foundation มักถูกนำมาประยุกต์ใช้กับงานด้าน Business ทีมีการเปลี่ยนแปลงของ Process อยู่ตลอดเวลา ซึ่งต้องมี input ที่แน่นอน แต่ output ที่ได้มีลักษณะเป็น Dynamic แตกออกมาได้หลากหลายรูปแบบ

[WordPress] share บทความเพียงแค่คลิกด้วย Simple Share Button

สมัยนี้อะไรๆ ก็ Like & Share กันหมด ถ้าบทความของเราผู้อ่านต้อง copy link ไปแปะลง Social Network เพื่อแชร์ให้ผู้อื่นเพื่อนของเขาได้ชมบทความของเราคงไม่ดีแน่ เราต้องช่วย User (ตั้งสมมติฐานว่า User ขี้เกียจ) โดยวันนี้ผมมี Plugin มาแนะนำครับ Simple Share Buttons Adder ให้ทุกเรื่องแชร์ง่ายเพียงคลิกครับ ข้อมูล Plugin Simple Share Buttons Adder ทำไมถึงแนะนำ Plugin ตัวนี้ ปรับแต่งการตั้งค่าได้เยอะ สามารถแสดง Social Network ที่ให้แชร์ได้หลายหลาย และลำดับการแสดงผลได้เอง สามารถแสดงจำนวนคนแชร์ได้ด้วย

[WordPress] ทำ Image Viewer สวยๆด้วย Responsive LightBox

หลายครั้งเวลาเราเขียนบทความลงใน Blog บางบทความมีรูปภาพประกอบด้วย ซึ่งบางภาพเล็กไป ต้องให้ผู้ใช้กดดูรูป พอกดดูเท่านั้นแหละ มันดันเปิด Tab ใหม่ขึ้นมา หรือ เปลี่ยนหน้าไปเลย วันนี้ผมมี Plug in มาแนะนำครั้ง Responsive LightBox (พระเอกของเราเลย) ช่วยให้การแสดงผลภาพในบล๊อกดูดีมีระดับมีชาติตระกูล ข้อมูล Plugin Responsive LightBox ทำไมถึงแนะนำ Plugin ตัวนี้ สวยงาม เป็นresponsive (การปรับแสดงผลบนเว็บให้เหมาะสำหรับหน้าจอหลายๆแบบทั้ง SmartPhone, Tablet และคอมพิวเตอร์ที่มีจอขนาดต่างๆ) ฟรี

[WordPress] นำ Facebook Fanpage มาติดใน WordPress

ในยุคนี้อะไรก็ Social Network กันหมด หากอยากจะโปรโมทอะไรสักอย่างบนเว็บทางที่ดีที่สุด คือ ทำ Fan Page และวันนี้ผมนำเสนอวิธีการเพิ่ม Like Box มาลงใน WordPress ของเรา เพิ่มโปรโมทให้คนรู้จักครับ เข้าไปที่เว็บไซต์ เราพบช่องให้กรอกรายละเอียดสำหรับ Fan Page เราดังนี้ Facebook Page URL: ลิงค์ Fan Page ของเรา ตัวอย่างที่ใช้จะเป็น  Width: ความกว้างของ Like Box High: ความสูงของ Like Box Color Scheme: Theme ของ Like Box มี 2 แบบ ได้แก่ light กับ dark Show Friends’ Faces: แสดงหน้าของคนที่ Like Page เรา Show Post: แสดงโพสล่าสุดบนหน้า Fan Page Show Header: แสดงหัวเรื่อง Show Border: แสดงเส้นขอบ เมื่อกด Get Code แล้ว เราได้ Code สำหรับไปแปะบน WordPress ของเรา กรณีนี้ให้เลือกเป็น iframe และ copy code เก็บไว้ กลับมาที่ WordPress ของเรากัน ให้ไปหน้า Admin >> Appearance >> Widgets และลาก Widget Text มาวางที่ Side Bar และตั้งค่า…

[WordPress] เรียง Category บน Side bar ให้ได้ดังใจนึก

บางครั้งเราอยากจัดหมวดหมู่ของบทความในบล๊อกเราให้เรียงตามตัวอักษร หรือเรียงตามใจเรา แต่มันต้องทำอะไรบ้าง มี 2 วิธี ได้แก่ แบบที่ 1 ลง plugin เสริม แนะนำให้ใช้ตัวนี้ My Category Order (จิ้มเลย) จัดเรียงได้ตามใจ แต่มีผลกับ Theme ของเราในเรื่องของฟอนต์ และการ Design Category Order (จิ้มเลย) ตามความเห็นส่วนตัว ไม่แนะนำใช้ใช้งาน เพราะตัว plug-in ไม่ได้รับการอัปเดตมานานแล้ว ซึ่งอาจจะทำให้เกิดปัญหากับ WordPress เวอร์ชันใหม่ๆได้ Category Order and Taxonomy Terms Order (จิ้มเลย) จุดเด่น คือ การแก้ไขการจัดเรียงต่างๆ จะไม่สงผลกระทบกับ Theme สามารถตั้งค่าการเรียงของ Category ได้ในไม่กีคลิก สามารถจัดเรียง Category ได้โดยเข้ามาที่ Post >> Taxonomy Order >> จากนั้นกดลาก Category เอามาจัดเรียงได้ตามต้องการเลย แบบที่ 2 Hard code แก้ในไฟล์ Sidebar.php ของ Theme แก้ไขตรงส่วน [php]<php wp_list_categories(‘orderby=ID’);> [/php] รูปแบบการเรียงมีอยู่ ดังนี้ ID name – Default slug count term_group อ้างอิงข้อมูล: 

[SQL Server] เชื่อหรือไม่ว่า SQL เอาตัวเลขมาลบกันได้

Microsoft SQL Server

พอดีวันนี้งานที่ทำมีโจทย์ให้ว่าให้หาข้อมูลการซื้อ(BUY) และข้อมูลการขาย (SELL)  ณ ช่วงเวลาหนึ่ง เพื่อหาจำนวนสินค้าที่มีเรามีถืออยู่ (On Hand) ข้อมูลโครงสร้างตารางต่างๆ อ้างอิงจากหัวข้อที่ผ่านมา เตรียมข้อมูล ความต้องการ(โจทย์) จากข้อมูลการซื้อ(BUY) และข้อมูลการขาย (SELL)  ณ ช่วงเวลาหนึ่ง(ระหว่างวันที่ 01-OCT-2013 ถึง 10-OCT-2013) เพื่อหาจำนวนสินค้าที่มีเรามีถืออยู่ (On Hand) วิธีการแก้ปัญหา หากติดความจากโจทย์เราสามารถแบ่งออกเป็น Query ย่อยๆ ได้ดังนี้ สรุป ภาษา SQL ทำอะไรได้มากกว่าที่คุณคิด เพียงแค่ต้องรู้จักลองและทดสอบ จากตัวอย่างนี้หลักทีใช้ คือ Keyword AS, Operator minus และทริกการ SELECT ซ้อนกัน ถ้าหากเราเอาไปเขียนโปรแกรม ต้องมี Loop เพิ่มเพื่อหาผลรวมอีก ซึ่งหากมีข้อมูลเยอะๆประมาณ 100,000 รายการแล้ว เราจะพบถึงความแตกต่างในแง่ของความเร็วอย่างชัดเจน