Coding/ programming Android - G1 Q&A, Help & Troubleshooting

This really should be in the Dev section, but for fear of the thread getting trashed, I put it in Q & A. If this question has been posted, don't flame me...just point me to the link.
Simply, I want to learn to code in Linux. I now know next to nothing. I have learned most of the shell commands and such, but where do I go from here.
What language is Android in (Java, I presume. But isC++ useful)? I can find tutorials and I am intelligent, so I should be able to learn some on my own. Where do I start?
I have found several interactive tutorials:
1. Learning to program in C++
2. Learning to program in Java
Which one to pursue? I don't want to be Cyanogen or anything, but can't stand to be left out of the loop.
Will

Android apps are built in java. Start here for the SDK and plenty of useful info to get you going:
http://developer.android.com/index.html

Developer.android.com is a good place to start.. its modified form of java called dalvik, but java none the less. C is good for terminal apps, and Im pretty sure you can include some c in apps now too

the language is the least thing you should worry about though. Pick up a book on programming for dummies (i mean it, not trying to be mean or anything) or something that teaches you the basics of programming. There are several conventional approaches that we use to program. You can dive head first into Java, or C++, etc, but if you don't yet understand program flow (sequential, looping, or branching) or about data types and structures, objects, etc, you'll still be at a loss. Programming is a very general concept and once you get the hang of it, then you can pick whichever language is the best tool for what you'll be doing (in this case, google's android implementation of java).
Also pick up some HTML and javascript, both combined will make it a lot easier to understand XML once you get to it, and for some of the shell scripting associated with putting out roms, give using any linux distro as your real main OS a try for a few months. It's frustrating at first, but you'll learn so much trying to learn how to use it.

Jubeh,
Exactly the answer I was looking for. While thankful to the other posters, I think they understood me as having some knowledge (I tried to dive right into the SDK and it made about as much sense as Hebrew).
I am downloading a book called C++ for dummies and another by O'reily.
Let's see where this leads....I hope it is something that if I am dedicated enough can be learned outside a classroom.
Thanks all....

----
Removed:

