การพัฒนา Android ที่ง่ายยิ่งขึ้นด้วย RoboGuice
RoboGuice เป็นกรอบที่ต้องมีที่นำ ความเรียบง่ายและความสะดวกในการฉีดพึ่งพา เป็น Android Guice เป็นเฟรมเวิร์กการฉีดที่ขึ้นต่อกันเบาสำหรับแพลตฟอร์ม Java การพึ่งพาการฉีดเป็นรูปแบบการออกแบบที่มีหลักการหลักของ แยกพฤติกรรมจากการแก้ปัญหาการพึ่งพา.
จะช่วยให้การกำจัดของ “กำหนดค่าตายตัว” การพึ่งพาและทำให้มันเป็นไปได้ที่จะเปลี่ยนพวกเขาในการรวบรวมหรือใช้เวลา สิ่งนี้ทำให้คุณ รหัสง่ายต่อการเขียนเปลี่ยนแปลงทดสอบหน่วย และ นำมาใช้ในบริบทอื่น ๆ. รหัสของคุณมีน้อยกว่ารหัสต้นแบบและตรรกะทางธุรกิจมากขึ้น.
ด้วย RoboGuice คุณสามารถนำทุกสิ่งมาสู่ Android RoboGuice ช่วยให้คุณ ใช้คลาสฐานของคุณเอง พร้อมกับวิธีการหรือฟังก์ชั่นที่จำเป็นของคุณเอง สิ่งนี้ทำให้ RoboGuice เข้ากันได้กับห้องสมุดส่วนใหญ่ เช่นเดียวกับช่วยให้คุณสามารถเปลื้องผ้า เทมเพลตแพลตฟอร์มเกือบทั้งหมด ผ่านการฉีดหลายแบบเช่นดูการฉีด, การฉีดทรัพยากร, การฉีด SystemService เป็นต้น.
กล่าวง่ายๆว่าการใช้ RoboGuice ในโครงการ Android หมายถึง การเขียนรหัสน้อยลงจัดการข้อผิดพลาดน้อยลงและมีอาการปวดหัวน้อยลง.
วิธีการติดตั้ง RoboGuice
RoboGuice สามารถติดตั้งได้ง่ายในโครงการ Gradle-based ของคุณโดยเพิ่มบรรทัดต่อไปนี้ลงในของคุณ “การอ้างอิง” ส่วนของไฟล์ build gradle ของโมดูลแอปของคุณ:
project.dependencies รวบรวม 'org.roboguice: roboguice: 3. +' ให้ 'org.roboguice: roboblender: 3. +'
วิธีใช้ RoboGuice
RoboGuice ใช้งานง่ายถ้าคุณทำตามกฎพื้นฐานเหล่านี้:
1. ขยายชั้นเรียนของคุณ จากคลาสพื้นฐานที่เหมาะสมของ RoboGuice เช่น RoboActivity, RoboFragment, RoboService, RoboListActivity, RoboActionBarActivity ฯลฯ.
2. ฉีดมุมมองทรัพยากรหรือบริการ ใช้คำอธิบายประกอบต่าง ๆ ที่จัดทำโดย RoboGuice เช่น “@InjectView“, “@InjectResource“, “@ฉีด“, ฯลฯ.
แค่นั้นแหละ. ง่ายใช่มั้ย คุณจะรู้สึกเหมือนอยู่บ้านมากขึ้นถ้าคุณคุ้นเคย คำอธิบายประกอบ Java.
ไม่มี RoboGuice กับ RoboGuice
ลองเปรียบเทียบว่า RoboGuice สามารถลดภาระงานของคุณและปรับปรุงประสิทธิภาพการทำงานของคุณได้อย่างไรโดยใช้ตัวอย่างเล็ก ๆ นี้ สมมติว่าเรามี “activity_main.xml” ไฟล์เลย์เอาต์มีมุมมองทั้งหมดที่แสดงด้านล่าง.
บันทึก: มีการเพิ่มความคิดเห็นเพื่อปรับปรุงความเข้าใจโค้ด.
ชั้น NoRoboGuice ขยายกิจกรรม // มุมมองชื่อ TextView; รูปขนาดย่อของ ImageView; // บริการ LocationManager loc; // ทรัพยากรไอคอน Drawable; String myName; โมฆะสาธารณะ onCreate (บันเดิลที่บันทึกไว้InstanceState) super.onCreate (hiddenInstanceState); setContentView (R.layout.activity_main); // ตั้งชื่อเค้าโครง = (TextView) findViewById (R.id.name); // เริ่มต้นรูปย่อ boilerplate = (ImageView) findViewById (R.id.thumbnail); // boilerplate initialization loc = (LocationManager) getSystemService (Activity.LOCATION_SERVICE); // ไอคอนเริ่มต้น boilerplate = getResources (). getDrawable (R.drawable.icon); // การเริ่มต้น boilerplate myName = getString (R.string.app_name); // boilerplate initialization name.setText ("Hello," + myName); // รหัสจริง
นี่เป็นลักษณะของ RoboGuice:
@ContentView (R.layout.activity_main) // กำหนดคลาสเลย์เอาต์ RoboGuice ขยาย RoboActivity // views @InjectView (R.id.name) ชื่อ TextView; @InjectView (R.id.thumbnail) รูปขนาดย่อ ImageView; // resources @InjectResource (R.drawable.icon) ไอคอน Drawable; @InjectResource (R.string.app_name) สตริง myName; // services @Inject LocationManager loc; โมฆะสาธารณะ onCreate (บันเดิลที่บันทึกไว้InstanceState) super.onCreate (hiddenInstanceState); name.setText ("Hello," + myName); // รหัสจริง
RoboGuice ไม่เพียง แต่ลดรหัส แต่ยังช่วยปรับปรุงความสามารถในการอ่านและความเข้าใจของซอร์สโค้ด มันใช้การคาดเดาจากการพัฒนาแอพและ รหัสแอปพลิเคชันของคุณไม่มีการทิ้งขยะอีกต่อไป ด้วยกลไกของแพลตฟอร์ม Android.
ข้อได้เปรียบนี้ช่วยได้อย่างมาก ในช่วงเวลาของการแก้จุดบกพร่อง หรือ ปรับปรุง แอปพลิเคชันในขณะที่คุณสามารถอ่านและเปลี่ยนรหัสต้นฉบับได้อย่างง่ายดาย คุณไม่จำเป็นต้องค้นหารหัสจริงอีกต่อไปในระหว่างการเริ่มต้นรหัสต้นแบบเพราะตอนนี้ มีรหัสจริงเท่านั้น และ RoboGuice ทำการกำหนดค่าเริ่มต้นของสำเร็จรูปให้โดยอัตโนมัติสำหรับคุณ.