Заметил, что нет ни одного сниппета для наших любимых типой файлов (.cls, .page, .trigger). Давайте соберемся и запилим? Может у кого-то уже есть свои, поделитесь плиз. Можно использовать сниппеты для джавы. Давайте соберем на гитхабе боевой набор и будем их дружно использовать.
Заметил, что нет ни одного сниппета для наших любимых типой файлов (.cls, .page, .trigger).
Давайте соберемся и запилим?
Может у кого-то уже есть свои, поделитесь плиз.
Можно использовать сниппеты для джавы.
Давайте соберем на гитхабе боевой набор и будем их дружно использовать.
Нормальное предложение. Вот только времени на это пока не особенно.
Вот мой маленький сниппет
trigger Payment on Payment__c (after insert) { new triggerHandler('Payment'); }
[quote="Gres"]Заметил, что нет ни одного сниппета для наших любимых типой файлов (.cls, .page, .trigger).
Давайте соберемся и запилим?
Может у кого-то уже есть свои, поделитесь плиз.
Можно использовать сниппеты для джавы.
Давайте соберем на гитхабе боевой набор и будем их дружно использовать.[/quote]
Нормальное предложение. Вот только времени на это пока не особенно.
Вот мой маленький сниппет
trigger Payment on Payment__c (after insert) {
new triggerHandler('Payment');
}
А я бы вот такой сниппет добавил
[code]ApexPages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR, 'error'));[/code]
Сколько лет, все копипастю его из проекта в проект.
Вот еще очень часто приходится копипастить:
[code]
<apex:actionFunction name="someName" action="{!someName}" rerender="id" oncomplete="finish();" >
<apex:param name="param1" assignTo="{!param1}" value="" />
</apex:actionFunction>
[/code]
и вот это еще:
[code]
ApexPages.currentPage().getParameters().get('myParamName')
[/code]
[code]
<apex:includeScript value="{!URLFOR($Resource.LibraryJS, '/base/subdir/file.js')}"/>
<apex:stylesheet value="{!URLFOR($Resource.style_resources, 'styles.css')}"/>
[/code]
[quote="Gres"]Заметил, что нет ни одного сниппета для наших любимых типой файлов (.cls, .page, .trigger).
Давайте соберемся и запилим?
Может у кого-то уже есть свои, поделитесь плиз.
Можно использовать сниппеты для джавы.
Давайте соберем на гитхабе боевой набор и будем их дружно использовать.[/quote]
Поодерживаю и по возможности поучаствую.
Огромное спасибо за ссылку. Мало того что оказывается есть такой набор, так еще и подтолкнул меня разобраться как работают snippets в Sublime Text. Это же просто божественно!!! например начинаешь набирать addM... а в предложенных вариантах уже addMess, что раскрывается в ApexPages.addMessage(new ApexPages.message(ApexPages.Severity.ERROR, result.getErrors()[0].getMessage())); Да, сниппеты немного отличаются от того что я привык, но ГЛАВНОЕ сам механизм понятен. Можно самому клепать сниппеты под себя. Я помню пытался в Eclipse это дело наладить, там это получалось не так удобно. Так что спасибо за тему - жизнь стала однозначно легче
[quote="Gres"]Кст, нашел Apex Snippets для саблайма, но там их не так много.
https://github.com/dirajkumar/sublime-apex-snippets[/quote]
Огромное спасибо за ссылку. Мало того что оказывается есть такой набор, так еще и подтолкнул меня разобраться как работают snippets в Sublime Text. Это же просто божественно!!!
например начинаешь набирать addM... а в предложенных вариантах уже addMess, что раскрывается в
ApexPages.addMessage(new ApexPages.message(ApexPages.Severity.ERROR, result.getErrors()[0].getMessage()));
Да, сниппеты немного отличаются от того что я привык, но ГЛАВНОЕ сам механизм понятен. Можно самому клепать сниппеты под себя. Я помню пытался в Eclipse это дело наладить, там это получалось не так удобно.
Так что спасибо за тему - жизнь стала однозначно легче :)
дня не проходит, чтоб вот это не искал:
RecordType MyRType = [SELECT ID, Name FROM RecordType WHERE DeveloperName = 'RT Name' AND IsActive= 'true' AND SobjectType = 'MyObject__c' LIMIT 1];
дня не проходит, чтоб вот это не искал:
[code]RecordType MyRType = [SELECT ID, Name FROM RecordType WHERE DeveloperName = 'RT Name' AND IsActive= 'true' AND SobjectType = 'MyObject__c' LIMIT 1];[/code]
Вот я и предлагаю запилить общий репозиторий со всеми наработками
[quote="Dmitry Shnyrev"]Огромное спасибо за ссылку. Мало того что оказывается есть такой набор, так еще и подтолкнул меня разобраться как работают snippets в Sublime Text. Это же просто божественно!!!
например начинаешь набирать addM... а в предложенных вариантах уже addMess, что раскрывается в
ApexPages.addMessage(new ApexPages.message(ApexPages.Severity.ERROR, result.getErrors()[0].getMessage()));
Да, сниппеты немного отличаются от того что я привык, но ГЛАВНОЕ сам механизм понятен. Можно самому клепать сниппеты под себя. Я помню пытался в Eclipse это дело наладить, там это получалось не так удобно.
Так что спасибо за тему - жизнь стала однозначно легче [/quote]
Вот я и предлагаю запилить общий репозиторий со всеми наработками
Обший значит ничей Все-таки кто-то должен лично этим заниматься. Gres, можешь ты создать такой репозиторий и начать закидывать туда свои наработки. Остальным же я предлагаю ознакомиться с инструкцией как делать сниппеты и начать выкладывать сюда свои наработки (исходники сниппета). Gres по мере желания и свободного времени будет их ревьювить и закидывать в свой репозиторий. Думаю такая организация будет оптимальной. Или кто-то другой хочет заняться ведением репозитория? Смысл тут в том, что все равно у каждого могут сниппеты отличаться (у каждого свой code style). Тот репозиторий по ссылке выше вроде крут, но я бы под себя сниппеты изменил. То же самое как и моими сниппетами врядли захотят все пользоваться. Поэтому репозиторий это круто, но он должен быть "чьим-нибудь"
[quote="Gres"]Вот я и предлагаю запилить общий репозиторий со всеми наработками[/quote]
Обший значит ничей :) Все-таки кто-то должен лично этим заниматься. Gres, можешь ты создать такой репозиторий и начать закидывать туда свои наработки.
Остальным же я предлагаю ознакомиться с инструкцией как делать сниппеты и начать выкладывать сюда свои наработки (исходники сниппета). Gres по мере желания и свободного времени будет их ревьювить и закидывать в свой репозиторий. Думаю такая организация будет оптимальной.
Или кто-то другой хочет заняться ведением репозитория?
Смысл тут в том, что все равно у каждого могут сниппеты отличаться (у каждого свой code style). Тот репозиторий по ссылке выше вроде крут, но я бы под себя сниппеты изменил. То же самое как и моими сниппетами врядли захотят все пользоваться.
Поэтому репозиторий это круто, но он должен быть "чьим-нибудь" :)
КСТАТИ, упомянул про code style и в голове родилась тема - Salesforce Code Style. Я не помню чтобы что-то похожее существовало. Вот например, в подтверждение моих слов google меня привел на такую замечательно пустую страницу https://developer.salesforce.com/page/Apex_Coding_Style_Guide Я помню на фирме где я работал был разработан свой code style и даже под Eclipse написали плагин, который проверял стиль кода и выдавал предупреждения. Было круто. Но после фирмы я столкнулся с полной анархией в этом вопросе - везде все по разному и что самое главное - все правы! Есть желание с помощью коллективного разума разработать систему правил, свой code style?
КСТАТИ, упомянул про code style и в голове родилась тема - [b]Salesforce Code Style[/b]. Я не помню чтобы что-то похожее существовало. Вот например, в подтверждение моих слов google меня привел на такую замечательно пустую страницу https://developer.salesforce.com/page/Apex_Coding_Style_Guide
Я помню на фирме где я работал был разработан свой code style и даже под Eclipse написали плагин, который проверял стиль кода и выдавал предупреждения. Было круто. Но после фирмы я столкнулся с полной анархией в этом вопросе - везде все по разному и что самое главное - все правы!
Есть желание с помощью коллективного разума разработать систему правил, свой code style?
У меня даже есть официальный код стайл от салесфорса.
[quote="Dmitry Shnyrev"]КСТАТИ, упомянул про code style и в голове родилась тема - [b]Salesforce Code Style[/b]. Я не помню чтобы что-то похожее существовало. Вот например, в подтверждение моих слов google меня привел на такую замечательно пустую страницу https://developer.salesforce.com/page/Apex_Coding_Style_Guide
Я помню на фирме где я работал был разработан свой code style и даже под Eclipse написали плагин, который проверял стиль кода и выдавал предупреждения. Было круто. Но после фирмы я столкнулся с полной анархией в этом вопросе - везде все по разному и что самое главное - все правы!
Есть желание с помощью коллективного разума разработать систему правил, свой code style?[/quote]
У меня даже есть официальный код стайл от салесфорса.
А можешь поделиться тогда? Его можно свободно распространять?
[quote="Dmitry Shnyrev"][quote="wilder"]У меня даже есть официальный код стайл от салесфорса.[/quote]
А можешь поделиться тогда? Его можно свободно распространять?[/quote]
Вроде не секретный документ. Кинь в личку мыло. Закину документик.
Вроде не секретный документ. Кинь в личку мыло. Закину документик.
Опять же, пока нет официального документа, бить получится только подчиненных. Хотя задумка интересная, собрать код стайл документ, подписаться под ним (чтобы подписались как можно больше разработчиков) и выложить в открытый доступ. Тогда действительно можно будет ссылаться на документ и пинать если что.
Wilder прислал документ. Информация там представлена в достаточном количестве (какие имена, как они составляются, отступы, шаблоны основных конструкций). Все по делу. По содержимому не нашел ничего похожего в открытом доступе, по ходу документ разрабатывался в личных целях своих разработчиков (я так думаю). Если данный документ wilder сможет выложить в открытый доступ, то я с удовольствием выделю для этого отдельную статью (может выпишу основные моменты и переведу на русский). Тогда можно будет ссылаться на этот документ и пинать разработчиков. Иначе придется делать свое.
Что например понравилось (в принципе так и должно быть) в качестве отступов рекомендуется использовать 4 пробела. Я в своей компании 3 года (да и сейчас продолжаю по привычке) использовать символ Tab - такие были требования.
[quote="Gres"]чтобы бить по рукам быдлокодерам[/quote]
Опять же, пока нет официального документа, бить получится только подчиненных.
Хотя задумка интересная, собрать код стайл документ, подписаться под ним (чтобы подписались как можно больше разработчиков) и выложить в открытый доступ. Тогда действительно можно будет ссылаться на документ и пинать если что.
Wilder прислал документ. Информация там представлена в достаточном количестве (какие имена, как они составляются, отступы, шаблоны основных конструкций). Все по делу. По содержимому не нашел ничего похожего в открытом доступе, по ходу документ разрабатывался в личных целях своих разработчиков (я так думаю). Если данный документ wilder сможет выложить в открытый доступ, то я с удовольствием выделю для этого отдельную статью (может выпишу основные моменты и переведу на русский). Тогда можно будет ссылаться на этот документ и пинать разработчиков. Иначе придется делать свое.
Что например понравилось (в принципе так и должно быть) в качестве отступов рекомендуется использовать 4 пробела. Я в своей компании 3 года (да и сейчас продолжаю по привычке) использовать символ Tab - такие были требования.
Что например понравилось (в принципе так и должно быть) в качестве отступов рекомендуется использовать 4 пробела. Я в своей компании 3 года (да и сейчас продолжаю по привычке) использовать символ Tab - такие были требования.
Только пробелы никаких табов, так как это тихий ужас.
[quote="Dmitry Shnyrev"]Что например понравилось (в принципе так и должно быть) в качестве отступов рекомендуется использовать 4 пробела. Я в своей компании 3 года (да и сейчас продолжаю по привычке) использовать символ Tab - такие были требования.[/quote]
Только пробелы никаких табов, так как это тихий ужас.
Только пробелы никаких табов, так как это тихий ужас.
В Salesforce, согласен. Если кто дорвется до браузерного редактора, то будет небольшая неприятность с табами. А вообще мне табы больше нравятся. Для других языков их использую для отступов.
[quote="Gres"]Только пробелы никаких табов, так как это тихий ужас.[/quote]
В Salesforce, согласен. Если кто дорвется до браузерного редактора, то будет небольшая неприятность с табами.
А вообще мне табы больше нравятся. Для других языков их использую для отступов.
А вообще мне табы больше нравятся. Для других языков их использую для отступов.
Ты же на питоне вроде что-то еще пилишь, а там, как я знаю, только 4 пробела.
[quote="Dmitry Shnyrev"]А вообще мне табы больше нравятся. Для других языков их использую для отступов.[/quote]
Ты же на питоне вроде что-то еще пилишь, а там, как я знаю, только 4 пробела.
А вообще мне табы больше нравятся. Для других языков их использую для отступов.
Ты же на питоне вроде что-то еще пилишь, а там, как я знаю, только 4 пробела.
Рекомендуют 4 пробела, но не обязательно. Просто в python с помощью отступов формируются блоки кода, поэтому там надо ВЕЗДЕ или пробелы или табы использовать, иначе будет ошибка компиляции. Я везде использую табы поэтому как бы все работает.
Что меня в общем бесит в пробелах - что их может быть 2 или 4 для формирования отступа, а некоторые еще и 3 умудряются сделать. Пока выравняешь устанешь. А таб он всегда один
[quote="Gres"][quote="Dmitry Shnyrev"]А вообще мне табы больше нравятся. Для других языков их использую для отступов.[/quote]
Ты же на питоне вроде что-то еще пилишь, а там, как я знаю, только 4 пробела.[/quote]
Рекомендуют 4 пробела, но не обязательно.
Просто в python с помощью отступов формируются блоки кода, поэтому там надо ВЕЗДЕ или пробелы или табы использовать, иначе будет ошибка компиляции. Я везде использую табы :) поэтому как бы все работает.
Что меня в общем бесит в пробелах - что их может быть 2 или 4 для формирования отступа, а некоторые еще и 3 умудряются сделать. Пока выравняешь устанешь. А таб он всегда один :)
Что меня в общем бесит в пробелах - что их может быть 2 или 4 для формирования отступа, а некоторые еще и 3 умудряются сделать. Пока выравняешь устанешь. А таб он всегда один
[quote="Dmitry Shnyrev"]Что меня в общем бесит в пробелах - что их может быть 2 или 4 для формирования отступа, а некоторые еще и 3 умудряются сделать. Пока выравняешь устанешь. А таб он всегда один [/quote]
Это уже как 100 лет автоматизировано
Это уже как 100 лет автоматизировано
Догадываюсь но все лень разобраться. Когда нужно нет времени разобраться как работает, когда есть время, лень разбираться.
Это как машина ломается, думаешь что продашь как только починишь, как починишь думаешь - ездит же, зачем продавать.
[quote="Gres"]Это уже как 100 лет автоматизировано[/quote]
Догадываюсь :) но все лень разобраться. Когда нужно нет времени разобраться как работает, когда есть время, лень разбираться.
Это как машина :) ломается, думаешь что продашь как только починишь, как починишь думаешь - ездит же, зачем продавать.
Догадываюсь но все лень разобраться. Когда нужно нет времени разобраться как работает, когда есть время, лень разбираться.
Это как машина ломается, думаешь что продашь как только починишь, как починишь думаешь - ездит же, зачем продавать.
[quote="Dmitry Shnyrev"]Догадываюсь но все лень разобраться. Когда нужно нет времени разобраться как работает, когда есть время, лень разбираться.
Это как машина ломается, думаешь что продашь как только починишь, как починишь думаешь - ездит же, зачем продавать.[/quote]
А все говорят, лень - главный мотиватор.
если кто не знал в девелопер консоли сделать [s]зашибись[/s] отступы: Ctrl+A Shift+Tab
Что меня в общем бесит в пробелах - что их может быть 2 или 4 для формирования отступа, а некоторые еще и 3 умудряются сделать. Пока выравняешь устанешь. А таб он всегда один
Это уже как 100 лет автоматизировано
Вот нравятся мне ответы такие. никакой конкретики ><
[quote="Gres"][quote="Dmitry Shnyrev"]Что меня в общем бесит в пробелах - что их может быть 2 или 4 для формирования отступа, а некоторые еще и 3 умудряются сделать. Пока выравняешь устанешь. А таб он всегда один [/quote]
Это уже как 100 лет автоматизировано[/quote]
Вот нравятся мне ответы такие. никакой конкретики ><
Вот нравятся мне ответы такие. никакой конкретики ><
В саблайме, например, есть reindent lines и есть настройки отступов. Я же не знаю какими тулзами вы пользуютесь.
[quote="Maxim Elets"]Вот нравятся мне ответы такие. никакой конкретики >< [/quote]
В саблайме, например, есть reindent lines и есть настройки отступов.
Я же не знаю какими тулзами вы пользуютесь.
[quote="wilder"]Я думаю документ который я передал Дмитрию можно выложить в общий доступ.[/quote]
Отлично :) Выложил
[url=https://salesforce-developer.ru/Salesforce_coding_standards.pdf]Salesforce_coding_standards.pdf[/url]
Сделал pull request автору sublime-apex-snippets, если смерджит мои изменения, то можно будет просто установить пакет.
Что например понравилось (в принципе так и должно быть) в качестве отступов рекомендуется использовать 4 пробела. Я в своей компании 3 года (да и сейчас продолжаю по привычке) использовать символ Tab - такие были требования.
Только пробелы никаких табов, так как это тихий ужас.
Только табы - никаких пробелов Если официальная документация говорит обратное, я готов плюнуть в лицо тому, кто это писал. А причина проста - в организации существует ограничение на максимальное суммарное кол-во apex кода - 5M, один таб - один символ, 4 пробела - 4 символа.
И сразу для тех кто считает что "5М это очень дохумного и никогда этот лимит не будет достигнут!" - ловите (к сожалению не знаю как здесь вставлять картинки да и лень, так что текст): Percent of Apex Used: 98.95% You are currently using 4,947,692 characters of Apex Code (excluding comments and @isTest annotated classes) in your organization, out of an allowed limit of 5,000,000 characters. Note that the amount in use includes both Apex Classes and Triggers defined in your organization.
Это из жизни, взято из SF организации одной корпорации. Всего-то 1022 класса (правда не считал какие из них тестовые).
[quote="Gres"][quote="Dmitry Shnyrev"]Что например понравилось (в принципе так и должно быть) в качестве отступов рекомендуется использовать 4 пробела. Я в своей компании 3 года (да и сейчас продолжаю по привычке) использовать символ Tab - такие были требования.[/quote]
Только пробелы никаких табов, так как это тихий ужас.[/quote]
Только табы - никаких пробелов :) Если официальная документация говорит обратное, я готов плюнуть в лицо тому, кто это писал. А причина проста - в организации существует ограничение на максимальное суммарное кол-во apex кода - 5M, один таб - один символ, 4 пробела - 4 символа.
И сразу для тех кто считает что "5М это очень дохумного и никогда этот лимит не будет достигнут!" - ловите (к сожалению не знаю как здесь вставлять картинки да и лень, так что текст):
[i]Percent of Apex Used: 98.95%
You are currently using 4,947,692 characters of Apex Code (excluding comments and @isTest annotated classes) in your organization, out of an allowed limit of 5,000,000 characters. Note that the amount in use includes both Apex Classes and Triggers defined in your organization.[/i]
Это из жизни, взято из SF организации одной корпорации. Всего-то 1022 класса (правда не считал какие из них тестовые).
[quote="ilya leshchuk"]Только табы - никаких пробелов[/quote]
Поддерживаю!
Что например понравилось (в принципе так и должно быть) в качестве отступов рекомендуется использовать 4 пробела. Я в своей компании 3 года (да и сейчас продолжаю по привычке) использовать символ Tab - такие были требования.
Только пробелы никаких табов, так как это тихий ужас.
Только табы - никаких пробелов Если официальная документация говорит обратное, я готов плюнуть в лицо тому, кто это писал. А причина проста - в организации существует ограничение на максимальное суммарное кол-во apex кода - 5M, один таб - один символ, 4 пробела - 4 символа.
Подписываюсь под каждым словом ! В моем пакете было значительно меньше классов, но и этого хватило что бы выесть почти все место доступное под классы.
[quote="ilya leshchuk"][quote="Gres"][quote="Dmitry Shnyrev"]Что например понравилось (в принципе так и должно быть) в качестве отступов рекомендуется использовать 4 пробела. Я в своей компании 3 года (да и сейчас продолжаю по привычке) использовать символ Tab - такие были требования.[/quote]
Только пробелы никаких табов, так как это тихий ужас.[/quote]
Только табы - никаких пробелов :) Если официальная документация говорит обратное, я готов плюнуть в лицо тому, кто это писал. А причина проста - в организации существует ограничение на максимальное суммарное кол-во apex кода - 5M, один таб - один символ, 4 пробела - 4 символа.
[/quote]
Подписываюсь под каждым словом ! В моем пакете было значительно меньше классов, но и этого хватило что бы выесть почти все место доступное под классы.
И сразу для тех кто считает что "5М это очень дохумного и никогда этот лимит не будет достигнут!"
Соглашаюсь! Сам встречал такие пакеты, которые выедали большую половину лимита. И сейчас работаю с таким пакетом. Да и пробелы жуть как не люблю!!! Вот мелочь но вырубает страшно - удалить пробелы после нажатия там приходится отдельно. Один пробел потерял (3 где-то стоит вместо 4) и сиди с лупой рассматривай исходники где что поплыло. Бр... одни муражки от этих пробелов. А таб есть таб - он один и большой!!!
[quote="ilya leshchuk"]И сразу для тех кто считает что "5М это очень дохумного и никогда этот лимит не будет достигнут!" [/quote]
Соглашаюсь! Сам встречал такие пакеты, которые выедали большую половину лимита. И сейчас работаю с таким пакетом.
Да и пробелы жуть как не люблю!!!
Вот мелочь но вырубает страшно - удалить пробелы после нажатия там приходится отдельно.
Один пробел потерял (3 где-то стоит вместо 4) и сиди с лупой рассматривай исходники где что поплыло.
Бр... одни муражки от этих пробелов.
А таб есть таб - он один и большой!!! :D
Один пробел потерял (3 где-то стоит вместо 4) и сиди с лупой рассматривай исходники где что поплыло.
Помнится был у меня прям нервонопсихический срыв(шутка, просто дико взбесило). Сидел, работал над пакетом, на VF странице, разметочку выстраивал, так чтобы с первого раза взглядом находить,что нужно. Пришел какой-то пидорг(по-другому не знаю как назвать) и взял,в дев консоли что-то поправил. Это был .....
[quote="Dmitry Shnyrev"]Один пробел потерял (3 где-то стоит вместо 4) и сиди с лупой рассматривай исходники где что поплыло. [/quote]
Помнится был у меня прям нервонопсихический срыв(шутка, просто дико взбесило). Сидел, работал над пакетом, на VF странице, разметочку выстраивал, так чтобы с первого раза взглядом находить,что нужно. Пришел какой-то пидорг(по-другому не знаю как назвать) и взял,в дев консоли что-то поправил. Это был .....
Обычный случай Особенно всякие верстальщики любят это дело - верстают прямо в браузере с помощью development mode - им так проще быстро поправить имя класса и стиль прикрутить. А потом мля, разбирайся почему вся страница в git светится красным.
Обычный случай :D
Особенно всякие верстальщики любят это дело - верстают прямо в браузере с помощью development mode - им так проще быстро поправить имя класса и стиль прикрутить. А потом мля, разбирайся почему вся страница в git светится красным.
Тут нужно просто процесс разработки правильно выстроить.