|
|
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
Вопрос касается всех языков, где есть возможность объявить статический класс или статический метод нестатического класса. Задача стара: есть переменные-значения (целые числа, числа с точкой, булевы, даты, ну и строки тут же рассмотрим), которые нужно проверять логически (т.е. физическая проверка уже сделана - мы знаем, что из внешнего мира данные к нам пришли в том формате, который и нужен в этом месте программы) - так статический класс тут в самый раз или нет? Т.е. нужно тупо вызывать метод (функцию), в который передавать сравниваемое значение и то, с чем сравниваем. Или же проверить число на попадание его в интервал (a, b) или [a, b]. Количество операций в принципе не велико. Так рулит или нет в этом случае статика? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2011, 10:51 |
|
||
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
Так большинство и пишет - наобъявляют кучу классов, сделают их нестатик, и методы нестатик, и никаких полей в классе. И заявляют что знают ООП. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2011, 11:11 |
|
||
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
Слово еще модное, "Helper" используют для обозначения таких классов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2011, 11:14 |
|
||
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
Так я о том и толкую! Вернее, спрашиваю: КАК ЛУЧШЕ. В смысле, правильнее, кошернее, эффективнее, рульнее. На деле ничего плохого в helper'ах нет. Главное, правильно спроектировать. Ждем новых высказываний гуру! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2011, 11:18 |
|
||
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
Оффтопик. Mother'sLittleHelper ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2011, 12:06 |
|
||
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
Thanks! А по статическим классам-методам совсем ничего? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2011, 13:45 |
|
||
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
В C# есть extention-методы и я их использую. Тогда использование получается удобным: string s; //... s = s.NVL("нет значения"); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2011, 14:10 |
|
||
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
Ok. Thanks. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2011, 14:37 |
|
||
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
Работа с хранимыми процедурами выглядит так: var cmd = TSQL.GetCommand("SomeStoredProcedure"); cmd.Set("@SomeParameter", this.someField); cmd.Set("@OtherParameter", this.anotherField); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2011, 14:48 |
|
||
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
Винни-Бух.. есть переменные-значения .. нужно проверять логически... так статический класс тут в самый раз или нет?... если вам чиссо механика - да так сделать можно. если задача на проектирование и ОО - то тогда в отрыве от бизнес задачи рассматривать как минимум глупо. т.к. упирается в возможность, либо не возможность контроля со стороны той или иной сущности. слишком расплывчато поставлена задача. про коня в вакууме; и я подозреваю (на вопрос зачем) - чтобы раздуть халиварные дебаты... удачи вам (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2011, 12:23 |
|
||
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
"Ваше высочество, разрешите пойти с самого начала!" На каком бы уровне абстракции мы ни находились, часто бывает нужно вырезать что-нибудь из строки при помощи регулярного выражения, пробельные символы подчистить (или удалить, или свести N пробелов к одному), при работе с числами нужно проверить их на попадание в диапазон вместе с какими-то дополнительными условиями, определяемыми конкретной предметной областью. Внимание, вопрос: имеет ли смысл создавать статические классы (нужно ведь и производительность учесть), вынеся их в отдельное пространство имен, чтобы дергать их ради методов, которые принимают строку и какие-то дополнительные параметры, и возвращают преобразованную строку. Т.е. все методы этого класса будут иметь вид: public static string TakeSeveralSymbol(string s, ...... - какие-то параметры, влияющие на работу метода) Или по-другому можно спросить: не является ли такой прием вчерашним днем? Еще интересует: имеет ли смысл разносить такие классы по типам: public static class IntParse { методы, которые работают только с целыми числами } public static class StrParse { метода, которые работают только со строками } public static class DateParse { ... только датами } Еще раз повторяю: все пертурбации с типами уже выполнены!!! Т.е. рассматриваем поведение системы при наличии переменных нужного типа и имеющих какое-то непустое (не NULL) значение. На этом этапе нужно часто поработать со строками, числами, датами на предмет их ЛОГИЧЕСКОЙ валидации. Ну, вроде расписал подробнее некуда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2011, 00:09 |
|
||
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
Винни-БухВнимание, вопрос: имеет ли смысл создавать статические классы (нужно ведь и производительность учесть), вынеся их в отдельное пространство имен, чтобы дергать их ради методов, которые принимают строку и какие-то дополнительные параметры, и возвращают преобразованную строку. Т.е. все методы этого класса будут иметь вид: public static string TakeSeveralSymbol(string s, ...... - какие-то параметры, влияющие на работу метода) Или по-другому можно спросить: не является ли такой прием вчерашним днем? Еще интересует: имеет ли смысл разносить такие классы по типам: public static class IntParse { методы, которые работают только с целыми числами } public static class StrParse { метода, которые работают только со строками } public static class DateParse { ... только датами } в Си-Шарпе для єтого придумали методі расширения(если я правильно название запомнил) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2011, 17:53 |
|
||
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
Винни-БухВнимание, вопрос: имеет ли смысл создавать статические классы (нужно ведь и производительность учесть) Я уже писал, что БОЛЬШИНСТВО из мне знакомых, даже весьма заслуженных прогеров, пишут нестатические классы без использования полей. Объявить их нестатическими - добавить геморроя себе любимому. Добавлять ..Helper в имена - еще добавить г. Кстати, а причем тут производительность? Надеетесь что экземплярные методы не создают стековый кадр при вызове? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2011, 11:14 |
|
||
|
Так "да" или "нет" статике?
|
|||
|---|---|---|---|
|
#18+
Винни-БухВопрос касается всех языков, где есть возможность объявить статический класс или статический метод нестатического класса. Задача стара: есть переменные-значения (целые числа, числа с точкой, булевы, даты, ну и строки тут же рассмотрим), которые нужно проверять логически (т.е. физическая проверка уже сделана - мы знаем, что из внешнего мира данные к нам пришли в том формате, который и нужен в этом месте программы) - так статический класс тут в самый раз или нет? Т.е. нужно тупо вызывать метод (функцию), в который передавать сравниваемое значение и то, с чем сравниваем. Или же проверить число на попадание его в интервал (a, b) или [a, b]. Количество операций в принципе не велико. Так рулит или нет в этом случае статика? раз уж тут про си шарп, как бы ты реализовал функцию Application.Exit() без статики? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2011, 18:04 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=37528900&tid=1342599]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
172ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 210ms |
| total: | 443ms |

| 0 / 0 |
