|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|
Быстрый старт в изучении C++ для относительно опытных программистов Basic18.04.2020, 16:11. Показов 14873. Ответов 253
Метки basic, c++, c++ для начинающих, com для начинающих, power basic, powerbasic, vb, vb winapi com, vb_winapi_com, visual basic, winapi_com_с++, winapi_com_c++, winapi_для_начинающих, winapi_и_com, азбука com, азбука winapi, заметки недопрограммиста, различие c++ и vb, сходство c++ и vb (Все метки)
В этой ветке предлагаю обсуждать сходства и различия между C++ и Visual Basic.
Ну хотя бы для упрощения процесса изучения параллельного (дополнительного) языка для тех, кто уже относительно неплохо знаком с Visual Basic. Ну просто как-то "не вкусно" начинать изучение совсем уж с нуля, когда, в принципе, уже и без того много знаешь (циклы, ветвления, указатели, видимость переменных ... ). На самом деле, начал сейчас просмортр на ютубе курса по C++. Дядька очень толково и понятно всё объясняет, явно есть у него талант хорошего преподавателя. Самые первые отличия, которые бросились в глаза, это: - комменты обозначают двумя косыми чертами вместо апострофа, - в конце каждой строки точка с запятой, - все процедуры, функции, "тела" циклов ... в фигурных скобках, - вложенные циклы можно описывать одной строкой, - если переменная объявлена, но ей не присвоено значение, то она содержит случайный "мусор" из памяти, а не как у нас в бейсике, где сразу получает значение ноль или пустую строку, - массивы с квадратными скобками вместо круглых, - область видимости переменных ограничена фигурными скобками и причём неважно функция это, цикл или "тело" функции IF, а не как у нас область видимости переменных ограничена только функциями и процедурами. Ветка открытая, пишите кто хочет. Особенно приветствуются советы опытных специалистов, уже овладевших несколькими языками. Ну уж им-то гораздо виднее, в чём сходство и различие разных языков. Сказать по правде, лично мне сейчас C++ и его младший брат нужны, главным образом, для удобства изучения материалов MSDN.
0
|
|
| 18.04.2020, 16:11 | |
|
Ответы с готовыми решениями:
253
предложение для опытных программистов Быстрый старт и софт для Modicon TM251MESE (Schneider Electric) Книги или справочники для опытных(или проффесиональных) программистов! |
|
Модератор
|
||
| 28.04.2020, 00:18 | ||
|
0
|
||
|
Кормпилятор
|
|||
| 28.04.2020, 03:32 | |||
|
чтобы люди всё разрабатывали и тщательно обдумывали в документации и уже потом спокойно перебивали в код 100% формализованные решения с полностью просчитанными зависимостями, либо последовательно отсекали их. Для этого и существует, модульность и декомпозиция. Багом называю не невнимательность программиста, а недочёт в аналитике задачи. Если первое человек видит, исправляет и он чист, то второе это реальный косяк. Давно в миру пытаются пропихнуть такие вещи как "быстрая разработка", когда сначала разрабатываешь какой-то чёрти пойми как работающий костыль, а потом уже дико бешено начинаешь нашпиговывать его функционалом, не взирая на то, рассчитана ли уже внедрённая архитектура на такие манипуляции. Это уже лажа концептуально. В итоге обычно это заканчивается тем, что продукт на пути всего своего жизненного цикла содержит баги(в т.ч критические) и их количество не уменьшается. Я о том, что это нифига не нормально кто бы чего не говорил и чем бы не мотивировал. В реальности фраза "поспешишь - людей насмешишь" работает всегда, причём безотказно. Человеческий фактор решает существенно больше, чем какие-то резолюции. А для профи же по идее разницы нет использовать указатели или нет, это новичёк может где-то там в bound контроле лохануться. нормальный профи вообще всё тестирует всегда, ежели недоглядел. Модульная разработка тем и хороша, возможностью оттестировать каждую функцию. К этому моменту в теории уже должно всё работать, это просто формальность по контролю точности забитого в код механизма. Какая бы толстая задача не была. Понятно что один человек всё не уследит, особенно если он пытается уследить за тем, что разрабатывало не один десяток людей. С другой же стороны если уследить сложно значит это знак, что не всё сделано концептуально хорошо. У меня например по UI/UX полно идей как можно улучшить текущие концепции, многие текущие концепции - это вообще полный слив. Считаю нужно критически подходить ко всему, что "гуляет" в IT.
0
|
|||
|
Модератор
|
||||
| 28.04.2020, 10:32 | ||||
|
0
|
||||
|
Кормпилятор
|
|||||
| 28.04.2020, 11:22 | |||||
|
и не каждый профи из нынешних даже так напишет, поставь его в такие же условия. 2003-й офис был офигенно написан, как сейчас дела обстоят не знаю, видел новые, от их уродского новоиспечённого интерфейса для лохов можно проблеваться. От супер продуманного эргономичного интерфейса было принято решение отказаться в сторону какой-то дичи.
что в переводе на русский означает - меньшим числом шагов сделать отдельный конкретный механизм уже нельзя, т.к. его логика полностью проанализирована и меньшего по детализации уровня там просто не существует. из уже оттестированных модулей. Я допускаю невнимательность программиста при переводе документации в код, но не допускаю перевода сырых, необдуманных решений. Уже называл хороших прогеров, locm и ты кстати в их числе. И баги у всех них были исключительно из-за чужих уродских решений, например Стас когда писал свою шахматную оболочку заколебался парсить нестандартные "высеры" готовых движков, он рассказывал что там вообще все движки выдавали разные фокусы и под каждый приходилось хардкодить. Тогда ему помогал в тестировании. Т.е. которые либо работают нестандартно, либо не имеют нормальной документации. А всё из-за банальной вещи - отсутствия жёсткой стандартизации тех или иных вопросов. А стандартизация это в первую очередь ограничительный документ. Добавлено через 25 минут Если твоя программа от чего то зависит, она уже может быть с багами. Больше зависимостей, больше вероятности их появления. Потому что ты не знаешь формализованы ли те задачи до конца или нет, более того ты даже не знаешь сделаны ли они по твоей концепции безопасности, про это тебе кстати намекнул locm. Просто хочу сказать о том, что не стоит заранее метить багом то, что является лишь способом действия. Эта концепция безопасности - лишь заслонка от совсем банальщины, это не гарант отсутствия багов на который можно уповать. Базовые принципы ведения разработки каждому прогеру хорошо известны их не обхитрить. А объёмы задачи это лишь ноша аналитика и программиста, если он к ней не готов - смысла лезть туда не вижу. Никто как бы не говорил, что любое решение делается быстро и безболезненно.
0
|
|||||
|
Модератор
|
|||||
| 28.04.2020, 11:23 | |||||
|
0
|
|||||
|
|
|||
| 28.04.2020, 11:34 | |||
|
Как раз следит за наличием записи за пределами буфера. Причем следит не только за памятью, но и за глобальными и локальными переменными включая строковые. В большинстве случаев находит проблему на этапе отладки.
0
|
|||
|
Модератор
|
||||
| 28.04.2020, 11:41 | ||||
|
0
|
||||
|
|
|||||||||||||||||
| 28.04.2020, 11:54 | |||||||||||||||||
|
Вот к примеру вот всех этих кодах включенный purifier обнаружит запись за пределами выделенной памяти.
0
|
|||||||||||||||||
|
Модератор
|
|||
| 28.04.2020, 11:56 | |||
|
0
|
|||
|
|
||
| 28.04.2020, 11:56 | ||
|
Мы вроде как тут обсуждаем C++ в плане его полезности изучения относительно VB6? Не стоит задача изучать PureBasic, тем более он вообще ни к VB6, ни к C++ даже близко. У него свои инструменты, свой синтаксис, свои возможности. Какой смысл тут приводить аргументы, ссылаясь именно на него? Давайте про С++ c примерами, с его отладчиками и прочими плюшками, и как эти плюшки помогут в изучении VB6. А то настрочили 10 страниц оффтопа, по делу вообще ни чего. ИЛИ давайте ветку перекинем в священные войны, там и бейтесь со своим PureBasic vs VB6!
0
|
||
|
|
|||||||
| 28.04.2020, 12:07 | |||||||
|
0
|
|||||||
|
Кормпилятор
|
|||||
| 28.04.2020, 12:36 | |||||
|
Хочешь качай тестируй: https://docs.google.com/docume... BqNoc/edit Реальная прога, требования к которой по UI были строго заданы проф аналитиком по UI, человек разложил тогда всё вплоть до каждого клика мышкой. На этом редакторе он примерно 30 карт сделал. Покажи мне человека из d2k комьюнити, кто создал столько же карт(нормальных, а не квадратных) в одно лицо. Под 7 тоже работает, к сожалению в ~10 раз медленнее, хотя даже так вполне позволяет его использовать с приемлемыми по юзабилити характеристиками. О чём уже писал ребятам с pb. Это был слив железа от Microsoft и NVidia, каждый вендор подосрал. Косяк не мой(на семёрку не метил, но был неприятно удивлён такой лажей), к сожалению такова цена использования "чужих" технологий. Разработка была лишком объёмная, чтобы её перефигачить под OpenGL. Сейчас мне нет резона этим заниматься. Возможно потом перебью, исходники остались. На XP работает идеально, просто конфетка. https://www.cvedetails.com/pro... ndor_id=26 А они ведь по супер безопасной наверное написаны концепции. То что там после 2007-го то... Для меня массив равен по безопасности голым указателям, просто потому что нет резона перебивать туда неформализованное решение, моя прога не полезет гулять по памяти. Для меня это не вопрос тестирования, мол только на него полагаюсь, нет, для меня это формальность, когда проверяю как работает забитый механизм, неточность если она есть обычно всплывает сразу, потому что на этом внимание и акцентировано(вывести необх параметры и отследить идентичность того, что на бумаге и что в коде). Обычно есть тест кейсы, которые позволяют выявить косяк, прогер обязан их искусственно создать. Добавлено через 27 минут Если напишу алгоритм корректно, корректно забью его в код, выход за границы меня не ожидает. Так? Так какие ко мне тогда вопросы? Если же алгоритм будет кривой, программа завершится в любом случае и не факт что не будет потери\порчи данных, это ещё нужно предусмотреть(создать соотв. механизм). Грубо говоря цикл выдаст значение счётчика, которое превысит верхнюю границу массива, с включённым отладчиком прога тебя просто остановит поставит брекпоинт, и будет дрючить до тех пор, пока алгоритм не будет исправлен(при этом не факт что он будет корректен) без отладчика же и опции контроля границ(их вырубают для скорости) будет тоже самое небезопасное, прога полетит к чертям. Концепция безопасности не гарантирует корректности алгоритмов, она просто принуждает программиста использовать более высокоуровневые элементы. Но программисты обычно и так сначала делают на ВУ, а потом уже лезут в дебри если надо быстрее. Более предусмотрительные сразу понимают надо им оно или нет, чтобы не кодить по 10 раз, а сразу сделать хорошо. Это вопрос выбора, это не гарант чего-то лучшего и более корректного. Если алгоритм написан корректно, если он полностью формализован и корректно забит в код - он будет с равной степенью безопасен, это человеческий фактор, но он так и так будет, его никуда не денешь.
0
|
|||||
|
|
||
| 28.04.2020, 12:38 | ||
|
Или в MSDN внезапно стали печатать примеры на PureBasic? Давайте не отходить от темы, и прекращаем мерятся крутостью ЯП (тем более, это заслуга их авторов). Иначе тема уедет в https://www.cyberforum.ru/holywars/
0
|
||
|
Модератор
|
|||||||||
| 28.04.2020, 12:42 | |||||||||
0
|
|||||||||
|
Модератор
|
|||||||||||
| 28.04.2020, 13:06 | |||||||||||
|
Добавлено через 12 минут ![]()
0
|
|||||||||||
|
Кормпилятор
|
||||
| 28.04.2020, 13:42 | ||||
|
Понятно что это косвенно зависит от багов, но тут наверное даже больше решает просто аналитика в этом направлении. Скорее всего те вещи про которые ты говоришь важны, но это опять же чтобы салаги себе карачки не отстреливали, более менее нормальные программисты этим не страдают. Но и сути то оно не меняет, если злоумышленник поимеет доступ к бинарнику, он чё хочешь перефигачит и указатель и функцию свою пропишет. Тут просто имеет место быть то, чтобы он это не сделал средствами самой программы или системных сервисов, которыми программа пользуется. И тут даже больше рулит самописное, меньше зависимостей, меньше возможности получить уязвимость через чужой код. А что-то логичнее просто указателями голыми. Что-то разумеется массивами и т.п.. Для меня важна сопоставляемость(сходность) с самой идеей алгоритма.
0
|
||||
|
|
||
| 28.04.2020, 13:48 | ||
|
С другими картами то же... На XP уже не могу запустить, дома нет такой.
0
|
||
|
Модератор
|
|||
| 28.04.2020, 13:56 | |||
|
0
|
|||
|
Кормпилятор
|
||
| 28.04.2020, 14:05 | ||
|
Не по теме:
Другого не заявлено, только с картами, не со сценариями. А ты что из старкрафта первого сценарий открыть захотел? Так у них свой редактор официальный есть, кошернейший. Для 2k официальных не было. Был кастрированный shai hulud, в целом неплохой, но отображение спайса там не соответствует, редактировать спайс - боль. И тайлсетов в комплекте не было(ну знаешь все эти заморочки с правами). Попробуй распаковать карту Open Battle из архива прям в папку с экзешником, если путь не менял в левом списке - сразу её увидишь в правом. ...
0
|
||
|
|
|||||||||||
| 28.04.2020, 14:08 | |||||||||||
|
Задача была отследить запись за пределами буфера. Тот код что я выложил, это выполняет? Только не нужно писать что это небезопасно. Представьте что по другому задачу не решить. Почему думаете современные приложения тормознутые и раздутые? Повторюсь не все возможно сделать на этом уровне. Мне часто приходится работать на низком уровне для взаимодействия с микроконтроллерами и на этом уровне управляемый код не самое лучшее решение.
0
|
|||||||||||
| 28.04.2020, 14:08 | |
|
набор опытных C++ программистов Приглашаю На работу Опытных Программистов Нужен совет опытных программистов на C# Нужен совет опытных программистов
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Где деньги лежат
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 мог продолжить
работу без необходимости заново разбираться в. . .
|
|
сукцессия 15 неявная схема
anaschu 29.06.2026
Алиса
Калибровка параметров симбиотической модели: технический обзор
Содержание:
Введение
Постановка проблемы
Технические аспекты реализации
Процесс внедрения изменений
|
сукцессия 14. Обновленная схема модели
anaschu 28.06.2026
ГЛОБАЛЬНАЯ ОПИСАТЕЛЬНАЯ СПЕЦИФИКАЦИЯ ЭКОСИСТЕМНОЙ МОДЕЛИ «SOIL CHEMISTRY & MYCORRHIZA 2. 0»
https:/ / ibb. co/ NnkGpfMd
Представленная интегрированная схема описывает непрерывную нелинейную. . .
|
сукцессия 13. Питон модель трехзонного мицелия, пока что в основном арбускулярного
anaschu 28.06.2026
## Разработка агентной модели микоризной сукцессии: от выявления артефактов к созданию комплексной системы
### Аннотация
Представлено исследование по разработке агентной модели микоризной. . .
|
сукцессия 12. краткий список проверок модели перед запуском.
anaschu 27.06.2026
Скрытые отказы в моделях систем динамики (SD-models) экологических систем: два случая из практики
Контекст
Разбирался прототип модели систем динамики (SD-модели) микоризной сукцессии: пять. . .
|