Как часто вы используете в своем коде #region.. Посмотрел EnterpriseLibrary в нем #region скрывает только "Component Designer generated code". Если большой класс что лучше разбить его на частичные или создать регионы. Какое максимальное кол-во строк должен содержать в себе класс и метод
Здравствуйте, Mab, Вы писали:
А>>Как часто вы используете в своем коде #region..
Mab>Очень и очень редко. Не люблю классов, которые в состоянии collapse to definitions не влезают на экран -- стараюсь рефакторить при первой возможности.
То есть у тебя нет классов с количеством членов большим 20-ти штук
... << RSDN@Home 1.2.0 alpha rev. 670>>
Now playing: «Тихо в лесу…»
Здравствуйте, _FRED_, Вы писали:
_FR>То есть у тебя нет классов с количеством членов большим 20-ти штук
Откуда это число взялось? За раз влезает около 75 строк, я думаю.
Ситуация в том что допустим есть
[Serializable]
class User{.
public User(){
}
private int id;
public int Id{
get/set
}
..
}
есть веб служба которая возвращает User.. Веб служба дергает интерфейс IGetUser or IGetUsers объекта __ComObject..
сейчас реализованно вроде этого(Написал чтоб показать суть моих сомнений)
class Convert{
static User Convert(IGetUser user){
if(user !=null){
User newUser= new User();
newUser.Id= user.id;
return newUser
}
}
static Collection<User> Convert(IGetUsers users){
if(users !=null){
collection<User> userCollection = new Collection<User>;
foeach(user in users){
User newUser= convert(user);
userCollection.Add(newUser);
}
return userCollection;
}
}
.......
}
--webservice -->
[WebMethod]
User GetUser(){
User user = Convert.Convert(iGetUser)
return user;
}
[WebMethod]
Collection<User> GetUsers(){
return Convert(iGetUsers);
}
Вот что меня смущает:в классе Convert очень много перегрузок метода convert( Guest Convert(guset){},Collection<Guset> Convert(IGetGuests) ,Man convert(man) и т.д)
поэтому предложил выделять смежные методы в регион т.е
#region User
User Convert(user);
Collection<User> Convert(IGetUsers);
#endregion
провучало мнение что регион программеры из Microsof не часто употребляют ...мол если чтоб удобнее было надо частичные классы .
А мое мнение это переписать так
[Serializable]
class User{.
public User(){
}
public User(IGetUser){
if(user !=null){
this.id= user.id;
}
}
private int id;
public int Id{
get/set
}
..
} OR
[Serializable]
class User{.
public User(){
}
public static User Convert(IGetUser user){
if(user !=null){
User newUser = new User();
newUser.Id=user.id
return newUser
}
}
public static Collection<User> Convert(IGetUserS users){....}
private int id;
public int Id{
get/set
}
.
} т.е логику конвертирования типа я хочу описывать в самом типе а ни в каком нить другом классе.
Ну вот и все
Сегодня прочитал про R# .. Вы можете прицепить его в вашем проекте.
Здравствуйте, Mab, Вы писали:
_FR>>То есть у тебя нет классов с количеством членов большим 20-ти штук
Mab>Откуда это число взялось? За раз влезает около 75 строк, я думаю.
~70 строк на экране, да у некоторых комментарий, да отступы — вот два десятка только и осталось…
А>Сегодня прочитал про R# .. Вы можете прицепить его в вашем проекте.
ПрочитайАвтор: anvaka
Дата: 15.05.06
еще про [c#][/c#]