|
Three areas of memory:
See Dr Okie's page for a list of study-topics.
No. Well, not much.
ITEC320 is about providing perspective on what a programming language can do, and can look like,
to be contrasted with your (perhaps) first language/paradigm (Java and Object-Oriented).
Having a language which supports both immediate objects and object-references is its own mixed blessing: The programmer needs to be remembering/aware of whether each value can be aliased or not. Also, there can be mismatches between functions that want objects vs. references-to-objects, that must be converted. (This can be in functions written by your team, as well as language-wide APIs.)
Allocation and freeing memory are critical concepts to know and be aware of; they form the basis of our mental-model of real machines. See Garbage collection strategies (Wikipedia). (Every CS major should know the basic ideas of garbage-collection, even though only our OS class actually covers it.)
If somebody asks “do you know C”, they're not asking about whether
you can use
However, in practice, even top-notch programmers have difficulties getting manual memory-management correct.
upshot: Avoid manual de/allocation! Either use a language that does it automatically (like Java), or use a library fornew /malloc /free which does it itself.
This is compounded, when objects contain references-to-other-objects.
E.g.; a
Btw,
it is notable that while Java 1 was originally slower than corresponding C programs
by a factor of 2 or more,
after a decade of work on
This page licensed CC-BY 4.0 Ian Barland Page last generated | Please mail any suggestions (incl. typos, broken links) to ibarlandradford.edu |