Swift\n\n\n Data\n\n value types\n\n enums\n\n can have initializers, can be extended and can conform to protocols\n Swift enums do NOT get default integer values\n\n\n structs\n\n auto-gen\u2019ed memberwise initializers (not so in classes)\n No ref counting, since value type\n\n\n\n\n reference types\n\n classes\n\n very similar to structs (but ref type)\n inheritance\n Ref count for memory management\n\n\n\n\n Swift Diff: dot syntax allows us to directly set sub-properties without intermediate assignment (reduces instance creation and malloc)\n Rookie Question: What is the key deciding factor between creating a struct vs. class or class vs. struc?