What the constructor is actually doing
The single call to getActiveSpreadsheet().getSheetByName() happens once, in the constructor, and the result sits on this.sheet for the lifetime of the object. Every method that follows reads from that cached reference instead of going back to SpreadsheetApp. In a script that touches the same sheet a dozen times per run, that is a dozen fewer service calls — Apps Script's quota for Spreadsheet reads is 20,000 per day on consumer Workspace, so it adds up on high-frequency triggers.
The throw on a missing sheet is worth keeping. Without it, every downstream method call produces a cryptic 'Cannot read property of null' at the .sheet access site rather than a clear 'Sheet not found: Orders' at construction time. The first time I skipped this guard I spent twenty minutes tracing a null back up to a renamed tab.