Refactoring Code with Reducing Nesting

𝗢𝗻𝗲 𝘀𝗺𝗮𝗹𝗹 𝗵𝗮𝗯𝗶𝘁 𝘁𝗵𝗮𝘁 𝗱𝗿𝗮𝗺𝗮𝘁𝗶𝗰𝗮𝗹𝗹𝘆 𝗶𝗺𝗽𝗿𝗼𝘃𝗲𝗱 𝗺𝘆 𝗰𝗼𝗱𝗲 𝗾𝘂𝗮𝗹𝗶𝘁𝘆 Early in my career, I used to write code like this: 𝘪𝘧(𝘶𝘴𝘦𝘳 != 𝘯𝘶𝘭𝘭){   𝘪𝘧(𝘶𝘴𝘦𝘳.𝘨𝘦𝘵𝘗𝘳𝘰𝘧𝘪𝘭𝘦() != 𝘯𝘶𝘭𝘭){     𝘪𝘧(𝘶𝘴𝘦𝘳.𝘨𝘦𝘵𝘗𝘳𝘰𝘧𝘪𝘭𝘦().𝘨𝘦𝘵𝘈𝘥𝘥𝘳𝘦𝘴𝘴() != 𝘯𝘶𝘭𝘭){       𝘤𝘪𝘵𝘺 = 𝘶𝘴𝘦𝘳.𝘨𝘦𝘵𝘗𝘳𝘰𝘧𝘪𝘭𝘦().𝘨𝘦𝘵𝘈𝘥𝘥𝘳𝘦𝘴𝘴().𝘨𝘦𝘵𝘊𝘪𝘵𝘺();     }   } } It works… but it’s 𝗺𝗲𝘀𝘀𝘆, 𝗵𝗮𝗿𝗱 𝘁𝗼 𝗿𝗲𝗮𝗱, 𝗮𝗻𝗱 𝗲𝗮𝘀𝘆 𝘁𝗼 𝗯𝗿𝗲𝗮𝗸. Later I learned a simple principle: 𝗥𝗲𝗱𝘂𝗰𝗲 𝗻𝗲𝘀𝘁𝗶𝗻𝗴. 𝗜𝗻𝗰𝗿𝗲𝗮𝘀𝗲 𝗰𝗹𝗮𝗿𝗶𝘁𝘆. Refactoring it using 𝘖𝘱𝘵𝘪𝘰𝘯𝘢𝘭 or guard clauses makes the code much cleaner: 𝘖𝘱𝘵𝘪𝘰𝘯𝘢𝘭.𝘰𝘧𝘕𝘶𝘭𝘭𝘢𝘣𝘭𝘦(𝘶𝘴𝘦𝘳)     .𝘮𝘢𝘱(𝘜𝘴𝘦𝘳::𝘨𝘦𝘵𝘗𝘳𝘰𝘧𝘪𝘭𝘦)     .𝘮𝘢𝘱(𝘗𝘳𝘰𝘧𝘪𝘭𝘦::𝘨𝘦𝘵𝘈𝘥𝘥𝘳𝘦𝘴𝘴)     .𝘮𝘢𝘱(𝘈𝘥𝘥𝘳𝘦𝘴𝘴::𝘨𝘦𝘵𝘊𝘪𝘵𝘺)     .𝘪𝘧𝘗𝘳𝘦𝘴𝘦𝘯𝘵(𝘤𝘪𝘵𝘺 -> 𝘱𝘳𝘰𝘤𝘦𝘴𝘴(𝘤𝘪𝘵𝘺)); Cleaner code isn’t just about aesthetics. It helps with: Better readability Fewer bugs Easier maintenance for your future self After 𝟳+ 𝘆𝗲𝗮𝗿𝘀 𝗼𝗳 𝗱𝗲𝘃𝗲𝗹𝗼𝗽𝗺𝗲𝗻𝘁, I’ve realized: Good developers make code work. Great developers make code understandable. What small coding habit improved your code quality the most? #Java #CleanCode #SoftwareEngineering #BackendDevelopment #Programming #Developers

  • No alternative text description for this image

To view or add a comment, sign in

Explore content categories