How do you come from a series of wishes to a work program? If so, someone would write a program for it, and computer programmers would be outdated. The custom software development company overcomes this problem
However, there are general principles that you can follow to guide you to a solution. (Based on How to Solve It by George Pólya.)
1 Make sure you understand all needs.
In the real world, this is sometimes the most stimulating part. Otherwise, the product you create (that is, the code you create, the design you create, etc.) is completely different than what an instructor or customer expects.
However, this is probably the number one thing people know when they get a job or a job. How can you ever expect to code hundreds, perhaps thousands, of lines without understanding what you are doing?
2 Schedule tests to help you validate possible solutions.
If you have no task to test a task or a job and make sure it meets the required requirements set by your instructor / supervisor, you will not be aware of the potential issues.
This can of course cost notes or, above all, money and time!
3 Design the approach.
One of the most commonly used methods for this is gradual improvement (AKA's top-down design). This is a process that splits the original problem into a few minor sub-problems.
Then take each sub-problem and divide it into even smaller sub-problems. This is repeated until you get sub-problems that are small enough to be translated into code.
This approach can be very helpful, not just for beginners trying something new or difficult. It can also support people who have been doing this for years. If you get the idea, put it on paper and then work through the problem, you can understand the problem faster and easier.
4 Translate your design into computer code
OK, this is probably the most anticipated part of the whole process. Seems just right? It should be after your extremely careful planning and design work. You can see that the procedure does not work if you move from step 1 to step 4.
Another side note is the time you need for strategy and design. The planning and the design are common, while the actual coding is only a small part.
5 Think about how you came up with your solution.
Last but not least, the reflection. Usually I write notes about problems I had with writing the actual code, or whether I found something better than I did not know. If you keep a notebook nearby to take notes, you can return to them when you do something.
The reflection also gives you time to go through, add test measurements if necessary, and ask questions about what worked and what did not? How can this experience help you to solve future problems? Which of course means that you are a better developer in the long run.