powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / В чем принципиальная разница между public int Field; и public int Field{get;set;}?
44 сообщений из 44, показаны все 2 страниц
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39327899
Charles Weyland
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
терминологически понятно - первое это поле, второе - свойство, которое при компиляции превращается в две функции.
В чём преимущество пустого свойства перед полем?

Тем более, что я всё равно не смогу ничего ни в get{} ни в set{} вписать, пока опять-таки не объявлю какую-нибудь переменную int _field (пока get/set пустые, то Field "сама" хранит в себе значения), т.к. при "расшифровке" get или set Field сразу теряет способность хранить данные в себе и их нужно куда-то пихать (или я ошибаюсь?)
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39327920
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Charles WeylandВ чём преимущество пустого свойства перед полем?
1. Если захочется добавить логику и преобразовать поле в свойство, то придётся перекомпилировать вызывающий код. Если такая возможность есть, то это некритично - например, когда поле или класс описаны как private или internal.

2. Есть разница на уровне рефлекшена. Как следствие, не каждый сериализатор, датабиндинг и т. п. умеет работать с полями из-за лени их создателей.

зы: В древности люди считали, что по ряду причин не должно быть публичных полей классов. Некоторые до сих пор так считают.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39327926
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
3. Свойство может быть объявлено в интерфейсе, поле - нет.
4. Свойства могут быть виртуальными, и, как следствие, переопределенными в производном классе. Поля - нет.
5. Датабиндинги (и в WPF, и в винформс) работают именно через свойства, а не через поля.
6. Поле класса может быть передано в метод как ref/out параметр, свойство - нет.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39327945
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Charles Weyland,

Для авто-свойства компилятор сгенерирует приватное поле и назовёт его как ему вздумается. Поэтому есть вероятность, что ты получишь фейл, при десериализации. Крайне редкий и специфичный случай, который может неожиданно огорчить =)

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

Самое главное, о чём уже выше сказали, но я повторю: поле не может быть объявлено в интерфейсе, а свойство может .
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39327950
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttДля авто-свойства компилятор сгенерирует приватное поле и назовёт его как ему вздумается. Поэтому есть вероятность, что ты получишь фейл, при десериализации. Крайне редкий и специфичный случай, который может неожиданно огорчить =)Все известные науке сериализаторы игнорируют приватные члены. Ну может если только их явно атрибутом каким пометить. Что же там такое ужасное может случиться? Давай пример.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39327970
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К,

http://www.infragistics.com/community/blogs/josh_smith/archive/2008/02/05/automatic-properties-and-the-binaryformatter.aspx

автор
I think a good rule of thumb is: do not use automatic properties in serializable types .
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39327987
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей К,

http://www.infragistics.com/community/blogs/josh_smith/archive/2008/02/05/automatic-properties-and-the-binaryformatter.aspx

авторI think a good rule of thumb is: do not use automatic properties in serializable types .

Ну да, древний BinaryFormatter почему-то пишет приватные поля. Нажно всем отказываться от автосвойств... :-)
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39327989
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
*Нужно
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328002
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КНу да, древний BinaryFormatter почему-то пишет приватные поля. Нажно всем отказываться от автосвойств... :-)

Ну по сути это как раз и есть честный сериализер. Все другие, о которых ты говоришь, никак не гарантируют, что сериализованные данные будут идентичны десериализованным хоть в какой-то мере. Любое свойство может намерянно или нет искажать данные. О чём собственно и говорил Рихтер. Правда как оказалось не так страшен чёрт, как его малюют, но это делает ситуацию ещё более опасной
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328012
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КНу да, древний BinaryFormatter почему-то пишет приватные поля. Нажно всем отказываться от автосвойств... :-)

Ну по сути это как раз и есть честный сериализер. Все другие, о которых ты говоришь, никак не гарантируют, что сериализованные данные будут идентичны десериализованным хоть в какой-то мере. Любое свойство может намерянно или нет искажать данные. О чём собственно и говорил Рихтер. Правда как оказалось не так страшен чёрт, как его малюют, но это делает ситуацию ещё более опасной Никакой опасности для тех, кто не нарушает концепцию свойств и понимает, что в них должно находиться. :-)

С другой стороны, BinaryFormatter пользуется не публичным контрактом класса, как принято в приличном обществе, он лезет в святая святых - в приватные поля, из-за чего и работает неправильно при некоторых, вполне законных , изменениях внутренностей класса. Авторы BinaryFormatter должны признать свои ошибки и сделать что-нибудь хорошее, чтобы загладить вину перед обществом.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328030
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры Павловны,
7. К полю можно применить ThreadStaticAttribute
8. К полю можно применить volatile
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328053
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КНикакой опасности для тех, кто не нарушает концепцию свойств и понимает, что в них должно находиться. :-)

Согласен, культура использования свойств хорошо сформировалась.

Алексей КС другой стороны, BinaryFormatter пользуется не публичным контрактом класса, как принято в приличном обществе, он лезет в святая святых - в приватные поля, из-за чего и работает неправильно при некоторых, вполне законных , изменениях внутренностей класса. Авторы BinaryFormatter должны признать свои ошибки и сделать что-нибудь хорошее, чтобы загладить вину перед обществом.

В некоторых случаях это идеальный вариант. Например, сериализация исключений.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328062
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КС другой стороны, BinaryFormatter пользуется не публичным контрактом класса, как принято в приличном обществе, он лезет в святая святых - в приватные поля, из-за чего и работает неправильно при некоторых, вполне законных , изменениях внутренностей класса. Авторы BinaryFormatter должны признать свои ошибки и сделать что-нибудь хорошее, чтобы загладить вину перед обществом.

В некоторых случаях это идеальный вариант. Например, сериализация исключений.ОК. Подумаю об этом. Но на первый взгляд похоже на авантюру. :-)
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328065
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КОК. Подумаю об этом. Но на первый взгляд похоже на авантюру. :-)

Насчёт авантюры согласен, замахнулись не подумав. С бинарной сериализацией связано целое корыто проблем, поэтому и не обрело популярности.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328122
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КОК. Подумаю об этом. Но на первый взгляд похоже на авантюру. :-)

Насчёт авантюры согласен, замахнулись не подумав. С бинарной сериализацией связано целое корыто проблем, поэтому и не обрело популярности.Бинарные сериализаторы разные бывают. В WCF есть бинарный сериализатор, который нормально работает.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328137
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КБинарные сериализаторы разные бывают. В WCF есть бинарный сериализатор, который нормально работает.

Медленный он... если если ты конечно имеешь в виду BinaryFormatter. Лучше ProtoBuf =)
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328624
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КБинарные сериализаторы разные бывают. В WCF есть бинарный сериализатор, который нормально работает.

Медленный он... если если ты конечно имеешь в виду BinaryFormatter. Лучше ProtoBuf =)Ну я про сериализатор, используемый в привязке WCF NetTCP. С чего он медленный-то? Да и мы разве куда-то не успеваем? :-)
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328654
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КhVosttпропущено...


Медленный он... если если ты конечно имеешь в виду BinaryFormatter. Лучше ProtoBuf =)Ну я про сериализатор, используемый в привязке WCF NetTCP. С чего он медленный-то?
Не тестировал, но скорее всего из-за рефлексии.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328656
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей Кпропущено...
Ну я про сериализатор, используемый в привязке WCF NetTCP. С чего он медленный-то?
Не тестировал, но скорее всего из-за рефлексии.Ну там, если всё по уму написано, должна быть кодогенерация через Emit или Expression. Но я тоже не тестировал. :-)
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328660
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КskyANAпропущено...

Не тестировал, но скорее всего из-за рефлексии.Ну там, если всё по уму написано, должна быть кодогенерация через Emit или Expression. Но я тоже не тестировал. :-)
Ты хотел сказать, если написать самому генерацию суррогата для каждого класса, что необходимо сериализовать?
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328665
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей Кпропущено...
Ну там, если всё по уму написано, должна быть кодогенерация через Emit или Expression. Но я тоже не тестировал. :-)
Ты хотел сказать, если написать самому генерацию суррогата для каждого класса, что необходимо сериализовать?Ну нет. Я про кодогенерацию внутри сериализатора, как в XmlSerializer.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328684
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КskyANAпропущено...

Ты хотел сказать, если написать самому генерацию суррогата для каждого класса, что необходимо сериализовать?Ну нет. Я про кодогенерацию внутри сериализатора, как в XmlSerializer.
А она появилась для Binary? Раньше помнится самому надо было писать.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328688
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КЯ про кодогенерацию внутри сериализатора, как в XmlSerializer.
Кхм... может, лучше не надо?
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328697
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей Кпропущено...
Ну нет. Я про кодогенерацию внутри сериализатора, как в XmlSerializer.
А она появилась для Binary? Раньше помнится самому надо было писать.Ну в WCF в сериализаторе для NetTCP может и есть, надо уточнять. Могу ошибаться конечно же.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328704
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры ПавловныАлексей КЯ про кодогенерацию внутри сериализатора, как в XmlSerializer.
Кхм... может, лучше не надо?Возможные утечки памяти описаны в документации . Просто не все её читают.
авторTo increase performance, the XML serialization infrastructure dynamically generates assemblies to serialize and deserialize specified types. The infrastructure finds and reuses those assemblies. This behavior occurs only when using the following constructors:

XmlSerializer.XmlSerializer(Type)

XmlSerializer.XmlSerializer(Type, String)

If you use any of the other constructors, multiple versions of the same assembly are generated and never unloaded, which results in a memory leak and poor performance. The easiest solution is to use one of the previously mentioned two constructors. Otherwise, you must cache the assemblies in a Hashtable, as shown in the following example.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328751
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что мешает реализовать ISerializable если надо?
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39328989
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВЧто мешает реализовать ISerializable если надо?
Надо что?
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329000
Charles Weyland
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНадо что?
Надо.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329009
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Charles WeylandskyANAНадо что?
Надо.
Если надо, то ничего.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329063
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне кажется, сточки 3рения элементарно удобства предоставляемого компилятором и IDE исполь3овать свойства на много лучше.
в 6 версии свойства можно инициали3ировать, сделать R/O и т.д. на много проще.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329160
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAЕвгенийВЧто мешает реализовать ISerializable если надо?
Надо что?
Сериализацию, отличную от из коробки?
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329169
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВISerializable
Отличную от из коробки не надо. Надо чтобы быстрее работала.

Для того же ProtoBuf тоже можно атрибуты использовать, но это будет медленнее, чем сгенерировать дтошки.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329307
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAОтличную от из коробки не надо. Надо чтобы быстрее работала.

Ну типичная позиция юзверя, который мечтает о приложении с единственной кнопкой "Сделать хорошо". Но чудес то не бывает!
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329328
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВskyANAОтличную от из коробки не надо. Надо чтобы быстрее работала.

Ну типичная позиция юзверя, который мечтает о приложении с единственной кнопкой "Сделать хорошо". Но чудес то не бывает!
О чем ты вообще?
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329350
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВskyANAОтличную от из коробки не надо. Надо чтобы быстрее работала.

Ну типичная позиция юзверя, который мечтает о приложении с единственной кнопкой "Сделать хорошо". Но чудес то не бывает!

Што?
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329614
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAЕвгенийВпропущено...

Ну типичная позиция юзверя, который мечтает о приложении с единственной кнопкой "Сделать хорошо". Но чудес то не бывает!
О чем ты вообще?
О том, что палка о двух концах.
С одной стороны нужно быстро.
С другой, не каждый класс можно сериализовать, например трудности с Expression<TDelegate> или Thread. И нужно постараться, что бы как можно больше типов были подвержены сериализации, там что бы разрулить например одни циклические ссылки, нужно здорово постараться, сложность не меньше, чем у GC получиться. На написание сериализатора тратить столько не оправдано.
Вот и дано, хочешь используй стандартный, не хочешь - пиши кастомный.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329623
Charles Weyland
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВО том, что палка о двух концах.
Дом о двух этажах, асфальт о двух трамвайных путях.
хех, одесское наречие в на форуме процветает. (и не надо одесское наречие называть старорусским, никакое оно не старорусское. Обыкновенная безграмотная фраза)

P.s. по-русски "о двух концах палки", если интересно
P.p.s. пардон, глаза режут подобные фразы, вот и прицепился) а по делу всё верно говоришь, я считаю.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329638
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВskyANAпропущено...

О чем ты вообще?
О том, что палка о двух концах.
С одной стороны нужно быстро.
С другой, не каждый класс можно сериализовать, например трудности с Expression<TDelegate> или Thread. И нужно постараться, что бы как можно больше типов были подвержены сериализации, там что бы разрулить например одни циклические ссылки, нужно здорово постараться, сложность не меньше, чем у GC получиться. На написание сериализатора тратить столько не оправдано.
Вот и дано, хочешь используй стандартный, не хочешь - пиши кастомный.Не надо бездумно в одном классе смешивать логику и данные, тогда не будет никаких палок с концами.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329659
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Charles Weyland,
У мядаль два сторона!
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329661
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КНе надо бездумно в одном классе смешивать логику и данные, тогда не будет никаких палок с концами.

Это всё притянутые за уши концы палок ))
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329664
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КНе надо бездумно в одном классе смешивать логику и данные, тогда не будет никаких палок с концами.
А если к примеру данные задачи идеально укладываются на ориентированный граф, в узлах которого очереди с приоритетами, элементами которых являются красно-черные деревья?
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329666
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Charles WeylandP.s. по-русски "о двух концах палки", если интересно
P.p.s. пардон, глаза режут подобные фразы, вот и прицепился) а по делу всё верно говоришь, я считаю.

Крылатая фразу сохраняет устаревшее употребление предлога «о». Претензии абсолютно бездушны и безосновательны. Правильно употреблять эту фразу именно так, как она сохранилась, происки надмозга следует немедленно утилизировать и душить в зародыше.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329669
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВА если к примеру данные задачи идеально укладываются на ориентированный граф, в узлах которого очереди с приоритетами, элементами которых являются красно-черные деревья?

И что мешает здесь логику отделить от данных? Не понимать.
...
Рейтинг: 0 / 0
В чем принципиальная разница между public int Field; и public int Field{get;set;}?
    #39329829
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВskyANAпропущено...

О чем ты вообще?
Вот и дано, хочешь используй стандартный, не хочешь - пиши кастомный.
ИМХО не об этом речь.
...
Рейтинг: 0 / 0
44 сообщений из 44, показаны все 2 страниц
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / В чем принципиальная разница между public int Field; и public int Field{get;set;}?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]