Katarina is more reliant on her teammates to get her resets to snowball hard, but she does have more potential to wipe out the enemy team if you have those good teammates, but without resets, it can be really hard to get her going. Akali is more self-reliant and can really get going by herself, but she doesn't have the same potential Katarina has since Katarina resets can be devastating, but Akali is by no means bad and Katarina is more of a risk.
Personally, I prefer Akali, since she provides a bit more utility with her W, and she's harder to shut down due to her hybrid damage output. Katarina, in comparison, is more high-risk, high-reward in that you can go all in and potentially get a pentakill, or you can stay outside and try to poke enemies, and not accomplish anything at all. Akali has at least some way to semi-engage, then peel herself away, so she can be useful for chip damage before fights.