I was recently encouraged by a potential employer to go out and buy a book and begin learning ADA. I generally find that starting out with a good book, then supplementing that learning with continued research on-line with reference as needed to the book is the best way that I learn. What books would you recommend to start out with learning ADA? The job itself would involve embedded programming which I don't have experience with either. Any books that cover both topics well?
1 Answer
For a quick start see the Ada entry on Wikibooks.
For Ada in general John Barnes' book "Programming in Ada 2012" would be a good starting point. This book covers all aspects of the current Ada standard (Ada 2012).
For real-time aspects and higher emphasis on embedded systems, the book "Real-Time Systems and Programming Languages" by Burns and Wellings is fairly comprehensive. There seems to be also a newer book by the same authors, "Concurrent and Real-Time Programming in Ada", but I am not familiar with its contents.
Norman Cohen's book "Ada as a second language" is very approachable, but only covers topics up to Ada95 (Ada 2005) therefore not covered.
For concurrent programming in Ada, a great resource is "Concurrency by Ada", again by Burns and Wellings. This book covers topics up to Ada95. Perhaps the above mentioned Concurrent and Real-Time Programming in Ada would be a better choice.
Note also that the Ada language standard itself is very readable, and freely available. Once you know the basics of Ada, e.g. after going through John Barnes' book, it is easy to use the standard as a reference.
-
Great answer -- Barnes's book is probably the best place to start, though it's a little short on complete examples. Also, I second the recommendation to pick up (or download) a copy of the Ada standard. Ada as a language is very well specified, and the standard is a very readable document.– jimwiseCommented May 4, 2011 at 13:49
-
And finally, as with learning any language, program, program, program -- write as much practice code as you can, as early as you are able to, to get a feel for what works. Ada, as a very strict language, has the advantage that the compiler will usually do a very good job of picking up most kinds of programming mistakes, which also helps.– jimwiseCommented May 4, 2011 at 13:51
-
I really appreciate your answer's depth and detail. I think I have every thing that I need to get a very good start with these references! Thanks!– KennethCommented May 5, 2011 at 15:52
-
2