Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Аналог with из VB и Delphi в С# 
V
    Опции темы
Idsa
Дата 15.2.2007, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Есть ли в C# операция, аналогичная по функциональности VBшной и Дельфийской with?


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
ivashkanet
Дата 15.2.2007, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



Idsa, это когда называешь объект, а потом можешь обращаться к его полям и методам без указания имени объекта?

Нет. А зачем? 
Я вот не вижу никакой целесообразности этой фичи. 
Чисто для тех кому лень писать название объекта  smile 
PM MAIL WWW ICQ   Вверх
mr.DUDA
Дата 15.2.2007, 12:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Согласен с ivashkanet.


--------------------
user posted image
PM MAIL WWW   Вверх
Idsa
Дата 15.2.2007, 16:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Цитата(mr.DUDA @  15.2.2007,  12:34 Найти цитируемый пост)
Согласен с ivashkanet.

А я вот не очень smile
Цитата(ivashkanet @  15.2.2007,  11:39 Найти цитируемый пост)
Чисто для тех кому лень писать название объекта  

Лень ленью, а скорость разработки от этого тоже зависит. Думаю, такая фишка не помешала бы.


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
ivashkanet
Дата 15.2.2007, 16:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



Цитата(Idsa @  15.2.2007,  15:31 Найти цитируемый пост)
Лень ленью, а скорость разработки от этого тоже зависит.

Насмешил  smile (без обид только).

Оновное время уходит на создание концепции функциональности и ее отладки , а не на вбивание кода.

Если уж лень ввбивать код полностью, то 
1) Есть IntelliSense (набрал чуть-чуть --- набераешь Ctrl + J или Ctrl + пробел и выбираешь).
2) Ну сохрани название объекта в буфер обмена, а потом вставляй. Все быстрее будет, чем писать 
Код
with someObject
{


}


Это сообщение отредактировал(а) ivashkanet - 15.2.2007, 16:44
PM MAIL WWW ICQ   Вверх
Idsa
Дата 15.2.2007, 16:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Цитата(ivashkanet @  15.2.2007,  16:43 Найти цитируемый пост)
Насмешил   (без обид только).Оновное время уходит на создание концепции функциональности и ее отладки , а не на вбивание кода.

Это для серьезных проектов. А есть проекты попроще, где как раз-таки основное время занимают формочки-кнопочки и их обработка.
Цитата(ivashkanet @  15.2.2007,  16:43 Найти цитируемый пост)
2) Ну сохрани название объекта в буфер обмена, а потом вставляй. Все быстрее будет, чем писать...

Тест времени проводить будем? Аля .NET vs Java smile

P. S. На самом деле ты меня не убедил smile. Использовать эту возможность или нет - твое право. Однако я не вижу объективных причин для исключения этой возможности из языка. В VB.NET она есть, и никто не жалуется smile 


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
ivashkanet
Дата 15.2.2007, 17:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



Цитата(Idsa @  15.2.2007,  15:59 Найти цитируемый пост)
Однако я не вижу объективных причин для исключения этой возможности из языка.

А я не вижу для включения
Цитата(Idsa @  15.2.2007,  15:59 Найти цитируемый пост)
 В VB.NET она есть, и никто не жалуется

Но многие и не пользуются (я например)
 smile 
PM MAIL WWW ICQ   Вверх
Idsa
Дата 15.2.2007, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Итого: на вкус и цвет... Вопрос исчерпан.


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
skyboy
Дата 15.2.2007, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: нет
Всего: 260



Цитата(Idsa @  15.2.2007,  15:59 Найти цитируемый пост)
В VB.NET она есть, и никто не жалуется

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

procedure TForm1.OnCreate(Sender: Tobject);
with Panel1 do
begin
 //.... тут  куча кода для затруднения поиска
 with Button1 do
  Left:= 25;
 // .... тут тоже куча кода
end;

Вот скажи мне, к чему относится "Left:= 25": к кнопке, как самому ближнему объекту с этим свойством, к панели, потому что тоже в его блоке with или к форме, потому как все это описано в методе формы и Self указывает как раз на форму? 
хочешь себе такой "головняк"? я вот не хочу. и ivashkanet не хочет. подавно его не хочет 
mr.DUDA, хоть он и не особо многословен. зачем такое надо - вообще не понимаю. тем более, при том, что практически все мало-мальски "живые" IDE имеют автозавершение кода  smile 
PM MAIL   Вверх
Idsa
Дата 15.2.2007, 17:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Ладно, уговорили smile


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Exception
Дата 17.2.2007, 16:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 29
Всего: 186



With позволяет сделать более читабельным код инициализации объекта - а ля
Код

with MyButton
{
    .Text = "bla";
    .AnotherProperty = something;
    /// ...
}


С другой стороны, у нас есть конструкторы, в которые обычно можно пихнуть все необходимые свойства.

P.S. Из C# 3.0:

Код

Button myButton = new Button () { Text = "bla",
            AnotherProperty = something };


Это сообщение отредактировал(а) Exception - 17.2.2007, 16:02
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0850 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.