What do you suggest me to do?
Use this without an IDE.
1. It's free.
2. That's the compiler you'll be getting in most of those other IDEs anyway.
3. Since you're in school, now's the time to learn how to work with a bare toolchain (and your favorite text editor).
I can highly recommend that. I've built my own development setup for the STM32 mcus using make, the gnu toolchain and openocd. Switching to another ARM mcu is just a matter of swapping out startup files, linker scripts and register definitions. Since I've dealt with them, I know how they work. In the way of writing the makefile and tweaking compiler flags and so on i learned a lot about the toolchain, much you can ever learn by clicking buttons and checkboxes in your IDE. Makefiles are easily managed by a version control system of your choice, can't say that about proprietary IDE project files.
Let's say, you've got two projects, one works, the other one doesn't and you suspect, there's something wrong in the 'project settings'. With an IDE you're left with visually comparing checkboxes, with Makefiles, just throw them at your favourite diff tool and the difference is evident.
Another great thing about the gnu toolchain is, that it's available for an unparalleled of targets (both operating systems and architectures): x86, ARM, AVR, MSP430, PowerPC, Mips? The gnu toolchain got you covered. No matter whether you're writing C code for your PC or for your MCU, you've always got the same compiler with the same error messages and flags. No need to say, that Makefiles always work the same (even if you're not building programs with then).
One major drawback of not using an IDE are inferior debugging capabilites. You've got the Gnu debugger, which has a pretty decent CLI and suffices my everyday debugging needs. (Breakpoints, watchpoints, backtrace, etc) As with the rest of the gnu toolchain, GDB is available for almost any platform, so I've been able to leverage my GDB skills from x86 to ARM.
It may take you longer to get started, you'll learn a lot (sometimes too much), but on the long run it'll make software development much more understandable. So come and join the circle of
the sacred few
If your main objective is 'getting things done' and you don't have a problem with learning a new (often low-quality) IDE for every new task, go the IDE way.