Перейти к содержимому


Фото
* * * * * 1 голосов

АйТишнеки. Разговоры за жизнь

ИТ программирование работа

  • Чтобы отвечать, сперва войдите на форум
1219 ответов в теме

#301 Оффлайн   AmpeR_13

AmpeR_13

    Дважды герой флейма

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 4 047 Сообщений:
  • Авто:Renault Megane 3

Опубликовано 31.03.2015 - 12:21

это можно прочитать, когда у тебя в коде есть только один-два ГОТО, а когда переходов десяток или больше, то "вверх", то "вниз", то код становится совершенно нечитамым... Кстати, безусловный переход "вверх" всегда и везде считался дурным тоном..

Да, так и есть, по этому нужно аккуратнее. Но в данном случае все очень прозрачно и понятно, кмк.  Кстати, тот же Ален Голуб,  за дурной тон считает и конструкцию do...while :)

Ну чисто ради интереса, попробуй написать тоже самое не используя ни goto ни do...while :)

 

 

 

какая разница, в конце концов пишем для пользователя, а ему - лишь бы работало. 

Ну не всегда оно так :)  Иногда можно такой тарабаршины накорябать, что потом сам долго репу чешеш, а если код в последствии будет поддерживать другой человек, то боюсь что совсем веру в людей потеряет :lol: 

Главное вот так не делать #define sizeof(x) (sizeof(x)-1) )))))


  • 1

#302 Оффлайн   CyClone

CyClone

    Трижды герой флейма

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 6 427 Сообщений:
  • Авто:Škoda Rapid 1.6 MT

Опубликовано 31.03.2015 - 12:40

Да, так и есть, по этому нужно аккуратнее. Но в данном случае все очень прозрачно и понятно, кмк.  Кстати, тот же Ален Голуб,  за дурной тон считает и конструкцию do...while :)

Ну чисто ради интереса, попробуй написать тоже самое не используя ни goto ни do...while :)

do...while всё же лучше... он по крайней мере не позволит  "выскочить" за пределы цикла...


Наверное не многим здесь приходилось писать код на бумаге или готя бы видеть листинги программного кода длиной 15-20 метров... представляете, сколько времени надо было потратить чтобы найти, куда ведёт ГОТО на таких листингах? )))


  • 0

За деньги друзей не купишь, зато можно найти врагов поприличнее...


#303 Оффлайн   itpb

itpb

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 10 249 Сообщений:

Опубликовано 31.03.2015 - 12:53

не улавливаю связи между рекурсией и оператором безусловного перехода, как рудимента  "линейного программирования". )))

термин "хвостовая рекурсия" знаком?

goto  - рудимент командного структурного программирования. причина его нелюбви одна - трудность отладки.


  • 0

#304 Оффлайн   olegus

olegus

    I like I

  • Мембер
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 39 822 Сообщений:
  • Авто:Volvo 440

Опубликовано 31.03.2015 - 12:56

goto  - рудимент командного структурного программирования. причина его нелюбви одна - трудность отладки.

смешались люди и кони.
структурное, процедурное и линейное напились и свалились в кучу. одно функциональное держится на ногах :)
  • 1
*** Неоднократно уличён в трансляции дезинформации. Каждый высер рекомендуется проверять с лупой ***

#305 Оффлайн   matrix

matrix

    Зацифрованный

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 25 162 Сообщений:
  • Авто:особое благословение

Опубликовано 31.03.2015 - 13:01

Да, так и есть, по этому нужно аккуратнее. Но в данном случае все очень прозрачно и понятно, кмк.  Кстати, тот же Ален Голуб,  за дурной тон считает и конструкцию do...while :)
Ну чисто ради интереса, попробуй написать тоже самое не используя ни goto ни do...while :)


repeat
...
until

есть в нелюбимом тут Паскале )
  • 0
89OЗ4O0O7З6

#306 Оффлайн   AmpeR_13

AmpeR_13

    Дважды герой флейма

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 4 047 Сообщений:
  • Авто:Renault Megane 3

Опубликовано 31.03.2015 - 13:05

do...while всё же лучше... он по крайней мере не позволит  "выскочить" за пределы цикла...

Ну вот чисто ради прикола, переписал через do..while
 
void WriteFSKbyte_DO(uchar DATA){
    uchar RGIT = 0;
    uint temp = TXWBUF;
    temp |= DATA;
    do{
        SCK = 0;
        nSEL = 0;
        SDI = 0;
        SCK = 1;
        if (SDO){
            RGIT = 1;
        } else {
            RGIT = 0;
        }
        SCK = 0;
        SDI = 1;
        nSEL = 1;
    } while (!RGIT);
    RGIT = 0;
//        WriteCMD(temp);
}
Скомпилил оба варианта функций, весь asmlist приводить не буду, но вот:
 
