邮 箱: suijunqiang@126.com
General questions:
Recent project experience
What technologies are used?
What’s your responsibility
Introduce the application you worked on
Android:
Tell us something about ActivityCreator
- An activityCreator is the initial step for creation of a new Android project.
- It consists of a shell script that is used to create new file system structure required for writing codes in Android IDE.
What’s the life cycle of Activity
When do you use a service?
- Use service if you need something that is either used by other applications or outlives your application activities.
How do you pass large objects (that can’t be passed via intents and shouldn’t be serialized) via a service?
What do you know about Intents?
- Notification messages to the user from an Android enabled device can be displayed using Intents. The users can respond to intents.
- There are two types of Intents - Explicit Intent, Implicit Intent.
What is an Explicit Intent?
- Explicit intent specifies the particular activity that should respond to the intent.
- They are used for application internal messages.
What is an Implicit Intent?
- In case of Implicit Intent, an intent is just declared.
- It is for the platform to find an activity that can respond to it.
- Since the target component is not declared, it is used for activating components of other applications.
What do intent filters do?
- There can be more than one intents, depending on the services and activities that are going to use them.
- Each component needs to tell which intents they want to respond to.
- Intent filters filter out the intents that these components are willing to respond to.
What are the different kinds of Context?
-Activity Context
-Application Context
Where are the lay out details placed?
What is AIDL
Tell me something about nine-patch image
Which dialog boxes are supported by android
-AlertDialog
-ProgressDialog
-DatePickerDialog
-TimePickerDialog
What are the different forms of communication provided by the android applications
-For simple message & less data passing between processes/activities you can use intents.
-To pass large amount of data & to expose some functionalities within processes you can use remote services(aidl)
-To share data safely & securely within processes & activities the ideal choice would be Content provider.
How could you create reusable partial layout?
What are the methods to avoid memory leak in android? And what are the steps
-Use Activiy context only when needed i.e to access the activity's resources.
-Use application context as much as possible, getApplicationContext(),
-Avoid long lived references to a context e.g. storing the context in a class object
How do you make your App UI consistent across the different screen resolutions?
How do you persist data in Android?
-SharedPreference, file, DB, sqlite
How do you make asynchronous web request?
-AJAX?
How do you debug app on real devices?
How could you invoke camera in your App?
-Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
-startActivityForResult(intent, 0);
How do you do to enforce data security?
Extra:
Any experience in PhoneGap, Html 5, CSS 3?
Others (for potential team lead):
Any scrum experience
严格的说,SCRUM是遵循敏捷方法的一个软件开发框架。在SCRUM框架中,融入敏捷开发的精神和思想,就被称作SCRUM开发方法。SCRUM是一个 什么样的开发框架呢?简单说,它由三个角色(Role),三种会议(Ceremonie),三项工件(Artifact)组成。
角色(Role):产品主管(Procuct Owner),他负责项目的商业价值;SCRUM师傅(ScrumMaster),他负责团队的运转和生产;以及自组织的团队。
会议(Ceremonie):迭代计划会议,每日晨会(daily scrum meetings),迭代回顾会议。
工件(Artifact):用来排列任务的优先级和跟踪任务。待开发任务列表(product backlog),迭代任务列表(the sprint backlog),进度图(burndown chart)
在敏捷刚出现的时候,极限编程(XP)一直是主流。但是,在敏捷方法开始在全世界流行的今天,为什么最红火的却是SCRUM?这是因为SCRUM更容易普 及和推广。其实极限编程包容了SCRUM方法。我们从工程学的角度,可以把软件开发分成两部分:过程(分解任务,排列优先级和迭代计划)和代码实现(高质 量的代码和自动化的代码保障体系)。其中最难的就是代码,最有直接商业价值的是过程。SCRUM则回避了最难的部分,加强和创新了最能直接体现商业价值的 过程部分。
这就是SCRUM!
Scrum process, bad side of scrum
Any challenge in the project, how do you resolve it?
备案号: 沪ICP备 18032002