Practicing programming thinking?

Tram Ho

Training programming thinking is an important factor for every programmer. To become a good and professional programmer, you need to be equipped with a solid programming mindset

What is programming thinking?

Programming thinking can be considered an important key of the programming industry and programmers. Depending on the programming environment, you are equipped with different mindsets, each position requires different skills and thinking. It can be simply understood as the way we think to solve problems and analyze big problems. small problem, then solve the problem. When an appropriate option is selected, it is converted into code, keywords

Methods to train effective programming thinking

There are many methods of training programming thinking today. Here are a few of the most prominent and sought-after training methods

Going from easy to difficult, mastering the basics

When you first start learning programming code, you must have basic knowledge about: Functions, variables, arrays, loops are the foundation of programming thinking. You need to master the boundaries, arrays, and how to separate functions before you can apply them to solve problems. After a while, you know algorithms and data structures other than arrays. Each will have different advantages and disadvantages, you must understand them well to think and apply to different problems.

Learn through free programming websites

Free online programming sites are a powerful tool for programmers to learn programming. Wherever you are, anywhere you can learn programming on free websites

Do Algorithms Exercises

To have good thinking, you must master the basic knowledge. So how to master the basic knowledge? No matter how well you study theory, they are just theory, to master programming knowledge, algorithms.. you have to work hard to do many exercises to apply Using the Basics Learners and related exercises can help get the basics started quickly. Solving exercises helps you practice thinking, solving small problems However, depending on each project, product, programming thinking problems are big problems, needing many parts to put together. So learners need to be persistent to solve each problem and come up with creative ideas

Apply into reality

To develop programming thinking, an equally effective way is to put it into practice. When you feel stuck in a problem or looking for something through books Besides algorithmic thinking, product thinking is also very important, it helps you discover what features the product needs. , when the project is big, how can the code not be messed up, easy to maintain?

Learn more about what you don’t know

An effective way to practice programming thinking is to ask other people to think, learn different things from what you normally use to learn new ways of thinking Expand your knowledge of thinking, you will learn more knowledge about programming. programming you do not know, moreover you also have a creative view, a better overview of programming, improve thinking ability, expand intelligence

Learn other people’s thinking

In order to have good programming thinking in the process of studying, doing a job is not enough, you need to learn and interact with colleagues, programming experts, they have a lot of experience that they can exchange with you. learning process you can learn, exchange with teachers, friends. After graduating from school, you should observe and learn from your colleagues

Play games to learn

Playing games is also a great way to learn thinking. Play mind games to increase logical thinking ability. This is an effective way to both entertain and train your brain. Types of intellectual training games: Rubik, Puzzle, Unblock me, … these are the types of games that require players to analyze and think in direction to overcome challenges.


You can’t become a good programmer if you work on large projects that require teamwork alone. It helps you to practice programming thinking, communication skills, coordination skills with others Expand your horizons by participating in projects with many people. Let’s stand on the way of users to create quality products

Train your programming thinking with common problems

Numerical analysis problem

Problem types: Given a positive number n<50. Look for ways to decompose the number n into the sum of positive integers, the permutation analyzes of each other count only one way.

Rear-ranking problem

Consider an example: Consider a general chessboard of size nxn. A queen on the chessboard can capture other pieces located in the same row, same column or same diagonal. Find a way to arrange n queens on the chessboard so that neither piece takes the other

Stack and queue problems

A stack is a list type equipped with two operations, adding an element to the end of the list and removing the last element from the list. It can be understood as a stack of disks, the disk that is placed on the next stack will be on top of all other disks and taken out first Problem example: Learn the stacking mechanism of recursive procedures, the turban method de-recursion, write a program that describes how to convert the radix from decimal to radix on the same stack

The problem of programming thinking about binary trees

Arithmetic expressions including addition, subtraction, multiplication, and division can be represented using a binary tree, where leaf nodes represent constants or variables, and non-leaf nodes represent operators. Each operation in a node will affect 2 sub-expressions located in the right sub-tree of that node

Share the news now

Source : Viblo