---------------------------------------------------------------------------------
 (Depth) Function               Calls       Base Space   Used Autos Params    Refs
 ---------------------------------------------------------------------------------
 (0) _main                                                 0     0      0      60
                    _WriteFSKbyte_DO
                  _WriteFSKbyte_GOTO
 ---------------------------------------------------------------------------------
 (1) _WriteFSKbyte_GOTO                                    6     6      0      30
                                              0 COMMON     6     6      0
 ---------------------------------------------------------------------------------
 (1) _WriteFSKbyte_DO                                      6     6      0      30
                                              0 COMMON     6     6      0
 ---------------------------------------------------------------------------------
 Estimated maximum stack depth 1
 ---------------------------------------------------------------------------------
Профита 0 :)
 
 

Наверное не многим здесь приходилось писать код на бумаге или готя бы видеть листинги программного кода длиной 15-20 метров... представляете, сколько времени надо было потратить чтобы найти, куда ведёт ГОТО на таких листингах? )))

Так никто же и не говорит, что goto надо юзать. Разговор о том, что в некоторых местах он вполне уместен.
  • 0

#307 Оффлайн   itpb

itpb

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 10 249 Сообщений:

Опубликовано 31.03.2015 - 13:06

смешались люди и кони.
структурное, процедурное и линейное напились и свалились в кучу. одно функциональное держится на ногах :)

а что, в приложении используется только 1 метод программирования? ) )   Приложение - это обычно совокупность блоков, написанных разными методами программирования и даже разными языками.


  • 0

#308 Оффлайн   olegus

olegus

    I like I

  • Мембер
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 39 822 Сообщений:
  • Авто:Volvo 440

Опубликовано 31.03.2015 - 13:12

а что, в приложении используется только 1 метод программирования? ) )   Приложение - это обычно совокупность блоков, написанных разными методами программирования и даже разными языками.

приложение - это машкод. неудивительно, что винда такая кривая :)
  • 0
*** Неоднократно уличён в трансляции дезинформации. Каждый высер рекомендуется проверять с лупой ***

#309 Оффлайн   gr

gr

    ЖАБА

  • Ожидающие
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 28 697 Сообщений:
  • Авто:самоликвидировался

Опубликовано 31.03.2015 - 13:20

 

 

Ну не всегда оно так :)  Иногда можно такой тарабаршины накорябать, что потом сам долго тыкву чешеш, а если код в последствии будет поддерживать другой человек, то боюсь что совсем веру в людей потеряет :lol:

Главное вот так не делать #define sizeof(x) (sizeof(x)-1) )))))

это верно )) не,  я по простому пишу, чтоб если что кто то кроме меня мог разобраться ) 


приложение - это машкод. неудивительно, что винда такая кривая :)

да все корявое


  • 0

Божественная Сила Святого Шекеля 


#310 Оффлайн   itpb

itpb

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 10 249 Сообщений:

Опубликовано 31.03.2015 - 13:23

приложение - это машкод. неудивительно, что винда такая кривая :)

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

Насчет кривизны винды - есть что-то лучше для ПК? убунта не менее кривая, только еще и неудобная. Софта для линукс намного меньше и он тоже часто кривой.


помню поставил как-то линукс на домашний комп. дошла очередь до игр - старкрафта нет, цезаря нет, ничего нет.


  • 0

#311 Оффлайн   olegus

olegus

    I like I

  • Мембер
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 39 822 Сообщений:
  • Авто:Volvo 440

Опубликовано 31.03.2015 - 13:25

Насчет кривизны винды - есть что-то лучше для ПК? убунта не менее кривая, только еще и неудобная.
Софта для линукс намного меньше и он тоже часто кривой.

убунта гораздо удобней винды. для пк она однозначно лучше, тк архитектура на порядок лучше.
приложений тьма. ты ими пользуешься и в винде, тк они кроссплатформенные.
не повторяй мантры мелких с гезефакс.
  • 0
*** Неоднократно уличён в трансляции дезинформации. Каждый высер рекомендуется проверять с лупой ***

#312 Оффлайн   itpb

itpb

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 10 249 Сообщений:

Опубликовано 31.03.2015 - 13:26

Хорошие воспоминания только об openbsd )


  • 0

#313 Оффлайн   olegus

olegus

    I like I

  • Мембер
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 39 822 Сообщений:
  • Авто:Volvo 440

