Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.73/22: Рейтинг темы: голосов - 22, средняя оценка - 4.73
2 / 2 / 2
Регистрация: 23.02.2012
Сообщений: 208

Пересесть с языков высокого уровня на С++

20.03.2014, 03:07. Показов 4944. Ответов 41
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, я ActionScript3 разработчик и в данный момент рассматриваю возможность пересесть на с++ для возможности вести разработку под платформы написанные на этом языке. Я слышал, что с++ неимоверно сложный язык и его нормально не освоить даже за 10 лет. А если планируется использовать его для прикладного программирования несложной бизнес логики? Может и не так страшен черт как его малюют?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.03.2014, 03:07
Ответы с готовыми решениями:

Сравнение производительности ассемблера и языков высокого уровня
Мне задали написать программу сортировки массива из 30000 элементов (размером в слово) пузырьком на ассемблере и языке высокого уровня....

Макроязык для эмуляции языков высокого уровня.
День добрый всем! Ассемблер позволяет писать максимально компактный и быстрый код, с другой стороны, программа написанная на Си...

Книги, где была показана связь от процессов на уровне электроники до языков программирования высокого уровня?
Доброго времени суток! Посоветуйте, пожалуйста, книги, где была показана связь от процессов на уровне электроники до языков...

41
2 / 2 / 2
Регистрация: 23.02.2012
Сообщений: 208
23.03.2014, 04:20  [ТС]
Студворк — интернет-сервис помощи студентам
Господа, речь идет не о написании графического движка или разработке приложения на голом месте. Под "прикладным" программированием имелось в виду создания бизнес логики, Методы, свойства, классы и интерфейсы - вот и все, что мной использовалось в AS3 для определения, что приложение должно делать.За ввод/вывод и, вообще, обеспечение банкета, отвечала Flash платформа. Поэтому напрямую взаимодействовать с чем то вроде WinAPi и DirectX я не планирую.
0
 Аватар для Izual
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
23.03.2014, 12:34
Цитата Сообщение от PlutDem Посмотреть сообщение
речь идет не о написании графического движка
Но вы с этим столкнётесь как ни крути. Но мы говорим о более глубоких вещях - самой сути.(так сказать ищем истину)
Цитата Сообщение от PlutDem Посмотреть сообщение
разработке приложения на голом месте
Нет не на голом, раздел С++, мы тут обсуждаем по большей части именно С++ и его usebility.(даже не смотря что мы отклоняемся к философии - но она как была основана на С++, так и выйдет к нему опять, да и в каждом посте именно о С++ вы найдёте философию)
Цитата Сообщение от PlutDem Посмотреть сообщение
имелось в виду создания бизнес логики, Методы, свойства, классы и интерфейсы
Ну значит мы более чем попали в суть темы(даже не зная об этом, говорю за себя).
Цитата Сообщение от PlutDem Посмотреть сообщение
взаимодействовать с чем то вроде WinAPi
Т.е. графической оболочки не будет? Вы что консольное приложение будете писать?

Вернусь к собеседнику)
Цитата Сообщение от DrOffset Посмотреть сообщение
DirectX в WINE в Linux реализуется через OpenGL
Пусть так, я надеюсь что базовые принципы он всё таки реализует(например использование видео или оперативной памяти и других флагов).
Цитата Сообщение от DrOffset Посмотреть сообщение
DirectX существует нормально только под win
Ну значит я не ошибся начав программить в WinApi =)
Цитата Сообщение от DrOffset Посмотреть сообщение
под OS X - есть WINE
Опа, вот это здорово! Тогда вообще про кроссплатформенность забуду.(только лишь частично, т.к. думаю что чрезмерное использование С++ методов всё таки может быть пагубным, как называется "а вдруг", так что Си стандарты как ни крути лучший выбор, но плюсы конешно функционалом расширют и упростят многое, чтоб ну уж совсем термоядерный велосипед не делать)
Цитата Сообщение от DrOffset Посмотреть сообщение
было сделано намеренно
Правильно, многие имеют слабые компы, а игра такого масштаба как minecraft всё таки ресурсоёмкая(Очень!), и не потянула бы большинство слабого железа. Даже при сокращении в половину квадратов в mincecraft думаю что даже сильные компы в некоторых местах очень сильно виснули бы.

