5 ms·
2013 - I stopped paying attention to every new framework or MV-whatever that comes out. What matters is the product and end user experience, and every single d
by weixiyen 13y ago
2013 - I stopped paying attention to every new framework or MV-whatever that comes out. What matters is the product and end user experience, and every single decision on how to go about making that product should be made with that thought in mind.
For me, it's not even javascript anymore. Objective-C and Java rule 2013 since web apps are not as pleasant to use on mobile.
- nbevans 13y ago"Objective-C and Java rule 2013 since web apps are not as pleasant to use on mobile." Or with some MVVM, Xamarin and some C# or F#... write once, compile for all mobile platforms. Never having to once touch the nastiness of Obj-C or Java.
- coob 13y agoWhat's nasty about Obj-C?
- stefantalpalaru 13y agoThe syntax and the APIs.
- tres 13y agoI understand that the Smalltalk like syntax of Objective C can be difficult to understand at first glance; however, once you've worked with it a bit, the syntax becomes quite expressive -- each argument is labeled; something like using named arguments in Ruby, but it's not optional. Not sure what you mean about the APIs being nasty. Can you elucidate?
- stefantalpalaru 13y agohttps://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/Reference/NSString.html#//apple_ref/occ/instm/NSString/localizedCaseInsensitiveCompare https://developer.apple.com/library/mac/#documentation/Cocoa...:
- rainforest 13y agoCould you go further? What, in your opinion is wrong with NSString? How would you fix it?
- matwood 13y agoI understand not liking the syntax until you get used to it (I find it wordy, but very expressive), but what's wrong the APIs? Apple's documentation is pretty good and the APIs have lots of features especially with blocks. I also like that collections are immutable and the programmer must explicitly ask for the mutable version. Cocoa etc... is quite large, but once the programmer knows what's available many problems that are hard in other frameworks are trivial when coding for OSX/iOS. Java is well java. I find one of Java's strongest points the extensive set of collections available. Add in Apache Commons and java is easy enough to use.
- pjmlp 13y agoI rather use those 5 MB for my application.
- nbevans 13y agoSave 5 MB and condemn yourself/your team/your company to the hell of maintaining multiple code bases that all do basically the same thing but subtly different and written in different languages. Sounds like a dumb ass decision. It's the sort of logic that makes people pick C or C++ when a managed language would have been more appropriate.
- pjmlp 13y agoNumber 1 reason to uninstall applications on Play Store, executable size, Google IO 2013. Plus Mono does not save you from writing multiple UI code anyway.
- nbevans 13y agoYes it does. Look at the MvvmCross project. Also struggling to verify that claim re. executable size, can you provide a link? Either way, average app size on Android seems to be around 3MB. A typical Xamarin-compiled app is around 4 to 4.5MB.
- pjmlp 13y ago> Yes it does. Look at the MvvmCross project. This is a cross platform implementation of the MVVM patterns, you still need to write the platform specific views. And to be honest, given my experience on .NET enterprise projects, MVVM brings me back J2EE 1.4 memories. > Also struggling to verify that claim re. executable size, can you provide a link? Someone mentioned it to me on a Reddit discussion. We have the policy to only use vendor supported languages, to minimize support issues and take advantage of performance. I should add the mobile apps I was involved were games.
- quacker 13y agoI'm curious how well these tools work. Having a single unified code base and supporting all (desired) platforms is every developer's dream. I'm skeptical because supporting multiple operating systems can be a headache even for desktop apps. I remember Facebook originally used HTML5 to support all platforms. This did work, but they became unsatisfied with the performance and ended up rewriting both the iOS and Android apps in native code.[1] The killer quote: "I think the biggest mistake we made as a company was betting on HTML5 instead of native," Zuckerberg said...[2] Granted, this was a different situation. They were using HTML5, and it looks like Xamarin compiles to native code. You mentioned slightly larger executable sizes, so I'm curious about the performance. 1: https://www.facebook.com/notes/facebook-engineering/under-the-hood-rebuilding-facebook-for-ios/10151036091753920 https://www.facebook.com/notes/facebook-engineering/under-th... 2: http://www.computerworld.com/s/article/9234695/Facebook_debuts_speedier_Android_app http://www.computerworld.com/s/article/9234695/Facebook_debu...
- oyvindeh 13y ago> For me, it's not even javascript anymore. Objective-C and Java rule 2013 since web apps are not as pleasant to use on mobile. I think this is bad. Not because the technology isn't good, but because small companies (or idealistic organizations, or others with a small budget) will have to implement useful apps for several platforms. Perhaps they cannot afford it (or think it's too much hassle, or don't care). E.g., say that there is a product made to make life easier for people with a certain disease. Perhaps some users will have to switch device in order to use it. And maybe there are other apps they need which are available only for their old device. (And don't forget that are other platforms than iOS and Android as well, including desktop.) Web apps (either run on the web, or natively) solves this problem, even though I agree that JavaScript, with it's myriad of ways to shoot yourself in the foot, is not ideal. Like another commenter pointed out, there are options for compiling to multiple platforms. But it often doesn't seem to happen that way, and perhaps it's not always possible or feasible.