24 ต้องอ่านคำถามและคำตอบสัมภาษณ์ Android [สำหรับ Freshers & มีประสบการณ์]

เผยแพร่แล้ว: 2021-01-28

สารบัญ

ภาพรวม

ด้วยการพัฒนาแอปพลิเคชั่นมือถือที่เพิ่มขึ้นอย่างไม่น่าเชื่อในช่วงทศวรรษที่ผ่านมา Android และ iOS ได้กลายเป็นสองระบบปฏิบัติการชั้นนำ Android มอบความยืดหยุ่นที่จำเป็นอย่างมาก และเติบโตขึ้นเป็น 86.1% ของส่วนแบ่งการตลาด Google Playstore มีแอพประมาณ 2.87 ล้านแอในปี 2020 ที่มีให้สำหรับ ผู้ใช้ Android 2 พันล้านคน ทั่วโลก

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

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

ให้เราดูคำถามที่พบบ่อยบางส่วนในบทสัมภาษณ์นักพัฒนา Android และคำตอบที่คาดหวัง

คำถามและคำตอบสัมภาษณ์ Android ยอดนิยม

1. Android คืออะไร?

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

2. Android สามารถใช้กับภาษาอื่นที่ไม่ใช่ Java ได้หรือไม่?

การพัฒนาแอปพลิเคชัน Android สามารถทำได้ด้วย C/C++ โดยใช้ Android Native Development Kit เมื่อเร็วๆ นี้ Google ยังได้แนะนำภาษาการเขียนโปรแกรมที่เรียกว่า Kotlin ซึ่งคล้ายกับ Java มากและสามารถใช้สร้างบน Android ได้

3. สถาปัตยกรรมของแอปพลิเคชัน Android เป็นอย่างไร

การพัฒนาแอพ Android มักจะเป็นไปตามสถาปัตยกรรม Model-View-Presenter (MVP) ในที่นี้ โมเดลคือชั้นข้อมูล มุมมองคือเลเยอร์ UI และผู้นำเสนอจะตอบสนองต่อการกระทำที่ดำเนินการโดยเลเยอร์ UI

ส่วนประกอบของแอพ Android ประกอบด้วย:

ก) บริการที่ใช้ในการเริ่มต้นงานพื้นหลัง

b) เจตนาคือสิ่งที่สร้างการเชื่อมต่อระหว่างกิจกรรมและการส่งข้อมูล

ค) การแจ้งเตือนในรูปแบบแสง เสียง ไดอะล็อกบ็อกซ์ ฯลฯ

d) ผู้ให้บริการเนื้อหาเพื่อแบ่งปันข้อมูลระหว่างแอพ

e) การทำให้ทรัพยากรภายนอกสำหรับสตริงและกราฟิก

4. โครงสร้างพื้นฐานของ Android คืออะไร?

ส่วนประกอบหลักของ Android ได้แก่:

- บริการ

– Fragments

- ผู้ให้บริการเนื้อหา

- กิจกรรม

- ดู

– ความตั้งใจ

5. ไฟล์ทรัพยากรแอปพลิเคชันคืออะไร?

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

6. อธิบายวิธีวงจรชีวิตที่เกี่ยวข้องกับกิจกรรม Android หรือไม่

เมื่อคุณเปิดแอปพลิเคชัน Android ขึ้นมา จะมีกิจกรรมต่างๆ ดังต่อไปนี้:

ก) onCreate()

กิจกรรมถูกสร้างขึ้นในสถานะนี้

ข) onStart()

สิ่งนี้เรียกว่าเมื่อผู้ใช้มองเห็นกิจกรรม

ค) onResume()

กิจกรรมอยู่เบื้องหน้าและผู้ใช้สามารถโต้ตอบกับมันได้

ง) onPause()

กิจกรรมถูกระงับบางส่วนโดยกิจกรรมอื่น

จ) onStop()

กิจกรรมถูกซ่อนอย่างสมบูรณ์จากผู้ใช้

