Always felt the best code was two copies of the same large random book using the pages, lines, and letters. I’m sure that with all the digital scans and crunching power now that this isn’t as good as it once would have been though.
That is the exact code Admiral Semmes of the Confederate Ship, Alabama, used.
He bought two identical dictionaries. Random books would be more secure but that would be pretty good.
A - Z Of London was in a newer Sherlock episode.
That is called a "one-time pad cipher". If it is truly random, it is also unbreakable. (That is, IMPOSSIBLE to break. Not "difficult", impossible.) However, each page must truly be used ONE TIME ONLY then destroyed. Using a page even twice fatally compromises the pages that were re-used. The Soviets used one-time pads for some of their communications. They also sometimes got lazy and re-used pages. We cracked the messages (or sections of messages) that were encrypted with reused pages. The rest are untouchable.
See Venona Projects at (ha ha ha) Wikipedia.
I’ve read that the best tool of the code maker is guile.