New Posts  All Forums:Forum Nav:

Advice for developing apps

post #1 of 6
Thread Starter 
I want to start developing apps on my own for Android/iOS. Where should I start? I know Java, C and Visual Basic at the moment.
Pandoras Box
(13 items)
 
NV57H
(6 items)
 
Donation
(6 items)
 
CPUMotherboardGraphicsRAM
E7500 @2.93 GHz Gigabyte G41M-ES2L Gigabyte HD 4650 2x 2 GB TwinMOS @ 800MHz 
Hard DriveOSMonitorPower
Samsung HD502IJ 500GB Windows 7 Ultimate 32-bit Samsung SyncMaster 943 18.5" Stock 450W 
Case
some piece of junk... 
CPUMotherboardGraphicsRAM
i3-2310M HM65 Intel HD 3000 6 GB DDR3 
Hard DriveOS
750 GB Windows 7 Home Premium x64 
CPUMotherboardGraphicsRAM
E6400 Dell Undecided..X1550 for now 2GB 
Hard DriveMonitor
Seagate 160GB Gateway 17" 
  hide details  
Reply
Pandoras Box
(13 items)
 
NV57H
(6 items)
 
Donation
(6 items)
 
CPUMotherboardGraphicsRAM
E7500 @2.93 GHz Gigabyte G41M-ES2L Gigabyte HD 4650 2x 2 GB TwinMOS @ 800MHz 
Hard DriveOSMonitorPower
Samsung HD502IJ 500GB Windows 7 Ultimate 32-bit Samsung SyncMaster 943 18.5" Stock 450W 
Case
some piece of junk... 
CPUMotherboardGraphicsRAM
i3-2310M HM65 Intel HD 3000 6 GB DDR3 
Hard DriveOS
750 GB Windows 7 Home Premium x64 
CPUMotherboardGraphicsRAM
E6400 Dell Undecided..X1550 for now 2GB 
Hard DriveMonitor
Seagate 160GB Gateway 17" 
  hide details  
Reply
post #2 of 6
Well if you known Eclipse IDE at all you should just be able to get it working like this:

http://developer.android.com/sdk/installing/installing-adt.html

If you have the ability to run OSX you can get xcode up and running then you have the ability to configure development for iOS apps...
https://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/chapters/Introduction.html

From my personal experience I found that with a background in C/C++ Java..etc...that Android development seemed to be easier and less constricting than developing for iOS with their xcode-only development and using Objective C to me seemed like taking C++ and adding a lot of extra symbols that make it difficult to go from the Java / C++ way of substantiation of objects...etc. The syntax is really confusing.

Also with the lock down of xcode to OSX only, if you don't have a Mac or don't see yourself ever buying one, it will become difficult to develop iOS.

I would say Android also isn't without its flaws of fragmentation that causes developers a lot of hair-pulling. The deal is you lock down your app to a range of versions of Android however that might not support all hardware or target audience intended.

here is more about ios vs. android development:
http://mobiledevices.about.com/od/kindattentiondevelopers/tp/Android-Os-Vs-Apple-Ios-Which-Is-Better-For-Developers.htm
Intel build
(17 items)
 
  
CPUMotherboardGraphicsRAM
i7 860 gigabyte p55-ud6 gigabyte gv-n560oc-1gi Corsair Vengeance CMZ8GX3M2A1600C9 
Hard DriveHard DriveHard DriveOptical Drive
Crucial M4 WD Caviar Black WD Caviar Black LiteOn Lightscribe 24x 
CoolingOSMonitorMonitor
Thermaltake Frio Extreme CLP0587 Arch Linux x86_64 samsung 2243swx ASUS vs-248H-p 
KeyboardPowerCaseMouse
moditek led flex Seasonic 860Watt Platinum Antec Lanboy air razor death adder 
  hide details  
Reply
Intel build
(17 items)
 
  
CPUMotherboardGraphicsRAM
i7 860 gigabyte p55-ud6 gigabyte gv-n560oc-1gi Corsair Vengeance CMZ8GX3M2A1600C9 
Hard DriveHard DriveHard DriveOptical Drive
Crucial M4 WD Caviar Black WD Caviar Black LiteOn Lightscribe 24x 
CoolingOSMonitorMonitor
Thermaltake Frio Extreme CLP0587 Arch Linux x86_64 samsung 2243swx ASUS vs-248H-p 
KeyboardPowerCaseMouse
moditek led flex Seasonic 860Watt Platinum Antec Lanboy air razor death adder 
  hide details  
Reply
post #3 of 6
Thread Starter 
Quote:
Originally Posted by adramalech707 View Post

