Автор Тема: [Oberon-07] Руководство по стилю кодирования  (Прочитано 37469 раз)

adva

  • Sr. Member
  • ****
  • Сообщений: 385
    • Просмотр профиля
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #75 : Ноябрь 13, 2013, 10:20:36 pm »
Да в некоторых редакторах, да с некоторыми шрифтами, да еще их размерами, 2 пробела сами по себе могут стать плохо различимыми.

Внутри процедур, думаю надо делать отступы для декларативной части (чтобы от того же модуля отличалось)

Да, возможно 3 пробела выглядят лучше, но как уже отметили, в 1С принято 4

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #76 : Ноябрь 13, 2013, 10:42:05 pm »
Да в некоторых редакторах, да с некоторыми шрифтами, да еще их размерами, 2 пробела сами по себе могут стать плохо различимыми.

Внутри процедур, думаю надо делать отступы для декларативной части (чтобы от того же модуля отличалось)

Да, возможно 3 пробела выглядят лучше, но как уже отметили, в 1С принято 4
Код ведь не будет с 1Совский смешиваться. То есть в одном и том же файле. Поэтому не вижу проблем.
Y = λf.(λx.f (x x)) (λx.f (x x))

adva

  • Sr. Member
  • ****
  • Сообщений: 385
    • Просмотр профиля
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #77 : Ноябрь 13, 2013, 11:35:46 pm »
Код ведь не будет с 1Совский смешиваться. То есть в одном и том же файле. Поэтому не вижу проблем.
Если буду делать его в редакторе 1С (а это для меня удобно, т.к. там можно задать шаблоны кода), то менять для этого каждый раз настройки не хочется. Можно конечно использовать другой редактор (и пока использую, попеременно), но в итоге хотел бы перейти полностью на 1С со снегопатом (особенно если помогут обайд прикрутить к скинтиле именно в 1С).

adva

  • Sr. Member
  • ****
  • Сообщений: 385
    • Просмотр профиля
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #78 : Ноябрь 13, 2013, 11:36:47 pm »
ХОтя посмотрю, может быть настройки можно задавать программно (тогда привяжу их к расширению кода)

adva

  • Sr. Member
  • ****
  • Сообщений: 385
    • Просмотр профиля
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #79 : Ноябрь 13, 2013, 11:49:08 pm »
Или может сублиме имеет ActiveX компонент? Тогда можно будет его использовать. С редактором пока не особо заморачивался. Но раз тут к нему привязки делают, то чтобы быть "в струе" :)

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #80 : Ноябрь 13, 2013, 11:51:22 pm »
Или может сублиме имеет ActiveX компонент? Тогда можно будет его использовать. С редактором пока не особо заморачивался. Но раз тут к нему привязки делают, то чтобы быть "в струе" :)
Свят-свят! Какой нафиг ActiveX в кроссплатформенной проге? И зачем? :-)
Y = λf.(λx.f (x x)) (λx.f (x x))

adva

  • Sr. Member
  • ****
  • Сообщений: 385
    • Просмотр профиля
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #81 : Ноябрь 13, 2013, 11:59:05 pm »
Имел в виду наоборот: сублиме как ActiveX компонент  (чтобы встроить его в 1С, и использовать внутря)

ХОтя как понял, он платный, а период пробный какой? И к нему только на питоне плагины пишутся? На яваскрипте нету?

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #82 : Ноябрь 14, 2013, 12:11:48 am »
Имел в виду наоборот: сублиме как ActiveX компонент  (чтобы встроить его в 1С, и использовать внутря)

ХОтя как понял, он платный, а период пробный какой? И к нему только на питоне плагины пишутся? На яваскрипте нету?
Пробный период бесконечный. Оно просто раз в 50 что-ли сохранений напоминает, что неплохо бы купить.

На яваскрипте только через связку с python<->node.js, был такой модуль в свое время. Не знаю насколько сейчас он актуален.

В виде компонента, сколь я понимаю, его нет.
Y = λf.(λx.f (x x)) (λx.f (x x))

