введение или что такое freebasic

Предыдущая тема Следующая тема Перейти вниз

введение или что такое freebasic

Сообщение  Eric-S в Чт Авг 21, 2008 6:25 am

ФрееBASIC это наследник знаменитого Microsoft QBasic. И даже больше он умеет компилировать программы на языке qbasic, всё за редким исключением.Совместимость с синтаксисом на 99%.

Появился в 2004 г. и разрабатывается так называемой The FreeBASIC Development Team под руководством Andre Victor. Изначально язык развивался как альтернатива и замена старому, доброму Qbasic корпорации Microsoft, но быстро превратился в мощный, кроссплатформенный, свободный инструмент. FreeBasic сейчас развиваеться. Его
функциональные возможности увеличиваются с каждой новой версией.

FreeBasic распространяется по лицензии GNU GPL по которой, является бесплатным компилятором с открытыми исходными кодами.

Компилятор FreeBasic, на данный момент, создает исполняемые файлы для нескольких основных платформ: DOS, Windows, Linux, cygwin.
Число платформ может увеличиться.

FreeBasic это именно компилятор. на данный момент можно скачать версии для dos, windows и linux.

Несмотря на то, что компилятор имеет совместимость с QuickBASIC, в язык FreeBASIC было добавлено множество расширений и возможностей для соответствия основным современным требованиям.
Программы совместимы с библиотеками и API-функциями написанными на C/C++, а так же прочими, которые являються совместимыми с ними, например java, delphi и visual basic.
Начиная с версии 0.17 пользователь может выбрать три режима компиляции (опция -lang): режим совместимости с QuickBASIC (qb), старыми версиями FreeBASIC (deprecated), и стандартный режим (fb), включающий в себя все последние изменения и возможности.

FreeBasic вбирает в себя, по мере своего развития, все наилучшее от языков Basic и c/c++. Вот некоторые нововведения:
* Поддержка Unicode (как исходники, так и строки).
* Множество встроенных типов переменных (Byte, UByte, Short, UShort, Integer, UInteger, LongInt, ULongInt, Single, Double, String, ZString, WString).
* обработка ошибок.
* Типы данных определяемые пользователем (бесконечная вложенность, Union, тип поля (array, function, bit fields)).
* Пространства имён (namespace).
* Перечислимый тип (Enum).
* Новые возможности при работе с массивами (до 2 ГБ размером, Redim Preserve).
* Указатели (указатели на любые типы данных, неограниченная косвенная адресация).
* Перегрузка функций и операторов.
* Необязательные аргументы функций.
* Встроенный ассемблер (ассемблерные инструкции в исходном коде программы).
* поддержка функций языка c и c++.
* мощные Препроцессоры.
* Typedefs.
* разбиение выполнения на несколько потоков.
* классы и объекты.
* Конструкторы и деструкторы классов.
* И многое другое

Вместе с FB в комплект входят также наиболее распространенные библиотеки (с подключаемыми заголовочными файлами):
OpenGL, GTK+, SDL, Allegro, ODE, Newton, BASS, Fmod, FreeImage, Zlib, sqlite, MySQL, PostgreSQL, Lua, LibXML, и многие другие.

В папке examples вы найдёте множество различных примеров программ, они помогут вам разобраться. Примеры от самых простых, до сложных. Продемонстрированы способы работы с библиотеками и взаимодейсвием с другими языками программирования. Например vb6 и java.

Начиная с версии 0.17 FreeBasic начал развиваться и в сторону Объектно-ориентированного программирования.

Из всего этого можно сделать вывод, что FreeBasic это полноценный инструмент не только для начинающих, но и для профессиональных разработчиков. Язык программирования BASIC всегда славился простотой в освоении и легкостью в программировании.

Официальный сайт:
www.freebasic.net
Здесь можно скачать сам компилятор FB, Help, IDE и другое.

Там же есть документация, для онлайн просмотра.
wiki for freebasic

Присутствуют ссылки на различные сторонние проекты, тем или иным образом связанные с fb.
Например вы найдёте fbIde - простенький текстовой редактор.
Далее, я буду именно его иметь в виду, как среду написания, и запуска.

Существует русский форум:
русский форум

Изначально fb, писался на visual basic, но скоро он смог компилировать себя сам.

В качестве основы компилятора используются gcc (gnu compiler collection) под linux, а под windows minGW, порт gcc.
Для dos используеться djgpp.
Они также свободны и хорошо известны.
mingw.org
Но это никак не затрагивает разработку програм на fb. И ничего дополнительного устанавливать не надо, всё что нужно уже есть.

Поскольку для линковки используються библиотеки gcc и minGW, то это уже скорее программа на языке c. но приэтом используется синтаксис старого basic'а, поэтому по характеристикам он сильно похож на Си. Большая скорость и маленький размер. Как говорится: "basic и c++ в одном флаконе". исполняемого файла.

Очень много критики высказывалось в разное время по поводу qbasic, а потом visual basic. Причём одним из аргументов было то, что это детище Мелкософта. Freebasic однозначно лишен этой проблемы.
Многие современные бэйсики, несчитая Майкросовтовских откровенно недоделаны. Не буду указывать пальцем, но конкурентов нет, и ведь далеко ещё не весь потенциал реализован!

Также бэйсики обвинялись в громоздкости, медлительности и несовместимости. Чтож, господа, вот вам бэйсик лёгкий, быстрый и совместимый.
Преобразования аргументов явные. Поддерживаеться куча форматов и стандартов.
Компилятор создаёт native-код, а не P-код. Freebasic компилятор, и не в коем случае не интерпретатор.

По статистике, большинство программистов начинают с бэйсика. Ему легко учиться, так как он именно для обучения и был изобретён. Синтаксис очень чёткий и прозрачный.

Ради справедливости нужно сказать, что наблюдаеться некоторая громоздкость синтаксиса. А в некоторых случаях кажущаяся несгибаемой. Да это именно так, но не из-за ущербности, а по совершенно иной природе.

Также есть трудности при разработке gui (графического пользовательского интерфейса). Но с помощью некоторых знаменитых библиотек (winApi, qt, gtk) и сторонних редакторов, это тоже возможно.

К сожалению, есть ещё моменты не реализованные, а только запланированные.
Это наследование классов, виртуальные методы и метоморфизм.
По этому FreeBASIC только основанный на классах, а не полностью объектно-ориентированный.



Лично для меня бэйсик больше всего похож на ассемблер, языки имеют много общего. В то время когда c/c++ предлагает альтернативные и обходные пути basic и assembler решают проблемы в лоб.

Неуклюжие и неумелые программисты, на любом языке, задачу будут решать самыми неудачными способами. Именно из-за этого репутация бэйсиков была подмочена. А честно и справедливо никто не сравнивал мощь языков.


И так, вы хотите писать быстрые программы или динамические библиотеки (dll), то это ваш выбор.
Но если вы новичок, то не пугайтесь, всё очень просто.
Если вы хотите портировать старые dos программы написанные на qbasic под windows или linux, то freebasic вам поможет.

установка:
на windows


Последний раз редактировалось: Eric-S (Вс Ноя 01, 2009 12:18 am), всего редактировалось 8 раз(а)

Eric-S

Сообщения : 738
Дата регистрации : 2008-08-06
Возраст : 34
Откуда : Россия, Санкт-Петербург

Посмотреть профиль http://eric50.narod.ru

Вернуться к началу Перейти вниз

Re: введение или что такое freebasic

Сообщение  tux в Чт Авг 21, 2008 10:56 am

Во, зашибись!!!
avatar
tux

Сообщения : 365
Дата регистрации : 2008-04-06
Возраст : 29
Откуда : Сибирь

Посмотреть профиль http://tux.nsk.ru/

Вернуться к началу Перейти вниз

Re: введение или что такое freebasic

Сообщение  Eric-S в Чт Авг 21, 2008 11:56 am

Я очень надеюсь, на то, что ShenZN, не против того, что я спёр его материал.

Eric-S

Сообщения : 738
Дата регистрации : 2008-08-06
Возраст : 34
Откуда : Россия, Санкт-Петербург

Посмотреть профиль http://eric50.narod.ru

Вернуться к началу Перейти вниз

Re: введение или что такое freebasic

Сообщение  tux в Чт Авг 21, 2008 12:35 pm

а я то думаю, чет куски я гдето уже видел...
avatar
tux

Сообщения : 365
Дата регистрации : 2008-04-06
Возраст : 29
Откуда : Сибирь

Посмотреть профиль http://tux.nsk.ru/

Вернуться к началу Перейти вниз

Re: введение или что такое freebasic

Сообщение  Eric-S в Чт Авг 21, 2008 2:49 pm

Угу. Наглым образом скопировал. А потом ещё и подредактировал чучка. Разбавив своим прошлым вариантом. А чо добру валяться? Я и дальше буду копировать! Из других книг, с форумов, статей и даже из официального руководства. Представляете себе, какой коПират нашелся.
В прочем я нигде не видел запрета на копирование.

Eric-S

Сообщения : 738
Дата регистрации : 2008-08-06
Возраст : 34
Откуда : Россия, Санкт-Петербург

Посмотреть профиль http://eric50.narod.ru

Вернуться к началу Перейти вниз

Re: введение или что такое freebasic

Сообщение  tux в Чт Авг 21, 2008 3:42 pm

А никто и незапрещает, а наобоорот это поощраяеся, тк это же опенсорс всетаки
avatar
tux

Сообщения : 365
Дата регистрации : 2008-04-06
Возраст : 29
Откуда : Сибирь

Посмотреть профиль http://tux.nsk.ru/

Вернуться к началу Перейти вниз

Исправления

Сообщение  ShenZN в Ср Авг 27, 2008 12:06 pm

Я очень надеюсь, на то, что ShenZN, не против того, что я спёр его материал.

Не против конечно Very Happy


PS
На счет поддержки Xbox и Cygwin все таки рановато говорить Sad

