People here claim you need to use whole disks to get disk write cache advantages, but that's not true. What is true is that ZFS will try to enable the disk write cache for you if you give it the whole disk. However, even if you just give it a single partition, nobody stops you from enabling the disk write cache yourself, in which case ZFS will detect that and honor it exactly the same was as if it had enabled the cache itself. So it's not a requirement to use whole disks getting write cache advantages, it only safes you the work to enable disk write cache yourself.
People here claim that disk access is faster if you give it the whole disk. While this statement is technically true, the speed difference is so tiny that it is entirely neglectable. If your ZFS setup is too slow, it will still be too slow if you only use entire disks. And if it is doing well with entire disk, it would do equally well with just single partitions.
One reason for not using the whole disk is that disk sizes do vary. Imagine the following case: You create a RAIDZ with 3 identical disks, each of them is 4 TB and you always use the full disk. After 3 years, one of the disk fails. No problem, you just buy a replacement but meanwhile that disk has a new hardware revision and the new 4 TB model is smaller by just 256 KB. It won't work! You cannot use it as replacement because it must have exactly the same size as your other two disks or be even bigger. If it is smaller, no matter by how little bytes, it won't work.
That's why I always create a partition and leave maybe 10 MB of the disk unused. Losing 10 MB per disk is close to nothing (0.00025% in case of 4 TB disks) and it means that a replacement disk could be up to 10 MB smaller and it would still work (or have up to 10 MB of bad sectors, etc.)