Вход | Регистрация

Информационные технологии ::

Метки: 

Без оператора Новый: Указатели будут удалены из встроенного языка 1C

↓ [Волшебник, 02.04.18 - 09:49]
Я
   jbond
 
01.04.18 - 17:39
Две недели назад на Дмитровском шоссе  встречался комитет стандартизации языка 1C.

Сегодня он хочет представить короткую сводку и написать о революционном решении, принятом на собрании в Москве.

Комитет по стандартизации языка принял решение о том, что указатели будут объявлены устаревшими в 1C 9.0 и с большой долей вероятности будут удалены из 1C 10.0.

Откровенно говоря, то, что кажется революционном, — всего лишь последний шаг длинной эволюции.

Указатели существуют в 1C с самого начала. Мы получили их из Беейсика. С самого начала развития 1C всегда была тенденция сделать управление указателями более удобными без значительных потерь.

В 1C 8.2 мы получили СтандартныйАвтоУкозатель для выражения исключительного владения. Но СтандартныйАвтоУказатель имел большой изъян. Когда вы копируете СтандартныйАвтоУкозатель, владение ресурсом передавалось копии. Копирование выглядело как перемещение.

Это было очень плохо, приводило к множеству серьёзных багов. Поэтому мы получили СтандартныйУникальныйУказатель в 1C 8.3, и объявили СтандартныйАвтоУказатель устаревшим в 1C 8.3, и окончательно удалили из 1C 8.4.

Дополнительно мы получили СтандартныйРазделяемыйУказатель и СтандартныйРазделяемыйУказатель в 1C 8.4 для управления владением. Вы не можете копировать, но можете перемещать СтандартныйУникальныйУказатель, и если копируете или присваиваете СтандартныйРазделяемыйУказатель, счётчик ссылающихся указателей увеличивается.


Новая семантика владения.

Честно говоря, мы используем указатели и, в частности, обычные указатели очень часто. Вопрос, должны ли вы использовать указатель, сводится к следующему: Кто владелец? К счастью, с помощью кода мы можем чётко выразить это.


Локальные объекты.

Рантайм 1С как владелец автоматически управляет жизнью таких ресурсов. То же самое относится к глобальным объектам или членам класса "Справочники", которые сводят это к области видимости.

Ссылки: я не владелец. Я только обеспечиваю, что ресурс не может быть пустым.

Обычные указатели: я не владелец. Я только ссылаюсь на ресурс, если он есть. Я не должен удалять ресурс.

СтандартныйУникальныйУказатель: я исключительный владелец ресурса. Я могу явно освободить мой ресурс.

СтантартныйУникальныйУказатель: я разделяю ресурс с другими СтантартныйУникальныйУказатель. Я могу явно удалить мой разделяемый ресурс, если он больше никому не нужен.

СтантартныйСлабыйУказатель: я не владелец ресурса, но я могу временно разделять ресурс при вызове моего метода СтантартныйСлабыйУказатель::Заблокировать.

Нам нужно будет изменить только одну из шести практик использования указателей и мы рады следующему шагу в развитии встроенного языка 1C.
 
 
   Lama12
 
1 - 01.04.18 - 17:51
   d4rkmesa
 
2 - 01.04.18 - 18:08
Этот день длится пожалуй слишком долго.
   Cyberhawk
 
3 - 01.04.18 - 20:34
"кажется революционном", "Беейсика", "Укозатель" - что за ахтунг?
   ZloyBrawler
 
4 - 01.04.18 - 20:34
На хабре аналогичная фигня но про С++))
   jbond
 
5 - 01.04.18 - 21:48
(3) - на тебе версию с возможностью редактирования опечаток и форматирования:

http://telegra.ph/Bez-operatora-Novyj-Ukazateli-budut-udaleny-iz-vstroennogo-yazyka-1C-04-01
   Cyberhawk
 
6 - 01.04.18 - 21:53
(5) "с возможностью редактирования опечаток" // Как?
   jbond
 
7 - 01.04.18 - 21:59
(6) - ты про телеграф впервые слышишь? Автор там может редактировать статью, пока не очищена сессия
   jbond
 
8 - 01.04.18 - 22:08
Навеяно хабром и баянистым вопросом

https://www.forum.mista.ru/topic.php?id=12797
   jbond
 
9 - 01.04.18 - 22:19
(6) главный опрос не как, а кем. Стандартно - автором.
   Cyberhawk
 
10 - 01.04.18 - 22:23
(9) И зачем ты мне ссылку на этот телеграф дал с указанием возможности редактирования?
 
 Рекламное место пустует
   jbond
 
11 - 01.04.18 - 22:25
(10) потому что здесь нельзя редактировать свои сообщения, исправляя опечатки и дополняя. Ваш К.О.
   Cyberhawk
 
12 - 01.04.18 - 22:32
(11) Так и там нельзя
   Klesk
 
13 - 01.04.18 - 22:34
1 апреля?
   jbond
 
14 - 01.04.18 - 22:38
(12) - там автору поста можно
   Cyberhawk
 
15 - 02.04.18 - 09:46
(14) Так Я-то не автор. Зачем ты мне подсовываешь ссылку на текст с точно такими же ошибками, что и в (3)?
   jbond
 
16 - 02.04.18 - 09:50
(15) у вас в России с телеграфом все в порядке? ФСБ не внедряет туда свои скрипты? В остальном мире люди видят версию без опечаток с форматированием.
   Cyberhawk
 
17 - 02.04.18 - 09:51
"люди видят версию без опечаток с форматированием" // Покажи на картинке


Список тем форума
Рекламное место пустует Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует