Tag Info

Hot answers tagged

101

If you get a set of requirements that are physically impossible to implement as the device does not support and cannot support the wanted functionality, you need to explain this to the person creating the requirements. You should be respectful and explain why the requirements are not possible to implement (i.e. the touch screen cannot distinguish between a ...


50

You need to test application on real device to at least to look how it behaves with: Real device hardware Real internet connection (including the use of a cell network vs WiFi) Your fingers instead of mouse Performance with other apps running in the background The limitations of the iPhone, like cpu, disk capacity and memory (A Simulator is not an ...


29

These requirements are not silly, stupid or ridiculous. This is in fact very important problem for users of touch screens, that people with larger fingers have it very difficult to pinpoint the target, which is often not understood by little-fingerers. However, if you find this requirements impossible to implement because device's sensors are not able to ...


25

It's mostly just throwing a big number out there because it impresses the masses. Bigger numbers are obviously superior so anything with a 64-bit processor is clearly better than something with a 32-bit processor. The new CPU is significantly better than its predecessor but, in Apple fashion, they're not going to try marketing based on tech specs - they're ...


24

From my experience this depends heavily on the kind of application you want to do. Assuming that familiarity with the platform is not an issue. If you need to develop a "programming logic", "algorithms heavy" application: WinPhone 7 -> Android -> iOS (ascending order of difficulty) Reason: WinPhone supports "out of the box" a richer set of languages ...


20

A few things to ask/document (may or may not be what you're looking for): What 3rd party libraries/tools/etc are used? How do you build it? Anything special required for a build? What are the valid targets for the build (OS, version, etc)? (from World Engineer's comment) Where is the source located? How is change managed (releases, branches, etc)? ...


20

One thing you'll never know when testing with emulator is how it really feels for a user holding a real device in their hand, sliding fingers on its screen. As a result, user actions that seemed smooth when simulating with touchpad on your laptop, may turn out quite cumbersome for a real device usage. To make sure that your application is OK, test it with ...


16

There is no "4GB wall" on ARMv7, as many ARMv7 cores support LPAE (Large Physical Address Extension), which is a concept symilar to PAE on x86, except LPAE uses 40-bit addressing. Meaning, that LPAE equipped ARMv7 can address up to 1TB of RAM. It's also important to mention that upcoming ARMv8 cores, including A7, will not use 64-bit physical addressing. ...


14

Disclosure: I work for appMobi. There are many similarities between the two, in fact some of appMobi's functions are built on PhoneGap. Fundamentally, they both encapsulate HTML5/CSS3/JS into a webview that is exposed to the user from a native "Container". They both offer an API that lets you access the device's OS in a way that is impossible for a web ...


14

Objective C, like C, has no namespaces. This means that if someone has already defined a function foo or a class Bar, it must be globally unique and you can't define it. This can result in a lot of headaches when you have your code and then add another library and suddenly things break in strange places. There is a guideline presented by Apple for this in ...


13

There's no particular technical reason, but the developer tools Apple provides only run on Macs, and I don't see them being in any hurry to change that. With regards to third party developer tools, Apple very publicly dislikes them, and given Apple's absolute veto power over what gets in the App Store, it's not a great idea to invest any significant ...


13

I'm going to play Devil's Advocate here a bit and say that I think it's actually technically feasible to measure the size of a person's thumb. The iPhone is a multitouch device. For calibration, you could instruct the user to place their thumbs or two fingers on the screen side-by-side, and measure the distance between these touches. Of course this would ...


13

One thing I don't understand is, many apps have a Free version and a Full version. Some do, some don't. There's not one specific reason, like "the app store guidelines say you have to do it this way." There are several reasons, including but not limited to: Setting up and administering in-app purchase can be a bit complicated and an ongoing hassle, ...


12

What you do is treat it seriously and come back with an estimate of how long it would take to do and make sure the estimate is very high and very detailed so they can't dispute the high numbers. Once you have shown it won't be economical to do they will leave you alone. Make sure to point out whci specific tasks are not currently supported by the hardware ...


12

This developer has posted the iOS version stats his app sees (updated weekly). Currently (as of August 13, 2012) about 73% of devices use IOS 5.X. Update for iOS 6: Here some newer stats on iOS 6 Adoption two weeks after its release.


12

Brad Cox and friends added a thin layer of Smalltalk on top of C. Objective-C thus has much more in common with Smalltalk's highly dynamic message-sending style OO than C++'s. One major difference is that in Objective-C you don't worry too much about what class something is: you care about what messages something understands. You can have objects that ...


11

I'm porting an app from iOS to Android, it's someone else's app that I am working with to do the port but none-the-less. First off I would say that the user bases have been taught drastically different ways of interacting with their devices. A lot of this comes from the actual design of the applications as well as the ways that the devices function. Some ...


11

Learning to develop Android Applications in Java is going to give you some basics in Java development. But your primary platform is mobile device so it is not going to give you any knowledge of how to use Java on a backend server. Even though the language is the same the problem space is different. Thus learning to develop on the iPhone using objective-C is ...


11

Mac OS X can only contractually be run on Apple Hardware. iOS requires the Cocoa framework and to have access to a Mac to sign the keychain. While you can use Objective-C on Linux using the OpenStep libraries, you can't push the applications you develop to iOS due to the lack of the correct Cocoa API libraries and while you can push to a jailbroken device ...


11

There are a few visual programming tools available, but for all I know, they are all horrible. UML, which is basically a declarative visual language, is excellent for expressing the big picture, but for fleshing out the details of an implementation, it quickly becomes overwhelming and confusing. There are a few programming environments where you can create ...


11

First, you need to make sure you can legally do this. If any of it qualifies as a work for hire, you need to get permission from any company that owns some of the copyright. This applies not just to the current company but to any past ones. To answer your specific questions: Probably, particularly if you can generalize it to be useful for other people. ...


11

Nobody but Google knows why they made that decision, but here's my best guess: Android is an open platform, so there are a lot of different hardware configurations out there. Being able to emulate different hardware configurations is a big boon for developers, in that it greatly reduces the need to have actual devices to test on. This keeps the costs down ...


11

One of Apple's criteria for accepting a program is whether or not it makes calls to unsupported Apple API's (or other bad stuff). By requiring static linking, they can prove that the software does not make such calls. Allowing dynamic linking would allow any kind of behavior to be added later, which pretty much invalidates their approval process. Apple ...


10

People at Apple already deeply thought of all these things and they didn't come up with a resizable interface depending on thumb/fingers sizes. As a user, I would hate moving targets under my fingers.


10

If you are worried about getting in trouble for being given impossible requirements, then the best choice is to tell them immediately that it is impossible. The longer you let them build a business plan on an impossible project the more likely they are to blame you for the failure of the project. Above all, try not to worry about things that are not your ...


10

The part that creates coupling isn't the fact that the variable lives in a singleton, but that your client object goes and fetches it from there itself. This means that you could never change the way your object is stored without introducing all kinds of hassle for yourself (assuming, as you say, that many objects behave this way). Consider what would ...


10

There is no industry standard as such. You could look into sample Apple Source Projects to see how they do it.. You could however, try organizing your files into Groups & associate each group to a folder.. Organize all Controllers in One Group with Subgroup for each usecase. Put all views in One Group and subgroup for each usecase. Organize All ...


10

'Store' in this context sounds very much like a Repository or Service. In that case, this is an extremely common pattern. The flaws/problems will vary with your implementation and the problem domain. On a general level, it sounds like the book is using 'Store' to represent a level of business logic + a level of data retrieval logic that handles a set of ...



Only top voted, non community-wiki answers of a minimum length are eligible