Difference between 2 language

Started by
2 comments, last by SimonForsman 11 years, 11 months ago
Hello everyone, im in the 1st year in my college right now and doing my research about java and objective C language. there are few question would like to ask from the senior here:
1. Most of the mobile using android OS, some of the application is free and some is pay.
2. Apple using objective C and most of the application is pay.

question here, if the java is open source, why go for the android and need to pay for some application? example, (A) person created a game from java code, (as we know java is open-source language) and sell the application for user? Everyone can create a simple game from java since its free. Compare to objective C, most of the Apple's application ain't free and have to pay for it. Seems like kinda "unfair" competition since a lot people doesn't know Android OS from java platform (open source) yet still pay for some application?

p/s: sorry for bad english there.
Advertisement
If i understood you right you think all android apps should be free bc java is open source?(not even sure if that is completly true)

Going by that logic i could say bread should be free bc i can grow the corn myself free of charge....
You are not paying for the underlyning infrastructure(vm, language tools, etc) but for the effort/timespend building the application.
Java hasn't always been open source - it's not too long ago that it was firmly closed and tightly controlled. Yet people still wrote Java apps then.

Bottom-line - being open source isn't everything it's cracked up to be. It's great for programmers, yes, but the typical end-user doesn't really care either way. The typical end-user just wants a program that does something they need or want done and that will run on their hardware/OS, and whether it's open source or not, being able to modify the code is completely irrelevant to them. They have no interest in modifying the code, they're going to run screaming from it if they even get a sniff that they might ever have to modify the code.

And typical end-users constitute the majority of a customer base for mobile apps. So if you're in the business of writing mobile apps, and if you want to be able to put a roof over your head and food in your belly, that's where you focus your efforts.

Direct3D has need of instancing, but we do not. We have plenty of glVertexAttrib calls.


Hello everyone, im in the 1st year in my college right now and doing my research about java and objective C language. there are few question would like to ask from the senior here:
1. Most of the mobile using android OS, some of the application is free and some is pay.
2. Apple using objective C and most of the application is pay.

question here, if the java is open source, why go for the android and need to pay for some application? example, (A) person created a game from java code, (as we know java is open-source language) and sell the application for user? Everyone can create a simple game from java since its free. Compare to objective C, most of the Apple's application ain't free and have to pay for it. Seems like kinda "unfair" competition since a lot people doesn't know Android OS from java platform (open source) yet still pay for some application?

p/s: sorry for bad english there.


a few things:

1) Java is not opensource, its a language with an open specification and a few opensource implementations (under varying licenses), this is also true for C#, C, C++ and Objective-C (They're all open specifications and all have opensource implementations), Apple iOS applications are compiled using an opensource compiler aswell. (Allthough the SDK is not opensource)

2) Opensource and Free software refers to what you can do with the software (Opensource means you have sourcecode access while free software is a term used by the free software foundation for software that you are allowed to use for any purpose, modify and redistribute), the cost of obtaining the software is irrelevant. (software that cost $5000 to buy can still be free software according to the FSF if the buyer gets access to the sourcecode and the right to modify and redistribute it under a suitable license).

3) Even viral opensource licenses such as the GPL doesn't apply to software built using GPL licensed tools, only to derivative works of the GPL licensed software. (a Java application running on a GPL licensed JVM doesn't have to use the GPL, a Java/C/C#/C++/Obj-C/Whatever application that incorporates a GPL licensed library however has to be released under the GPL (but can still be sold at any price), Also Googles Java VM (Dalvik) uses the Apache license which is non viral so you can use dalvik as the base for a proprietary JVM if you want.

Android has more free apps for three reasons:
1) The platform is less restricting making piracy easier, F2P models where revenue is taken from advertisers or through microtransactions help counter this as even pirates provide some revenue with these models.

2) The development tools are cheaper which reduces the barrier of entry allowing less dedicated developers to develop for the platform, low quality apps tend to be free as noone are willing to pay for them.

3) The GPL (and even the LGPL) is incompatible with iOS and the AppStore (Users cannot freely modify an app for iOS even if they have the sourcecode (as they'd have to jailbreak their phone) (v2 isn't that strict in this area but v3 is very explicit about it), Free software ideologists (Who are more likely to make free apps in the first place) will not develop for iOS.
[size="1"]I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!

This topic is closed to new replies.

Advertisement