f) onRestart()

จากสถานะหยุดชั่วคราว กิจกรรมจะดำเนินต่อและปรากฏให้ผู้ใช้เห็นหรือถูกทำลาย

g) onDestroy()

กิจกรรมจะถูกลบออกจากหน่วยความจำ

7. กำหนดเจตนา

เจตนาใช้เพื่อส่งสัญญาณให้ระบบ Android ทราบถึงเหตุการณ์บางอย่างที่เกิดขึ้น Intents มีสองประเภทในระบบปฏิบัติการ Android:

ก) เจตนาโดยปริยาย

ข) เจตนาที่ชัดเจน

8. คุณจะระบุ View Elements ในโปรแกรม Android ได้อย่างไร

คำหลัก findViewById ใช้เพื่อระบุองค์ประกอบมุมมอง

9. การใช้ Bundles ในโปรแกรม Android คืออะไร?

โดยปกติแล้วบันเดิลในโปรแกรม Android จะใช้เพื่อส่งข้อมูลระหว่างกิจกรรมต่างๆ

10. ที่เก็บข้อมูลต่าง ๆ ที่ Android มีให้คืออะไร?

ก) ค่ากำหนดที่ใช้ร่วมกัน

b) ที่เก็บข้อมูลภายใน

ค) ที่เก็บข้อมูลภายนอก

d) ฐานข้อมูล SQLite

จ) การเชื่อมต่อเครือข่าย

11. Android Place Layouts เป็นอย่างไร?

เลย์เอาต์ของ Android สามารถวางได้สองวิธี:

ก) ประกาศองค์ประกอบ UI ใน XML

b) สร้างอินสแตนซ์องค์ประกอบเค้าโครงที่รันไทม์

12. ตั้งชื่อกล่องโต้ตอบที่ Android รองรับ

ก) กล่องโต้ตอบการแจ้งเตือน

สามารถใช้เพื่อขัดจังหวะและถามผู้ใช้ว่าจะดำเนินการต่อหรือหยุดกระบวนการ

b) กล่องโต้ตอบความคืบหน้า

นี่เป็นการแจ้งให้ผู้ใช้ทราบถึงความคืบหน้าของงานเฉพาะ

c) กล่องโต้ตอบตัวเลือกวันที่

ตัวเลือกวันที่คือวิดเจ็ตที่ใช้เพื่อช่วยให้ผู้ใช้เลือกวันที่

d) กล่องโต้ตอบตัวเลือกเวลา

เครื่องมือเลือกเวลาคือวิดเจ็ตที่ใช้ในการช่วยให้ผู้ใช้เลือกเวลา

13. Singleton Class ใน Android คืออะไร?

คลาสซิงเกิลตันใน Android เป็นคลาสที่สร้างอินสแตนซ์อ็อบเจกต์ได้เพียงตัวเดียว ออบเจ็กต์นี้สามารถแชร์กับทุกคลาสได้ ตัวอย่างอาจเป็นการควบคุมการทำงานพร้อมกันและสร้างจุดศูนย์กลางในการเข้าถึงสำหรับแอปพลิเคชันเพื่อเข้าถึงที่เก็บข้อมูล

14. DDMS คืออะไร?

DDMS ย่อมาจาก Dalvik Debug Monitor Service เป็นเครื่องมือแก้ไขข้อบกพร่องที่มาพร้อมกับ Android ให้บริการต่างๆ เช่น การส่งต่อพอร์ต การจับภาพหน้าจอ กระบวนการ Logcat ข้อมูลเธรดและฮีปบนอุปกรณ์ ข้อมูลสถานะวิทยุ สายเรียกเข้า การปลอมแปลง SMS และอีกมากมาย

15. โหมดสลีปใน Android คืออะไร?

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

16. กำหนดสถาปัตยกรรม Android

สถาปัตยกรรม Android ประกอบด้วย 4 องค์ประกอบ

ก) เคอร์เนลลินุกซ์

ระบบปฏิบัติการ Android สร้างขึ้นบนเคอร์เนล Linux ที่เป็นแกนหลัก รับผิดชอบการจัดการพลังงาน การจัดการหน่วยความจำ ไดรเวอร์อุปกรณ์ และการเข้าถึงทรัพยากร

ข) ห้องสมุดพื้นเมือง

ไลบรารีดั้งเดิมถูกสร้างขึ้นบนเคอร์เนล Linux เพื่อให้ระบบมีฟังก์ชันการทำงาน WebKit, OpenGL, SQLite, Media และอื่นๆ เป็นไลบรารีเนทีฟบางส่วนเหล่านี้

ค) รันไทม์ของ Android

ไลบรารีหลักเช่น DVM มีอยู่ในรันไทม์ของ Android

ง) กรอบงาน Android

ด้านบนของรันไทม์ Android คือเฟรมเวิร์กของ Android ประกอบด้วย API ต่างๆ เช่น UI (อินเทอร์เฟซผู้ใช้) โทรศัพท์ ตำแหน่ง ทรัพยากร ฯลฯ

จ) แอปพลิเคชัน

แอปพลิเคชันต่างๆ เช่น หน้าแรก รายชื่อติดต่อ แป้นโทรศัพท์ เกม ฯลฯ เป็นเลเยอร์สุดท้ายที่อยู่เหนือเฟรมเวิร์กของ Android

17. ตั้งชื่อข้อยกเว้นบางอย่างใน Android

ต่อไปนี้คือตัวอย่างบางส่วนของข้อยกเว้นใน Android:

ก) SurfaceHolder.BadSurfaceTypeException

b) WindowManager.BadTokenException

ค) ขยายข้อยกเว้น

d) Surface.OutOfResourceException

18. เครื่องมือพื้นฐานที่ใช้ในการพัฒนาแอพ Android คืออะไร?

ก) JDK

Java Development Kit ช่วยให้นักพัฒนาสามารถสร้างโปรแกรม Java ที่สามารถเรียกใช้โดย JVM (Java Virtual Machine) และ JRE (Java Runtime Environment)

b) ปลั๊กอิน Eclipse + ADT

Eclipse เป็นสภาพแวดล้อมการพัฒนาแบบบูรณาการสำหรับการพัฒนาโปรแกรม ปลั๊กอิน ADT (เครื่องมือพัฒนา Android) เป็นปลั๊กอินสำหรับ Eclipse ที่ให้สภาพแวดล้อมที่มีประสิทธิภาพและผสานรวมเพื่อสร้างแอปพลิเคชัน Android

ค) เครื่องมือ SDK

เครื่องมือ Software Development Kit คือชุดเครื่องมือที่สามารถใช้ในการพัฒนาแอปพลิเคชันสำหรับระบบปฏิบัติการและอุปกรณ์เฉพาะ

19. โฟลเดอร์ Drawable ใน Android หมายความว่าอย่างไร

โฟลเดอร์ drawable ใน Android คือชุดของทรัพยากรที่ถอนได้ซึ่งใช้สำหรับกราฟิกที่สามารถวาดได้ ทุก drawable จะถูกเก็บไว้เป็นไฟล์อิสระในโฟลเดอร์ drawable สามารถใช้เป็นพื้นหลัง แบนเนอร์ ไอคอน หน้าจอเริ่มต้น ฯลฯ

20. อแดปเตอร์ใน Android คืออะไร?

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

21. บริการใน Android คืออะไร?

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

22. Android Toast คืออะไร?

Android toast เป็นข้อความขนาดเล็กที่แสดงที่ด้านบนของ UI เป็นข้อความชั่วคราวที่ทำหน้าที่เหมือนคำแนะนำเครื่องมือ ช่วยในการให้ข้อเสนอแนะเกี่ยวกับการดำเนินการที่ดำเนินการกับผู้ใช้

