design/quality, bayonet attachment to lens is technically very good with current gen lens hoods.
biggest issue is marketing/corporate greed: as opposed to (most) competitors, Canon does not invlude lens caps with their lenses, except for (expensive, luxury, premium) "L"-line of lenses. oem prices are absurdly high. liwer quality, but good enough chinese copies are luckily available for many lens hoods. situation a bit more complex than lens caps, because hood is specific shape for each lens.
issues are size (diameter for wide-angle lenses and depth/width for tele lenses), somewhat mediated if lens hoid can be put on lens in reverse position as typically implemented. this keads however to many happy-snapper n00b users on the streets who are too lazy and or stupid to take reverses lens hood off and mount it right way on lens. they rather use kens with hood in reverse position, even if it almost blocks caccess to zoom ring ...
losing lens hoods is an issue too, but due to larger size much less so than lens caps.
there are very few lenses with manually extensible lens hoods built in (some tele lenses in older versions, eg Vanon EF 200/2.8 L - 1st gen). if technically well designed, it is an ideal solution, hood is always alonv when beeded, but dors not waste precious space in photo bag and cannot be lost.
many years ago, in an attempt to solve size/space issue of lens hoods flexible lens hoods made of rubber that fold together to a small ring in "parking position" were popular. while still available, they went "out of fashion". main ussue being that each lens needs a specific design of hood for max. efficiency and those flexi-hoods are only available in a "universal", round, simple shape - only acceptable for prime lenses in focal length range of roughly 35 and 85mm. as soon as deeper hoods or wider hoods or tulip shape hoods are required to prevent inwanted light to rech lens front element, existing flexi hoods are no solition. typically they were screwed into filter thread, blocking it for filters.
a smart folding design lens hood coveribg multiple shapes for an entire range of lenses would be of some interest, and potentially a successful kickstarter project. but not easy to design. additional difficulty comes from non-standardized, highly proprietary bayonet attachment on lenses. with canon hood attachment varies with every different lens. only universal mount point is filter thread, which also comes in multiple sizes with 43/49/52/58/67/73/77/82mm being most common. hood mount ring could be double threaded, so filters can still be used.
also: tulip shape hoods need to be in correctly oriented position when mounted - easy with specific bayonet mount, not so easy to achieve using filter thread. screw-in also more cumbersome than single twist and click/locking bayonet mount.
so there you have a few nice engineering challenges. all the best!