Câu hỏi phỏng vấn Mobile Apps Developer

61 Các câu hỏi phỏng vấn Mobile Apps Developer được chia sẻ bởi các ứng viên

Câu hỏi phỏng vấn

Mobile Apps Developer được hỏi... 20/06/2023

Liệt kê một số lợi ích của việc sử dụng React Native để xây dựng ứng dụng di động?

1 câu trả lời

Một số lợi ích của React Native là:

  • Được biết đến với hiệu suất tối ưu
  • Có thể sử dụng lại mã và các thành phần được phát triển trước
  • Cộng đồng lập trình viên lớn
  • Lợi thế của tải lại trực tiếp và nóng
  • Giải pháp hiệu quả
  • Cung cấp giao diện người dùng đơn giản
  • Hỗ trợ plugin của bên thứ ba
  • Kiến trúc mô-đun
  • Cung cấp các giải pháp và thư viện tiện dụng
Mobile Apps Developer được hỏi... 13/06/2023

Ưu điểm của ứng dụng lai so với ứng dụng gốc là gì?

1 câu trả lời

  • Hoạt động trên nhiều nền tảng.
  • Thống nhất phát triển.
  • Xây dựng nhanh hơn và chi phí phát triển thấp hơn.
  • Dễ dàng thực hiện các thay đổi và cập nhật.
Mobile Apps Developer được hỏi... 13/06/2023

Ionic Framework là gì?

1 câu trả lời

Ionic Framework là một bộ công cụ giao diện người dùng mã nguồn mở để xây dựng các ứng dụng dành cho thiết bị di động và máy tính để bàn có hiệu suất cao, chất lượng cao bằng cách sử dụng các công nghệ web (HTML, CSS và JavaScript).

Ionic Framework tập trung vào trải nghiệm người dùng giao diện người dùng hoặc tương tác giao diện người dùng của một ứng dụng (điều khiển, tương tác, cử chỉ, hoạt ảnh). Hiện tại, Ionic Framework đã tích hợp chính thức với Angular và React, đồng thời hỗ trợ cho Vue đang được phát triển

Mobile Apps Developer được hỏi... 20/06/2023

Xamarin là gì?

1 câu trả lời

Xamarin là công nghệ Phát triển Di động Đa nền tảng của Microsoft, nơi chúng tôi có thể phát triển ứng dụng gốc bằng cách sử dụng cùng một cơ sở mã trên tất cả các nền tảng (iOS, Android, UWP) bằng ngôn ngữ C#. Xamarin sử dụng hai cách tiếp cận để phát triển ứng dụng:

  • Xamarin.Forms
  • Xamarin bản địa.

Xamarin.Forms sử dụng MVVM & XAML trong khi Xamarin Native sử dụng công nghệ giao diện người dùng gốc và Kiến trúc MVC hoặc MVVMCross.

 
Mobile Apps Developer được hỏi... 13/06/2023

Mẫu Singleton là gì ?

1 câu trả lời

Mẫu Singleton thuộc danh mục mẫu sáng tạo và giới thiệu một lớp duy nhất chịu trách nhiệm tạo một đối tượng trong khi đảm bảo rằng chỉ một đối tượng duy nhất được tạo. Lớp này cung cấp một cách để truy cập đối tượng duy nhất của nó, có thể truy cập trực tiếp mà không cần khởi tạo đối tượng của lớp.

Mobile Apps Developer được hỏi... 20/06/2023

Ứng dụng web lũy tiến là gì?

1 câu trả lời

Khái niệm về ứng dụng web lũy tiến (PWA) đã được Google tiếp cận vào cuối năm 2015. Về cơ bản, chúng là các ứng dụng web (Trang web) nhưng có giao diện giống như các ứng dụng di động gốc khác. Các trang web hỗ trợ ứng dụng web lũy tiến có thể cung cấp các chức năng như làm việc ngoại tuyến, thông báo đẩy và truy cập phần cứng thiết bị.

Mobile Apps Developer được hỏi... 13/06/2023

Activity là gì ?

1 câu trả lời

Activity cung cấp cửa sổ trong đó ứng dụng vẽ giao diện người dùng của nó.

Cửa sổ này thường lấp đầy màn hình, nhưng có thể nhỏ hơn màn hình và nổi trên các cửa sổ khác. Nói chung, một hoạt động triển khai một màn hình trong ứng dụng. Chẳng hạn, một trong các hoạt động của ứng dụng có thể triển khai màn hình Tùy chọn, trong khi hoạt động khác triển khai màn hình Chọn ảnh.

