Учимся правильным подходам к программированию: Как правильно экономить на строках
Отступы, как мы уже выяснили, - это избыточно. Однако, написать программу в одну строку не всегда возможно. Что в таком случае делает опытный программист?
Правильно, он старается поместить как можно больше действий в одну строку, чтобы достичь максимальной эффективности кода. У такого подхода есть масса преимуществ.
- Во-первых, по такому коду легко определить уровень программиста: профессионал высшего уровня может написать любую функцию в одну строку, разработчик первого класса пишет в одну строку все циклы и другие вложенные конструкции, разработчик второго - только математические действия и условия, остальные даже простейший код разбивают на несколько строк, что существенно снижает разработчикозащищённость.
- Во-вторых, повышается качество программного продукта. Вместо индусского кода на тысячу строк, который общепринято считается плохим, пишется всего одна строка, которая очевидно будет хорошей.
- В-третьих, читать такую программу намного проще - вам не нужно пролистывать экраны, если вся программа помещается в один.
- В-четвертых, отсутствует избыточная информация в виде пустых и полупустых строк, поэтому воспринимать такой код в среднем на 26,8% легче*.
Такой подход практически идеален, но если вы еще не очень хорошо с ним знакомы, прочтите следующие правила:
- Если ваш язык поддерживает тернарные операторы, используйте их как можно чаще. Овладев ими, попробуйте увеличить вложенность, а затем окончательно откажитесь от написания условий другими способами. Избыточность в программировании не нужна.
- Затем постарайтесь сократить все математические операции до одной строки. Например, так: i = i++ + ++i;
- Не создавайте временные переменные - это приводит к неэффективному расходованию вычислительных ресурсов. Вместо них, используйте значения "на лету", это быстро, безопасно и выглядит красиво: result = metaObject.getChildByIndex(0).getValue().toString().append(metaObject.getChildByIndex(1).getValue().toString())
Используя эти простые правила и другие наши рекомендации вы научитесь писать идеальный код и приобретете первоклассные навыки программирования и славу среди коллег.
#Useful_programmers_tips by Gregory Oster
* по данным std::rand()