shouldn't be posting warez, alritewhadeva.
Anyway, I'm also studying several android-related topics right now. I took like two computer science classes in highschool (first was intro to programming in basic and then advanced concepts in c++) and then did scheme programming for my first semester in college for bs-cs and java for my data structures semester, and then I quit school . I also did some self-taught learning in HTML (back when we actually made pages in HTML), javascript, and java applets.
Anyway, I hadn't touched any coding since about 6 years ago and now with android i'm trying to get back into it, but I've pretty much forgotten many things (syntax mostly, concepts stick with you), so right now I picked a book for programming for dummies too. I'm almost 3/4 done in 2 days because I know most of that stuff, but the refresher is nice. I plan on picking up a C++ book next, to get up to date with the current implementation, and because once you understand C++ (it's high level enough and low-level enough), java and other object oriented languages are a breeze to understand. After it I plan on catching up to JAVA 6, and then hopefully dive into android's java. It's a lot of work and requires dedication when you're doing it on your own, but it's also rewarding (both personally, and in that you could always get a job with just C++ that pays well enough for limited knowledge)

jubeh said:
shouldn't be posting warez, alritewhadeva.
Anyway, I'm also studying several android-related topics right now. I took like two computer science classes in highschool (first was intro to programming in basic and then advanced concepts in c++) and then did scheme programming for my first semester in college for bs-cs and java for my data structures semester, and then I quit school . I also did some self-taught learning in HTML (back when we actually made pages in HTML), javascript, and java applets.
Anyway, I hadn't touched any coding since about 6 years ago and now with android i'm trying to get back into it, but I've pretty much forgotten many things (syntax mostly, concepts stick with you), so right now I picked a book for programming for dummies too. I'm almost 3/4 done in 2 days because I know most of that stuff, but the refresher is nice. I plan on picking up a C++ book next, to get up to date with the current implementation, and because once you understand C++ (it's high level enough and low-level enough), java and other object oriented languages are a breeze to understand. After it I plan on catching up to JAVA 6, and then hopefully dive into android's java. It's a lot of work and requires dedication when you're doing it on your own, but it's also rewarding (both personally, and in that you could always get a job with just C++ that pays well enough for limited knowledge)
Click to expand...
Click to collapse
How is it a ware? Ebook...
Removed link anyway.

Thanks for asking this question pinetreehater. I've searched for the answer and not really found what I was looking for. I wanted to ask this myself but, as you stated, I didn't want to get noob-bashed.
I have some programming knowledge. I took some of the older langauges in highschool *mid 80's* (basic (of course), cobol, and assembler). And was quite good at it. IMHO. But I didn't really follow it after that and have basically forgot all of it.
I have a question.
Once I've got the books. How do I practice using them on my pc?

Related

App development

Arrrightt,
so i want to start cooking some apps and will be doing my own testing...unless there are daring enough people to try. Before i send it out i'll be sure to break it in on my own before i send out some defective thing
Anyways i have a few questions before i get started, is there a tutorial on here or somewhere on how to write apps or is there a way to re-write an existing app (for another os) to work on the android os
Cheers
There are a number of places you can start:
1) The Android SDK website has some simple tutorials http://developer.android.com/guide/index.html
2) Anddev.org http://www.anddev.org/ has tutorials of various nature.
3) In the dead tree world there are a couple of books I would recommend:
- "Hello, Android" by Ed Burnette: A good starters book but a little light on content in my opinion.
- "Professional Android Application Development" by Reto Meier: A more substantive book. If you like the Wrox programmer to programmer series of books (which I do) you will like this one. Still not as thorough as I would like but a good book.
- "The Busy Coder's Guide to Android Development" by Mark L. Murphy: I have not gone too far into this book yet so can't comment on it much. I think this will be my favorite of the three over time. It is a better book if you like to read a chapter to learn a fundamental concept. My gut feeling is it will be a better reference book as well.
4) The android developers blog is a nice place to read for tips on optimizations and such: http://android-developers.blogspot.com/
Beyond that study the javadocs and samples that are out on the web.
As far as porting an existing application to android goes it depends a great deal on what language the original was written in and how UI dependent it is. If the original application was not written in Java I would not recommend trying to port it unless you are intimately familiar with the original project. If the original project was written in Java then port for non-ui elements is generally straight forwad. Keep in mind however that the UI will need to be rewritten from scratch and further the limited screen real estate and memory will need to be taken into account. Writing an app for an embedded environment (whether Android, Symbian, Windows Mobile, or something else) has different priorities, first and foremost is optimizing for limited CPU. Where a traditional interface coupled app with loose control over object creation and destruction works fine on the desktop it does not do so well on an embedded platform.
That is all I have at the moment. Hopefully that will give you some avenues to explore and good luck!
yea i am reading through hello, android at the moment and i like it so far. ive never touched android before, and i know a little java, and the explanations seem pretty good to me.
eclipse doesnt run properly on windows vista 64 bit
im seriously crying i get errors trying to get it to work
insanemonkey said:
eclipse doesnt run properly on windows vista 64 bit
im seriously crying i get errors trying to get it to work
Click to expand...
Click to collapse
I am not a windows guy and but you might try this:
http://www.eclipse.org/eclipse/development/readme_eclipse_3.4.1.html#I-General-64bitJava
really this is off topic for this thread though. (If you want help P.M. me or start a new thread with the error message and I can take a look.)

Computer programmer

Just wondering if anyone on here is one.
Im really interested in become one but idk if I should go to a 4yr college
or a tech school (itt,devry etc..)
any advice?
university
A good well rounded university education is best if possible. Some start out and get a junior 2 year degree but make certain it's a match with the 4 year school you plan to get your BS degree. often it can take 5, 6 and even more years to finish. They give you projects with deadlines in a week. Computer Science requires much self-education so prepare to learn most things on your own. Programmers from Bill Gates and so on have made fortunes with their own initiative and creative spirit which one develops through intensive study and a drive to be creative much as an artist has. Programming is both a science and an art form.
Tone-E said:
Just wondering if anyone on here is one.
Im really interested in become one but idk if I should go to a 4yr college
or a tech school (itt,devry etc..)
any advice?
Click to expand...
Click to collapse
Just don't buy a learn to program in 24hrs book
If you are to take that path, start programming before you enter college. I already programmed in a VB-like IDE for mobile devices a few years before I entered college and it saved my life. Since I already knew the basic concepts, I made it with nice grades while everyone struggled to understand our teacher.
Visual Basic might not be the best way to start, so I recommend a simple curly brace language like PHP (web-based, very permissive). If you already know HTML, you will love it.
Oh, and NEVER, EVER copy and paste code you don't understand. Take the time to grasp every function you use in your program/website. If possible, start from scratch and use 100% original code. It's the right way to innovate and make mistakes to learn from.
All the best!
-Another programming n00b
anarchyuk said:
Just don't buy a learn to program in 24hrs book
Click to expand...
Click to collapse
I've found "For Dummies" books to be a great place to start and would have loved to know about it a few years ago. Heck I might have been a senior C++ or assembly programmer by now (jk)!
Hi,
I have to admit that I would start with VB.NET and then learn C/C++ eventually. Should have you covered for most platforms.
**** college. You can only learn to code by coding and reading - better prepare to spend a nice bit of hay at Amazon's.
I have a few recommended books here:
http://tamspalm.tamoggemon.com/category/hardware-reviews/book-reviews/
http://tamsppc.tamoggemon.com/category/reviews/hardware-reviews/books/
and also on the other sites.
Hows the salary?
To learn "Computer Science" you need to study at a college.
To "Program" all you need is interest and a logical mind.
I recommend Starting with C or Java, and then specializing in a niche area where you can get a lot of jobs. (For Ex: Android)
The salary is quite good when it comes to programming jobs if you can get hired at a place where your competences are valued.
how long did it take you to become a programmer and how is the work experience.
I'm not. I'm studying and slowly start to get web dev jobs. Work happens all at once and it's thrilling!
o thats cool did u go to a 4yr college or tech school?

Programming

So back when I was a teenager. I played around with vb. Wrote a couple very simple programs. A couple trojans using Winsocket ect ect. So I pretty much have no real direction with programming. I've always been the one of the group who "builds those pooter box thingamajigers". Lol, but hardware and software are VERY different. So I've been scanning the net and found a few good beginners java books. Got meh the pdf's, and I'm going to learn myself some java
So. One of these days. I may be able to contribute around here. With more than just words
[edit] I will be doing this is as a hobby, and maybe side projects. As I am a psych major.
Good Luck Zex....
Thanks man.....
Appreciate it
My auntie was learning java and used a programme called RoboCode. I think that has something to do with java. Try googling it. Basically you programme in java to make robots fight each other. Kinda cool. You should try it when you start a bit of java.
Oh and java apps would be good around here. Maybe Games??
I dunno.
Well good luck!!!
flyboy
well considering android is based from java. I figured I shall learn the ins and outs of it first. Before, I even try to mess with deving for our phones
native apps on android are in c++ though
Rudegar said:
native apps on android are in c++ though
Click to expand...
Click to collapse
What 'chu talikn' about, Willis? http://developer.android.com/guide/topics/fundamentals.html
I'm also learning Java as part of my A-level course, and man, loops are a ***** :-/
http://developer.android.com/sdk/ndk/index.html
ndk is c++
ndk == native development kit
I wasn't really talking about apps.
Also. Once I get the basics down. It'll be alot easier for me to understand the android sdk, and become familiar with it's api's.

[OT] Learning the ins and outs of java.

