Amateur programmer general structure discussion

I was looking at optimizing some of my watch faces, and it occurs to me, I don’t know what should be put where. I’m mostly looking in the view file. 

I define variables and prep Complications in initialize(). This makes sense.

However, what must go into onLayout() versus onUpdate().  Since onUpdate() runs immediately after onLayout(), it seems to me the only purpose of onLayout() is to verify options have loaded and get some parameters (like screen sizes).  I’ve duplicated a lot of code in these 2 functions over the years of learning Monkey C and as I’ve removed a bunch from onLayout(), everything seems to work well.

So…wisened ones, do you have certain items you put into these functions?

Thanks,

Jeff