0Pricing
Java Academy · บทเรียน

การเขียนโปรแกรมเชิงป้องกัน

เรียนรู้การเขียนโปรแกรมเชิงป้องกัน: ตรวจสอบอินพุต หลีกเลี่ยงค่า null และหยุดทำงานตั้งแต่เนิ่น ๆ พร้อมข้อยกเว้นที่ชัดเจน

การเขียนโปรแกรมเชิงป้องกัน เป็นบทเรียน Java Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Java Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Java Academy มีบทเรียนทั้งหมด 3 บทเรียน

บทนำ

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

ตรวจสอบข้อมูลขาเข้า

ตรวจสอบอาร์กิวเมนต์ตั้งแต่เริ่มต้นเมธอด หากข้อมูลขาเข้าไม่ถูกต้อง ให้โยนข้อยกเว้นทันทีแทนที่จะดำเนินการต่อด้วยข้อมูลที่ไม่ถูกต้อง

โค้ด: ตรวจสอบข้อมูลขาเข้า

เมธอดนี้ตรวจสอบตัวส่วนและโยนข้อยกเว้นแทนการหารด้วยศูนย์

public class Main {
  static int divide(int a, int b) {
    if (b == 0) {
      throw new IllegalArgumentException("Denominator must not be zero");
    }
    return a / b;
  }
  public static void main(String[] args) {
    try {
      System.out.println(divide(10, 0));
    } catch (IllegalArgumentException e) {
      System.out.println("Caught: " + e.getMessage());
    }
  }
}

หลีกเลี่ยงค่าว่าง

หลีกเลี่ยงการส่งคืนหรือรับค่าว่าง แต่ให้ใช้คอลเลกชันว่าง ค่าเริ่มต้น หรือค่าทางเลือกแทน เพื่อลด NullPointerExceptions

โค้ด: ตรวจสอบค่าว่าง

ในที่นี้เราตรวจสอบค่าว่างและโยนข้อยกเว้น แทนที่จะปล่อยให้เกิด NullPointerException ในภายหลัง

public class Main {
  static String upper(String s) {
    if (s == null) {
      throw new IllegalArgumentException("String must not be null");
    }
    return s.toUpperCase();
  }
  public static void main(String[] args) {
    try {
      System.out.println(upper(null));
    } catch (IllegalArgumentException e) {
      System.out.println("Caught: " + e.getMessage());
    }
  }
}

โค้ด: หยุดทันทีเมื่อพบข้อผิดพลาด

หยุดทันทีเมื่อพบข้อผิดพลาด: ตรวจพบปัญหาทันทีพร้อมข้อผิดพลาดที่ชัดเจน วิธีนี้ช่วยป้องกันจุดบกพร่องที่ทำให้สับสนในภายหลัง

public class Main {
  static int[] makeArray(int size) {
    if (size < 0) {
      throw new IllegalArgumentException("Size must be non-negative");
    }
    return new int[size];
  }
  public static void main(String[] args) {
    try {
      makeArray(-5);
    } catch (IllegalArgumentException e) {
      System.out.println("Caught: " + e.getMessage());
    }
  }
}

ตรวจสอบการเขียนโปรแกรมเชิงป้องกัน

คำถามตรวจสอบอย่างรวดเร็ว: เป้าหมายสำคัญของการเขียนโปรแกรมเชิงป้องกันคืออะไร

ทบทวน

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

คำถามที่พบบ่อย

บทเรียน “การเขียนโปรแกรมเชิงป้องกัน” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การเขียนโปรแกรมเชิงป้องกัน” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Java Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Java Academy มีบทเรียนทั้งหมด 3 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การเขียนโปรแกรมเชิงป้องกัน”

เรียนรู้การเขียนโปรแกรมเชิงป้องกัน: ตรวจสอบอินพุต หลีกเลี่ยงค่า null และหยุดทำงานตั้งแต่เนิ่น ๆ พร้อมข้อยกเว้นที่ชัดเจน คุณปฏิบัติ Java Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Java Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Java Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 3 บทเรียน

บทเรียน “การเขียนโปรแกรมเชิงป้องกัน” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Java Academy นี้ได้ไหม

ได้ บทเรียน Java Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การโยนและข้อยกเว้นแบบกำหนดเอง
  2. try-with-resources (AutoCloseable)
  3. การเขียนโปรแกรมเชิงป้องกัน
← กลับไปที่ Java Academy