metaclass: (Default)
[personal profile] metaclass
кусочек кода примера с их сайта:

if(message.GetType() == typeof(SoapServerMessage))


Никто не знает, почему они не написали так:

if(message is SoapServerMessage)

Date: 2007-11-16 04:01 pm (UTC)
From: [identity profile] gsbelarus.livejournal.com
(message is SoapServerMessage) вернет True для SoapServerMessage и всех его наследников, а первое сравнение -- проверяет, чтобы message был именно SopaServerMessage и ничем иным.

Date: 2007-11-16 04:34 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Правильный способ в данном случае is, а в том примере это не первая ошибка.

Date: 2007-11-16 05:04 pm (UTC)
From: [identity profile] kkirsanov.livejournal.com
Я под Windows Media Encoder софт писал.
Где то треть примеров из SDK не работает, а половина возникающих ошибок имеет восьмизначный номер и находится гуглом только на китайско-индусских форумах.

Date: 2007-11-16 06:01 pm (UTC)
From: [identity profile] henu3detb.livejournal.com
О! А еще говорят, что опенсорс - зло!

Date: 2007-11-16 08:38 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Кстати, да - очень большое количество нетривиальных вопросов по программированию задаваемых гуглу, приводит в какие-то дебри индии или китая.

Date: 2007-11-21 12:29 am (UTC)
From: [identity profile] kkirsanov.livejournal.com
Кстати, просматирваю нововведения новой ВижуалСтудии 2008, а там - Lambda Expressions

Date: 2007-11-21 08:06 am (UTC)
From: [identity profile] metaclass.livejournal.com
Да, я уже читал, что туда пользы всякой добавили.

Date: 2007-11-16 04:14 pm (UTC)
From: [identity profile] soko1.livejournal.com
потому что тупым жЫдам нужно не качество кода, а маркетинг и деньги, деньги...

Date: 2007-11-16 05:28 pm (UTC)
From: [identity profile] sergiej.livejournal.com
А что первый пример не работает? Работает медленнее? Создаёт проблемы?

Date: 2007-11-16 05:46 pm (UTC)
From: [identity profile] kong-en-ge.livejournal.com
Я бы сказал, что он более громоздкий в записи и -- соответственно -- отвлекает от сути.

Date: 2007-11-16 05:56 pm (UTC)
From: [identity profile] sergiej.livejournal.com
Уж так ли сильно отвлекает? Код нормальный, если результат работы и производительность абсолютно идентичны (а мне кажется в этом случае оно так и есть) то красота самого кода дело десятое, людям надо работать а не красоту ваять.

Date: 2007-11-16 06:04 pm (UTC)
From: [identity profile] kong-en-ge.livejournal.com
Лично у меня код, написанный по принципу "работает и ладно", раздражает. Ибо такой код -- первый признак разрухи в голове, которая непременно вылезет еще где-нибудь.

Date: 2007-11-16 06:23 pm (UTC)
From: [identity profile] sergiej.livejournal.com
Меня он тоже немного раздражает, но раз он работает ничуть не хуже кода который меня не раздражает я не придираюсь, если кто будет делать аудит этого кода он может отметить что можно было красивее. Но неужели у вас так мало проблем с банально НЕРАБОТАЮЩИМ правильно кодом, чтобы придираться к таким мелочам?

Date: 2007-11-16 06:27 pm (UTC)
From: [identity profile] vp.livejournal.com
Это не мелочи. Уже ж ответили: это признак бардака в голове и низкой квалификации. Нам нраивится, что будут говорить, что "ваша система писана на коленках студентами-идиотами" ? :)

Date: 2007-11-16 06:36 pm (UTC)
From: [identity profile] sergiej.livejournal.com
У вас явный избыток хороших кадров, только позавидовать. Вы перфекционисты, я этих майкрософтов особо не знаю, но на фоне "средней" которую я постоянно наблюдаю у наших восточных коллег, этот код http://progtutorials.tripod.com/soapext.htm выглядит вполне прилично.
Никто никому не будет говорить что система написана студентами идиотами, клиента этот код абсолютно не волнует, его волнует его работоспособность и цвета на кнопочках в гуёвине.

Date: 2007-11-16 06:38 pm (UTC)
From: [identity profile] kong-en-ge.livejournal.com
Вопрос не в волнениях клиента, а в себестоимости сопровождения.

Date: 2007-11-16 06:50 pm (UTC)
From: [identity profile] sergiej.livejournal.com
Специфики вашей я не знаю, у нас клиент платит за сопровождение, чем сложнее саппорт тем лучше финансовый результат :)

Date: 2007-11-16 06:58 pm (UTC)
From: [identity profile] kong-en-ge.livejournal.com
Я говорил именно про себестоимость, а не про надувание щек и стоимости услуг перед заказчиком.

Date: 2007-11-16 06:37 pm (UTC)
From: [identity profile] kong-en-ge.livejournal.com
Я считаю, что применение нестандартных приемов должно быть внятно мотивировано комментарием в коде. Просто чтобы после не задаваться как [livejournal.com profile] metaclass вопросами: "а с каких хуев нужно было писать именно так?!"

Date: 2007-11-16 06:45 pm (UTC)
From: [identity profile] sergiej.livejournal.com
А если это обоснованный "хак" то тут мы попадаем в область за которую наших восточных коллег убивать мало. Привычное дело что комменты стоят о полных глупостях которые комментировать никому не надо, зато если этот нестандартный кусочек найден потом и кровью, и никому не понятно с ходу зачем оно так, то никакого коммента стоять не будет, потому что восточные коллеги очень ревностно относятся к своему ноухау (может потому что оно у них короткое) и его принято прятать а не выставлять и всем подряд объяснять.

Date: 2007-11-16 06:58 pm (UTC)
From: [identity profile] nvm.livejournal.com
да это не хак, это вполне внятная строчка. Из неё ясно, что по каким-то личным причинам автор кода хотел убедиться, что message имеет тип именно SoapServerMessage, а не какого-то его наследника. Другой вопрос, зачем оно ему понабобилось, тут без контекста не разберёшься.

Date: 2007-11-16 08:45 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Проблема потенциальная - такой код может сломаться, если кто-нибудь унаследуется от SoapServerMessage и впихнет экземпляр наследника при посылке. Мне такая практика кажется вполне легитимной. Второй вариант так же читабельнее.
И вообще, если автор кода хочет знать, что это именно тот класс что он хочет, а не его наследник - у автора очевидные змеи в голове, ибо это нарушение ООП, согласно канонам которого, наследники должно быть можно подсовывать всюду, где нужны базовые классы.

Date: 2007-11-16 08:29 pm (UTC)
From: [identity profile] ktn-zoidberg.livejournal.com
скорей всего код таки спортирован с какогонить VB

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 6th, 2025 12:26 am
Powered by Dreamwidth Studios