Я не маю великого досвіду роботи в галузі програмного забезпечення, бути самоуком і брати участь у відкритому коді, перш ніж вирішити влаштуватися на роботу. Тепер, коли я працюю на гроші, мені також доводиться стикатися з деякими неприємними речами, що, звичайно, нормально.
Нещодавно мені призначили додати журнал до великого проекту SharePoint, який написав якийсь програміст, який, очевидно, навчився кодувати роботу. Після 2-х років співпраці клієнт перейшов до нашої компанії, але шкода була зроблена, і тепер мені якось потрібно підтримувати цей код.
Не те, щоб код був занадто важким для читання. Незважаючи на проблеми - кожен проект має один клас з декількома методами копіювання, величезними if
вкладками, системними угорськими, нерозкритими зв’язками - він все ще читається.
Однак я виявив себе абсолютно непродуктивним, незважаючи на те, що працював над чимось простим, як додавання журналу. В принципі, мені просто потрібно пройти кодовий крок за кроком і додати деякі дзвінки в слід. Однак ідіотизм коду настільки дратує, що я втомився протягом 10 хвилин після початку . На початку я додавав using
конструкції, зменшував гніздування шляхом перетворення if
, перейменував змінні на читабельні імена - але проект великий, і врешті я відмовився. Я знаю, що це не завдання, яким я повинен займатися, але принаймні зменшення безладу дало мені якусь психологічну винагороду, щоб я міг продовжувати свою діяльність. Тепер фокус перестав працювати, і я все ще маю 60% своєї роботи.
Після роботи у мене почалися головні болі, і я більше не отримую почуття задоволення, яке раніше отримував - що зазвичай дозволило мені кодувати 10 годин прямо і все ще відчуваю себе свіжим.
Це не лише одна велика зухвалість, адже у мене справді виникає актуальне питання:
Чи є спосіб зберегти продуктивність і не боротися з вітряками?
Чи є якесь - то психологічний трюк , щоб залишатися зосередженими на завданню, замість того щоб думати : «Як нерозумно це що ?» Щоразу , коли я бачу ще один хитрий трюк попереднього програміста? Проблема з додаванням журналу полягає в тому, що я насправді повинен зрозуміти, що робить код, і при цьому це шкодить моєму мозку неприємно.
obj
є непростою, оскільки це в основному нечитабельно.