Что так хорошо о gettext для файлов языка?

Что относительно SCTP. Это - стандартный протокол IETF (RFC 4960)

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

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

Обновление: хорошая вводная статья .

8
задан JasonDavis 12 September 2009 в 17:29
поделиться

4 ответа

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

Еще одна хорошая вещь (может быть, следствие, или причина, или и то, и другое, на самом деле) - это то, что для редактирования файлов gettext существует несколько инструментов, например Poedit : вы не придется пройти через некоторый исходный код PHP (или что-то еще) . И это очень важно:

  • это означает, что нетехнические люди могут редактировать файлы локализации gettext.
    • возможно, сейчас это не кажется вам важным,
    • но если вы работаете над большим приложением с открытым исходным кодом, это станет важным, если оно будет успешным и многим людям оно понадобится на их родном языке.
  • это означает, что они не рискуют сломать приложение (подумайте о «ошибке синтаксического анализа» из-за несоответствия в кавычках, например ;-))
13
ответ дан 5 December 2019 в 06:54
поделиться

В вашей «реализации» есть несколько недостатков.

  • В отличие от gettext , он реализован в php . ; -)
  • Он сохраняет весь перевод в памяти независимо от того, используете вы его или нет
  • Что еще хуже,
6
ответ дан 5 December 2019 в 06:54
поделиться

Это тот же ответ, что и на все вопросы вида:

Что лучше с [хорошо доказано и широко используемое решение] чем с [моим дерзким дерзким нубом реализация]?

  • Он существует уже давно, хотите верьте, хотите нет, но если опытный разработчик работал над ним, использовал его и хвалил, то, вероятно, по какой-то причине.
  • Это стандарт, и даже если ваше решение будет лучше, цена, которую придется заплатить за его нарушение, может не окупиться.
  • Оно может сделать на 1000 больше, чем ваша реализация, потому что оно разработано с учетом глобального масштаба, тогда как ваша идея направлена ​​только на решение вашей проблемы.

Я не критикую, мы все делали это, пытаясь убедить себя, что мы умные, а другие - излишние программисты. Это часть пути к обучению. На самом деле я постоянно делаю это, изобретая велосипед или хвастаясь с друзьями / коллегами каким-то кодом KISS, который я взломал. Со временем вы будете делать это все реже и реже,

4
ответ дан 5 December 2019 в 06:54
поделиться

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

Сравните это:

printf(_("No photo available (error %d)."), err);

с этим:

printf(i18n(NO_PHOTO), err);
// or some variant of the same thing

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

.
1
ответ дан 5 December 2019 в 06:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: