การเขียนโปรแกรม JAVA Senior : โปรแกรมข้ามแพลตฟอร์มทราบเป็นลายลักษณ์อักษร



ภาษา Java เพื่อเขียนโปรแกรมโดยใช้ข้อได้เปรียบที่ใหญ่ที่สุดก็คือ"การรวบรวมให้เรียกใช้ที่อื่น"แต่ไม่ได้หมายความว่าทุกโปรแกรมจาวามีคุณลักษณะข้ามแพลตฟอร์มในความเป็นจริงส่วนมากของโปรแกรมภาษาจาวาไม่ได้อยู่ในระบบปฏิบัติการอื่น ๆถูกต้องแล้วว่าสามารถเขียนอย่างแท้จริงข้ามแพลตฟอร์มโปรแกรม Java?ดังต่อไปนี้เป็นการเตรียมความพร้อมของข้ามแพลตฟอร์มโปรแกรม Java มีบางสิ่งที่ควรทราบ :

การเตรียมข้ามแพลตฟอร์มโปรแกรมภาษาจาวาคุณสามารถเลือกที่จะ JDK1.0, 1.1,1.2, หรือการสนับสนุนเครื่องมือในการพัฒนา GUI ของพวกเขาเช่น : Jbuilder, Visual วิบูลย์ ฯลฯ แต่ต้องให้ความสนใจในการเขียนโปรแกรมภาษาจาวาของคุณสามารถใช้แพคเกจ Java API หลักถ้าคุณต้องการใช้แพคเกจไลบรารีของบุคคลที่สาม, ห้องสมุดควรแพคเกจที่พัฒนาโดยภาษาจาวาแพคเกจหลักหรือวิธีการในการปล่อยเมื่อคุณมีการสนับสนุนของคลาสไลบรารีจาวาแพคเกจ JVM ประกาศในคำอื่น ๆ โปรแกรมของคุณต้องการให้เป็น 100% บริสุทธิ์ Javaตัวอย่างเช่น, Visual J + + ไม่บริสุทธิ์ Java, Visual J + + โปรแกรมไม่สามารถเขียนในแพลตฟอร์ม

ไม่ว่าคุณจะใช้ JDK หรือเครื่องมือในการพัฒนาอื่น ๆ ที่รวบรวมตัวเลือกเวลาที่ควรเปิดคำเตือนทั้งหมดดังนั้นคอมไพเลอร์สามารถให้มากที่สุดคำสั่งที่แพลตฟอร์มและให้คำเตือนแม้ว่าจะไม่มีเวลารวบรวมคำเตือนไม่สามารถรับประกันได้ว่าข้อผิดพลาดจะต้องเป็นโปรแกรมข้ามแพลตฟอร์ม แต่ขั้นตอนจะมากผิดปกติที่มีคำเตือนอาจจะไม่ใช่แพลตฟอร์ม

ในโปรแกรมเมื่อใช้การใดวิธีการหนึ่งในการมองลงไปในเอกสารให้แน่ใจว่าคุณใช้วิธีการไม่ได้ระบุไว้ในเอกสารเป็นวิธีการที่ล้าสมัยได้รับการ (ตามวิธีเลิกใช้แล้ว), ไม่เป็นมันที่แฝงอยู่ในเอกสารไม่ได้ระบุวิธี (วิธีการซึ่งไม่มีเอกสารประกอบ)

พยายามอย่าออกจากวิธีการออกจากโปรแกรม Java ที่จะใช้ java.lang.Systemวิธีการออกเพื่อยุติ JVM เพื่อยุติโปรแกรม แต่ถ้าเรียกใช้โปรแกรมอื่นของ Java, วิธีการออกจากการใช้โปรแกรมจะช่วยให้ได้รับการปิดซึ่งเป็นสิ่งที่เราเห็นได้ชัดไม่ต้องการเห็นในการออกจากโปรแกรมจาวาในความเป็นจริงคุณสามารถใช้ destory () ออกจากกระบวนการแบบสแตนด์อะโลนสำหรับโปรแกรมแบบมัลติเธรดเราต้องปิดทั้งหมดไม่ด้ายภูตเมื่อเปิดโปรแกรมออกวิธีเดียวที่จะออกจากโปรแกรมโดยใช้ทางออก