Опубликовано 31.03.2015 - 13:27

да все корявое

маркетинговые поделки более корявые, тк в опенсорсе больше идеалистов.
  • 0
*** Неоднократно уличён в трансляции дезинформации. Каждый высер рекомендуется проверять с лупой ***

#314 Оффлайн   olderon

olderon

    Герой флейма

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 1 680 Сообщений:
  • Авто:Ваз 21099

Опубликовано 31.03.2015 - 13:28

Кстати, братия АйТишная, есть у меня такая особенность - лучше всего работаю, когда на втором мониторе идет какая-нибудь киношка (в основном сериалы либо аниме). Из всех знакомых кодеров только один также работает с фильмом в фоне, и тот не из РФ. Хотелось бы узнать, много ли программистов с такой особенностью вы знаете?

Коллега на заводе РСМ после того как получал новое ТЗ,  день играл в нарды или раскладывал пасьянс. Он так обдумывал ТЗ.
Аналогично искал ошибки в коде.

Админы каждый день в обед ходили в бильярд играть в Алком. Там за столом решались все рабочие вопросы. 

 


  • 1

#315 Оффлайн   itpb

itpb

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 10 249 Сообщений:

Опубликовано 31.03.2015 - 13:30

убунта гораздо удобней винды. для пк она однозначно лучше, тк архитектура на порядок лучше.
приложений тьма. ты ими пользуешься и в винде, тк они кроссплатформенные.
 

большинство из них будет работать только в wine

назови хоть несколько популярных игр, которые портированы на линукс? или графические редакторы corel и photoshop???  даже софт для авто обычно для win только


  • 0

#316 Оффлайн   gr

gr

    ЖАБА

  • Ожидающие
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 28 697 Сообщений:
  • Авто:самоликвидировался

Опубликовано 31.03.2015 - 13:33

маркетинговые поделки более корявые, тк в опенсорсе больше идеалистов.

ну, это верно 


  • 0

Божественная Сила Святого Шекеля 


#317 Оффлайн   matrix

matrix

    Зацифрованный

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 25 162 Сообщений:
  • Авто:особое благословение

Опубликовано 31.03.2015 - 13:33

 

помню поставил как-то линукс на домашний комп. дошла очередь до игр - старкрафта нет, цезаря нет, ничего нет.

 

Зато есть мильон текстовых редакторов (vi, nano, gedit, mcedit ...) у каждого свои принципы работы с обычным текстом и своя комбинация горячих клавиш на банальный копипаст. Это просто убивает.


  • 0
89OЗ4O0O7З6

#318 Оффлайн   olegus

olegus

    I like I

  • Мембер
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 39 822 Сообщений:
  • Авто:Volvo 440

Опубликовано 31.03.2015 - 13:34

большинство из них будет работать только в wine
назови хоть несколько популярных игр, которые портированы на линукс?
или графические редакторы corel и photoshop???  даже софт для авто обычно для win только

при чем тут вайн?
http://store.steampo...os=linux&page=1
корел когда-то был для линукса и даже corel linux был. фотошоп прекрасно работает на посикс, отсутствие сборки только из-за сговора.
опять же все крупнейшие рендеры работают на линуксах. но это уже промышленная часть, там виндов никогда и не было.

Зато есть мильон текстовых редакторов (vi, nano, gedit, mcedit ...) у каждого свои принципы работы с обычным текстом и своя комбинация горячих клавиш на банальный копипаст. Это просто убивает.

они для разных случаев :) например, в ембеденую систему gedit не вкорячишь ведь, и ви прекрасно себя чувствует.

Изменено: olegus, 31.03.2015 - 13:35

  • 1
*** Неоднократно уличён в трансляции дезинформации. Каждый высер рекомендуется проверять с лупой ***

#319 Оффлайн   AmpeR_13

AmpeR_13

    Дважды герой флейма

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 4 047 Сообщений:
  • Авто:Renault Megane 3

Опубликовано 31.03.2015 - 13:34

маркетинговые поделки более корявые, тк в опенсорсе больше идеалистов.

Ага ))) Ради прикола, грепни исходники ядра, на предмет того же гото )))
  • 0

#320 Оффлайн   olegus

olegus

    I like I

  • Мембер
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 39 822 Сообщений:
  • Авто:Volvo 440

Опубликовано 31.03.2015 - 13:38

Ага ))) Ради прикола, грепни исходники ядра, на предмет того же гото )))

