Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.10.2009, 18:57   #41
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

И что из того, что код сложен для восприятия?
Главное, чтобы он корректно работал.

Я вот регулярно пишу подобные строчки:
Код:
If Len(Trim(cell)) Then
    sh.Range("c:c").Find(cell).Offset(, 1).Resize(3).Find(cell.Next).EntireRow.Cells(2).Copy cell.Previous
End If
К тому же, Вы, скорее всего, ещё не видели нормальных формул в Excel
Цитата:
Код:
=СУММ(ЕСЛИ(ЧАСТОТА(ПОИСКПОЗ(ЕСЛИ((ДВССЫЛ(к10;)>=RC[-4])*
(ДВССЫЛ(к10;)<=RC[-3])*(ДВССЫЛ(к2;)=RC[-5]);ДВССЫЛ(к4;);)
;ЕСЛИ((ДВССЫЛ(к10;)>=RC[-4])*(ДВССЫЛ(к10;)<=RC[-3])*(ДВССЫЛ(к2;)=RC[-5]);ДВССЫЛ(к4;);););
ПОИСКПОЗ(ЕСЛИ((ДВССЫЛ(к10;)>=RC[-4])*(ДВССЫЛ(к10;)<=RC[-3])*
(ДВССЫЛ(к2;)=RC[-5]);ДВССЫЛ(к4;););ЕСЛИ((ДВССЫЛ(к10;)>=RC[-4])*(ДВССЫЛ(к10;)<=RC[-3])*
(ДВССЫЛ(к2;)=RC[-5]);ДВССЫЛ(к4;););))>0;1;))-1
Творение не моё, но работает отменно. Упростить возможности нет.


Производительность кода ничуть не зависит от длины строки кода...

Некоторые пишут по 2-3 символа в строке, да ещё вставляют пустые строки между строками кода, - вот это мне нравится гораздо меньше (когда для просмотра простейшего кода приходится пролистывать несколько страниц текста)

Последний раз редактировалось EducatedFool; 13.10.2009 в 19:08.
EducatedFool вне форума Ответить с цитированием
Старый 13.10.2009, 19:07   #42
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

Вот сворачивание в одну строчку:
http://s53.radikal.ru/i139/0910/5d/214774226cba.jpg
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Старый 13.10.2009, 19:44   #43
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Красиво. Жаль в семерке такого нет.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 13.10.2009, 20:32   #44
Levsha100
Заблокирован
Старожил
 
Регистрация: 20.07.2008
Сообщений: 4,032
По умолчанию

А вот в Microsoft Visual Studio 2008
Изображения
Тип файла: jpg VS.jpg (230.1 Кб, 99 просмотров)
Levsha100 вне форума Ответить с цитированием
Старый 13.10.2009, 20:45   #45
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Ну это тот же случай, когда Microsoft крадет идеи. В который раз.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 13.10.2009, 20:59   #46
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Кстати о работоспособности кода в посте #1
А ведь логика тоже пострадала и возможно именно из-за того, что код сложно прочитать. Попробуйте, например, для такого значения:

'WWWWWWWW'#13'iiiiiiiiii'; <-- здесь количество символов i > чем символов W

Не поэтому ли стоит (+10). Сравнивать же нужно не длину строк, а ширину в пикселах. Тогда монстр был бы еще больше. Следуя логике, в которой был написан код:

Код:
if StringGrid2.Canvas.TextWidth(copy(....)) >
           StringGrid2.Canvas.TextWidth(copy(.... )
then StringGrid2.ColWidths[i] := StringGrid2.Canvas.TextWidth(copy(.... )
else ...
Лично мне не нравится не длина кода (с этим еще как-то можно смириться), а количество вызовов. Например, сколько раз вызывается метод GetCell. А ведь это для каждой ячейки сетки. Конечно, процессор нужно чем-то занять, но не так-же.
alexBlack вне форума Ответить с цитированием
Старый 13.10.2009, 21:03   #47
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

А CodeGear разве не принадлежит Microsoft'у? И в Visual Studio такой интерфейс уже ого-го сколько, а в CodeGear недавно. И вообще CodeGear является почти полной копией студии
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Старый 13.10.2009, 21:17   #48
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Цитата:
А CodeGear разве не принадлежит Microsoft
Ах да, я и забыл, что мелкомягкие разорили и купили все права борланда. Но первоидею разработки визуальных сред - ОНИ УКРАЛИ!
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 13.10.2009, 21:22   #49
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

Она у них только в dotNet. А по мне лучше уж C++ + WinAPI, больше свободы, но мелкософты так и стремятся перевести всё на dotNet
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Старый 13.10.2009, 21:23   #50
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
А CodeGear разве не принадлежит Microsoft'у?
Цитата:
Ах да, я и забыл, что мелкомягкие разорили и купили все права борланда.
Да Господь с Вами!
не принадлежит и никогда не принадлежал!
у Борланда его купила компания Embarcadero Technologies, которая им сейчас и владеет.
а вот сворачивание кода Микрософт если и украла, то точно не у Борланда...
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
при в ходе на половину сайтов просит ввести код активации, получить который можно послав смс twichska Свободное общение 6 28.05.2009 23:09
Код игры на Паскале и на Делфи сильно отличается? Как переписать код с Паскаля в Делфи? Mclaren Помощь студентам 2 27.04.2009 22:37
Компонент, который может обрабатывать BB коды rpy3uH Компоненты Delphi 1 28.10.2008 21:25
запрос который бы подсчитывал количество полных лет начиная с того года который указан в данных мне базах PereCCC Помощь студентам 8 15.05.2008 16:24