Well if you known Eclipse IDE at all you should just be able to get it working like this:
http://developer.android.com/sdk/installing/installing-adt.html
If you have the ability to run OSX you can get xcode up and running then you have the ability to configure development for iOS apps...
https://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/chapters/Introduction.html
From my personal experience I found that with a background in C/C++ Java..etc...that Android development seemed to be easier and less constricting than developing for iOS with their xcode-only development and using Objective C to me seemed like taking C++ and adding a lot of extra symbols that make it difficult to go from the Java / C++ way of substantiation of objects...etc. The syntax is really confusing.
Also with the lock down of xcode to OSX only, if you don't have a Mac or don't see yourself ever buying one, it will become difficult to develop iOS.
I would say Android also isn't without its flaws of fragmentation that causes developers a lot of hair-pulling. The deal is you lock down your app to a range of versions of Android however that might not support all hardware or target audience intended.
here is more about ios vs. android development:
http://mobiledevices.about.com/od/kindattentiondevelopers/tp/Android-Os-Vs-Apple-Ios-Which-Is-Better-For-Developers.htm
Now that you mention it, I don't think I'll ever use an Apple product. Do you have other additional information if I want to get into app development for Android only? Thanks!
Pandoras Box
(13 items)
 
NV57H
(6 items)
 
Donation
(6 items)
 
CPUMotherboardGraphicsRAM
E7500 @2.93 GHz Gigabyte G41M-ES2L Gigabyte HD 4650 2x 2 GB TwinMOS @ 800MHz 
Hard DriveOSMonitorPower
Samsung HD502IJ 500GB Windows 7 Ultimate 32-bit Samsung SyncMaster 943 18.5" Stock 450W 
Case
some piece of junk... 
CPUMotherboardGraphicsRAM
i3-2310M HM65 Intel HD 3000 6 GB DDR3 
Hard DriveOS
750 GB Windows 7 Home Premium x64 
CPUMotherboardGraphicsRAM
E6400 Dell Undecided..X1550 for now 2GB 
Hard DriveMonitor
Seagate 160GB Gateway 17" 
  hide details  
Reply
Pandoras Box
(13 items)
 
NV57H
(6 items)
 
Donation
(6 items)
 
CPUMotherboardGraphicsRAM
E7500 @2.93 GHz Gigabyte G41M-ES2L Gigabyte HD 4650 2x 2 GB TwinMOS @ 800MHz 
Hard DriveOSMonitorPower
Samsung HD502IJ 500GB Windows 7 Ultimate 32-bit Samsung SyncMaster 943 18.5" Stock 450W 
Case
some piece of junk... 
CPUMotherboardGraphicsRAM
i3-2310M HM65 Intel HD 3000 6 GB DDR3 
Hard DriveOS
750 GB Windows 7 Home Premium x64 
CPUMotherboardGraphicsRAM
E6400 Dell Undecided..X1550 for now 2GB 
Hard DriveMonitor
Seagate 160GB Gateway 17" 
  hide details  
Reply
post #4 of 6
Well I would say if you know Java well enough to get a basic app done I would say studying how GUI's work with event-driven driver. Meaning you press a button and something happens and then press another button and something else happens. On any mobile device a GUI is required for an application. Having a good design of how you want them to look and feel might take time, experience, and feedback. However, you can learn XML to help to rapidly develop GUI's for Android.wheee.gif

Android allows you to use XML to easily develop the GUI. Now what is great is the Android Development Tools (ADT) plugin for Eclipse IDE allows you to create a very fast GUI. However the drag and drop approach only gets you so far. A lot of what you need to learn is through learning XML, and learning design architecture such as Model-View-Controller (MVC) Arch. The idea is that when you have a GUI and your model changes your GUI or "View" should reflect said changes. Also when you input data into text boxes or press buttons on the GUI "View" your Model should have the respective data modified to reflect changes required.

Another thing is from the ground up make sure you can make your code extensible. rolleyes.gif Meaning modular and have the ability to be fluid and dynamic in the ability to change in the never ending uphill battle of the developer, and the changing API and feedback of the end-users. The power of Java is in its ability to, if utilized correctly and planned out, create extensible code that for the most part can stand the changes of the times. The best thing you can do is to plan ahead by allowing your application to only require modular additions to existing code for extra functionality requested by the end-users, or to change just the data structure when new API is released that allows for better performance. With the approach of extensible design of your code your project can have the ability to put all your eggs into one basket knowing that when the basket gets old you can transport the existing placement and structure of the eggs into a new basket, or when you need to add another egg to the basket. thumb.gif

Resources:proof.gif

Model-View-Controller: http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller

Here is Android's Best Practices: http://developer.android.com/guide/practices/index.html

XML Android GUI: http://developer.android.com/guide/topics/ui/declaring-layout.html