หลีกเลี่ยงการใช้วิธีการในประเทศและรหัสพื้นที่เท่าที่เป็นไปได้ที่จะเขียนเป็นฟังก์ชันของคุณเองกับชั้นเรียนที่สอดคล้อง Java, แทนที่วิธีการนี้ถ้าคุณต้องใช้วิธีพื้นเมืองคุณสามารถเขียนโปรแกรมเซิร์ฟเวอร์จะเรียกวิธีแล้วโปรแกรมนี้จะเขียนโปรแกรมเซิร์ฟเวอร์เป็นโปรแกรมไคลเอนต์หรือพิจารณาโครงสร้างโปรแกรม CORBA (Common Object Request Broker)

Java, Delphi ใน winexec วิธีที่คล้ายกัน java.lang.runtime วิธี exec ชั้นเรียนเป็นวิธีการของตัวเองเป็นอิสระจากแพลตฟอร์ม แต่วิธีการเรียกคำสั่งและพารามิเตอร์ของคำสั่งที่เกี่ยวข้องกับแพลตฟอร์มดังนั้นในการจัดทำโปรแกรมเพื่อหลีกเลี่ยงถ้าเราต้องการเรียกโปรแกรมอื่น ๆ จะต้องแจ้งให้ผู้ใช้สามารถตั้งค่าคำสั่งและพารามิเตอร์ตัวอย่างเช่นคุณสามารถเรียก Notepad.exe ในขั้นตอนหน้าต่างจะเรียก vi ในลินุกซ์ในโปรแกรม

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

อย่าเขียนอย่างหนักในโปรแกรมค่าคงที่เชื่อมโยงกับแพลตฟอร์มดังกล่าวเป็นตัวคั่นบรรทัดตัวคั่นแฟ้มตัวคั่นเส้นทาง ฯลฯ ในค่าคงที่เหล่านี้มีความแตกต่างบนแพลตฟอร์มที่แตกต่างกันดังกล่าวเป็นตัวคั่นแฟ้มในยูนิกซ์และ MAC"/"ใน Windows คือ""ถ้าคุณต้องการใช้ค่าคงที่เหล่านี้คุณต้อง jdava.util.Properties วิธี getProperty ชั้นเช่น java.util.Properties.getProperty ("file.separator") จะได้รับคั่นแฟ้มgetProperty ("line.separator") ส่งกลับตัวคั่นบรรทัด, getProperty ("path.separator") คั่นเส้นทางกลับ

ในการจัดทำข้ามแพลตฟอร์มการใช้งานเว็บอย่าใช้ getHostName ชั้น java.net.InetAddress ได้ชื่อโฮสต์ให้เป็นชื่อโฮสต์ของรูปแบบที่แตกต่างกันเป็นแพลตฟอร์มที่แตกต่างกันจะดีกว่าการใช้รูปแบบ getAddress เดียวกันที่อยู่ IP, อื่น ๆ , โปรแกรมทั้งหมดชื่อโฮสต์ควรถูกแทนที่ด้วยไอพีแอดเดรสเช่น www.javafan.net จำเป็นต้องเปลี่ยนที่อยู่ IP ที่สอดคล้องกัน

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

ถ้าโปรแกรมของคุณสามารถเขียนโปรแกรม GUI ในการใช้ชิ้นส่วน AWT ไม่สามารถตั้งโดยพลขนาดและที่ตั้งของอุปกรณ์ที่จะใช้โปรแกรมจัดการรูปแบบของ Java (ผู้จัดการเค้าโครง) เพื่อตั้งค่าและจัดการขนาดและตำแหน่งของส่วนประกอบการมองเห็นหรือรูปแบบอาจทำให้เกิดความสับสน

เนื่องจากระบบปฏิบัติการที่แตกต่างกันเครื่องที่แตกต่างกันของระบบสนับสนุนการสีและขนาดของหน้าจอและความละเอียดจะแตกต่างกันอย่างไรเพื่อให้ได้คุณลักษณะเหล่านี้หรือไม่Class จะได้รับใช้ที่จำเป็นของสี java.awt.Systemcolor เช่นกรอบหน้าต่างที่ inactiveCaption คลาสเป็นสีพื้นหลังในชื่อกิจกรรม, เมนูเป็นสีพื้นหลังเมนูgetScreenResolution สามารถใช้"พิกเซลต่อนิ้ว"java.awt.Toolkit เป็นหน่วยของความละเอียดหน้าจอแสดงผลชั้น GetScreenSize จะได้รับมีขนาดหน้าจอ (นิ้ว), loadSystemColors สามารถแสดงรายชื่อทั้งหมดสีระบบ

บางส่วนของการพิจารณาเหล่านี้จากการอ้างอิงบางส่วนของประสบการณ์อันยาวนานของเขาในการเขียนโปรแกรมจาวาผมเชื่อว่าโปรแกรมของคุณจะช่วยให้การออกแบบ