If the mistakes are regarding design (technical and not look n feel) of the application then, you should first create some
UML Diagrams [
^]print it out and then see if you miss anything. Same with the database design. Even you can ask a fellow programmer to take a quick look on the design document. And if you are not doing any design documentation then that is the main cause of design mistakes.
Regarding coding mistakes, start using
unit test [
^]in your project. This will allow you to produce higher quality code. And after you unit test your code, you have to do integration testing. The more you test more bugs you will catch before users catches them.
If the projects you are working are large and complex then you should consider using design-patterns. They are designed to make your projects less error prone and more flexible.
And don’t forget that when you are new, you make mistakes but you need to learn from these mistakes to gain more experience.
So to avoid most of the mistakes,
1. Design properly
2. Implement correctly
3. Test thoroughly
4. Fix quickly
Good Luck.