Как стать автором
Обновить

Комментарии 51

Есть ещё связка PHP/Qt, тоже можно использовать для простых целей.
Для мелких целей конечно сойдет, но когда задача выходит из рамок «учебной» и «демонстрационной» то намного практичнее вспомнить/выучить Delphi, C, C++, etc.
Хотя бы потому, что приложения на PHP уж очень прожорливые получаются.
ИМХО Delphi лучше тоже забыть если задача выходит за пределы студ. проекта. А лучше сразу — забыть.
Несмотря на то, что я в целом согласен, всеми любимый Total Commander написан в Delphi. Что, скорее, подтверждает высказывание, что в умелых руках и…
Согласен. Мой любимый плеер aimp, аналогично написан в Delphi. Лично моё мнение — удобней и лучше плеера я ещё не видел.
Причем вроде на 2-ой или 3-ей версии…
Согласен со всеми комментариями.Фраза была сказана не для холивара за или против Delphi.
Просто ставить его в один ряд с C, C++ — … моя душа не потерпела!!!
> Хотя бы потому, что приложения на PHP уж очень прожорливые получаются.
Но вряд ли прожорливей (и тормознее) приложений на Java. Даже без прекомпиляции.
Вы неправы, проверьте любой бенчмарк (к примеру blog.dhananjaynene.com/2008/07/performance-comparison-c-java-python-ruby-jython-jruby-groovy/)
Java в «общем» в разы быстрее php, конечно зависит всё от задачи. Но мало есть задач в которых php будет быстрее…
Java в GUI дико тормозит
В гуи тормозит не Java а отдельные программы и отдельные фреймворки, к примеру swing. Если их использовать и писать что-то более менее громоздкое, то да будет подтормаживать. Но вас никто не заставляет использовать тормозные фреймворки. Примеры — zend studio 5, netbeans 7… большие программы в котороых ничего не тормозит.
а можно содержимое файла «calc.glade» загнать в переменную и инициализировать интерфейс из нее?
Вот линукс в браузере это круто, а гуй на php — это вселенское зло. А почему?
Как по мне совсем не зло, если приложение небольшое и пишется не для enterprise сектора. Можете себе представить клиент для банка или электронную бухгалтерию написанную на PHP? Разработчики не очень развивают PHP в направлении разработки GUI приложений, поэтому библиотеки сыроваты да и документации(а тем более с примерами) не много.
Как по мне совсем не зло, если приложение не большое и написано не для enterprise сектора. Можете себе представить клиент банка или бухгалтерское приложение написанное на PHP? Разработчики не развивают PHP в сторону разработки GUI apps, поэтому библиотеки сыроваты да и документации(а тем более с примерами) не много.
Потому что gtk+ гуй на php был сделан лет пять назад, ничего принципиально нового в таком решении нет. Насколько я знаю, нет вообще ни одной программы сколь-нибудь известной, написанной таким образом. Что как бы показывает нам всю нужность php за пределами сообщества начинающих программистов.
Тоже пытался писать на PHP + GTK, но потом разобрался в PyGTK и понял, что это намного удобнее.
Вообще, 1 в 1, только именование функций в PHP си-подобное. Согласен на счёт PyGTK, ООП это круто
А, как написать ПОЛНОЭКРАННОЕ приложение на PHP с обработкой нажатий клавиш и перемещения мыши (в перспективе тач-скрина)?
Что вы понимаете под полноэкранным? Пример калькулятора из статьи тоже можно развернуть на весь экран, он обрабатывает перемещения мыши(можно нажимать на разные кнопки) и нажания клавиш клавиатуры(можно вводить текст в поле ввода). Многое зависит от целевой ОС. На iOS точно нельзя)
Полноэкранное приложение и окно, развернутое на весь экран — это две большие разницы если что.
Вообще здесь имеет смысл посмотреть как такие приложения разрабатываются под GTK. И может ли он вообще это. И если может, то можно сделать и через PHP-GTK
($secondParam > 0 ? $firstParam / $secondParam : 0);
а если я хочу разделить 10 на -5? :)
будет -2
Статья написана не для демонстрации PHP Дзы. Класс взят просто для примера. Думаю там можно много чего нарыть)
«Вы не должны этого хотеть» (с)
=)
В свое время пробовал SiteFusion http://habrahabr.ru/blogs/php/95499/ — по-моему лучшее что можно придумать для «окошечек». Единственное но: SiteFusion работает по клиент-серверной схеме.
Нужно использовать инструменты для того, для чего они создавались, PHP не создавался для разработки оконных приложений именно поэтому, как сказали раньше, это вселенское зло. Мы же не используем вилку для забивания гвоздей, хотя теоретически можно попробовать. Можете меня конечно заминусовать но как по мне это в высшей степени не профессионализм и быдлокодинг!
Задача статьи показать возможности языка и библиотеки, а не нести в мыссы мысль «Даешь больше ху… гуёвых PHP-приложух!»
я возможно не прав, но мне кажется, что именно такие статьи культивируют не правильное использование языка.
Не разделяю этих опасений: быдлокодер в статье просто не разберется, а хоть немножечко башковитый кодер и без того знает какие технологии для каких задач уместны.
Здравствуй, велосипедист!
Простите. Привет отряду велосипедистов!
gui… php… вещь немного странная, но иногда бывает нужно написать какую нить GUIёвину быстро и на 1-2 раза (да еще и для себя), не изучать же ради этого еще один язык
в общем спасибо за статью, давно собираюсь попробовать, но было ощущение что проект (и QT) заглох за ненадобностью =)
Года 2 назад писал мини GUI приложение на Perl, что еще более «странно». Тоже было весело первое время, потом перешел на C# и тоже самое сделал быстрее и красивее.
Надоели уже своим лозунгом PHP это «говнокод». Проблемный код появляется независимо от языка и использованных конструкций. Если язык со слабой типизацей позволяет писать такое мягкое «г», то язык с сильной типизацей делает это «г» жестче и проблемней. Не надо марать хороший язык. Некоторым (см фэйсбук) этот язык позволил быстро сколотить состояние, что ведет к мысли что качество опять же не зависит от языка.
P.S. PHP привел в программирование многих не специалистов. Если у них появится GUI в инструментах лишь усилит их интерес к программированию.
PHP это не говнокод. Просто подавляющее большинство PHP-кода — говнокод. Почему? Потому что в PHP обитает подавляющее большинство говнокодеров. Почему? Потому что быдло загорается идеей заработка в интернете и начинают смотреть всякие видео-курсы в которых дай бог синтаксис языка раскроют нормально, про алгоритмы я вовсе промолчу. Радует, что эти люди ничего не знают про GTK+, иначе уже гулял бы софт по интернету, с милой подписью «Для работы приложения требуется установленный php».
Думаю знают, на том же хакер-про-нет вроде фейки на php продавались.
Позволю себе перевести это на человеческий язык:

php — язык с низким порогом вхождения, в котором «обитает» много людей «со стороны», как следствие — непрофессионализм.
С другой стороны, это язык, который привлекает людей в ИТ. И это хорошо. А про быдло… зря вы это.

Начинайте минусовать.
Был на моей памяти подобный спор. Под конец оного в него включился человек примерно с таким вопросом:
«О, я погляжу тут много программистов. Подскажите, как хранить в памяти такую вот структуру данных?», далее он показывает данные, по структуре коии являются обыкновенным деревом, уровень вложенности конечно же неизвестен. Ему начали говорить о том, что надо реализовать обычное дерево и рекурсивно его заполнить. Привели пару ссылок на учебные материалы. На что он начал ругаться матом, говоря о том что ему, цитирую:
Нафиг не сдались все эти теории графов и прочие рекурсии, я вообще гуманитарий, не грузите плз! Покажите мне, как это кодом делается и я уйду!

Очевидно, что человек не понимает, даже нет, отказывается понимать элементарнейшие вещи, и просит сделать все за него. Тебе нужны такие люди в IT? Что-то я сомневаюсь. А ведь таких индивидов полным полно, и все как один кричат что они web-программисты. Программист не знающий что такое рекурсия. Спешите видеть.
«Такие люди» обеспечат меня работой.
А потом запускаем софтину и смотрим как течет. А PHP течет довольно не плохо. Одно не могу понять, почему нельзя использовать языки предназначенные для этого, не не можете на С++, сложная работа с памятью, возьмите .NET или Mono. Вместо того, чтобы изучать весь этот гибридинг PHP, с библиотеками оконных интерфейсов изучите .NET, довольно все просто, есть хорошие среды разработки, есть MonoDevelop, есть Visual Studio (Express). В чем проблема-то?