Добавлено через 1 минуту
Цитата Сообщение от DrOffset Посмотреть сообщение
Давай пруф что-ли
Далеко ходить не буду, последняя моя тема: (4-ый пост, фраза "опаснее")
Можно ли заменить обращение к Union без указания типа переменной?
0
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
23.03.2014, 13:49
Цитата Сообщение от Izual Посмотреть сообщение
Далеко ходить не буду, последняя моя тема: (4-ый пост, фраза "опаснее")
Ну это не в тему. Он сделал макетный пример, в котором отсутствуют необходимые проверки. Фраза "опаснее" означала, что шаблон позволит приводить данные в union к тому типу, которого там вообще нет. Если такие проверки добавить, то пример станет не только безопаснее, то и более приятным в использовании. Да и при чем тут union, когда речь шла про vector?
0
 Аватар для Izual
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
23.03.2014, 14:40

Не по теме:

Цитата Сообщение от DrOffset Посмотреть сообщение
Да и при чем тут union, когда речь шла про vector?
Ну так он же реализовал классами(и как я понимаю вектором), union тут не причём, суть в способе реализации, способ через структуры(коим я воспользуюсь) или же через классы и векторы(о котором и была речь). Может кстати мы уйдём в ту тему, дабы не наводить тут безпорядок(ну по его мнению), а то автор уже своё недовольство высказал, не будем нагнитать обстановку =)



Автор темы, ты кстати странной сравниваеш языки и методы, говоря о связи AS3 и flash, но не отрицая что как ни крути тебе всё равно придётся так же под С++ искать стыковочный узел для формы.(и методы стыковки, а тут уже надо понимать суть чтоб выбрать из того что есть)
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
24.03.2014, 11:08
Цитата Сообщение от Izual Посмотреть сообщение
Т.е. графической оболочки не будет? Вы что консольное приложение будете писать?
Службы, сетевые сервисы не являются консольными программами.

Цитата Сообщение от Izual Посмотреть сообщение
Правильно, многие имеют слабые компы, а игра такого масштаба как minecraft всё таки ресурсоёмкая(Очень!)
minecraft тормозит потому что написан на Java. Старый добрый Unreal Tournament 3 нормально шел на Intel Pentium 4.
0
 Аватар для Izual
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
24.03.2014, 12:01
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Службы, сетевые сервисы не являются консольными программами.
В смысле не являются? Т.е. exe файла на выходе нет?.. А как тогда? оО
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
24.03.2014, 13:50
Цитата Сообщение от Izual Посмотреть сообщение
В смысле не являются? Т.е. exe файла на выходе нет?.. А как тогда? оО
Не все то золото, что блестит. Наличие .exe ни о чем не говорит.
Консольные приложения это как правило приложения с текстовым пользовательским интерфейсом.
Службы и серверы после запуска отвязываются от консоли.
В MS даже отдельный шаблон предусмотрен на ровне с (С/G)UI программой.
0
 Аватар для Izual
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
24.03.2014, 14:03
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Службы и серверы после запуска отвязываются от консоли.
Как они могут отвязаться? Ведь разве не командная строка выполняет операции (обращения и т.п. команды). Ну либо, может суть - запустилась программа, запустила поток - поток будет работать, а экзешник гасится?

Добавлено через 1 минуту
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
minecraft тормозит потому что написан на Java
А почему же джаву выбрали? Типа переход к Win8?(он же вроде на джаве?) И почему не Си?..
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
24.03.2014, 15:35
Цитата Сообщение от Izual Посмотреть сообщение
Как они могут отвязаться?
В Unix системах есть понятие демонизация(работа в фоновом режиме), аналогичная возможность есть и в Windows.

Цитата Сообщение от Izual Посмотреть сообщение
запустила поток - поток будет работать, а экзешник гасится
Это невозможно. Поток не может выполнятся без процесса.

Цитата Сообщение от Izual Посмотреть сообщение
Ведь разве не командная строка выполняет операции (обращения и т.п. команды).
Любая программа может выполнить любую другую программу без использования коммандной строки.
Цитата Сообщение от Izual Посмотреть сообщение
А почему же джаву выбрали?
Что лучше знают, то и используют.
0
2 / 2 / 2
Регистрация: 23.02.2012
Сообщений: 208
30.03.2014, 02:14  [ТС]
Для внесения большей ясности, приведу в пример книгу C# 5.0 Pocket Reference. В ней описывается лишь сам C# без привязки к .NET или какой либо другой платформе. Благодаря этому удалось сократить объем материала с обычных, для подобных книг, с 1100 до 220 страниц. Подобных знаний хватит только для написания консольного приложения и бизнес-логики для него, но это именно то, что я и имел в виду. После этого нужно будет лишь изучить API платформы на которую будем ориентироваться, MONO, .NET или еще что.
0
 Аватар для Izual
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
30.03.2014, 02:45
Цитата Сообщение от PlutDem Посмотреть сообщение
Подобных знаний хватит только для написания консольного приложения
Ну так купите книгу "С/С++ в задачах и примерах"(небольшая беленькая, её во всех вузах-колледжах спользуют как стартап для изучения азов, автор: Н.Культин). И читайте себе на здоровье, или другие подобные небольшие.
Цитата Сообщение от PlutDem Посмотреть сообщение
После этого нужно будет лишь изучить API
Лишь? Именно в этих платформах и будет собака зарыта, т.к. объём материала для библиотек, например WinApi довольно таки внушительный. Либо как вариант, ну чисто по своему опыту в WinApi - юзать winuser.h файл для поиска нужных WinApi функций. По поводу .NET ничего сказать не могу, как и других библиотек, т.к. дел не имел(только WinAPi и DX), да и безсмысленно, т.к. WinApi оболочка рулит и разруливает(как по мне так это эталон синтаксиса - очень удобно, не зря тысячи сотрудников работало над ней. Да и многие программисты даже опытные говорят что WinApi очень красив. Но WinApi это низкий уровень, а .NET это уже как вектор - т.е. типа шаблона, как по мне так шаблоны в топку, лучше самому кодом написать всё что нужно - удобнее и изучать и исправлять если что.
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
30.03.2014, 12:13
Цитата Сообщение от PlutDem Посмотреть сообщение
Подобных знаний хватит только для написания консольного приложения
Для этого потребуются классы ввода/вывода, а это значит использование .Net.
Цитата Сообщение от PlutDem Посмотреть сообщение
После этого нужно будет лишь изучить API платформы на которую будем ориентироваться, MONO, .NET или еще что.
Mono это реализация .Net, а значит API у них одинаково.
Цитата Сообщение от Izual Посмотреть сообщение
Лишь? Именно в этих платформах и будет собака зарыта, т.к. объём материала для библиотек, например WinApi довольно таки внушительный. Либо как вариант, ну чисто по своему опыту в WinApi - юзать winuser.h файл для поиска нужных WinApi функций.
В 99 случаях из 100, хватает знаний какого нибудь кроссплатформенного фреймворка того же Qt.
0
 Аватар для Izual
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
30.03.2014, 13:13
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
классы ввода/вывода, а это значит использование .Net.
cout/cin ? Зачем .Net ?
Это точно так же как "почему бы не использовать стандартные Си: fopen, fgets" функции вместо тех которые предлагает С++.(стандарт Си остаётся, а вот переносимость С++ функций под сомнением)
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
30.03.2014, 17:50
Цитата Сообщение от Izual Посмотреть сообщение
cout/cin ? Зачем .Net ?
.Net для C# тоже самое что и стандартная библиотека в C++, а cout/cin стандартная библиотека C++.
Точно так же стандартная библиотека Java, включает куда больше полезных классов.

Цитата Сообщение от Izual Посмотреть сообщение
стандарт Си остаётся, а вот переносимость С++ функций под сомнением
Вот только компиляторы MS поддерживают стандарт лучше C++, нежели Си.
0
 Аватар для Izual
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
30.03.2014, 19:43
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
.Net для C#
Ясно

Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Java
Только недавно был комент, что МайнКрафт "галимый" получился из за джавы, как большого потребителя формы. А winapi сами вызовы и начинка..

Цитата Сообщение от Dmitriy_M Посмотреть сообщение
стандарт лучше C++
Векторы - Нет. А стандарты изменений функций(например NEW, DEL[]) конешно можно использовать, конверт думаю тоже можно(из С)..
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
30.03.2014, 20:48
Цитата Сообщение от Izual Посмотреть сообщение
Ясно
Вот и ссылку нашел Base Class Library

Я не говорил, что МайнКрафт "галимый", я говорил что тот тормозит из-за Java на слабеньких машинах.
Почему веб-приложения на мобильных платформах работают медленно там можно почитать про сборщика мусора и как он влияет на производительность.
0
127 / 131 / 11
Регистрация: 25.12.2011
Сообщений: 443
05.04.2014, 17:32
Цитата Сообщение от DrOffset Посмотреть сообщение
Как подтверждение этого я привел в пример серьезную многоплатформенность этой игры.
А какая там "серьезная многоплатформенность"? Для десктопа на тормозной Java написана, а для XBOX и моиблок уже на C++ пришлось переписывать с нуля фактически.
0
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
05.04.2014, 18:05
Цитата Сообщение от kamre Посмотреть сообщение
А какая там "серьезная многоплатформенность"?
Контекст разговора был другим. Речь шла о том стоит ли писать свои велосипеды или использовать готовые подходы. На примере майнкрафта. То, что многие подходы являются компромиссными - не для кого не секрет. И получив в короткий срок многоплатформенный продукт, он заплатил скоростью. Насчет того, что портирование на консоли осуществляла уже даже другая контора, я в курсе. Но опять же в контексте разговора это не играет роли.
Не надо выдирать из контекста фразы.
0
 Аватар для Izual
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
05.04.2014, 19:05
Цитата Сообщение от DrOffset Посмотреть сообщение
Контекст разговора был
Так же обсуждалась золотая середина, так что в принципе в тему, т.к. поясняет что нафиг эта джава не нужна и полная кроссплатформенность.
Раз так, тогда какие могут быть действия для создания хотя бы частично кроссплатформенного приложения или хотя бы основного кода просчётов. Ведь по сути различия между платформами наверно будут только в некоторых методах вывода графики... Остальное же должно быть одинаковым, или нет?..
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
05.04.2014, 19:14
Цитата Сообщение от DrOffset Посмотреть сообщение
И получив в короткий срок многоплатформенный продукт, он заплатил скоростью.
Причем тут многоплатформенность? Готовых кроссплатформенных фреймворков/движков для игр вагон и маленькая тележка.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.04.2014, 19:14

Компилируемый язык высокого уровня
Если не там оставил тему, перенесите куда нужно, не нашел более подходящего места. В общем, нужен язык, компилируемый в машинный код, но...

Программирование на языках высокого уровня
Здравствуйте,уважаемые форумчане, подскажите как решить такую проблему в visual basic?Условия: В матрице произвольной размерности...

Ищу Програмиста Высокого уровня!
Нужен Хороший Программист! Необходимо Создание нескольких програм связанные с социальными сетями! + api (twitter, pinterest, facebook) ...

Связь ассемблера с языками высокого уровня (C/C++/Pascal)
Обьясните или покажите на примерах, как делать связи: С++ + асм, асм+асм, паскаль+асм Спасибо.

Создать программу на языке высокого уровня
Само задание Условие Построить стягивающее дерево неориентированного графа S методом поиска в ширину и вывести список ребер...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи. Через несколько переработок от PHP кода к C89 (надеюсь, 89). Но довольно запутанно получилось. Код для Linux. Но если убрать time и то, что с ним. . .
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы Всем привет! Хочу поделиться свежим (и довольно. . .
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения: - добавлена многоязычность - добавлено снятие скриншотов - добавлено поддержание бафов хождения по воде (для жреца, дк и шамана) - и так, по. . .
Алиса нашла кучу ошибок компиляции и запуска в проекте, который без проблем компилировался и запускался)))
anaschu 30.06.2026
Я пока посмеюся, но завтра проверю. А вообще интерсно. Дал алисе файл, в котором точно нет ошибок компиляции и запуска, и попросил их найти. Нашла кучу))) Критические ошибки, мешающие компиляции и. . .
сукцессия 16. Общий обзор, в основном что бы другие ии поняли
anaschu 29.06.2026
# Передаточный документ: модель микоризной сукцессии (для нового чата) Этот документ предназначен для того, чтобы новый чат Claude мог продолжить работу без необходимости заново разбираться в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru