In the first class of this course in Computational Thinking, the tutor used realistic objects as examples to give me initial insight into using computational thinking to solve problems.
I feel that I have benefited from both the thinking and the technical aspects of the methodology of using computational thinking to solve problems, which has given me a deep appreciation of the idea that "everything is an object", That is, through computational thinking it is possible to take a real object and fully understand it by means of decomposing->abstraction-> pattern recognition->Algorithms, and the latter is I am very satisfied in terms of gaining skills that I will use in my future career.
Before learning computational thinking I had never had the experience of applying computational thinking to a real problem to get a solution. Before learning the subject of computational thinking I had always thought that programs were built by stacking code like a pyramid, but now I find that building a program code using computational thinking is more like building a modern building, first designing, then building the framework, then adding the bricks. The next step is to add the bricks and pieces to get a complete building. Similarly, for any problem, whether it is computer-related or not, it is important to put together a basic framework and then analyse the object step by step to solve it step by step.
In the process of writing code, I often make the mistake of writing wherever I can think of, so writing code without structure and logic often leads to a lot of redundancy, and it is easy to become confused in the process of writing due to a lot of loops and recursions, as mentioned above, writing code is like building a building, you have to design the framework before you can add bricks. I believe that in the future I will keep this habit and study and research more efficiently.
In future learning, as with the most obvious features of computational thinking - structure and flow - it is important to carefully analyse the object of any problem, assess its difficulty, i.e. feasibility, design a solution to the problem, then run a test of the designed solution, give feedback on the next step if errors are found, and repeat the process. I believe that by learning about computational thinking, I will be able to solve most of the problems in my future studies.