Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.07.17;
Скачать: CL | DM;

Вниз

Как можно облажаться в коде   Найти похожие ветки 

 
OW ©   (2011-04-04 17:08) [0]

А нет ли у кого желания написать как он, или его знакомый, в программировании ляпсус допустил? такой, как "Монитор не печатает и принтер не показывает"

Например ваш покорный:
Сколько раз в ходе мыслей пишешь друг за другом, select, select, select..
потом , чтоб данные подогнать несколько insert, update

ну все, кажется, пора - пишешь конкретный-контрольный select, запускаешь - и пошло выполняться по списку
selectы..., insert, update.
хорошо, если ничего не попортишь

и вот недавно -
очень большой селект во временную таблицу, и где-то там, из-за ENTERов, в конце личтинга, одной строчкой, отладочный delete from temp остался..

условия, диапазоны - никаких изменений...
много думал :)

теперь часто пишу с комментарием вначале
-- delete
from table ...

-- insert
into table ( )...

т.е. если случайно запустить - проругается и все, а выделил если правильно - все ок.
Пару раз уже помогло :)


 
Компромисс   (2011-04-04 17:21) [1]

Написал на AS3

for(i=0; i++; i<len){
}

Долго не мог понять, почему в цикл ни разу не заходит, хотя len под отладчиком больше нуля.


 
картман ©   (2011-04-04 19:39) [2]


> очень большой селект

а это какой примерно?


 
И. Павел ©   (2011-04-04 20:21) [3]

Подозреваю, что мой случай - не редкость. Сравниваю две строки в JAVA:

String s1, s2;
...
if (s1 == s2)
{
...
}


 
OW ©   (2011-04-05 08:55) [4]


> а это какой примерно?

на несколько  экранов
Не спорю, если подумать - можно бы и сократить, но это же отладка, тесты
потому не думаешь, пристраиваешь select из другого окна как одни из исходных данных первого. ну и т.п.

да, не пошла темка :)
наверное потому, что все подумали, "заходи в Начинающим и смотри" :)
(ИШ добавил: по ссылке  показать мои вопросы)


 
oldman ©   (2011-04-05 09:23) [5]

Давно еще писал на Фоксе и сдуру назвал переменную zap :)))

Естественно после
 zap=1
усе записи в базе тю-тю... Я в шоке...

Причем ошибку долго искал логическую. Пока не глянул на текст программы свежим взглядом.


 
И. Павел ©   (2011-04-05 10:00) [6]

А я когда школьником был, чтобы на всех компьютерах в классе работала моя программа тестирования (использующая BDE ;) устанавливал Delphi полностью. Вот так вот мучился. Еще ходил в какой-то клуб юных программистов спрашивать, можно ли записывать данные в Excell и там мне какая-то девченка-студентка сказала, что нельзя, т.к. Excell имеет свою защиту от записи через чужие программы, и поэтому я использовал Access. В общем, смешно было :)


 
OW ©   (2011-04-05 10:07) [7]


> устанавливал Delphi полностью

одна из моих первых начальниц до сих пор так думает
как-то, с год назад, пересекла судьба.
Она сказала что программистов в отделе не осталось (а кто там останется, на 8 000 рублей :), остались только пользователи word|excel, и то, не очень продвинутые..
Ну и грит: "бла-бла..Написать надо простенькую программу, рублей тыщщу али две заплатим, но не на Delphi, т.к. устанавливать всем D, нет возможности.."
Да ну-ка, подумал, сказав, что я только на D и пишу  и не стал переубеждать в его, D, возможностях..


 
Alex Konshin ©   (2011-04-05 12:23) [8]


> Компромисс   (04.04.11 17:21) [1]
>
> Написал на AS3
>
> for(i=0; i++; i<len){
> }
>
> Долго не мог понять, почему в цикл ни разу не заходит, хотя
> len под отладчиком больше нуля.
>

А ты ещё не нарывался на то, что нужно писать
for(var i=0; i++; i<len){
}
Мне как-то стоило нескольких часов найти такое в чужом коде.


 
Думкин ©   (2011-04-05 12:37) [9]

А у меня как-то было, что вместо 2 получалось 1. В вот таком вот:

a = 1/3+1/3+1/3;
b = 1/3+1/3+1/3;
c = a+b;


c==1. Но ошибка была в ядре системы. И стоило мне литра крови, пока доказал, что у меня все четко считается, в отличии от.


 
OW ©   (2011-04-05 12:38) [10]


> a = 1/3+1/3+1/3;
> b = 1/3+1/3+1/3;
> c = a+b;
>
>
> c==1.

жесть...


 
Думкин ©   (2011-04-05 12:40) [11]


> жесть...

фишка причем, от мелкософта. Потом пофиксили, понятно.


 
Компромисс   (2011-04-05 12:41) [12]

Alex Konshin ©   (05.04.11 12:23) [8]

Я всегда пишу

for(var i:int=0; i++; i<len){
}

просто не хотел пугать дельфистов.

Кстати, в AS3 есть глюк насчет var, все декларации переносятся в начало метода.

То есть

for(var i:int=0; i++; i<len){
}

for(var i:int=0; i++; i<len){
}

эквивалентно
var i:int;
var i:int;
for(i=0; i++; i<len){
}
for(i=0; i++; i<len){
}

Даже warning будет о том, что одну переменную дважды объявили.

А в Вашем варианте еще и warning насчет неизвестного типа i будет


 
Alex Konshin ©   (2011-04-05 14:12) [13]

Ну я AS3 не знаю, преполагал, что он похож на JavaScript, а там именно var и необъявленная переменная понимается как глобальная. Поубивав бы тех, кто это придумал, видать забыли или никогда не знали и забыли о граблях с глобальными переменными в FoxPrо и прочим кошмарам.


 
Компромисс   (2011-04-05 14:17) [14]

Глобальные переменные, да еще и с необязательным объявлением, да еще и с неизвестным типом - это жесть. Хуже только если их тип определяется автоматически, исходя из первого символа имени переменной.


 
Anatoly Podgoretsky ©   (2011-04-05 14:26) [15]

> Думкин  (05.04.2011 12:37:09)  [9]

Не фиг было с вампирами иметь дело.



Страницы: 1 вся ветка

Текущий архив: 2011.07.17;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.015 c
2-1302526998
mefodiy
2011-04-11 17:03
2011.07.17
В Delphi 2010 не работает Breakpoint


13-1126787622
MeF Dei Corvi
2005-09-15 16:33
2011.07.17
Порядок создания статических классов


1-1259225003
Циркуль
2009-11-26 11:43
2011.07.17
Непредсказуемый порядок обхода контролов


4-1248840141
Armature_Current
2009-07-29 08:02
2011.07.17
Ошибка функции ReadFile при работе с COM-портом


2-1302357979
takki
2011-04-09 18:06
2011.07.17
TDrawGrid