I always need to communicate with the TTL UART port on the MCU with a
computer. When I talked about that, people always refer the UART port
as a RS-232 port. Are they correct? If not what is the difference
between them?
Reading between the lines, you may be talking about the case where you have a board with an MCU which can be accessed (download code, debug, etc) via the USB port on your computer. It is quite common now to operate that way.
If so, it's likely that your operating system is setting up a "virtual RS-232" port for your device. This isn't actually an RS-232 port, at all. Instead, it's some software running as a driver under your operating system which emulates the details of an old-style "serial port" driver. This software communicates with a separate MCU (one that is also on the board with your MCU) via a USB-to-serial converter chip (there are a number of manufacturers for those, as well.) The separate MCU is what is actually connected to your MCU's UART port pins. Likely, it's also connected to your MCU's JTAG pins, too, so that debugging can take place. There is additional software in this separate MCU that handles the details of both debugging AND UART communications with the operating system of your computer.
So. Yeah. People refer to that as an RS-232 port, when they are thinking about this from the point of view of how the operating system + driver software causes it to appear to an application program running on that operating system. You could then use any standard application which knows how to open up an RS-232 port using the standard function calls that the operating system provides for that purpose and it would work fine. So it is an RS-232 port from the point of view of that application program.
But in reality, it's not.
Separately, a UART is a "universal asynchronous receiver/transmitter" and traditionally referred to an IC chip or else to a functional block in an MCU. Either way, it was usually hardware designed to make it easy for software you write to handle the asynchronous serial protocol used (start bit, data bits, and one or more stop bits.) It's possible to bit-bang the protocol, but it is a real pain and high speed becomes more or less unobtainable then.
You will also see USARTs -- universal synchronous/asynchronous receiver/transmitter -- on some MCUs, as well. It just means they can do more than a UART, but that they include the UART capabilities as well.
RS-232 is a set of specifications about voltages, loading, and so on. It specifies a bunch of signalling details, as well, covering quite a few different available signal lines. But it is better to see RS-232 as an electronics specification defining voltage ranges for mark and space, noise margins, allowable receiver loading details, and various other details involved in translating between analog signal ranges and discrete digital ones and not so much about some specific UART's serial protocol.
I'm just going to refer you to Wiki pages for details (which you should have read before asking here, I think.) These are: RS-232 and UART. I have no real desire in duplicating that work.