By Arnon Puitrakul - 23 ธันวาคม 2014
จากเรื่องที่แล้วเราได้เรียนเรื่องของ Class กับ Object ไปแล้วว่ามันต่างกันยังไง ใช้งานยังไง
วันนี้เรื่องสั้นๆครับ นั่นคือเรื่องของ Input & Output นั่นเอง
ก่อนอื่น เราพูดถึงเรื่องของการเอาข้อมูลออกโดยใช้คำสั่งตามข้างล่างนี้เลย
System.out.println(“Write Sth”);
คล้ายๆ printf บนภาษา C เลย เห็นมั้ย ไม่ยากอย่างที่คิด
แต่จริงๆแล้วคำสั่ง **Print **นั้นไม่ได้มีแค่ println แต่มันมีอีกเยอะเลย เช่น **printf **(ตัว printf ผมมีตัวอย่างให้ใน Source Code แล้ว) ส่วนตัวที่เหลือให้ลองไปดูใน Doc ของตัว Java
ถัดมาเป็นเรื่องของการเอาข้อมูลเข้าหรือ **Input **อันนี้จะซับซ้อนกว่า **Input **นิดหน่อย เราจะต้องสร้าง Object **นิดหน่อย **ก่อนอื่นเราจะต้อง Import Library เข้ามาก่อน โดยเพิ่ม
Import java.util.Scanner;
ไว้บนหัวโปรแกรมก่อน หลังจากนั้น เราต้องมาสร้าง Object จาก Class ชื่อ Scanner กัน
Scanner sc = new Scanner (System.in);
ถ้าจำไม่ได้ให้กลับไปอ่าน EP.2 แล้วจะเข้าใจ โค๊ตด้านบนนี้ เราสร้าง Object ชื่อ sc จาก Class Scanner ขึ้นมา
หลังจากเราได้ Object ชื่อ sc เข้ามาแล้ว ทีนี้เราจะมาใช้ Object ตัวนี้กัน
String name = sc.nextLine();
ด้านคือโค๊ตตัวอย่าง มาอธิบายโค๊ตกัน
เราสร้างตัวแปรชื่อ name ที่เป็น String ขึ้นมา แล้วให้ค่ามันคือ ให้ Object sc ไปรับค่าจาก Keyboard มาทั้งบรรทัด (อารมณ์เหมือนกับ gets() ในภาษา C เป๊ะเลย)
ไม่ยากเลย แค่เปลี่ยนจาก nextLine เป็น nextInt เท่านั้นเองใช้ได้เหมือนกัน
สุดท้าย หลังจากใช้ Scanner เสร็จแล้วอย่าลืมปิดมันด้วยโดยเรียก Method close จากตัว Object Scanner ที่เราสร้าง ในที่นี้ผมใช้ชื่อ Object ว่า sc เพราะฉะนั้นโค๊ตควรจะเป็นอย่างด้านล่าง
sc.close();
Source Code :https://drive.google.com/folderview?id=0BwrPA9Miv4o2WmRERjg2ZGRrREk&usp=sharing
Obsidian เป็นโปรแกรมสำหรับการจด Note ที่เรียกว่า สารพัดประโยชน์มาก ๆ เราสามารถเอามาทำอะไรได้เยอะมาก ๆ หนึ่งในสิ่งที่เราเอามาทำคือ นำมาใช้เป็นระบบสำหรับการจัดการ Todo List ในแต่ละวันของเรา ทำอะไรบ้าง วันนี้เราจะมาเล่าให้อ่านกันว่า เราจัดการะบบอย่างไร...
อะ อะจ๊ะเอ๋ตัวเอง เป็นยังไงบ้างละ เมื่อหลายเดือนก่อน เราไปเล่าเรื่องกันขำ ๆ ว่า ๆ จริง ๆ แล้วพวก Loop ที่เราใช้เขียนโปรแกรมกันอยู่ มันไม่มีอยู่จริง สิ่งที่เราใช้งานกันมันพยายาม Abstract บางอย่างออกไป วันนี้เราจะมาถอดการทำงานของ Loop จริง ๆ กันว่า มันทำงานอย่างไรกันแน่ ผ่านภาษา Assembly...
นอกจากการทำให้ Application รันได้แล้ว อีกเรื่องที่สำคัญไม่แพ้กันคือการวางระบบ Monitoring ที่ดี วันนี้เราจะมาแนะนำวิธีการ Monitor การทำงานของ MySQL ผ่านการสร้าง Dashboard บน Grafana กัน...
จากตอนที่แล้ว เราเล่าในเรื่องของการ Harden Security ของ SSH Service ของเราด้วยการปรับการตั้งค่าบางอย่างเพื่อลด Attack Surface ที่อาจจะเกิดขึ้นได้ หากใครยังไม่ได้อ่านก็ย้อนกลับไปอ่านกันก่อนเด้อ วันนี้เรามาเล่าวิธีการที่มัน Advance มากขึ้น อย่างการใช้ fail2ban...