Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 00:25 22.09.24 
Компютри и Интернет
   >> Програмисти
*Кратък преглед

Страници по тази тема: 1 | 2 | 3 | 4 | 5 | (покажи всички)
Тема no goto?нови  
Авторdummy (Нерегистриран)
Публикувано17.12.03 02:30



Taka...
Imame slednia code:

for ( int i = 0; i < 10; i++ )
{
TryAgain:
// malko code
while ( condition )
{
if ( f(i,l) == true )
{
l++;
goto TryAgain;
}
else
{
// edna kamara code
}
// oste edna kamara code
}
}

Kak da se izbegne goto v tozi sluchai?



Тема Re: no goto?нови [re: dummy]  
АвторГypy (Нерегистриран)
Публикувано17.12.03 02:37



continue;



Тема с continue няма да станенови [re: Гypy]  
Авторzaphod (Нерегистриран)
Публикувано17.12.03 08:04



по принцип може да се избегне, но ще стане още по-нечетливо. аз в такива случаи пиша гото и не ми мигва окото.



Тема Re: с continue няма да станенови [re: zaphod]  
Авторexpert (Нерегистриран)
Публикувано17.12.03 09:16



i koe mu e nechetlivoto na continue?
e ako iskash da izlezesh niakolko niwa na wlojenost, mai
samo s goto stawa chetliwo... za men.
Guru sigurno bi izpolzwal exception ako e na C++, no se
symniawam dali ima namerenie poweche da polzwa
takiwa inferior sredstwa kato ima VB.NET...

drugia wariant e da si uprostish algorityma,
tam mai winagi ima kakwo da se naprawi :)



Тема Re: no goto?нови [re: dummy]  
Автор Questor (пишещ)
Публикувано17.12.03 09:45



слагаш вътрешния цикъл във функция.

без майтап в една фирма големи глави са писали кодинг станадарт да не се ползва нито break, нито continue, a return osven v края на функция не се препоръчва.



Тема Re: с continue няма да станенови [re: expert]  
АвторGuru (Нерегистриран)
Публикувано17.12.03 10:29



>> e ako iskash da izlezesh niakolko niwa na wlojenost, mai

Е за какво ги влагаш едно в друго тия няколко нива на "вложеност", след като можеш да скачаш наляво надясно през нивата ? Нали затова кода трябва да е структуриран, от едно място да се стига до друго ясно и четливо.

Ако в един цикъл вложиш друг, трябва ЗАДЪЛЖИТЕЛНО от вложения цикъл да може да се излиза само в неговия parent цикъл, иначе за какво ги nest-ваш един в друг ? Ако може да се скача наляво надясно във nested цикли, то тогава по дефиниция проблема не трябва да се решава с nested цикли а със
отделяне на кода във методи и викане на съответните методи.

Именно и затова 99% от употребата на "гото" се abuse-ва и учи на лошо кодиране, щото така е по-лесно да се пишат спагети, а после който оправя бъговете той да му мисли.



Тема Re: no goto?нови [re: dummy]  
Автор Potencialen emigrant (computer)
Публикувано17.12.03 11:01




bool gotoSux;

for ( int i = 0; i < 10; i++ )
{
do
{
gotoSux = false;
// malko code
while ( condition )
{
if ( f(i,l) == true )
{
l++;
gotoSux = true;
break;
}
else
{
// edna kamara code
}
// oste edna kamara code
}
}
while (gotoSux);
}




Тема Re: no goto?нови [re: Questor]  
Автор Mycлoн (Муслен Ужасон)
Публикувано17.12.03 11:29



съгласен съм с изваждането на функцията.

аз виждам грозно написана огромна процедура, която прави 50 неща ( ако броим коментарите за камарите код ). разделянето на малки процедури е най-малкото, което може да се направи.

гото-то само по себе си не е лошо. то е СИМПТОМ на лошите неща, които ни дебнат :->

ако гледаме само циклите --> виждам нещо ( вътрешния ), което се опитваме да направим 10 пъти. ами защо нещото не се издърпа навън и не му се сложи четливо име. ExtractMethod рефакторинга визирам.

--
"Agile is a mindset, not a set of practices, rules, or tools."
Tom Poppendieck


Тема Re: no goto?нови [re: dummy]  
АвторZelen (Нерегистриран)
Публикувано17.12.03 11:30



Ми не избягвай "goto"! :)
Мисли, както казват, позитивно:)
Повечето програмисти си сменят работата през година, две.....
От това следва, че няма да си ти човека, който ще го оправя след време.
От това следва - създай малко работа и за бъдещите програмисти:)
Всичко на готово ли ша да получават, я!:)



Тема Re: no goto?нови [re: Zelen]  
Автор Mycлoн (Муслен Ужасон)
Публикувано17.12.03 11:33



>От това следва, че няма да си ти човека, който ще го оправя след време.

но и следва, че ще оправяш чужди "шедьоври" на друго място нали?

--
"Agile is a mindset, not a set of practices, rules, or tools."
Tom Poppendieck



Страници по тази тема: 1 | 2 | 3 | 4 | 5 | (покажи всички)
*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.