Thawte предлагает сертификаты для подписывания кода здесь . Я предполагаю, что другие Центры сертификации предлагают эту услугу также. Можно также создать самоподписанные сертификаты, с Java keytool.
Это зависит от языка.
В текстах C ++ часто предлагается второй формат, поскольку он будет работать с итераторами, которые можно сравнивать (! =) Напрямую, но не с большим или меньшим чем состояние. Также предварительное приращение может быть быстрее, чем последующее приращение, поскольку нет необходимости в копии переменной для сравнения, однако оптимизаторы могут с этим справиться.
Для целых чисел работает любая форма. Обычная идиома для C - первая, а для C ++ - вторая.
Для C # и Java я бы использовал foreach, чтобы перебирать все вещи.
В C ++ также есть функция std :: for_each, требующая использование функтора, который для простых случаев, вероятно, более сложен, чем любой из приведенных здесь примеров, и Boost FOR_EACH, который может выглядеть как foreach C #, но сложен внутри.
В 99 случаях из 100, кто бы ни получил хотя бы простое перечисление, может использовать стандартные методы расширения linq, чтобы упорядочить его, если захотят.