из астера 13. новенький стек pj_sip :)
static int chan_pjsip_hangup(struct ast_channel *ast)
{
        struct ast_sip_channel_pvt *channel = ast_channel_tech_pvt(ast);
        struct chan_pjsip_pvt *pvt = channel->pvt;
        int cause = hangup_cause2sip(ast_channel_hangupcause(channel->session->channel));
        struct hangup_data *h_data = hangup_data_alloc(cause, ast);

        if (!h_data) {
                goto failure;
        }
                
        if (ast_sip_push_task(channel->session->serializer, hangup, h_data)) {
                ast_log(LOG_WARNING, "Unable to push hangup task to the threadpool. Expect bad things\n");
                goto failure;
        }
                        
        return 0;
 
failure:
        /* Go ahead and do our cleanup of the session and channel even if we're not going
         * to be able to send our SIP request/response
         */
        clear_session_and_channel(channel->session, ast, pvt);
        ao2_cleanup(channel);
        ao2_cleanup(h_data);

        return -1;
}

согласись - криво ведь. по индусячи.

Изменено: olegus, 31.03.2015 - 13:39

  • 0
*** Неоднократно уличён в трансляции дезинформации. Каждый высер рекомендуется проверять с лупой ***

#321 Оффлайн   itpb

itpb

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 10 249 Сообщений:

Опубликовано 31.03.2015 - 13:40

при чем тут вайн?
http://store.steampo...os=linux&page=1
корел когда-то был для линукса и даже corel linux был. фотошоп прекрасно работает на посикс, отсутствие сборки только из-за сговора.
 

посмотрел, игр как кот наплакал. Ожидал чего-то большего за это время.

Насчет сговора - предложи любому юзеру выбрать линукс или вин - в 99% выберет виндоус. Потому что сделано для людей, а не для энтузиастов. Сколько общался с разными людьми, линуск на ПК любят только админы.

аналогично обратное, если винфон неудобен, то никаким сговором народ не убедишь его покупать, кроме энтузиастов.


Изменено: Просто демиург, 31.03.2015 - 13:42

  • 0

#322 Оффлайн   gr

gr

    ЖАБА

  • Ожидающие
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 28 697 Сообщений:
  • Авто:самоликвидировался

Опубликовано 31.03.2015 - 13:41

да годный текст, чего придираешься? ) 


  • 1

Божественная Сила Святого Шекеля 


#323 Оффлайн   AmpeR_13

AmpeR_13

    Дважды герой флейма

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 4 047 Сообщений:
  • Авто:Renault Megane 3

Опубликовано 31.03.2015 - 13:43

repeat
...
until

есть в нелюбимом тут Паскале )

Не особый знаток Паскаля, но вангую что на уровне машинного кода выполнится тот же самый безусловный переход :)
Да проблема то не в люблю/не люблю, вопрос в том где его сейчас использовать ?
  • 0

#324 Оффлайн   olegus

olegus

    I like I

  • Мембер
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 39 822 Сообщений:
  • Авто:Volvo 440

Опубликовано 31.03.2015 - 13:45

Насчет сговора - предложи любому юзеру выбрать линукс или вин - в 99% выберет виндоус.

Это неправда. Я предлагаю. Люди соглашаются, особенно те, то на рабочих машинах работал. Приносят ноуты свои, родителей.
Спрашивают: а почему я раньше этого не знал?
Жизнь без вирусов на стабильной системе нравится всем.
Многие дезигнеры, не могущие купить мак тоже жалуются на отсутствие фотошопа под линь.
Но тут ничего не сделаешь. Как только якори уйдут в линуксы - мелкие сдохнут моментально. Они это понимают.
 

Потому что сделано для людей, а не для энтузиастов. Сколько общался с разными людьми, линуск на ПК любят только админы.

Каких людей? Маркетологов? те эдакая система сама в себе.

Не особый знаток Паскаля, но вангую что на уровне машинного кода выполнится тот же самый безусловный переход :)

нееееет. у них особый путь. там будет push а затем ret :stol: дельфинячии программы видно с первого байта при дизассемблировании.

Изменено: olegus, 31.03.2015 - 13:46

  • 0
*** Неоднократно уличён в трансляции дезинформации. Каждый высер рекомендуется проверять с лупой ***

#325 Оффлайн   AmpeR_13

AmpeR_13

    Дважды герой флейма

  • Форумец
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 4 047 Сообщений:
  • Авто:Renault Megane 3

Опубликовано 31.03.2015 - 13:46

согласись - криво ведь. по индусячи.

Тую, да ладно, пойдет, потом оптимизируют... если не забудут :)
  • 0





Также с меткой «ИТ программирование, работа»

0 пользователей читают эту тему

0 пользователей, 0 гостей, 0 невидимых

Яндекс.Метрика