Do not gone through, but read carefully.
Conceptually, a widget is a chunk of code that provides functionality in the ArcGIS Viewer for Flex application. The Viewer application has an extensible widget programming model and supports modular functionality. For example, one widget enables Viewer application end-users to switch between base maps in the map display; a different widget provides functionality to find a location in the map; while another widget provides an overview map for the Viewer.
You never do it for own application.
"Never" means that if you do not have the experience and you do not understand "How it is made" - you can not do that.
"Never" means that if you understand "How it is made" - you do not want to do it. (it is hard work - to dig into someone else's code)