Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   модификатор доступа internal (http://www.flasher.ru/forum/showthread.php?t=215621)

Appleman 29.06.2018 00:44

модификатор доступа internal
 
Скажите, кто-нибудь пользуется сабжем и в каких ситуациях? У меня пока активно используются все остальные модификаторы, кроме internal.

RedHead90 29.06.2018 01:01

Appleman, ну если у тебя не было ситуаций, когда эта фича пригодилась бы, то и не парься. А если такая ситуация возникнет, то используй, раз уж она есть. В AS3 вообще свои пространства имен можно создавать. Во флексе, кажется, это активно использовалось. Но лично мне кажется, что вся эта муть только добавляет запутанности. В хаксе вон всего два варианта видимости - public и protected и ничего, никто не жалуется.

Wolsh 29.06.2018 03:14

Да просто не все то, что ты объявляешь как паблик, используется как паблик. Что-то наверняка используется только внутри пакета, ты просто не задумывался об этом. Вопрос, скорее, чистоты кода, чем строгой необходимости. Можно ведь и все приваты объявить пабликами (многие так и делают, переходя с кода в кадрах на классы). Вообще это категория больше для библиотек, то есть какого-то специфического набора классов, выполняющих одну общую задачу, нередко имеющего "фасад", обеспечивающий взаимодействие пакета с "внешним" миром, и несколько классов-утилит, которые работают себе в шахте и наружу нос не кажут. Ты просто отбираешь у них мобильники, чтобы никакой умник не смог вмешаться в работу библиотеки. Как бы приват, но для чужаков, а для своих вроде как необходимый паблик.

СлаваRa 29.06.2018 12:26

Цитата:

В хаксе вон всего два варианта видимости - public и protected и ничего, никто не жалуется.
Так только кажется, отсутсвие private часто создает проблемы

ZergMaster 29.06.2018 12:33

в хаксе нету private? А как же инкапсуляция?... (

СлаваRa 29.06.2018 13:10

Цитата:

В хаксе вон всего два варианта видимости - public и protected
Цитата:

в хаксе нету private?
...

это никак не мешает что-то инкапсулировать.

ZergMaster 29.06.2018 13:16

ну как не мешает... защита от глупых наследников - тоже инкапсуляция. ) Ну да. согласен, перебиться можно, конечно.

СлаваRa 29.06.2018 13:21

Цитата:

защита от глупых наследников - тоже инкапсуляция. )
Как это интерпретировать?

А вообще предлагаю закончить, для того чтобы мы друг друга понимали, вам бы поработать с Haxe, к слову, даже если был бы private модификатор, то это все равно можно было бы обойти.

ZergMaster 29.06.2018 13:36

ну да, я на Haxe не работал, потому это просто досужие разговоры. Просто предположил, что там, как и обычно, область видимости protected - это свойства и методы, доступные для класса и для всех его наследников. private же для наследников недоступны. Вот и получается, что private инкапсулирует область видимости от вообще всех классов, включая наследников, в отличии от protected.


Часовой пояс GMT +4, время: 08:51.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.