23. AAPT คืออะไร?

AAPT ย่อมาจาก Android Asset Packaging Tool รวมอยู่ในเครื่องมือ/ไดเรกทอรีของ SDK AAPT ช่วยให้คุณดู สร้าง และอัปเดตไฟล์เก็บถาวรที่เข้ากันได้กับ Zip มีหน้าที่รับผิดชอบในการจัดการกระบวนการบรรจุภัณฑ์

24. Fragment คืออะไร?

แฟรกเมนต์ใน Android สรุปมุมมองและตรรกะ เพื่อให้ง่ายต่อการนำกลับมาใช้ใหม่ภายในกิจกรรม ดังนั้น การใช้แฟรกเมนต์ เราจึงสามารถแสดงหลายหน้าจอในกิจกรรมเดียวได้ Fragment เป็นการรวมไฟล์เลย์เอาต์ XML และคลาส java เข้าด้วยกัน ทำให้พวกมันคล้ายกับกิจกรรมมาก

เคล็ดลับในการเตรียมตัวสำหรับการสัมภาษณ์ Android ของคุณ

ตอนนี้เราได้เห็นคำถามที่พบบ่อยบางส่วนในการสัมภาษณ์นักพัฒนา Android แล้ว ให้เราลองศึกษาเคล็ดลับบางประการที่คุณสามารถใช้เพื่อสร้างความประทับใจได้ดีที่สุด

1. ทำงานบนพื้นฐานของคุณ

บ่อยครั้งที่นักพัฒนามีความรู้ด้านพื้นผิวเพียงพอ แต่ล้มเหลวในการสร้างรากฐานที่แข็งแกร่ง สิ่งที่มักจะแยกคุณออกจากส่วนที่เหลือคือรากฐานที่แข็งแกร่งของคุณ ศึกษาแนวคิดหลักของ Java และ Kotlin พื้นฐานที่แข็งแกร่งจะทำให้คุณได้เปรียบเหนือผู้สมัครคนอื่นๆ ทั้งหมด

2. ทำงานกับโครงสร้างข้อมูลและคำถามเกี่ยวกับอัลกอริทึม

นี่เป็นอีกวิธีหนึ่งในการสร้างแนวคิดที่ชัดเจนและเตรียมพร้อมสำหรับคำถามยากๆ ที่มักจะตัดสินผลการสัมภาษณ์ของคุณได้

3. อัพเดทตัวเองอยู่เสมอ

อ่านนิตยสารเทคโนโลยี บล็อก และเอกสารเพื่อรับข่าวสารล่าสุดในโลกของ Android และเทคโนโลยีมือถือ

ด้วยเคล็ดลับเหล่านี้และแคตตาล็อกคำถามของเรา เรามั่นใจว่าคุณจะพร้อมอย่างสมบูรณ์เพื่อหางานที่ยอดเยี่ยมในฐานะนักพัฒนา Android

อ่านเพิ่มเติม: แนวคิดและหัวข้อโครงการ Android

เรียนรู้ หลักสูตรซอฟต์แวร์ออนไลน์ จากมหาวิทยาลัยชั้นนำของโลก รับโปรแกรม PG สำหรับผู้บริหาร โปรแกรมประกาศนียบัตรขั้นสูง หรือโปรแกรมปริญญาโท เพื่อติดตามอาชีพของคุณอย่างรวดเร็ว

บทสรุป

หากคุณต้องการพัฒนาทักษะการใช้ Android คุณต้องลงมือทำโปรเจ็กต์ Android เหล่านี้ หากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับการพัฒนาซอฟต์แวร์แบบฟูลสแตก โปรดดูโปรแกรม Executive PG ของ upGrad & IIIT-B ในการพัฒนาซอฟต์แวร์แบบฟูลสแตก ซึ่งออกแบบมาสำหรับมืออาชีพที่ทำงานและมีการฝึกอบรมที่เข้มงวดมากกว่า 500 ชั่วโมง โครงการมากกว่า 9 โครงการ และการมอบหมายงาน สถานะศิษย์เก่า IIIT-B โครงการหลักและความช่วยเหลือด้านงานกับบริษัทชั้นนำ

การเขียนโปรแกรม Android คืออะไร?

Android เป็นระบบปฏิบัติการที่ใช้แพลตฟอร์ม Linux และ Unix กำลังได้รับการพัฒนาโดย Google เป้าหมายหลักของการพัฒนา Android คือการสร้างระบบปฏิบัติการสำหรับอุปกรณ์มือถือ ระบบปฏิบัติการนี้สามารถใช้ได้กับสมาร์ทโฟนและแท็บเล็ตพีซี ระบบปฏิบัติการนี้ได้รับการออกแบบให้มีน้ำหนักเบาและเป็นโมดูล ระบบปฏิบัติการนี้ใช้ภาษาจาวา Java เป็นภาษาโปรแกรมที่สามารถใช้ในระบบปฏิบัติการต่างๆ Android เป็นระบบปฏิบัติการมือถือชั้นนำของโลก สร้างขึ้นโดย Google และใช้ Linux Kernel แอปพลิเคชัน Android เป็นแอปพลิเคชันที่เขียนขึ้นสำหรับโทรศัพท์มือถือซึ่งสามารถใช้เล่นเกมหรือโทรออกได้

ภาษาโปรแกรมใดบ้างที่สามารถใช้กับ Android ได้

มีภาษาโปรแกรมมากมายสำหรับ Android แต่ภาษาโปรแกรมที่ใช้บ่อยที่สุดสองภาษาสำหรับ Android คือ Java และ C Java เป็นภาษาโปรแกรมที่ซับซ้อนซึ่งเป็นภาษาโปรแกรมที่มีประสิทธิภาพมากและเป็นที่นิยม แต่ C เป็นภาษาโปรแกรมที่รวดเร็ว เรียบง่ายกว่าและง่ายกว่า เรียนรู้. ทั้งคู่มีข้อดีและข้อเสียของตัวเอง แต่ทั้งคู่สามารถใช้เพื่อพัฒนาแอปพลิเคชัน Android ได้ ด้วยเหตุผลหลายประการ Java จึงเป็นโปรแกรมที่ได้รับความนิยมสูงสุดสำหรับการเขียนโปรแกรม Android (1) Android ใช้ Java ดังนั้นจึงเป็นตัวเลือกที่สมเหตุสมผลที่สุด (2) เป็นโอเพ่นซอร์ส ทุกคนจึงใช้ได้ฟรี (3) เป็นวัตถุเชิงวัตถุและพิมพ์แบบไดนามิก ทุกคนจึงเข้าใจได้ง่าย

Kotlin คืออะไร?

Kotlin เป็นภาษาการเขียนโปรแกรมแบบสแตติกที่ทำงานบน JVM และยังสามารถคอมไพล์ไปยังซอร์สโค้ด JavaScript หรือใช้ LLVM แบ็กเอนด์เพื่อสร้างโค้ดเนทีฟ การพัฒนาเบื้องต้นมาจากทีมโปรแกรมเมอร์ JetBrains ในเมืองเซนต์ปีเตอร์สเบิร์ก ประเทศรัสเซีย มีการประกาศในวันแรกของการประชุม Devoxx เมื่อวันที่ 4 มิถุนายน 2011 และเปิดตัวอย่างเป็นทางการในวันที่ 15 กุมภาพันธ์ 2016 Kotlin สามารถทำงานร่วมกันได้อย่างสมบูรณ์กับ Java และนี่คือเหตุผลหลักที่ JetBrains สร้างขึ้น Kotlin สามารถคอมไพล์ซอร์สโค้ดของ Java และทำงานได้บนทุกแพลตฟอร์มที่ Java ทำงานอยู่ เช่นเดียวกับแพลตฟอร์มอื่นๆ อีกมากมาย