adva

  • Sr. Member
  • ****
  • Сообщений: 385
    • Просмотр профиля
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #83 : Ноябрь 14, 2013, 12:33:03 am »
Хотя смотрю по описанию, в нем есть почти все нужные функции, в том числе и автоподстановка шаблонов. Можно в принципе на него пересесть (по крайней мере по скриптам). Просто для меня надо будет немного удобнее сделать переключение между редакторами 1С и данным. Тогда позже познакомлюсь более подробно. Может действительно все нужное уже есть, а чего нет, так это в снегопате доделаю. Тогда питон пока не актуален.

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #84 : Ноябрь 16, 2013, 02:23:37 pm »
Голосую за 3 пробела. Попробовал. Заценил. Няшка.

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #85 : Ноябрь 16, 2013, 03:07:49 pm »
Можно в принципе делать так:
1. В модуле первый уровень без отступа (для IMPORT, CONST, VAR, TYPE, PROCEDURE, BEGIN)

Пораскинул мозгами, попробовал разные варианты и пришел к любопытному выводу.
Давно заметил что текст (любой) читать легче если слева есть пустое поле. В популярных IDE такое поле обычно есть. Несмотря на то, что оно выполняет другие задачи (отображение номеров строк, выделение строки при двойном щелчке и установка/отображение закладок с точками останова), в результате это выглядит как левый отступ в книге.
Например в ББ если не делать искусственный отступ, то при разворачивании окна на весь экран читать становится не комфортно.

Вывод: Отступ на первом уровне не нужен если IDE/редактор уже делает это.

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #86 : Ноябрь 16, 2013, 03:13:15 pm »
Можно в принципе делать так:
1. В модуле первый уровень без отступа (для IMPORT, CONST, VAR, TYPE, PROCEDURE, BEGIN)

Пораскинул мозгами, попробовал разные варианты и пришел к любопытному выводу.
Давно заметил что текст (любой) читать легче если слева есть пустое поле. В популярных IDE такое поле обычно есть. Несмотря на то, что оно выполняет другие задачи (отображение номеров строк, выделение строки при двойном щелчке и установка/отображение закладок с точками останова), в результате это выглядит как левый отступ в книге.
Например в ББ если не делать искусственный отступ, то при разворачивании окна на весь экран читать становится не комфортно.

Вывод: Отступ на первом уровне не нужен если IDE/редактор уже делает это.
У нас вроде бы не планируется использование редакторов которые не делают это, так что вывод очевиден :-)
Y = λf.(λx.f (x x)) (λx.f (x x))

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #87 : Ноябрь 19, 2013, 12:01:58 pm »
На самом деле оформление кода с помощью табуляций возможно только в случае если у нас есть еще один вспомогательный элемент выравнивания типа ББшной линейки. Во всех остальных случаях моноширинный шрифт + пробелы предпочтительнее.

Тык в нормальных редакторах кода табуляция и так по линейке работает. Как минимум это так в 1С и в Sublime Text 2/3.

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #88 : Ноябрь 19, 2013, 01:10:52 pm »
На самом деле оформление кода с помощью табуляций возможно только в случае если у нас есть еще один вспомогательный элемент выравнивания типа ББшной линейки. Во всех остальных случаях моноширинный шрифт + пробелы предпочтительнее.

Тык в нормальных редакторах кода табуляция и так по линейке работает. Как минимум это так в 1С и в Sublime Text 2/3.

А где в sublime линейка? Кроме того, очевидно что их в документе должно быть несколько.
Y = λf.(λx.f (x x)) (λx.f (x x))

ilovb

  • Hero Member
  • *****
  • Сообщений: 2538
  • just another nazi test
    • Просмотр профиля
    • Oberon systems
Re: [Oberon-07] Руководство по стилю кодирования
« Ответ #89 : Ноябрь 19, 2013, 01:35:51 pm »
В настройках, где задается количество пробелов в табуляции.
Зачем несколько?