I'm a sophomore in high school taking computer science. (please don't judge me because of my age) Our school is making some major budget cuts, so sadly our video game programming and design class (the only other higher level programming class offered) got cut and this will be my last and only programming class at my school (well there's a possibility that it will be brought back in my senior year, but I'd at least like to stay fresh over the summer and next year). I don't know much about java to tell you the truth. I know how to use loops, conditionals, arrays (1 and 2 dimensional) and arraylists and most of the basic variable types (off of the top of my head, integers, doubles, booleans, longs, and strings). I've made some very very simple apps such as whack a mole and craps, but the gui class was provided by my teacher.
My question is this: is there a good, preferably free online program that teaches you the basics of java (especially related to the gui) and possibly some more complex programming?
I appreciate any help. thanks.
P.S. Please forgive me if this is too off-topic, but I really couldn't think of a better place to post this. Hope you guys will be able to help.
gonintendo said:
I'm a sophomore in high school taking computer science. (please don't judge me because of my age) Our school is making some major budget cuts, so sadly our video game programming and design class (the only other higher level programming class offered) got cut and this will be my last and only programming class at my school (well there's a possibility that it will be brought back in my senior year, but I'd at least like to stay fresh over the summer and next year). I don't know much about java to tell you the truth. I know how to use loops, conditionals, arrays (1 and 2 dimensional) and arraylists and most of the basic variable types (off of the top of my head, integers, doubles, booleans, longs, and strings). I've made some very very simple apps such as whack a mole and craps, but the gui class was provided by my teacher.
My question is this: is there a good, preferably free online program that teaches you the basics of java (especially related to the gui) and possibly some more complex programming?
I appreciate any help. thanks.
P.S. Please forgive me if this is too off-topic, but I really couldn't think of a better place to post this. Hope you guys will be able to help.
Click to expand...
Click to collapse
Go to Youtube.....search for a guy named "thenewboston"
He has a whole series of java programming lectures that saved me in my Advanced Java course in college....
Mr. Apocalypse said:
Go to Youtube.....search for a guy named "thenewboston"
He has a whole series of java programming lectures that saved me in my Advanced Java course in college....
Click to expand...
Click to collapse
Thanks! I'll make sure to check him out!
I was in the same place as you a while back. The best way to learn is by trying to make something you want.
Before jumping into any serious programming you need to learn a few more important concepts. Methods, classes, objects, and more on those. You need to understand how it all works before going further.
If you have any questions feel free to message me or hit me up on gtalk. I'll give you some tips, ideas, and some source code of apps to dig into, if you like.
Sent from my SGH-T959 using Tapatalk
the basics:
http://download.oracle.com/javase/6/docs/api/
http://www.eclipse.org/downloads/
now go to some university's entry level cs website and do some of the programming assignments.
but if you know control flow, some data structures, types, etc. just program. there are a ton of simple things to write. for example, write a calculator that has an add method that just adds the two arguments, then write recursive multiplication, factorial, and exponential methods that only use add (or other methods you wrote). it's simple, but decent recursion practice. i could give you a ton of simple programs to write.
oh and pay attention to what everything actually is. read and understand what static, private, public, classes, objects, etc. actually are and their purpose.
birgertime said:
I was in the same place as you a while back. The best way to learn is by trying to make something you want.
Before jumping into any serious programming you need to learn a few more important concepts. Methods, classes, objects, and more on those. You need to understand how it all works before going further.
If you have any questions feel free to message me or hit me up on gtalk. I'll give you some tips, ideas, and some source code of apps to dig into, if you like.
Sent from my SGH-T959 using Tapatalk
Click to expand...
Click to collapse
I should have added, I have a basic understanding of methods and classes, and we are just getting into objects now.
Thanks for all the responses guys! really appreciate the help.
also, if you guys have any suggestions for simple apps that a beginner like my self could make, fire away.
I applaud you for beginning a hobby/interest in programming early. Currently I'm a 2nd year student at a university for Computer Science so I have a very direct understanding of Java. You should know that structure of Java (for every day use) is different than that of the Java on Android.
Download the Android SDK: developer.android.com/sdk/index.html
Follow all the steps of installation and DO the Hello, Android (World) app that it gives you. Make sure you UNDERSTAND everything on the screen and in your main class.
Continue reading all the Developer documents for the SDK here:
developer.android.com/guide/index.html
Joy2DaWurld said:
I applaud you for beginning a hobby/interest in programming early. Currently I'm a 2nd year student at a university for Computer Science so I have a very direct understanding of Java. You should know that structure of Java (for every day use) is different than that of the Java on Android.
Download the Android SDK: developer.android.com/sdk/index.html
Follow all the steps of installation and DO the Hello, Android (World) app that it gives you. Make sure you UNDERSTAND everything on the screen and in your main class.
Continue reading all the Developer documents for the SDK here:
developer.android.com/guide/index.html
Click to expand...
Click to collapse
Thanks! I had kind of figured that android developement would be a whole different beast.
Who is this "java" girl and why would you like to go in and out and in and out of her?
What can I say? Different strokes.
gonintendo said:
What can I say? Different strokes.
Click to expand...
Click to collapse
Perhaps you would like to have a go at Missionary Java or K9 Java.
I can sell you my 'Programming with Alice and Java' textbook...if I find it. It has all the intro stuff. First it uses a program called Alice to teach you how it works, and then it teaches you to do actual code. When I find it I can tell you where it leaves off.

