Форум программистов, компьютерный форум CyberForum.ru

Что лучше использовать для низкоуровневого программирования? - C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
mr_free
 Аватар для mr_free
69 / 3 / 0
Регистрация: 08.08.2012
Сообщений: 223
Записей в блоге: 1
28.08.2012, 17:09     Что лучше использовать для низкоуровневого программирования? #1
Здравствуйте, задался я вопросом, а что лучше использовать для низкоуровневого программирования (работы со звуком и буфером), + еще написать интерфейс программы?!
Программа написана на С++ с использованием WinApi, но не устраивает объём программки.
Что лучше использовать лучше, необходимые факторы: быстродействие и вес.
Что лучше WinApi, Assembler, .Net Framework, Phyton? Или забыть об этом и написать интерфейс с MFC?
Но тогда она будет много весить!
Или можно просто написать с Qt и добиться кросплотформенности?
P.s. Из списка знаю чуть-чуть WinApi. Что лучше использовать в асме будет быстрее?
С помощью чего лучше создать интерфейс проги?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.08.2012, 17:09     Что лучше использовать для низкоуровневого программирования?
Посмотрите здесь:

C++ Что лучше использовать, матрицу или списки?
C++ Что лучше использовать vector или массив
C++ Какой язык программирования лучше использовать?
Что лучше использовать, #define или typedef? C++
C++ Что лучше использовать для работы со строками класс wstring или wchar_t напрямую?
Что лучше использовать? Шаг переменной dx C++
Что лучше использовать для свойств объекта? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Пaтрик
 Аватар для Пaтрик
394 / 387 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
28.08.2012, 17:19     Что лучше использовать для низкоуровневого программирования? #2
WinAPI: работать все будет быстро, но писать будите долго.
Assembler: вам жизни не хватит, что бы реализовать то что вы задумали.
.Net Framework: быстро весело, придется тянуть dotnet, и кроме винды нигде не запустите (ну еще mono)
Python: круто, быстро, медленно, в отличии от всего что компилируется.
MFC: шлак какой-то.
Qt: сплошь крутяки, кроссплатформенность, быстрота.
NoMasters
Псевдослучайный
1740 / 1083 / 70
Регистрация: 13.09.2011
Сообщений: 3,104
28.08.2012, 17:22     Что лучше использовать для низкоуровневого программирования? #3
Бэкенд на сях, фронтенд на чём удобней.
mr_free
 Аватар для mr_free
69 / 3 / 0
Регистрация: 08.08.2012
Сообщений: 223
Записей в блоге: 1
29.08.2012, 09:54  [ТС]     Что лучше использовать для низкоуровневого программирования? #4
Пaтрик, емкий ответ, но хотелось бы узнать что из этих трех вариантов лучше: Qt, WinApi, Python. А насчет фрамворка я знаю, просто никак не определюсь что лучше выйграш в скорости, но пройгреш в кросплотформенности или наоборот?! Или на Qt будет выйграш и в том и в том? И как Qt относиться к Winapi?
А то у меня вставки с Winapi?
Пaтрик
 Аватар для Пaтрик
394 / 387 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
29.08.2012, 10:20     Что лучше использовать для низкоуровневого программирования? #5
Qt - это и скорость и кроссплатформенность. Qt относится к WinAPI плохо, потому что теряется переносимость.
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
29.08.2012, 10:30     Что лучше использовать для низкоуровневого программирования? #6
Цитата Сообщение от Пaтрик Посмотреть сообщение
WinAPI: работать все будет быстро, но писать будите долго.
Assembler: вам жизни не хватит, что бы реализовать то что вы задумали.
.Net Framework: быстро весело, придется тянуть dotnet, и кроме винды нигде не запустите (ну еще mono)
Python: круто, быстро, медленно, в отличии от всего что компилируется.
MFC: шлак какой-то.
Qt: сплошь крутяки, кроссплатформенность, быстрота.
Это как? Оо
NoMasters
29.08.2012, 10:35
  #7

Не по теме:

Цитата Сообщение от nexen Посмотреть сообщение
Это как? Оо
Быстро тормозит, не то что ява

Пaтрик
 Аватар для Пaтрик
394 / 387 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
29.08.2012, 10:57     Что лучше использовать для низкоуровневого программирования? #8
Сори, быстро это относительно времени разработки.
mr_free
 Аватар для mr_free
69 / 3 / 0
Регистрация: 08.08.2012
Сообщений: 223
Записей в блоге: 1
29.08.2012, 11:38  [ТС]     Что лучше использовать для низкоуровневого программирования? #9
Хмм, тогда вопрос еще не закрыт! Каким же это чудом можно сделать на Qt без WinApi вставки?

Добавлено через 54 секунды
и в каком смысле переносимость? кросплатформенность?
Jupiter
Каратель
Эксперт C++
6545 / 3965 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
29.08.2012, 11:48     Что лучше использовать для низкоуровневого программирования? #10
Цитата Сообщение от mr_free Посмотреть сообщение
Каким же это чудом можно сделать на Qt без WinApi вставки?
что сделать?

Добавлено через 2 минуты
Цитата Сообщение от mr_free Посмотреть сообщение
и в каком смысле переносимость? кросплатформенность?
единый код для всех поддерживаемых платформ
mr_free
 Аватар для mr_free
69 / 3 / 0
Регистрация: 08.08.2012
Сообщений: 223
Записей в блоге: 1
29.08.2012, 12:51  [ТС]     Что лучше использовать для низкоуровневого программирования? #11
Jupiter, в самом начале я писал "работа со звуком и буфером". Так что выходит даже если я созданы проект на VS 2010 написаный на C++ с вставочками на WinApi, то кросплотформенности не будет?А в скорости выйграш будет?

Добавлено через 5 минут
Просто скажем так, сейчас все сделано средствами стандартной мультимедиа (winmm.dll), к формату, каналам и т.п. есть свои требования, данные из звуковой карты проходят оцифровку, потом записуються в буфер и выводят результат в файл. Какими средствами это можно реализовать в Qt, так что б и на винде работала нормально и на линуксе, сейчас понятное дело на линуксе она не пойдет.???
Пaтрик
 Аватар для Пaтрик
394 / 387 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
29.08.2012, 12:59     Что лучше использовать для низкоуровневого программирования? #12
Цитата Сообщение от mr_free Посмотреть сообщение
то кросплотформенности не будет?
нет, потому что ВинАПИ - это винда.

Цитата Сообщение от mr_free Посмотреть сообщение
А в скорости выйграш будет?
зависит от того как напишите.

Цитата Сообщение от mr_free Посмотреть сообщение
Какими средствами это можно реализовать в Qt
http://ru.wikipedia.org/wiki/Phonon

Цитата Сообщение от mr_free Посмотреть сообщение
сейчас понятное дело на линуксе она не пойдет.???
если дело понятное зачем спрашивать
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1238 / 987 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
29.08.2012, 13:00     Что лучше использовать для низкоуровневого программирования? #13
Цитата Сообщение от mr_free Посмотреть сообщение
Jupiter, в самом начале я писал "работа со звуком и буфером". Так что выходит даже если я созданы проект на VS 2010 написаный на C++ с вставочками на WinApi, то кросплотформенности не будет?А в скорости выйграш будет?

Добавлено через 5 минут
Просто скажем так, сейчас все сделано средствами стандартной мультимедиа (winmm.dll), к формату, каналам и т.п. есть свои требования, данные из звуковой карты проходят оцифровку, потом записуються в буфер и выводят результат в файл. Какими средствами это можно реализовать в Qt, так что б и на винде работала нормально и на линуксе, сейчас понятное дело на линуксе она не пойдет.???
Вы сейчас сказали примерно такое: «Я говорю по-русски. Как можно используя сленг физиков-ядерщиков сделать так, чтобы меня понимали нормально и в России, и на Ямайке». Чтобы там понимали, придётся говорить на местом наречии (читай: использовать приблуды Qt для этого всего; благо, они есть).

Естественно, зависимость от WinAPI и стандартных виндовых *.dll = прибито к Windows намертво. (Мертвецов можно заставить ходить, но вы в курсе, как часто они падают.)

Не по теме:

И, умоляю, выигрыш.

mr_free
 Аватар для mr_free
69 / 3 / 0
Регистрация: 08.08.2012
Сообщений: 223
Записей в блоге: 1
29.08.2012, 13:23  [ТС]     Что лучше использовать для низкоуровневого программирования? #14
Хорошо, хорошо, буду стремиться к правильности. Не много запутал фразу или много??!
Я хотел узнать каким прекрасным образом, можно написать приложение (выше описанное), которое работает со звуком и буфером, чтоб оно работало отлично и на Виндовс и на Линуксе? И стандартные медиабиблиотека что используються в Qt отсутствуют в Виндовс, а главное требование, это чтоб без всяких подгрузок программка работала?
Насколько я знаю, работу со звуком на С++ можно реализовать двумя путями Winmm.dll (winapi) or DirectSound, но с директом свои заморочки и далеко не факт, что будет работать на всех ПК. (без подгрузки).
Так-что меня волнует, как написать так, что б работала на Винде?
Никогда не видел, что б прога специально написанная под Линукс работала и на Виндувс, это как небо и земля.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.08.2012, 14:22     Что лучше использовать для низкоуровневого программирования?
Еще ссылки по теме:

C++ Что лучше использовать: псевдокод или блок-схемы?
C++ Что и в каких случаях лучше использовать: cerr, clog, cout ?
C++ vs C#. Что лучше использовать для поставленных задач? C++
Что лучше использовать: string или char[]? C++
C++ Что лучше использовать для строк? Массив char или же string?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1238 / 987 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
29.08.2012, 14:22     Что лучше использовать для низкоуровневого программирования? #15
Использовать библиотеки Qt и тащить dll-ки Qt вместе с программой. Не бойтесь тащить нужные dll-ки с программой. Для звука есть модуль QtMultimedia, для буфера... ну, смотря, что за буфер; если буфер обмена, то есть класс QClipboard.

В крайнем случае, если религия совершенно напрочь запрещает тащить dll-ки, можно с помощью такой-то матери прилинковать всё нужное статически (получить *.exe в пару десятков мегабайт).

Если вас волнует размер... ну перепишите только интерфейс на Qt/.NET/чём угодно, а всю работу со звуком так и оставьте под WinAPI, раз она уже написана, потом просто прикрутив её как мозги к интерфейсу.

Если же работу со звуком тоже надо переносить из Винды, то тут или писать с помощью %frameworkname%, который попрячет всё ОС-специфичное, и один и тот же код будет компилироваться и под Windows и под Linux. Или писать руками две библиотеки: одна с WinAPI для Винды, другая под... стопицот различных звуковых подсистем Linux.
Yandex
Объявления
29.08.2012, 14:22     Что лучше использовать для низкоуровневого программирования?
Ответ Создать тему
Опции темы

Текущее время: 20:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru