I am still studying web parts. I’ve learned how to export and import web parts but I’m not sure how useful this is because you can’t share web parts with other sites. You can only export a web part that is available in the site or import a web part that is available in the site. I don’t see how this serves any purpose then unless you want to save some web part settings.
I also learned that user controls used as web parts can implement the IWebPart interface and set all of the web part properties just like a class that inherits from the web part class can. This is good to know because I thought you could not use web part icons with user controls. It is much easier to create user controls than it is to define the entire HTML output through code in a class file.
Web parts require you to know more about implementing interfaces so studying web parts serves an additional purpose in familiarizing me with some of the intricacies of the NET Framework object oriented programming.