VB or C# for new dev

I'm a network admin who wants to start developing windows apps. I have a Masters in IT, but no coding experience. I had to take a C class, but didn't understand it. Should I learn VB or C#? I understand C# is superior, but I'm new and don't understand the concepts. I know they both use .net and I'm wondering if VB would be a good way to start or a waste of time? Thanks
Sent from my RM-893_nam_tmous_201 using Tapatalk
First of all, if you remember *anything* from C, C# will be more familiar.
Second, in terms of an employable skill in the job market, C# is more valuable; not only is it in greater demand in general, it's also closer to both C++ and Java, both of which are in very high demand.
Third, while VB.NET is a perfectly reasonable modern language with plenty of nice features, that modernization + same anachonisms it has held onto has led to it reaching a state that I consider no easier to learn than C#, so between the two of them I'd certainly recommend C#.
I can not say that I have personally done a lot of vb development, but based upon what I have seen of it, I would certainly recommend c#. C# is quite similar to other powerful languages such as c++ and Java, so after developing a solid understanding of c#, getting familiar with these other languages will be a breeze. It provides the best integration with the .net framework, and has simple and easy to understand syntax. I think that c# is more of a replacement for VB than anything anyways, and as such, learning c# is the best way to go:laugh:
If this message helped you, or you appreciate me taking the time, then smash that thanks button like a crazy spider running across your floor
rootfan said:
I can not say that I have personally done a lot of vb development, but based upon what I have seen of it, I would certainly recommend c#. C# is quite similar to other powerful languages such as c++ and Java, so after developing a solid understanding of c#, getting familiar with these other languages will be a breeze. It provides the best integration with the .net framework, and has simple and easy to understand syntax. I think that c# is more of a replacement for VB than anything anyways, and as such, learning c# is the best way to go:laugh:
If this message helped you, or you appreciate me taking the time, then smash that thanks button like a crazy spider running across your floor
Click to expand...
Click to collapse
Java and C# only have in common the common object class and similar syntax to some extend.
C# is way more powerful than java and comes close to C++ as far as complexity is concerned.
C# all the way. The way it is built and the constructs of the language itself, makes it easy to learn and enjoyable to code with. And I've use both Java and VB in a little enviroment
Functionally, there's no difference between C# and VB.NET. Anything you can do in C# you can also do in VB.NET. The syntax of VB is much easier, and is overall more easily picked up, but C# is more common, and more useful in the industry.
If you look at code samples a lot, and use C#<>VB.ET converters, you can pick up the syntax of both of them, so even if you found a code sample in VB you'd be able to work out how to code it in C# easily.
I used to hack exclusively in BASIC and VB. Now I work pretty much exclusively in C# (and the very similar powershell) and would encourage anyone else to use it too. It's FAR more useful than anything BASIC.
VB.NET and C# are virtually identical in capability (the both compile to MSIL that is processed by , so in terms of what you can do with them, they are equally useful. The main differences are how easily you can do certain things. With that said, though, C# (as a "C-like" language much like the very widely used C++ and Java languages) is more professionally useful that VB.NET (which is a "BASIC-like" language, a language family that is dying out in the professional world).
C# is almost identical to Java, and Java is very popular now. If you learn C# very well, learning Java is a matter of hours away and then you can easily port apps to android too

Categories

Resources