ข้อเสียเปรียบหลักคือการสูญเสียการจัดรูปแบบที่กำหนดเองซึ่งสำคัญมาก
ลองนึกภาพการตรวจสุขภาพจิตโดยทั่วไปหาก () ที่จะล้มเหลวหากมีเงื่อนไขใด ๆ เกิดขึ้น แต่ไม่สำเร็จ ...
if(
(user.id == TEST_ID)
||(
(user.id == UserID)
&&(
( user.type == HUMAN_USER && user.name.size() >= MIN_NAME )
||( user.type == EMULATION && input.source != SOURCE_INTERNAL ))
&& ( user.email == NULL || emailValidator.isValid(user.email))
&& ( (user.phone == NULL) == (user.type == EMULATION) )
// several more lines like this.)
){ /* handle results */ }
สิ่งนี้สามารถอ่านได้ด้วยการเยื้องที่สมเหตุสมผลตามโครงสร้างตรรกะของเงื่อนไข
ตอนนี้เครื่องมืออัตโนมัติของคุณไม่มีเงื่อนงำเกี่ยวกับการแยกลอจิคัลของเงื่อนไขต่าง ๆ ลงในบรรทัดที่เกี่ยวข้อง มันไม่เห็นเหตุผลว่าทำไมแต่ละ 3-4 กลุ่มในหนึ่งบรรทัดและแยกเงื่อนไขถัดไปเป็นครึ่ง หรือมันจะแบ่งมันหนึ่งนิพจน์เปรียบเทียบต่อบรรทัด มันอาจดูดีขึ้นบนหน้าจอ แต่ตรรกะจะหายไป