Hardware wallet is a dedicated, air-gapped (offline) device with its own buttons and screen, with security mechanisms similar to SecureBoot which blocks unofficial firmware. It allow you to generate your private keys and then use them to sign transactions always in a secure, offline environment.
When you are signing a transaction it also allows you to examine the transaction details without the risk of being tampered by malwares, that's why it has its own screen and buttons.
It can also display your receiving address (and its QR code) on its own screen, so that it won't be possible to be tampered by malwares. (I'm not a Ledger user. It seems that the QR code feature is not supported by Nano S? I'm not sure. However this dosen't really matter as long as you check the address carefully after scanning the QR code) However this security measure can't work if you or your transacting counterparty (like an exchange sending withdrawal to you, or accepting depositing from you, where most exchanges are in fact a website in a browser, so that a malicious browser extension is totally able to tamper the address) can only see tampered address, that's sadly one of the inherent limitations of hardware wallet. To my knowledge only in a face-to-face scenario can the participants of a transaction be immune from this risk.
Not like the case of PC that processes can inject code to each other freely (and even worse, inject to the kernel), so that malwares could be really ghosty, hardware wallet doesn't allow installing arbitrary things on it, which creates a very secure environment. The firmware of hardware wallet is digitally signed by the manufacturer, so that the device can validate them, and then refuse to install or run a unofficial firmware.
(However, sadly this assumption that "only official firmware can be installed" does not really hold in reality sometimes, that some famous hardware wallets have been reported to have vulnerabilities allowing to bypass such limitation)
(Besides, there's also a potential risk called "supply-chain attack", that the hardware wallet device can be tampered/substituted during manufacture/delivery)
You are given a 24 word recovery phrase when setting up the nano ledger
That's your mnemonic phrase. All your private keys are derived from it. It can control whole your wallet, so it's very important.
you can not trade or transfer coins unless the physical device is plugged into the PC
Of course. Anyone cannot spend these coins without private keys. The private keys never leave the hardware, that's the point.
However, just as you can see, since all the private keys can be derived from the mnemonic phrase, you still have to keep the mnemonic phrase safely.
Especially, don't type/photograph/screenshot/store it on any electronical device (except the hardware wallet itself). Just write it down on paper.
I can still see my currency from the app.
Andrew Chow has explained this. You don't need the private keys to obtain the transaction history and final balance. Only public keys (or addresses, which are essentially hashes of pubkeys) are required to obtain such info.
To improve your privacy, most wallets avoid address reusing by generating a brand new address for each transaction, either sending (where the new address is used to receive the change) or receiving. BIP32 HD allows the wallet to derive almost infinite addresses from one single seed, and what's more, it allows the wallet to derive pubkeys (addresses) without the private key, therefore, you can avoid reusing an address with ease.
Note that BIP32 also has an inherent weakness that as long as you can derive "child" pubkeys, a single leaked "child" privkey would lead to leaking all the other child privkeys as well. BIP44/49/84 mitigate such risk by deriving the "parent keys" through "hardened-derivation", so that the influence of a potential breach would be within a limited range. However, since a lot of people use only one single account (defined in BIP44/49/84, which is a subset of address/privkey pairs, where different accounts are isolated from each other), one single currency (like Bitcoin), and one single address type (like 3-starting compatible SegWit address), this mitigation may not take much effect. How to deal with this problem? Simple, don't mess around your private keys carelessly. Just take good care of the mnemonic itself.