BigDecimal
полностью. Я услышал о некоторых людях, создающих их собственное Cash
или Money
классы, которые инкапсулируют денежную стоимость с валютой, но под кожей это все еще BigDecimal
, вероятно, с BigDecimal.ROUND_HALF_EVEN
округление.
Редактирование: , Поскольку Дон упоминает в его ответ , существуют открытые полученные проекты как timeandmoney, и пока я хвалю их за попытку препятствовать тому, чтобы разработчики имели для изобретения велосипед, у меня просто нет достаточной уверенности в предальфа-библиотеке для использования его в продуктивной среде. Кроме того, если Вы выроете вокруг под капотом, то Вы будете видеть , они используют BigDecimal
также .
Вы говорите: «Помимо споров о том, является ли PHP хорошим языком в целом» - но я думаю, что в этом суть проблемы. PHP стал популярным как язык веб-разработки, потому что он хорошо интегрируется с существующим стеком веб-инструментов (встроенный HTML, хорошая интеграция с Apache, встроенная поддержка MySQL и т. Д.) - не , потому что он хорошо спроектирован язык, на котором легко работать. (Между прочим, это не так.)
Если вы уберете Интернет и используете PHP для разработки настольных компьютеров, что у вас останется? Слабо типизированный язык с непоследовательным набором функций, без поддержки пользовательских интерфейсов рабочего стола и ужасающей путаницей стандартной библиотеки. Люди не используют PHP таким образом, потому что это просто бессмысленно .
Does $language_under_consideration
do the job I want easier than $other_language
?
E.g., I've found php interfaces to mysql to be great for quickie DB work. I'd not want to write php for a GUI app on Windows though....
Установлена ли она по умолчанию на целевой платформе? Потому что, если это не так, то усыновление вызывает больше затруднений.
This sounds like a trite answer, but I think the reason most people don't use PHP as a desktop programming language is because people don't use PHP as a desktop programming language.
Meaning, there isn't a very strong community around GUI desktop applications using PHP - this will impact the tools a developer will have available, the resources he can go to for help, and for a company or commercial endeavour, the additional programmers that will have the skillsets necessary to work with a very niche set of tools.
Поскольку он полностью ориентирован на веб-программирование, и хотя в нем могут быть необходимые инструменты для настольного программирования, существуют и другие языки, которые гораздо более функциональны и эффективны для работы.
Лично Мне не нравятся многие языковые принципы, поэтому я использую их только тогда, когда меня заставляют.
Performance is my criteria on desktop software. But I believe that desktop softwares will die someday :)
PHP разработан специально для создания веб-приложений. Хотя с его помощью технически можно создавать настольные приложения, на самом деле вы шлифуете углы, чтобы квадратный стержень вставлялся в круглое отверстие.
Существует так много языков программирования, разработанных для настольных ПК, как цель, просто не имеет смысла пытаться внедрить PHP в мир, для которого он не предназначен.
Для перспективы: PHP - моя работа
PHP для настольных приложений:
Простота распространения из настольного приложения с производительностью веб-приложения.
Я большой сторонник использования PHP для быстрой разработки веб-приложений. Его легко освоить, у него есть огромное сообщество других пользователей, которые уже решили большинство проблем.
Однако, помимо того, что упомянули другие пользователи, вы также можете рассмотреть огромное количество уязвимостей, которые уже есть в PHP ( http : //www.securityfocus.com/vulnerabilities ).
Если бы некоторые из этих вещей были решены и, возможно, упакованы во что-то подобное тому, что мы видим с Adobe AIR, это могло бы стать хорошей основой для производства настольных приложений.
Я удивлен, что никто этого не сказал. Как веб-разработчик, я использую PHP только потому, что клиенты обычно этого просят. Они хотят развернуться на любом хостинге, который они могут найти, и все веб-хостинги имеют один общий знаменатель: PHP. Кроме того, мы делаем много кода в стиле спасательных миссий, где нам нужно исправить сайты, уже написанные на PHP. Честный разработчик не может с чистой совестью рекомендовать PHP в качестве платформы для серьезной веб-разработки. Я бы никогда не выбрал PHP для любого проекта, Интернета или рабочего стола. Python отлично подходит для настольных приложений. Он более динамичный, чем PHP, более разумный и более производительный.
Я не вижу разницы в использовании PHP для веб-приложений или настольных приложений, только разные библиотеки. Qt и GTK + доступны для PHP, и если кто-то потратил время на написание таких привязок, это значит больше, чем кто-то использует его для настольных компьютеров.
На мой взгляд, успех PHP в сети объясняется отсутствием действительных альтернатива: другими словами, PHP менее хуже. В мире настольных компьютеров ему не так повезло, и он должен конкурировать с более сильными соперниками ... Я лично выберу тонны других языков до PHP.
PHP - это новый Perl, если вы собираетесь использовать его как язык программирования вне веб-среды. Если я собираюсь писать приложения, мне нужна соответствующая среда для работы. Без сторонних приложений отладка php-программ может стать проблемой.