ShenZN

Сообщения : 155
Дата регистрации : 2008-02-18
Откуда : Ukraine

Посмотреть профиль http://lodestar-game.narod.ru

Вернуться к началу Перейти вниз

Re: введение или что такое freebasic

Сообщение  Eric-S в Чт Авг 28, 2008 2:04 am

Думаешь рано?
У меня чесно говоря нитого, ни другого.

Вродебы там для xbox'а есть файлики.

Ну а cigwin... Почему бы и нет. Ведь minGW это по сути ответвление именно от cigwin, по логике, просто обязано!

Я загляну в мануал и приведу статью в соответствие ему.


Я вот тут ещё думаю, над вспомогательными библиотеками.
Ведь под dos скорее всего используеться, какая-то другая библиотека. А под линухом наверное лучше работать с gcc?

Eric-S

Сообщения : 738
Дата регистрации : 2008-08-06
Возраст : 34
Откуда : Россия, Санкт-Петербург

Посмотреть профиль http://eric50.narod.ru

Вернуться к началу Перейти вниз

Re: введение или что такое freebasic

Сообщение  Eric-S в Пт Авг 29, 2008 7:46 am

Об xbox почти не упоминаеться. faq port xbox


Но вот например в исходниках, такой списочек:

cigwin
dos
freebsd
linux
win32

Откуда-то взялся ещё freebsd. А вот о windows mobile или symbian вообще не упоминаеться, что есть печально.

Как я понимаю, теоритически на xbox програмки должны работать. Но там какие-то проблемы из-за того, что gcc не удосужились нормально портировать.

Ну и на что мне исправлять? Оставить первоначальный вариант?

Eric-S

Сообщения : 738
Дата регистрации : 2008-08-06
Возраст : 34
Откуда : Россия, Санкт-Петербург

Посмотреть профиль http://eric50.narod.ru

Вернуться к началу Перейти вниз

Re: введение или что такое freebasic

Сообщение  ShenZN в Пт Авг 29, 2008 10:22 am

Ну и на что мне исправлять? Оставить первоначальный вариант?

Да, нет, конечно! Very Happy

Просто хотел немного поправить. В следующий раз лучше писать то что у же в действительности есть.
Не хочется зря кого то обнадеживать. Например на оф. форуме был разговор о портировании FB на MacOS, но это пока остается только разговорами Sad

ShenZN

Сообщения : 155
Дата регистрации : 2008-02-18
Откуда : Ukraine

Посмотреть профиль http://lodestar-game.narod.ru

Вернуться к началу Перейти вниз

Re: введение или что такое freebasic

Сообщение  Eric-S в Ср Сен 10, 2008 1:21 pm

Ползаю по инету и плачу
http://igrostroenie.my1.ru/forum/43-578-1

Засветился там Мистер. Ну да я не о том, а о том, что:
1. переврали!
2. чумовые вопросы, которым место здесь на форуме.

Eric-S

Сообщения : 738
Дата регистрации : 2008-08-06
Возраст : 34
Откуда : Россия, Санкт-Петербург

Посмотреть профиль http://eric50.narod.ru

Вернуться к началу Перейти вниз

???

Сообщение  ShenZN в Ср Сен 10, 2008 3:58 pm

1. переврали!
2. чумовые вопросы, которым место здесь на форуме.

Не совсем понятно, что ты имеешь в виду Question

ShenZN

Сообщения : 155
Дата регистрации : 2008-02-18
Откуда : Ukraine

Посмотреть профиль http://lodestar-game.narod.ru

Вернуться к началу Перейти вниз

Re: введение или что такое freebasic

Сообщение  Eric-S в Ср Сен 10, 2008 4:11 pm


Официальный сайт:
www.freebasic.net
Русский сайт:
http://freebasic.justforum.net
Здесь можно скачать сам компилятор FB, Help, IDE и другое       

Что не соответствует истине!

Дальше, задаёться вопрос, о том, как компилировать.
fbc hello.bas
а он, hello.bas not found.
Я переписал главу "первая программа", надеюсь новичкам так будет понятнее.

Но мне неочень понятно, зачем задавать вопросы там, а не здесь!? Или просто лень региться? Но тогда какой же нафиг программер получиться?

Eric-S

Сообщения : 738
Дата регистрации : 2008-08-06
Возраст : 34
Откуда : Россия, Санкт-Петербург

Посмотреть профиль http://eric50.narod.ru

Вернуться к началу Перейти вниз

Re: введение или что такое freebasic

Сообщение  ShenZN в Ср Сен 10, 2008 5:47 pm

Eric-S, не воспринимай все, так близко к сердцу Very Happy

ShenZN

Сообщения : 155
Дата регистрации : 2008-02-18
Откуда : Ukraine

Посмотреть профиль http://lodestar-game.narod.ru

Вернуться к началу Перейти вниз

Re: введение или что такое freebasic

Сообщение  Спонсируемый контент


Спонсируемый контент


Вернуться к началу Перейти вниз

Предыдущая тема Следующая тема Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения