What areas of computer science are particularly relevant to mobile development? [closed]
Want to improve this question?开发者_运维百科 Update the question so it can be answered with facts and citations by editing this post.
Closed 1 year ago.
Improve this questionThis isn't a platform specific question - rather I'm interested in the general platform independent areas of computer science that are particularly relevant to mobile applications development.
For example, things like compression techniques, distributed synchronisation algorithims etc.. what theoretical concepts have you found relevant, useful or enabling when building mobile apps?
Human-computer interaction is an important consideration, when you consider that mobile devices have all sorts of inputs that a "normal" computer would not - such as touch screens (with multi-touch), one or more microphones, camera(s), etc...
Taken from embedded software development is the habit to handle scarce resources such as CPU load and battery life.
My 2 cents: Augmented reality, NFC (RFID)
process calculi
I don't understand why "All of computer science" isn't relevant. (even things large large scale computing is relevant: you can't have a small device in your hands that does really complicated stuff on large scale unless there's a big engine someplace else).
Derecursivation (turning recursive code into an iterative loop) came handy once because some systems try to limit the default available stack size.
Pagination (how the OS splits heap memory into "page" units) is useful to understand when deciding the size of temporary buffers.
- The notion of context: context-awareness and/or context-orientation
- And also mobile ad-hoc network
精彩评论