Бейсик, что сейчас ?

Тема в разделе "VB", создана пользователем X-Shar, 28 фев 2021.

  1. X-Shar

    X-Shar Active Member

    Публикаций:
    0
    Регистрация:
    24 фев 2017
    Сообщения:
    354
    Хе, вспомнилось что бейсик наверное мой первый язык программирования, когда я пытался сделать интерактивное приложение, но я тогда учился в школе и интерес к языку потерял, короче залип в играх, хе-хе...)

    Ну тут наткнулся на крутой на самом деле раздел https://wasm.in/forums/vb.52/ не знаю почему я его не замечал, ведь тут написаны всякие интересные штуки, например темы которые мне понравились:

    https://wasm.in/threads/drajver-na-vb6.31873/

    https://wasm.in/threads/zagruzchik-shellkod-bez-rantajma.31744/

    https://wasm.in/threads/inline-assembler-add-in-dlja-vb6.31725/

    Ну и сразу появились вопросы к Thetrik, если не секрет и есть время/желание ответить:

    1. На сколько я помню, сейчас Бейсик развивается как .NET, с чем связанно работа именно VB6, или
    VB6 типо там больше возможностей по сравнению с .NET ?

    2. На сколько сейчас Бейсик используется где-то и если возможно, в каких областях ?

    3. Необязательно отвечать, но с чем связанна такая любовь к этому языку ?)
     
  2. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    4.861
    Скорее нет, чем да. Основное развитие в дотнете связано с языками C# и F#, VB.NET тянется в основном из-за обратной совместимости, ничего особенного в него не добавляют. Среди дотнет разработчиков критически мало тех, кто занимается именно VB.NET'ом и в основном это дичайший легаси код.
    --- Сообщение объединено, 28 фев 2021 ---
    Можно сказать, что в основном в этом сообщении присутствует "в основном".
     
  3. Thetrik

    Thetrik UA6527P

    Публикаций:
    0
    Регистрация:
    25 июл 2011
    Сообщения:
    719
    VB.NET уже другой язык. Классический VB6 я выбираю по нескольким критериям это нативный код, тесная интеграция с COM, RAD'ность. Тут почти любую системную фичу можно напрямую использовать будь то DirectX/MF/Core Audio/SAPI и т.п.

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

    Я уже написал выше - нативный код, COM, RAD.
     
    alix и X-Shar нравится это.
  4. KPG

    KPG Member

    Публикаций:
    0
    Регистрация:
    13 янв 2021
    Сообщения:
    87
    FreeBasic кросплатформенный проект и собирают и для DOS.
    Интересны и Basic256, BBC Basic ..

    P.S. Первый стандарт минимального Бейсика ECMA-55 был принят в 1978г.

    a little os in freebasic

    на FreeBasic 988 решений задач с ресурса rosettacode.org
     
  5. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    4.861
    Да есть нормальные более-менее современные бейсики, которые и сейчас вполне можно юзать из-за ностальгии или еще чего: FreeBasic, PureBasic, Xojo, Gambas, B4X и тд. FreeBasic - наверное, самый стагнирующий из всего этого списка.
    --- Сообщение объединено, 6 фев 2022 ---
    Кстати, еще был забавный басик для разработки игр - Monkey X. Потом вроде как автор стал пилить вторую версию, но, похоже, что не осилил. А первую версию форкнули и сейчас она известна, как Cerberus X и, судя по всему, тоже оказалась мало кому нужна. Хотя жалко, проект на вид был интересным, за исключением басиковского синтаксиса.
     
  6. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.787
    Я за васик, это интерактивный язык в нём не нужны явные утверждения, eg типы можно не указывать. Компилер нэйтив в том же пури, мало какой иной такое может - выдать асм сурец с оптимизацией весьма глубокой и далее собрать.
     
  7. asmlamo

    asmlamo Active Member

    Публикаций:
    0
    Регистрация:
    18 май 2004
    Сообщения:
    1.706
    Васик по сути умер .... даже в сфере обучения (школы и институты).
    Его заменил питончик ....который учат школотроны даже в сельских школах.
     
  8. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    4.861
    Так это наоборот хорошо, в школе лучше учить язык, который не отобьёт у тебя всё желание изучать программирование, то есть это явно не Басик, не Паскаль и не Сишечка. Питон в этом плане - отличный выбор. Понятно, что в реальной жизни он медленный (в плане кранчить цифорки), но когда учишь что-то с нуля, для мотивации нужно, чтобы что-то получалось, а не заниматься жестким и неприятным секасом с сегфолтами и отладчиком, которые ты не понимаешь.
     
  9. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    841
    А мне кажеться на старте нужно наоборот как можно меньше магии. А то сперва нолики и единичики, всё есть файл, а потом херак и питон с его пробелами.
    Полностью согласен, что на старте нужно, чтобы что-то получалось. Но это и есть методика = правильная цепь подводящих задач к ощутимому результату. Толковый педадгог это почти на любом языке изобразит.
     
  10. asmlamo

    asmlamo Active Member

    Публикаций:
    0
    Регистрация:
    18 май 2004
    Сообщения:
    1.706
    но когда учишь что-то с нуля, для мотивации нужно, чтобы что-то получалось, а не заниматься жестким и неприятным секасом с сегфолтами и отладчиком, которые ты не понимаешь.

    Согласен.
    Это называется кривая обучения. Чем она более пологая тем выше вероятность что человек не забросит нафиг.
    У С++ и Java она довольна крутая ..а у питончика пологая. (кривая Бандуры).
    Это система с положительной обратной связью.
    Сделал ..получилось ...сделал опять получилось ..мотивирует.
    А так попробовал то не получилось ..это не прокатило ..и интерес угасает быстро.
     
    Indy_ нравится это.
  11. Intro

    Intro Active Member

    Публикаций:
    0
    Регистрация:
    29 авг 2009
    Сообщения:
    352
    Васик невзлюбил за тормоза, 100-200 оп/сек на 8080-2, 10000 оп/сек на Cyrix 486DX2-66. А ещё за примитивность данных, числа(BCD), строки и всё. Но пользовался некоторое время, потом на паскаль перешёл в начале 2004. С тех пор он сильно изменился, но очень сильно предвзятое отношение не куда не делось. Да и питон-питухон тоже не люблю, из-за уродливого дизайна, Lua лучше.
     
  12. M0rg0t

    M0rg0t Well-Known Member

    Публикаций:
    0
    Регистрация:
    18 окт 2010
    Сообщения:
    1.550
    питон отвратителен тем, что там есть принудительные отступы.
    главное, чтобы программист развивался дальше, а не остановился на питоне. Хотя, для некоторых целей его вполне хватает (тот же веб или еще какая автоматизация). Просто некоторые люди лепят на нем малварь по 40 метров, и еще доказывают, что это норма.
     
  13. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    4.861
    Инструмент нужно выбирать под задачу, как бы если кому-то это норм, то почему нет. Мне почему-то кажется, что даже если кто-то был настолько отшибленный, что написал бы на Петоне рансомварь, он бы все равно заработал миллионы, на каких-то шарашках, которые про ИБ не слышали.
     
  14. VBOrion

    VBOrion New Member

    Публикаций:
    0
    Регистрация:
    6 ноя 2017
    Сообщения:
    10
    Использую вб для некоторых задач, т.к. для меня он удобен в некоторых областях. Благодарен Thetrik за его публикации по вб здесь и на киберфоруме - многое открыл для себя.
     
    Rel и Thetrik нравится это.
  15. aa_dav

    aa_dav Active Member

    Публикаций:
    0
    Регистрация:
    24 дек 2008
    Сообщения:
    266
    https://oscript.io/
    Как я понял реализован на C# и имеют уже даже GUI-библиотеку вместе со многим другим.
    Код весьма похож на бейсик, но диалект всё-таки существенно свой:
    Код (Text):
    1. Процедура ОбработатьКаталог(Знач Каталог)
    2.  
    3.   Сообщить("Обрабатываю каталог " + Каталог);
    4.   КаталогГит = Новый Файл(Каталог + "\.git");
    5.   Если Не КаталогГит.Существует() Тогда
    6.     Сообщить("Каталог не является git-репозиторием");
    7.     Возврат;
    8.   КонецЕсли;
    9.  
    10.   ЛогГит = ПолучитьИмяВременногоФайла();
    11.  
    12.   КодВозврата = -1;
    13.   ЗапуститьПриложение("cmd /C git remote -v > " + ЛогГит, Каталог, Истина, КодВозврата);
    14.   Если КодВозврата <> 0 Тогда
    15.     Сообщить("Ошибка получения git remote");
    16.     Сообщить(ПрочитатьФайл(ЛогГит));
    17.     Возврат;
    18.   КонецЕсли;
    19.  
    20.   ОсновнойАдрес = ПрочитатьАдрес(ЛогГит);
    21.   Если ОсновнойАдрес = Неопределено Тогда
    22.     Возврат;
    23.   КонецЕсли;
    24.   Сообщить("URL: " + ОсновнойАдрес);
    25.   НовыйУрл = СтрЗаменить(ОсновнойАдрес, "http://old-server", "http:new-server");
    26.   Сообщить("Перенаправляю на " + НовыйУрл);
    27.  
    28.   КодВозврата = -1;
    29.   ЗапуститьПриложение("cmd /C git remote set-url origin " + НовыйУрл + " > " + ЛогГит, Каталог, Истина, КодВозврата);
    30.   Если КодВозврата <> 0 Тогда
    31.     Сообщить("Ошибка git set-url");
    32.     Сообщить(ПрочитатьФайл(ЛогГит));
    33.     Возврат;
    34.   КонецЕсли;
    35.  
    36.   Сообщить("Каталог " + Каталог + " обработан");
    37.  
    38. КонецПроцедуры