Название: Кроссплатформенность Отправлено: SergeyVslnko от Июль 15, 2014, 13:11 Здравствуйте, люди добрые!
Недавно я впервые поработал в Qt (пришлось видоизменять проект под win64), возник такой вопрос: в чём заключается кроссплатформенность Qt? Не переводит же он в байт-код как Java. Я скачал Qt 5.3.1 for Windows 32-bit (VS 2010) оф.сайта, но там были и Qt 5.3.1 for Android,Qt 5.3.1 for Linux 32-bit и Qt 5.3.1 for Mac. Значит ли это, что для того чтобы вести разработку под другие платфомы мне нужно скачать другую среду и в ней скомпилировать код заново? Или же в моей первой установленной нужно указать целевую архитектуру? Например если я захочу собрать проект под android? Разъясните пожалуйста! Название: Re: Кроссплатформенность Отправлено: kambala от Июль 15, 2014, 13:18 можно из одного кода собирать на разных платформах.
если ты хочешь из одной ОС собирать сразу под другие, то нужен кросс-компилятор. Название: Re: Кроссплатформенность Отправлено: SergeyVslnko от Июль 15, 2014, 13:54 можно из одного кода собирать на разных платформах. если ты хочешь из одной ОС собирать сразу под другие, то нужен кросс-компилятор. kambala, вопрос в догонку: а windows классы (MFC например) не могут быть скомпилированы под другую ОС, даже кросс-компиляторами? Если так, то в библиотеках Qt предусмотрена реализация методов Qt классов под разные ОС? Т.е. в этом преимущество Qt? В этом и заключается кроссплатформенность? Но всё же это не байт-код, и скомпилированное приложение под одну ОС, только на ней и запуститься? Название: Re: Кроссплатформенность Отправлено: kuzulis от Июль 15, 2014, 14:07 2SergeyVslnko,
Не, ну это несерьезно, ты хоть бы почитал Вики (http://ru.wikipedia.org/wiki/Qt), погуглил прежде чем спрашивать такое. Название: Re: Кроссплатформенность Отправлено: SergeyVslnko от Июль 15, 2014, 14:20 2SergeyVslnko, Я уточнить хотелНе, ну это несерьезно, ты хоть бы почитал Вики (http://ru.wikipedia.org/wiki/Qt), погуглил прежде чем спрашивать такое. Название: Re: Кроссплатформенность Отправлено: Bepec от Июль 15, 2014, 14:54 Да, скомпилированное под одну платформу на ней и запуститься.
Кроссплатформенность - это единообразие кода для всех платформ. Т.е. вы можете написать хелло ворлд и скомпилировать его на любую доступную платформу с использованием сборок. И ничего менять не придётся. Это не Java. Это C++ и потому он в разы быстрее и имеет больше возможностей благодаря как раз компиляции :) Название: Re: Кроссплатформенность Отправлено: kambala от Июль 15, 2014, 18:31 компиляция идет в нативный код ОС, поэтому приложение запускается только на ней
Название: Re: Кроссплатформенность Отправлено: Alex Custov от Июль 15, 2014, 18:34 Это C++ и потому он в разы быстрее да ладно, прямо в разы? Интересно бы было посмотреть тесты современных компиляторов и JVM. и имеет больше возможностей например? Название: Re: Кроссплатформенность Отправлено: Bepec от Июль 15, 2014, 18:44 Быстрее в разы - это уж не обессудьте, простой пример - сервер игровой на С++ поддерживает 15-25к пользователей. На Java предел 5к. Выше 5к - умирает к чертям :D
Например я могу выстрелить себе в ногу и намусорить :D Название: Re: Кроссплатформенность Отправлено: Old от Июль 15, 2014, 19:06 Быстрее в разы - это уж не обессудьте, простой пример - сервер игровой на С++ поддерживает 15-25к пользователей. На Java предел 5к. Выше 5к - умирает к чертям :D Это не пример. Можно и на c++ написать такой сервер, который умрет и на 1000 клиентах, а можно на java написать такой, что и 25000 выдержит.Не стоит надеяться, что если пишешь на плюсах, то код сам собой всегда будет быстрее, это заблуждение. Например я могу выстрелить себе в ногу и намусорить :D На любом языке программирования можно выстрелить себе в ногу, в той или иной степени. Я не спец в яве, но там таких вариантов не меньше, чем в c++.Название: Re: Кроссплатформенность Отправлено: Igors от Июль 15, 2014, 20:20 Кроссплатформенность - это .. Это довольно широкое понятие которое можно трактовать по-разному :)Это не Java. Это C++ и потому он в разы быстрее и имеет больше возможностей благодаря как раз компиляции :) Ну что Вы опять самозабвенно заливаете :) Не надо, по скорости жаба "вполне", уступает немного, никаких разов нет.Что касается "розовой мячты" нажать раз на бубочку и получить результат для всех платформ - ну так если сказано "плюсы", то о байт-коде речь не идет. Есть IDE компилирующие и под др платформу(ы), но мое мнение - не стоит оно того, "не родное" Название: Re: Кроссплатформенность Отправлено: SergeyVslnko от Июль 16, 2014, 11:09 Всем спасибо за участие!
|