I think it depends entirely on what that data is going to be used for, and what countries you service. To do a post-code lookup via radius, you have to buy databases of lat/long and then use a radial algorithm. I work on a project where Google maps are generated based on location so that an exact street address is mapped. Because of the expense, we only provide mapping for the US (although we could extend to Canada, since I bought that database for a different project).
For us, a text area field wouldn't be practical. In the admin area, our users type in a street address and city in two separate fields, and then pick a county and state/province from a dynamic dropdown menu. When the form is submitted, we ping a free (for low volume) API that tries to return a lat/long on the street address. Because the API is very particular, we have to do a lot of data massaging before it gets sent to the API. For example, "123 South Trummel Avenue" would fail, but "123 S Trummel Avenue" would pass. We also run into issues with hyphenated streets, abbreviated vs non-abbreviated city names (Saint Louis versus St Louis), Farm-to-Market Roads, and so on. So we handle all of that processing on the server's end, ping the API, hopefully get back a lat/long, and then insert the lat/long into the database along with the record.
Then when we need to do a zipcode lookup, we just use the radial search based on the lat/long of the postal code the user enters to search by (which we get from the database of postal codes + lat/longs that we bought) and find all records within that radius.
Sorry for the long technobabble, but I wanted to illustrate that it really depends on how you're using the location data. Our admins are trained on how to input addresses and they still managed to bone it sometimes so that the API can't find a match. In this case, when you need very specific location information, I think a textarea field would result in too much human error and/or inconsistency in data to be useful overall.
I definitely agree that forcing the users to click on specific point in the map to mark their location is less than ideal. It records a lot of clicking and zooming just to get to the right approximate location. I find them frustrating when I have to use them. Even if the thing I'm trying to map doesn't require an exact precise location my anal-retentive nature will have me clicking on that thing 500 times until I get it exactly right.