The general rule to follow is that structs should be small, simple (one-level) collections of related properties, that are immutable once created; for anything else, use a class. C# is nice in that structs and classes have no explicit differences in declaration other than the defining keyword; so, if you feel you need to "upgrade" a struct to a class, or conversely "downgrade" a class to a struct, it's mostly a simple matter of changing the keyword (there are a few other gotchas; structs can't derive from any other class or struct type, and they can't explicitly define a default parameterless constructor).
Thanks for that heads up. Never heard of it before. I feel codeacademy is good with some limitations. Hope wont face such issues on connectivity with PLM. Sure ll give it a try for Java once.
It is pretty good. I loved it coz you could easily apply on your paint needs.