ฉันเริ่มต้นแอปพลิเคชัน Android ใหม่ โครงสร้างที่ดีที่สุดในการใช้คืออะไร?
ฉันวางแผนที่จะทำให้มันเป็นการออกแบบหลายแพคเกจดังต่อไปนี้:
- แพ็คเกจหลักรวมถึงกิจกรรม
- บริการและชั้นข้อมูล
แพ็คเกจเอนทิตีรวมถึงคลาสเอนทิตี
คำแนะนำใด ๆ ?
ฉันเริ่มต้นแอปพลิเคชัน Android ใหม่ โครงสร้างที่ดีที่สุดในการใช้คืออะไร?
ฉันวางแผนที่จะทำให้มันเป็นการออกแบบหลายแพคเกจดังต่อไปนี้:
แพ็คเกจเอนทิตีรวมถึงคลาสเอนทิตี
คำแนะนำใด ๆ ?
คำตอบ:
อันดับแรกขึ้นอยู่กับแอปพลิเคชันที่คุณกำลังทำ
คุณควรทำคำอธิบายที่เป็นข้อความหรือแผนผังเกี่ยวกับวิธีที่ผู้ใช้จะทำงานกับแอปพลิเคชัน แก้ไขทุกสถานการณ์ที่เป็นไปได้ วางตัวอย่างที่จะใช้ในการทดสอบในภายหลัง
ตัดสินใจเลือกสิ่งที่เป็นของฟังก์ชั่นและอะไร - กับการกำหนดค่าที่เปลี่ยนแปลงได้ แยกฟังก์ชันและข้อมูลเอนทิตีจากสถานการณ์
จากสถานการณ์ให้ตัดสินใจว่าแอปของคุณจะเป็นอย่างไร เป็นบริการกิจกรรมวิดเจ็ตแม้แต่ผู้ให้บริการเนื้อหาหรือระบบที่ซับซ้อนรวมถึงส่วนประกอบที่แตกต่างกัน ทดสอบการตัดสินใจของคุณกับสถานการณ์
ในกรณีของระบบที่ซับซ้อนแจกจ่ายฟังก์ชันการทำงานและเอนทิตี้ข้อมูลระหว่างองค์ประกอบของแอปพลิเคชัน ทำรายการของส่วนประกอบและสิ่งที่พวกเขา (กิจกรรมหรืออื่น ๆ )
จัดทำรายการองค์ประกอบ UI พร้อมคำอธิบายสิ่งที่พวกเขาทำ (ยังไม่ดี) สิ่งเหล่านี้จะเป็นวิดเจ็ตและกิจกรรมหรือชิ้นส่วนหรือโครงร่างในภายหลัง
สร้างโครงร่างแบบร่างสำหรับคอมโพเนนต์ UI ทำการส่งผ่านอย่างง่ายจากที่หนึ่งไปยังอีก ดู UI กลับไปที่สถานการณ์และเล่นทั้งหมดด้วย UI แบบร่างของคุณ ส่วนประกอบและคลาส UI ทั้งหมดใส่ไว้ในลำดับชั้นเดียวของแพ็คเกจหรือแพ็คเกจ
ทำรายการเอนทิตีข้อมูล ตัดสินใจเลือกสิ่งที่จะเป็นในสิ่งที่ วางแผนเป็นคอลเลกชันหรือตารางในฐานข้อมูลหรือฐานข้อมูลอื่น ทำให้เป็นคลาสวางลงในลำดับชั้นของแพ็กเกจหรือแพ็กเกจอื่น ที่นี่ยังใส่ตัวช่วย DB - คลาสที่พูดคุยกับ DB ด้วย SQL
สร้างคลาสการทดสอบ (JUNITs หรือ TestNG ที่ดีกว่า) สำหรับการเติม UI และเอนทิตีข้อมูลด้วยข้อมูลทดสอบและเรียกใช้งาน
อะแดปเตอร์ไม่จำเป็นต้องเป็นแบบสาธารณะเนื่องจากใช้ใน GroupView แม่เท่านั้น ดังนั้นไม่มีไฟล์สำหรับอะแดปเตอร์ปกติ
อย่าได้ใส่ Globals ทั้งหมดในชั้นเรียนแบบคงที่พิเศษ - มันคือการปฏิบัติที่ไม่ดี คุณกำลังผสมรหัสและการกำหนดค่า ใช้วิธีแก้ปัญหาที่น่าสนใจมากนี้ สำหรับตอนนี้มันเป็นสิ่งที่ดีที่สุดที่ฉันรู้สำหรับ Android
ควรกำหนดข้อมูลการกำหนดค่าลงในทรัพยากร หากบางรายการมีความซับซ้อนให้ใช้แหล่ง XML และตัวแยกวิเคราะห์ ทำให้ผู้อ่านข้อมูลทรัพยากรเป็นตัวแปรทั่วโลก ไม่ใช่ทั้งหมดที่จะคงที่! พวกเขาอาจเป็นของอินสแตนซ์ของกิจกรรมหลักตัวอย่างเช่น
อย่าใช้ค่าคงที่ที่กำหนดไม่ได้ในรหัส! อาจเป็นชื่อของคุณเท่านั้น :-) ค่าคงที่ทุกค่าไม่คงที่ในบางครั้ง
ในอีกด้านหนึ่งถ้าคุณบางคนรหัสไม่ปกติจาวา แต่สคริปต์ - การผสมผสานของข้อมูลและภาษาจากนั้นคุณสามารถและต้องผสมข้อมูลและรหัส
ทำเช่นนั้นเสมอ: เขียนอะไรบางอย่าง - เชื่อมต่อบางสิ่งเข้ากับกลุ่ม - เพิ่มการทดสอบสำหรับสิ่งใหม่นี้ - ทดสอบอันใหม่ - ทดสอบซ้ำ - ก้าวเล็ก ๆ เท่านั้น!
แก้ไข นอกจากนี้คุณยังสามารถใช้การพัฒนาที่ขับเคลื่อนการทดสอบ - เขียนการทดสอบก่อนรหัสที่เหมาะสม ด้วยวิธีนี้การรันการทดสอบก่อนที่รหัสจะพร้อมคุณมีการทดสอบสองครั้ง - ดังนั้นคุณตรวจสอบว่าการทดสอบตอบสนองต่อรหัสที่ไม่ถูกต้องจริงๆ
ใช่มันทำให้การพัฒนาง่ายขึ้นถ้าคุณจัดหมวดหมู่สิ่งต่าง ๆ บนพื้นฐานการทำงานของพวกเขาคุณอยู่ในทิศทางที่ถูกต้องใน Android ถ้าพัฒนาแอปพลิเคชันแล้วฉันจะใช้โครงสร้างต่อไปนี้สิ่งที่จะคล้ายกับคุณ