Тяжела и неказиста жизнь простого программиста (Developers Life)

Discussion in 'Off Topic' started by -rust-, May 11, 2013.

  1. -rust-

    -rust- Well-Known Member

    Joined:
    Jan 23, 2000
    Messages:
    5,291
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    Да в МС все ебанутые. Что CTO, что CEO, что программисты и архитекторы.
    Одна только идея взять wchar_t, выдать его за Unicode и сделать две копии API, одни функции заканичивающиеся на A а другие на W что стоит...
     
  2. LostCluster

    LostCluster Well-Known Member

    Joined:
    Jan 24, 2002
    Messages:
    12,448
    Location:
    Russia
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    Индусский код? :)
     
  3. volex-

    volex- Well-Known Member

    Joined:
    Oct 15, 2003
    Messages:
    3,231
    Location:
    Russia
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    Разверни плиз, а то критикуешь мелкософтовскую реализацию юникода уже не первый раз (в сравнении с чем?), а суть претензий я так и не понял, знаний не хватает видимо.
     
  4. rgreat

    rgreat FH Developer

    Joined:
    Jul 19, 2000
    Messages:
    42,533
    Location:
    Russia
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    Maybe тоска по 4х байтовому char-у и оверлоаду?
     
  5. -rust-

    -rust- Well-Known Member

    Joined:
    Jan 23, 2000
    Messages:
    5,291
  6. -rust-

    -rust- Well-Known Member

    Joined:
    Jan 23, 2000
    Messages:
    5,291
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    Для начала - ознакомься хотя бы с этим (сорри, искать правильную статью на MSDN лениво, но и по выжимке все понятно).

    Микрософт пошли самым "гамачно-лыжно-противогазным" путем из всех возможных.
    Все остальное - это мелочи. Тот факт, что они взяли для кодирования символа wchar_t вместо int16_t/uint16_t это мелочь. Тот факт, что МС подход означает бесповоротный и ненужный стопроцентный оверхед это тоже мелочь в наше время.

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

    Главное в том, что они изначально зарубили себе возможность использования огромного пласта уже существующих библиотек на Си.

    Нормальный подход - это использование кодировок навроде UTF8. Когда весь пласт уже существующих библиотек/кода/протоколов/спецификаций вдруг совершенно чудесным образом просто работает со всеми возможными буквами всех возможных языков.
    Когда ты древней, как говно мамонта, функции
    Code:
    FILE *fopen(const char *restrict filename, const char *restrict mode
    скармливаешь имя, содержащее буквы русского и немецкого алфавита - и все прекрасно работает, как работало десятки лет назад с ASCIIZ строками.

    А вот мой пример из другой области API:
    Code:
    #ifdef WIN32
    void SetFileModifiedTime(const char* szFullName)
    {
        HANDLE hFile = CreateFile(
            szFullName,
            GENERIC_WRITE,
            FILE_SHARE_READ,
            NULL,
            OPEN_ALWAYS,
            FILE_WRITE_ATTRIBUTES,
            NULL);
    
        if (hFile != INVALID_HANDLE_VALUE)
        {
            FILETIME ftCreate, ftAccess, ftWrite;
    
            GetFileTime(hFile, &ftCreate, &ftAccess, &ftWrite);
    
            GetSystemTimeAsFileTime(&ftWrite);
            memcpy(&ftAccess, &ftWrite, sizeof(ftAccess));
    
            SetFileTime(hFile, &ftCreate, &ftAccess, &ftWrite);
            CloseHandle(hFile); 
        }
    }
    #else
    void SetFileModifiedTime(const char* szFullName)
    {
        utimes(szFullName, NULL);
    }
    #endif
     
  7. -rust-

    -rust- Well-Known Member

    Joined:
    Jan 23, 2000
    Messages:
    5,291
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    Вот оно, мышление в стиле микрософт :)
    Человек в принципе не представляет, что может быть без оверлода там, где он не нужен :)
     
  8. volex-

    volex- Well-Known Member

    Joined:
    Oct 15, 2003
    Messages:
    3,231
    Location:
    Russia
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    Повторное использование кода мешает извлечению прибыли:)

    Возможно я ошибаюсь, но с UTF-8 довольно плохо обстоит дело (обстояло?) не только у мелкософта, при том что поддержку юникода многие вводили позже, когда преимущества были очевидны.
    А вот использование utf-16 и utf-32 подобных встречается регулярно в невиндовс мире ИМХО.
     
  9. Ground

    Ground Well-Known Member

    Joined:
    Feb 26, 2001
    Messages:
    7,547
    Location:
    Home, Sweet Home
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    http://habrahabr.ru/post/179333/
    Но кажется мне что так в любой более-менее крупной конторке....
     
  10. hardy

    hardy Well-Known Member

    Joined:
    Sep 25, 2002
    Messages:
    16,608
    Location:
    Saratov, Russia
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    посоны уже поржали.
    хабр такой хабр.

     
  11. hardy

    hardy Well-Known Member

    Joined:
    Sep 25, 2002
    Messages:
    16,608
    Location:
    Saratov, Russia
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    Рустам, один простой вопрос :)

    вот все, что ты написал - это про какой API?
    Win32API? WinForms? WPF? .NET?
     
  12. Ground

    Ground Well-Known Member

    Joined:
    Feb 26, 2001
    Messages:
    7,547
    Location:
    Home, Sweet Home
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    о, похоже на майкрософтие головного моска.

    Впрочем, учитывая обилие эппла головного моска тут же - прям даже и не удивил. :D
     
  13. hardy

    hardy Well-Known Member

    Joined:
    Sep 25, 2002
    Messages:
    16,608
    Location:
    Saratov, Russia
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    по сути вопроса-то есть что сказать? или как обычно? :))
     
  14. Ground

    Ground Well-Known Member

    Joined:
    Feb 26, 2001
    Messages:
    7,547
    Location:
    Home, Sweet Home
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

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

    В моём посте кстати что-то про крупные конторы было, но оно для тебя вне сути так как это сложно с поцонами обгоготать.
     
  15. hardy

    hardy Well-Known Member

    Joined:
    Sep 25, 2002
    Messages:
    16,608
    Location:
    Saratov, Russia
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    аффтар - пеши исчо.

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

    rgreat FH Developer

    Joined:
    Jul 19, 2000
    Messages:
    42,533
    Location:
    Russia
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    Ты свои предпочтения не конкретизировал, а проблемы твои мимо меня в свое время прошли. Так что гадаю. ;)

    Как ты знаешь я вообще предпочитаю простой и сладкий массив однобайтовых символов 1251, а любые юникод конструкции у меня вызывают легкую душевную неприязнь.
    Будь то UTF-7/8/16/32 и любые их вариации... ;)
     
    Last edited: May 12, 2013
  17. -rust-

    -rust- Well-Known Member

    Joined:
    Jan 23, 2000
    Messages:
    5,291
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    Так в том то и вся прелесть UTF-8, что нету никаких проблем для "логики" софта.
    Все, что не связано с GUI (а конкретно с растеризацией шрифтов на экране) работает с UFT-8 строками так же, как работало с ASCIIZ.
    Большинство UNIX систем и самые популярные линуксы поддерживают UFT-8 давно и нативно - все, что им для этого потребовалось - это добавить unicode шрифты и методы ввода для разных языков. А программы переход на UFT-8 не заметили, и даже не подозревают о каких-то изменениях в кодировках. Вот взял ты, скажим, архиватор написаный в 70-е/80-е годы - он будет так же прекрасно работать с именами файлов в UFT-8 как работает с ASCII. Даже перекомпилировать не придеться.
     
  18. -rust-

    -rust- Well-Known Member

    Joined:
    Jan 23, 2000
    Messages:
    5,291
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    Прикладной API, тот, на котором пишут 75% программеров под Винду и 99% хомячков, считающих себя таковыми :)
    win32 и то, что вокруг него наверчено.
     
  19. -rust-

    -rust- Well-Known Member

    Joined:
    Jan 23, 2000
    Messages:
    5,291
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

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

    Как я понимаю - у тебя предпочтительный инструмент это Дельфи, а в паскалях/дельфях, AFAIC, всегда было заметное отставание от современных технологий - что переход на 32-битные ОС, что на 64-битные, что поддержка юникода - все запаздывало.
    Вот и привык ты к подходу Windows 3.11, где он был реально едиственно оправданым и разумным :)
     
  20. rgreat

    rgreat FH Developer

    Joined:
    Jul 19, 2000
    Messages:
    42,533
    Location:
    Russia
    Re: Ну что там с iOS, WinMo/WinPhone и андроидом?

    Не, ну это ты загнул. :)

    Я бы сказал что меня наоборот развратили mutable strings и широкий набор строковых функций и классов.
    Работать в Delphi с вообще любыми типами строк - не было проблемой с незапамятных времен.
    Более того - богатство функционала по работе со строками в дельфи выше чем в шарпе, не говоря уже о C/С++ и т.п. жавах.

    Пинать дельфи модно уже более 10 лет.
    Видимо последствия врожденного криворучия выпускников вузов того времени, когда их массово учили паскалю и дельфи.
    Базовый уровень генерации быдлокода, не умение работать с объектами без корявых костылей сборщика мусора и чрезмерное увлечение кривыми компонентами от таких же пейсателей.

    Чего я только на дельфях не писал, и что характерно все работает и работает хорошо.
    Для меня для клиентских Win приложений пока все другие языки менее эффективны.
    Разве что Шарп лучше годится для быстрописания серверного ПО, да и то только если системных ресурсов жопой ешь.
     
    Last edited: May 12, 2013