3 ms·
Java was a great choice for the technical goals the Android engineering team was trying to achieve (cross-architecture portability, easier transition for non-mo
by fpgeek 14y ago
Java was a great choice for the technical goals the Android engineering team was trying to achieve (cross-architecture portability, easier transition for non-mobile developers, etc.). The problem was that those technical goals turned out to be not very helpful in terms of meeting Android's strategic goals, given the way the mobile OS/device market has evolved.
That's a mistake at a level above engineers and software architects (or at least a mistake so far - if, hypothetically, Intel managed to crack their mobile CPU problem the choice of Java would turn out to be very smart). This is the dual of Apple's situation with iCloud. The strategic choice to start building out cloud services to support their ecosystem is clearly the right one, it is the implementation that has missed the mark (so far).
- cageface 14y agoI understand the short-term reasoning for choosing Java. Unfortunately mobile is one platform where transparent access to native code is a huge advantage and Java/JNI puts Android at a huge disadvantage here compared to Obj-C/C++. This is why writing something like a Twitter client is actually much easier in Android but doing something really interesting like realtime multimedia or highly responsive, complex UIs is difficult to the point of impossible in some cases.