Useful Resource for Best Practices in Java: http://www.javapractices.com/home/HomeAction.do
Edited by adramalech707 - 11/8/12 at 2:44pm
Intel build
(17 items)
 
  
CPUMotherboardGraphicsRAM
i7 860 gigabyte p55-ud6 gigabyte gv-n560oc-1gi Corsair Vengeance CMZ8GX3M2A1600C9 
Hard DriveHard DriveHard DriveOptical Drive
Crucial M4 WD Caviar Black WD Caviar Black LiteOn Lightscribe 24x 
CoolingOSMonitorMonitor
Thermaltake Frio Extreme CLP0587 Arch Linux x86_64 samsung 2243swx ASUS vs-248H-p 
KeyboardPowerCaseMouse
moditek led flex Seasonic 860Watt Platinum Antec Lanboy air razor death adder 
  hide details  
Reply
Intel build
(17 items)
 
  
CPUMotherboardGraphicsRAM
i7 860 gigabyte p55-ud6 gigabyte gv-n560oc-1gi Corsair Vengeance CMZ8GX3M2A1600C9 
Hard DriveHard DriveHard DriveOptical Drive
Crucial M4 WD Caviar Black WD Caviar Black LiteOn Lightscribe 24x 
CoolingOSMonitorMonitor
Thermaltake Frio Extreme CLP0587 Arch Linux x86_64 samsung 2243swx ASUS vs-248H-p 
KeyboardPowerCaseMouse
moditek led flex Seasonic 860Watt Platinum Antec Lanboy air razor death adder 
  hide details  
Reply
post #5 of 6
If you want to do Java/android start here. I find google documentation is always well written and they have tonnes of example code.

GL thumb.gif
First Gaming Rig
(16 items)
 
  
CPUMotherboardGraphicsHard Drive
Intel i7 2600k Asrock P67 Pro 3 SE GTX 580 WD 10EALX 
Optical DriveCoolingOSMonitor
ASUS DRW Havik 140 Windows 7 Ultimate ASUS VH228T 
MonitorMonitorKeyboardPower
ASUS VH228T Toshiba 32RV600A Packard Bell Aero Cool Strike X 1100w 
CaseMouseMouse PadAudio
Asus Antec Logitech MX518 razer goliathus Creative 2.1 
  hide details  
Reply
First Gaming Rig
(16 items)
 
  
CPUMotherboardGraphicsHard Drive
Intel i7 2600k Asrock P67 Pro 3 SE GTX 580 WD 10EALX 
Optical DriveCoolingOSMonitor
ASUS DRW Havik 140 Windows 7 Ultimate ASUS VH228T 
MonitorMonitorKeyboardPower
ASUS VH228T Toshiba 32RV600A Packard Bell Aero Cool Strike X 1100w 
CaseMouseMouse PadAudio
Asus Antec Logitech MX518 razer goliathus Creative 2.1 
  hide details  
Reply
post #6 of 6
Thread Starter 
Thank you both!
Pandoras Box
(13 items)
 
NV57H
(6 items)
 
Donation
(6 items)
 
CPUMotherboardGraphicsRAM
E7500 @2.93 GHz Gigabyte G41M-ES2L Gigabyte HD 4650 2x 2 GB TwinMOS @ 800MHz 
Hard DriveOSMonitorPower
Samsung HD502IJ 500GB Windows 7 Ultimate 32-bit Samsung SyncMaster 943 18.5" Stock 450W 
Case
some piece of junk... 
CPUMotherboardGraphicsRAM
i3-2310M HM65 Intel HD 3000 6 GB DDR3 
Hard DriveOS
750 GB Windows 7 Home Premium x64 
CPUMotherboardGraphicsRAM
E6400 Dell Undecided..X1550 for now 2GB 
Hard DriveMonitor
Seagate 160GB Gateway 17" 
  hide details  
Reply
Pandoras Box
(13 items)
 
NV57H
(6 items)
 
Donation
(6 items)
 
CPUMotherboardGraphicsRAM
E7500 @2.93 GHz Gigabyte G41M-ES2L Gigabyte HD 4650 2x 2 GB TwinMOS @ 800MHz 
Hard DriveOSMonitorPower
Samsung HD502IJ 500GB Windows 7 Ultimate 32-bit Samsung SyncMaster 943 18.5" Stock 450W 
Case
some piece of junk... 
CPUMotherboardGraphicsRAM
i3-2310M HM65 Intel HD 3000 6 GB DDR3 
Hard DriveOS
750 GB Windows 7 Home Premium x64 
CPUMotherboardGraphicsRAM
E6400 Dell Undecided..X1550 for now 2GB 
Hard DriveMonitor
Seagate 160GB Gateway 17" 
  hide details  
Reply
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Application Programming