Предлагаю зажечь небольшой холиварчик. Представьте себе, что нужно разработать новый веб-проект. Будете ли вы его делать на CP1251 или на юникоде? Прошу в комментариях высказывать мнение. Крайне желательна обстоятельная аргументация.
Что касается моего мнения – я однозначно за UTF8. На моей практике был случай, когда клиент попросил разместить китайский текст на своём сайте, не поленился ведь поискать переводчика на китайский. А у него стояла старая CMS, работающая только на win1251. Мне пришлось только пожать плечами. Увы.
У кого-нибудь есть история в защиту 1251?
Или совет как на 1251 написать китайский текст?
Нет постов по теме.
RSS-подписка
Однозначно, UTF8 лучше. Зачем усложнять себе жизнь, работая с узконаправленной кодировкой (Win 1251 является кодировкой для всех русских версий Microsoft Windows)? Используя во всем сайте UTF8 нигде не нужно будет делать перекодировку. А с cp1251 можно будет ожидать неприятностей.
И даже, если кто-то найдет “плюсы”, в ответ можно будет привести сотню минусов которые подкреплены ПРАКТИКОЙ!
Не понимаю, к чему делать пост? Капитан Очевидность в негодовании…
Ну и где здесь холиварчик? Делать новый веб-проект в 1251 могут только чайники, которые не знают, что такое кодировки, но наслушались мифов десятилетней давности.
@ Дмитрий,@ Wave:
Прошу не бросать в меня ссаными тряпками. Я тоже так думал, пока не наткнулся на это http://ak-cms.ru/todo.html
Казалось бы новый проект.
Теперь моя вера в UTF8 в колебании.
Может я чего-то не понимаю? Надеюсь услышать хоть парочку аргументов в защиту 1251.
UPD: И да. У меня нет ощущения, что это чайники
UTF-8. Однозначно!
А всякие вконтактики рассчитаны на пользователей Windows и т.д., потому и работают с этой говнокодировкой.
Я вообще чайник и все такое, но Wordpress-блоги все на UTF-8, а их сейчас немалое множество. Что как бы само собой говорит в пользу этой кодировки.
Собственно, сам послушал более опытных друзей, посмотрел на количество блогов вордпресса, увидел, что некоторые новые крупные проекты тоже используют UTF-8, сам прикинул и тоже присоединился к тем, кто за УТФ. Новые проекты делаю теперь на ней.
UTF-8. Недавно даж с коллегой по этому поводу спорили.
При выборе кодировки есть несколько факторов влияющих на ее выбор:
1. Язык сайта
2. Разработчик движка
3. Хостинг
Учитывая их все и приходят к тому или иному выбору.
UTF8, чтобы различные XMLHttpRequest-ы не ругались
Несомненно utf8. Сколько в свое время было проблем из-за 1251, так что теперь мой выбор однозначен. Не работайте на китайцев, рунету нужны классные прогеры, не уходите от нас:)
qosys пишет:
хорошо подметил. пожалуй единственная объективная причина по которой я перешел на utf-8 как раз в этом, и наступило “это когда ajax стал плотно юзать.
а так никаких проблем нет, не надо раздувать того чего нету. все работает.
UTF-8 конечно же.
Детально и обоснованно об этом я постил на хабр, см. вот эту статью: Лучшая кодировка. UTF-8 vs cp1251
p.s.: На самом деле у меня самого большое кол-во проектов на cp1251, банально нету ни времени ни желания переводить их на utf-8
@ Nayjest, web-superman:
Ну да, речь шла о новых проектах. Тонны старых пусть работают, пока работают.
Спасибо за ссылку.
Холивар, похоже, не удался. Все современные разработчики предпочитают UTF8. Единственная проблема – всякие устарелые партнерки и прочие системы, которые сложней корректно вставить на страницу с UTF8. Но это – не повод и самому быть устарелым.
1251 лучше полюбой. UTF8 гадость
@ win1251fan:
Это-то как раз понятно. А кроме того что оно “гадость” аргументы есть?
Все-таки, чтобы все не было так ееединогласно, кину одну гадость. Никто не считал, во сколько раз медленнее обрабатывается utf-8, по сравнению с однобайтовой кодировкой? Многие думают, что раза в 2 (так примерно распухает кириллический текст). Все гораздо хуже – в десятки и сотни раз медленнее. Например, обработка регулярного выражения, в котором есть класс символов типа \w (буква). В однобайтовой кодировке это один-два такта + допускает параллельное вычисление, в utf-8 несколько десятков оперций сравнения.
Таблица преобразования в 1251 – это 256 байт, которые помещаются в кэш современного процессора, как горошина в стакане, а таблица преобразования для utf-8 вообще не существует в виде одной таблицы, это куча таблиц и соотв. условных переходов.
Есть еще масса моментов, связанных с ошибками сортировки, с невозможностью реализации многих алгоритмов поиска и т.д.
Все в восторге от одной общей кодировки, но не видят накладных расходов…((
Однозначно нельзя так написать “только utf или только win”.
Необходимо смотреть конкретный проект.
Бложики само собой лучше делать в utf. Мультиязычные проекты.
Совместимые с разными хостингами и настройками проекты лучше конечно держать в win-кодировке. Банальное использование strlen() на utf-строке выдаст некорректный результат при наличии неанглийских символов в строке.
Ключи в БД (mysql). Попробуйте сделать пару связанных табличек в utf-bin по миллиону записей, с ключом по char-полю и бомбить ее поиском LIKE и выборкой с LEFT JOIN, скажем, по 2-3 раза в секунду. utf-кодировка для mysql – зло в высоконагруженных проектах и прирост времени выполнения до 2 раз.
То, что много людей делают блоги на вордпрессе в утф говорит только о популярности этой кодировки и этой платформы. Но не в пользу – это просто факт и дань моде, что люди начинают использовать utf-8.
По поводу, как написать на cp1251 китайский текст, можно например так: またはログイン名
Отличный пример мультиязычности и cp1251 даст вам ВКонтакте, т.к. ВКонтакте ЦЕЛИКОМ в кодировке cp1251.