Mobile Apps Developer được hỏi... 20/06/2023

Giải thích vòng đời hoạt động

1 câu trả lời

Khi người dùng điều hướng qua, ra khỏi và quay lại ứng dụng của bạn, các phiên bản Hoạt động trong ứng dụng của bạn sẽ chuyển đổi qua các trạng thái khác nhau trong vòng đời của chúng. Để điều hướng quá trình chuyển đổi giữa các giai đoạn của vòng đời hoạt động, lớp Hoạt động cung cấp một bộ sáu lệnh gọi lại cốt lõi lõi:

  • onCreate()
  • onStart()
  • onResume()
  • onPause()
  • onStop()
  • onDestroy()

Hệ thống gọi từng cuộc gọi lại này khi một hoạt động chuyển sang trạng thái mới.

Mobile Apps Developer được hỏi... 20/06/2023

Giải thích ngắn gọn tất cả các thành phần ứng dụng Android

1 câu trả lời

Các thành phần ứng dụng là các khối xây dựng thiết yếu của một ứng dụng Android. Mỗi thành phần là một điểm vào mà qua đó hệ thống hoặc người dùng có thể vào ứng dụng của bạn.

Có bốn loại thành phần ứng dụng khác nhau:

  • Hoạt động - Một hoạt động là điểm bắt đầu để tương tác với người dùng. Nó đại diện cho một màn hình duy nhất với giao diện người dùng.
  • Dịch vụ - Dịch vụ là một điểm vào có mục đích chung để giữ cho ứng dụng chạy trong nền vì mọi lý do. Nó là một thành phần chạy trong nền để thực hiện các hoạt động chạy dài hoặc để thực hiện công việc cho các quy trình từ xa.
  • Bộ thu phát sóng - Bộ thu phát sóng là một thành phần cho phép hệ thống phân phối các sự kiện đến ứng dụng bên ngoài luồng người dùng thông thường, cho phép ứng dụng phản hồi các thông báo phát sóng trên toàn hệ thống.
  • Nhà cung cấp nội dung - Nhà cung cấp nội dung quản lý tập hợp dữ liệu ứng dụng được chia sẻ mà bạn có thể lưu trữ trong hệ thống tệp, trong cơ sở dữ liệu SQLite, trên web hoặc trên bất kỳ vị trí lưu trữ liên tục nào khác mà ứng dụng của bạn có thể truy cập.
Mobile Apps Developer được hỏi... 20/06/2023

Giải thích quá trình xây dựng trong Android.

1 câu trả lời

  • Bước đầu tiên liên quan đến việc biên dịch thư mục tài nguyên (/res) bằng công cụ aapt (công cụ đóng gói tài sản Android). Chúng được biên dịch thành một tệp lớp duy nhất có tên là R.java. Đây là một lớp chỉ chứa các hằng số.
  • Bước thứ hai liên quan đến việc mã nguồn java được javac biên dịch thành các tệp .class, sau đó các tệp lớp được chuyển đổi thành mã byte Dalvik bằng công cụ “dx”, được bao gồm trong 'công cụ' sdk. Đầu ra là class.dex.
  • Bước cuối cùng liên quan đến apkbuilder android, lấy tất cả thông tin đầu vào và xây dựng tệp apk (khóa đóng gói android).
Mobile Apps Developer được hỏi... 20/06/2023

Làm cách nào để duy trì dữ liệu trong ứng dụng Android?

1 câu trả lời

Về cơ bản, có bốn cách khác nhau để lưu trữ dữ liệu trong ứng dụng Android:

  • Tùy chọn được chia sẻ - để lưu dữ liệu nguyên thủy trong các cặp khóa-giá trị
  • Bộ nhớ trong - bạn cần lưu trữ dữ liệu vào hệ thống tệp của thiết bị, nhưng bạn không muốn bất kỳ ứng dụng nào khác (kể cả người dùng) đọc dữ liệu này
  • Bộ nhớ ngoài - bạn có thể muốn người dùng xem các tệp và dữ liệu được lưu bởi ứng dụng của bạn
  • Cơ sở dữ liệu SQLite
Mobile Apps Developer được hỏi... 13/06/2023

Ưu điểm của ứng dụng gốc so với ứng dụng lai là gì?

1 câu trả lời

  • Chúng hoạt động hiệu quả vì chúng được xây dựng cho nền tảng cụ thể đó
  • Các ứng dụng gốc phản hồi nhanh trên tất cả các thiết bị dành riêng cho nền tảng
  • Chúng rất nhanh và tốt nhất trong hiệu suất ứng dụng
  • Ứng dụng gốc tích hợp tốt hơn với phần cứng di động
  • Họ có Giao diện người dùng (UI) và Trải nghiệm người dùng (UX) tương tác và trực quan theo mong đợi của người dùng dựa trên các nền tảng cụ thể
  • Một số ứng dụng di động gốc hoạt động ngay cả khi không có kết nối Internet
  • Các ứng dụng gốc được bảo mật và đáng tin cậy
  • Họ có thể dễ dàng truy cập hoặc sử dụng các khả năng khác dành riêng cho thiết bị như GPS, Máy ảnh, Danh bạ, v.v.
 
 
Mobile Apps Developer được hỏi... 20/06/2023

Mẫu Builder là gì ?

1 câu trả lời

Mẫu Builder (trình tạo xây dựng) một đối tượng phức tạp bằng cách sử dụng các đối tượng đơn giản và sử dụng phương pháp tiếp cận từng bước. Trình tạo này độc lập với các đối tượng khác.

Lớp Director là tùy chọn và được sử dụng để đảm bảo rằng các bước xây dựng được thực hiện theo đúng thứ tự với đúng dữ liệu bởi người xây dựng phù hợp. Đó là về xác nhận và ủy quyền.

Các lời gọi bước của mẫu Trình tạo/Giám đốc có thể được trình bày về mặt ngữ nghĩa bằng cách xâu chuỗi phương thức hay còn gọi là cú pháp Giao diện thông thạo .

Pizza pizza = new Pizza.Builder()
                       .cheese(true)
                       .pepperoni(true)
                       .bacon(true)
                       .build();
Mobile Apps Developer được hỏi... 13/06/2023

Intent trong Android là gì ?

1 câu trả lời

Intent về cơ bản là một thông báo được truyền giữa các thành phần (chẳng hạn như Hoạt động , Dịch vụ , Bộ thu phát sóng và Nhà cung cấp nội dung ). Vì vậy, nó gần như tương đương với các tham số được truyền cho lệnh gọi API. Sự khác biệt cơ bản giữa lệnh gọi API và việc gọi các thành phần thông qua ý định là:

  • Các lệnh gọi API là đồng bộ trong khi các lệnh gọi dựa trên mục đích là không đồng bộ.
  • Các lệnh gọi API là ràng buộc thời gian biên dịch trong khi các lệnh gọi dựa trên ý định là ràng buộc thời gian chạy.

Để lắng nghe ý định phát sóng (chẳng hạn như tiếng chuông điện thoại hoặc nhận được tin nhắn SMS), bạn triển khai bộ thu quảng bá , bộ thu này sẽ được chuyển qua ý định. Để tuyên bố rằng bạn có thể xử lý ý định ứng dụng của người khác như "chụp ảnh", bạn khai báo một bộ lọc ý định trong tệp kê khai của ứng dụng.

Nếu bạn muốn kích hoạt ý định làm điều gì đó, chẳng hạn như bật trình quay số, bạn sẽ kích hoạt ý định nói rằng bạn sẽ làm.

Một ý định cung cấp một phương tiện để thực hiện liên kết thời gian chạy muộn giữa mã trong các ứng dụng khác nhau.

Mobile Apps Developer được hỏi... 20/06/2023

Phát triển ứng dụng lai là gì?

1 câu trả lời

Các ứng dụng lai được phát triển bằng các công nghệ web như HTML, CSS và Javascript, sau đó được bao bọc trong một ứng dụng gốc sử dụng các nền tảng như Cordova. 

Các ứng dụng được hiển thị trong trình duyệt nhúng của riêng nó, như UIWebView trong iOS và WebView trong Android (không phải Safari hoặc Chrome). Điều này cho phép bạn sử dụng bất kỳ khung gốc web nào để phát triển ứng dụng dành cho thiết bị di động.

Mobile Apps Developer được hỏi... 20/06/2023

Sự khác biệt giữa Upcast và Downcast trong Swift là gì ?

1 câu trả lời

  • Upcast chuyển từ lớp dẫn xuất sang lớp cơ sở, có thể được kiểm tra tại thời điểm biên dịch và sẽ không bao giờ bị lỗi .
  • Tuy nhiên, downcast có thể thất bại vì không phải lúc nào bạn cũng chắc chắn về lớp cụ thể. Nếu bạn có UIView, thì đó có thể là UITableView hoặc có thể là UIButton.
  • downcasts phải là tùy chọn với as?hoặc
  • "forced failable" với as! khi chắc chắn về loại
Mobile Apps Developer được hỏi... 20/06/2023

Một số nhược điểm của PWA là gì?

1 câu trả lời

Nhược điểm của ứng dụng web lũy tiến:

  • Ít quyền truy cập vào các tính năng hệ thống: Hiện tại, Ứng dụng web lũy tiến có quyền truy cập hạn chế vào các tính năng hệ thống gốc so với ứng dụng gốc. Ngoài ra, tất cả các trình duyệt không hỗ trợ đầy đủ các tính năng của nó nhưng có thể trong tương lai gần, nó sẽ là tiêu chuẩn phát triển mới.
  • Nhiều Android hơn – Ít iOS của Apple hơn: các ứng dụng web tiến bộ hiện được hầu hết các thiết bị Android hỗ trợ. iOS của Apple chỉ hỗ trợ một phần.
  • Không có tiêu chuẩn đánh giá: các ứng dụng web tiến bộ không cần bất kỳ loại hệ thống đánh giá nào áp dụng cho các ứng dụng gốc từ cửa hàng ứng dụng. Nó có thể làm cho quá trình nhanh hơn nhưng thiếu lợi ích khuyến mại từ cửa hàng ứng dụng.
Mobile Apps Developer được hỏi... 20/06/2023

Một số vấn đề bảo mật có thể xảy ra với ứng dụng Ionic là gì?

1 câu trả lời

Khi xây dựng các ứng dụng lai, bảo mật là một vấn đề phổ biến, miễn là ứng dụng của bạn có thể được thiết kế ngược . Kể từ phiên bản 4, Ionic CLI không cung cấp tính năng làm xấu mã tích hợp — một kỹ thuật phổ biến khiến tin tặc khó đọc được mã. Nhưng bạn cũng cần biết rằng nếu bạn đang sử dụng Angular CLI hoặc các phiên bản cũ hơn của Ionic, sẽ không có hiện tượng xấu hóa mã nào xảy ra. Các nhà phát triển của bạn sẽ phải tự làm xấu mã của mình.

Có rất nhiều cách để thỏa hiệp những gì đang xảy ra với ứng dụng dành cho thiết bị di động hoặc PWA của bạn, chẳng hạn như tấn công kẻ trung gian. Tại sao nó quan trọng? Chà, vì về cơ bản, ứng dụng Ionic của bạn là một trang web, chạy trên thiết bị. Điểm quan trọng là Ionic giao tiếp với phần phụ trợ bằng cách sử dụng các lệnh gọi HTTP thông thường. Vì vậy, bạn cũng muốn sử dụng các biện pháp bảo mật trên ứng dụng Ionic mà bạn sử dụng để bảo vệ trang web của mình, chẳng hạn như sử dụng kết nối HTTPS thay vì HTTP.

Mobile Apps Developer được hỏi... 13/06/2023

Sự khác nhau giữa onCreate(), onCreateView(), và onActivityCreated()trong Fragment là gì và chúng sẽ được sử dụng để làm gì?

1 câu trả lời

Tất cả chúng đều được gọi trong Fragment nhưng được gọi vào những thời điểm khác nhau. Cái onCreate() được gọi đầu tiên, để thực hiện bất kỳ khởi tạo phi đồ họa nào. Tiếp theo, bạn có thể gán và khai báo bất kỳ biến Chế độ xem nào bạn muốn sử dụng trong onCreateView(). Sau đó, sử dụng onActivityCreated() để thực hiện bất kỳ lần khởi tạo cuối cùng nào bạn muốn thực hiện sau khi mọi thứ đã hoàn tất.

Mobile Apps Developer được hỏi... 13/06/2023

Chương trình giao diện, không triển khai có nghĩa là gì ?

1 câu trả lời

Mã hóa dựa trên giao diện có nghĩa là mã máy khách luôn chứa một đối tượng Giao diện được cung cấp bởi một nhà máy .

Bất kỳ trường hợp nào do nhà máy trả về sẽ thuộc loại Giao diện mà bất kỳ lớp ứng cử viên nào của nhà máy phải triển khai. Bằng cách này, chương trình máy khách không phải lo lắng về việc triển khai và chữ ký giao diện xác định tất cả các hoạt động có thể được thực hiện.

Cách tiếp cận này có thể được sử dụng để thay đổi hành vi của một chương trình trong thời gian chạy. Nó cũng giúp bạn viết các chương trình tốt hơn nhiều từ quan điểm bảo trì.

Đang xem 1 - 20 trong 61 câu hỏi phỏng vấn