Что только люди не придумают, лишь бы мозгами не думать.
Смешно предлагать альтернативой к хреновенькой, но кроссплатформенной технологии прибитый гвоздями к винде и версии netfx дотнет.

Только не надо оправдываться и показывать на Mono. Вот когда хоть одно серьезное приложение будет запускаться и там, и там без модификации — тогда и поговорим. На PHP уже может ;)

Да и кроме венды и линукса есть еще Mac.
Зато не смешно предлагать некий костыль, к сильно текущему скриптовому языку, который еще надо дополнительно установить, опять же пошаманить, либо собрать пак, который будет весить совсем не мало. И далеко не факт, что без модификаций софт на пхп заработает на всех платформах. Ну и к примеру как вы на пхп будете работать кросс-платформенно с настройками для разных пользователей, вам пхп сокроет эту работу.

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

И если же вы считаете, что .NET прибит гворздями к винде, то могу лишь посочувствовать вам. Учитывая тот факт, что все больше и больше приложений делается на .NET и то что позволяет сэкономить очень много времени за счет мощного фреймворка и мощных инструментов разработки. То не думаю, что для серьезных приложений будет выбран PHP, который по сути ничего этого не имеет.
Вообще полная кросс-платформенность невозможна и чем больше сокрытия, тем больше вы ударитесь головой о стену непонимания, почему же не работает. Опять же будет заметно меньше возможностей по приведению этого в порядок.


И точно. Давайте все писать с нуля.

И если же вы считаете, что .NET прибит гворздями к винде, то могу лишь посочувствовать вам. Учитывая тот факт, что все больше и больше приложений делается на .NET


У вас тут логическая ошибка — 10 000 асечных клиентов под венду не делают технологию кроссплатформенной. И я, кстати, не сказал что .net — это плохо. Это хорошо, но не везде и не всегда, как и PHP. Но заменять одно другим — как-то совсем не вариант. Хотя-бы потому, что внятных технологий веб-разработки MS не предоставляет, IIS+ASP.NET давно и безвозвратно проиграли LAMP-подобным наборам.
Хм, я предложил писать с использованием машинного кода? С чего это надо писать с нуля? Не нужно кидаться из крайности в крайность.

Ну статья не про WEB, я согласен с тем, что у продуктов MS туго с Web частью, но здесь обсуждение идет все же про Desktop приложения.

Да и кстати, Mono на Mac себя чувствует совсем не плохо :)
PHP: Hypertext Preprocessor у меня один вопрос: зачем?
Может еще формы к приложениям начнем с помощью html ваять?
Да, формы к приложениям ваять с помощью HTML. К вашим услугам — PhoneGap, например.

Или с помощью XML. К вашим услугам — XUL и XAML.

Или подобием джаваскриптов. К вашим услугам — QML.
Почему-то PHP-GTK уже два года как не поддерживается создателями, хотя сам GTK развивается в ногу со временем.
а еще для GUI-поделок на PHP есть вот такая штука от отечественных разработчиков: develstudio.ru/downloads/ (PHP DevelStudio), судя по всему так как все это сделано на Delphi, в результате получаются win-only приложения все-в-одном
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории