LINUX.ORG.RU

Книжка о Free Pascal и Lazarus под открытой лицензией

 , , ,


1

1

23 декабря на сайте компании «Альт Линукс» появилась новость о выходе книги «Free Pascal и Lazarus: Учебник по программированию» под лицензией GNU FDL.

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

Страница с ссылкой на книгу.

>>> Подробности



Проверено: anonymous_incognito ()
Последнее исправление: post-factum (всего исправлений: 3)
Ответ на: комментарий от Nxx

>Веб-дизайн - это не программирование.

А каким боком тут веб-дизайн?

Macil ★★★★★
()
Ответ на: комментарий от Led

Чё ты ноешь? Был бы FPC для AVR32 - ты бы всё рано его не использовал - ныл бы по другому поводу.

Не поверишь... использовал бы, будь он таким лет 5 назад, когда я писал на delphi свои helloworld-ы. Язык более менее не плох, я ведь привык тогда к нему. Да и другие бы не сбежали на аналоги. Теперь же преспокойно буду юзать gcc, g++ и даже gdc ^_^

I-Love-Microsoft ★★★★★
()

да какой Паскаль, какие Си с плюсами и без, вы че??? пускай долбят Дональда Кнута. все тома, прям со школы и до окончания ВУЗа! а то расплодилось быклокодерство...

anonymous
()
Ответ на: комментарий от Macil

В целом с тобой согласен, просто я не уверен, что в школе надо давать азы создания динамических веб-страниц(достаточно статических), а без этого на примере веба будет сложно показать основы программирования (алгоритмы, функции, ООП и т.д.)

Amuser
() автор топика
Ответ на: комментарий от shybovycha

> все еще мало? пожалуйста - много ли проектов выше академического уровня и левела утилит написано на сем?

Легко - FL Studio.

anonymous
()

pascal - замечательный язык! И я сбаца проект простого калькулятора на нём! Хотя конечно чемто получше, чем стандартный в MS Windows и Linux )))

https://sourceforge.net/projects/yansimplecalc/

yantux
()

Хорошая книга

Буквально пару дней назад скачал данную книгу, и поместил в свою библиотеку в Calibre. И ещё одну книгу с другого сайта, тоже свободную и о Lazarus. Хорошо, что теперь стали появляться такие книги, это одна из составляющих успешного внедрения Linux.Ведь человек не рождается пользователем той же Windows, а становится им в процессе обучения. И наличие книг по СПО на русском языке, и людей которые помогут в процессе обучения, очень важно. Кстати, знакомая рыбка, у меня на старый системник такая-же была приклеена. Вы не из ХВЕ/ХВЕБ?

lucentcode ★★★★★
()

Паскаль - хороший язык для привития студентам навыков структурного программирования. Только после обучения Паскалю или Модуле-2 можно начинать учить более распространённым (и более расхлябанным) языкам. Паскалененавистники не нужны.

...Уф, всё сказал. А теперь можно и тред почитать.

hobbit ★★★★★
()
Ответ на: комментарий от Macil

Не хочу обижать вас, но вы немного не в курсе, что такое Free Pascal. Это современный компилятор, главным диалектом которого является Object Pascal. И поверьте, он не хуже, чем столь любимый многими C++. Уверен, в странах СНГ есть немало программистов на Delphi, и им этот проект будет интересен, ведь он позволяет осуществить перенос Delphi приложений на Linux почти без переписывания проектов. Почти, потому-что всё таки Lazarus похож на Delphi, но это другой, самобытный продукт.

lucentcode ★★★★★
()
Ответ на: комментарий от FedeX

[trollmode on]

Ты явно не в теме - около 45% прикладного софта для Win32 написано на борландовском поделии, а FPC/Lazarus прямые нащадки этого всего..

пруфлинк? пруфпик? или может быть, мозилла иль нетбинсы писались на поцкале?

Снова школота не в курсе: Delphi, Lazarus, MSE IDE, FPCshell.. Ну и все приличные сторонние редакторы (от Geany с Notepad++, до Netbeans и XCode)..

согласен, не знал о существовании последних двух франкенштейнов... про редакторы молчу, вот только на счет netbeans сильно сомневаюсь - ну нету в нем плугина для поцкаля...

Насчет непереносимости, дык это вообще спешно учи матчасть чтоли.. ФПЦ почти визде есть..

не переносимый код и непереносимый (для вас - несносный) код - разные понятия, знаете ли ;)

Невысокой читабельности.. АХАХА - клиника)

полностью согласен. достаточно взглянуть на макароны от лазарусов/делфей

правильно блевать, а не пороть чепуху тебе надо

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

[trollmode off]

лично я считаю, что поцкаль рассчитан лишь на уровень школоты (академические проекты / несложные поделки). более серьезный народ работает с соответствующими инструментами. пример: работать ищут более java- и c/c++ - кодеров, нежели знатоков лазаруса. еще пример: большинство современных / востребованных библиотек не сильно-то и рассчитаны на поддержку поцкалем, делфи иль лазарусом - взять тот же devil, sdl, bullet. при желании можно найти в этих ваших интернетах портированные версии, но они-то собраны фанатами комьюнити.

не пытайтесь продолжать сию демагогию - все равно ведь и вы, и я останемся при своих мнениях ;)

shybovycha
()
Ответ на: Хорошая книга от lucentcode

Аббревиатуру ХВЕ впервые слышу, погуглил - что-то связано с eвангелистами, к коим я не имею никакого отношения.

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

Простите за оффтоп, но лички на ЛОРе нету)))

Amuser
() автор топика
Ответ на: комментарий от Macil

> Процедурное программирование _кончилось_. Не используется оно больше нигде в чистом виде.

Пример абсолютно правильного и при этом абсолютно бессмысленного утверждения. Потому что не поясняется, что противопоставляется процедурному программированию.

ООП? Так оно является логическим развитием процедурщины. См. абстрактные типы данных. Более того, учить сразу ООП с нуля трудоёмко опасно.

Если же имелась в виду функциональщина - то простите, у неё ниша не очень широкая.

hobbit ★★★★★
()
Ответ на: комментарий от ladserg

> хз, мне РАЯ для обучения больше нравится :-)

А для РАЯ был реальный компилятор/интерпретатор? Я его видел только в учебнике, а как дело до практики дошло, так к бейсику перешли.

Правда, тогда ещё ПК в школах практически не было - программы отлаживать на дружественную кафедру РРТИ ходили (1986 год, если что).

hobbit ★★★★★
()
Ответ на: комментарий от Nxx

> К примеру, VB.NET, C# и реализация Pascal для .NET http://pascalabc.net/ это один и тот же язык, только в оболочке из разного синтаксиса.

И как там паскалевские множества (set) реализовали? А локальные процедуры?

hobbit ★★★★★
()
Ответ на: комментарий от shybovycha

> мозилла иль нетбинсы

А вы, батенька, знатный говноед. Нетбинсы и мозилла лучше бы вообше не писались. Ты в курсе что на паскале написаны например первые версии Mac OS? И это было задолго до того как маг скатился в голимое айронби

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от I-Love-Microsoft

> Мне не нужен такой язык, который поддерживается таким компилятором, который не опирается на уже имеющиеся наработки по поддержке тех или иных архитектур процессоров, операционных систем и тому подобного.

Толсто намекаю - если бы Линус рассуждал так же про операционные системы - линукса бы не было.

hobbit ★★★★★
()
Ответ на: комментарий от Amuser

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

Вот представьте себе, не было такого восторга. Может, потому, что когда я добрался до приложеньиц с формочками, был уже сложившимся программистом...

А тех, кто зевает от языков, но выражает восторг от форточек, от программирования лучше изолировать. Меньше индусокода потом будет.

Сначала язык. Потом Дельфи, Лазарус или что там по вкусу.

Иначе будет то, о чём я писал 4 года назад:

http://darkhobbit.livejournal.com/334.html

hobbit ★★★★★
()
Ответ на: комментарий от Ramzes001

жестокий плюс так же начинал ещё с далекого Turbo Pascal 5.5 потом заинтересовался Turbo C++,А когда появился ноутбук то я снес windows и поставил FreeBSD 4.7 полностью углубился в изучение C/C++ и попутно другие языки программирования

enep ★★★★★
()
Ответ на: комментарий от enep

Тот мой вопрос был в общем-то риторическим и намекал на в корне некорректное исходное утверждение.

То, что в языке нет ключевого слова «class» ещё вовсе не означает, что «там нет оопе»

yoghurt ★★★★★
()
Ответ на: комментарий от hobbit

Но уж своему первому консольному приложению вы были рады чуть больше)

Сегодня молодежь, к сожалению другая, значительная её часть приучена воспринимать информацию именно в виде визуального ряда (видео, комиксы-манги и т.д.)

Как бы там ни было, я не педагог - пускай преподы сами решают, давать примеры в консоли или в окнах.

Amuser
() автор топика
Ответ на: комментарий от hobbit

«Мне бы не пришлось создавать Linux, если бы в начале 90-х на BSD не подали судебный иск. Это бы не было необходимостью» (c) Линус Торвальдс

Он мой единомышленник ;) В чем необходимость паскаля - вопрос открытый.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от no-dashi

Они не по примерам. Там вполне нормальный курс.

sv75 ★★★★★
()
Ответ на: комментарий от eugene2k

> Зачем рассказывать про мейкфайлы? Вижуалстудия - наше все!

Ну чтобы не плодить идиотов, которые не могкт импользовать ContIntegr.

sv75 ★★★★★
()
Ответ на: комментарий от hobbit

А для РАЯ был реальный компилятор/интерпретатор?

На сколько я знаю в советское время в ряде учебных заведений РАЯ был реализован в виде транслятора, был ли он реализован в виде компилятора, не знаю. Но из-за разрозненности и разнородности процессоров реализация транслятора РАЯ применения не получила.

Для i386 под MS-DOS видел весьма толковую реализацию с IDE а-ля Borland Turbo C++, но она не поддерживала даже подпрограммы, не говоря о классах.

Сам по себе РАЯ - язык описания алгоритмов, для написания программ возможно и не столь предназначен как языки программирования. Но он всегда был удобен для описания алгоритмов, и во многих случаях доступен для понимания даже заказчикам/пользователям. Сам нередко использовал РАЯ, беседуя с заказчиком, уточняя те или иные моменты алгоритма будущей программы.

И учащимся он более понятен. Сам не раз сталкивался, что помогая написать своим более молодым коллегам, учащимся в ВУЗе, курсовую или рабочую программы.

Дело в том что современная школа обучения программированию скорее травмирует учащихся чем учит. Вот пришёл студент, он что такое программа то не знает, а чем она отличается от алгоритма тем более, а тут ему на в зубы Паскаль/С/С++/Бейсик, и давай пиши программу.

Чел начитается книг по языку программирования и для написания программы давай пытаться думать и описывать сразу на паскале или С, или чего он там вычитал. Он и англицкий то не сильно знает, и язык программирования для него не родной, а тут - сразу пытается писать программы. Конечно получается затык.

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

А потом спрашиваешь - а перевести теперь на Паскаль/С/С++ слабо? Перевести готовую программу на другой язык оказывается уже - раз плюнуть.

И не удивительно, что бы сразу транслировать мысли на какой либо ЯП, нужно на нём напрактиковаться, что бы он стал родным и естественным.

Сейчас перед основами программирования не принято стало давать информатику и основы алгоритмизации, имхо это плохо. Если бы давали... Тема была бы пуста.

Я его видел только в учебнике, а как дело до практики дошло, так к бейсику перешли.

Мы тоже, опсле основ алгоритмизаци, от РАЯ к бэйсику перешли, до Ельцина практически везде был он, очень близок к РАЯ, только на английском. На нём было более понятно что пишешь, что писать и как писать. У нас был сначала Вильнюсовский Бейсик, потом плавно перетекли на Quick Basic. Потом Мин. Образование издало указ - преподавать Основы программирования только на паскале, посему придя из технаря в ВУЗ я там застал паскаль (правда я его уже знал).

По поводу иных языков программирования, Паскаля, С, С++, Симула, Модула, Кобол, Фортран, Ассемблер, Ява, Перл, Лого, Язык Эльфов и т.д. Да, у них немало поклонников, но именно для обучения именно основам программирования, они на мой взгляд подходят хуже чем РАЯ.

ladserg
()
Ответ на: комментарий от DNA_Seq

Ты в курсе что на паскале написаны например первые версии Mac OS?

Первые версии винды тоже были написаны на паскале. Потом перешли на С/С++. Не в курсе правильно или нет они сделали, но так было.

З.Ы. А FPC не на Си написан случайно?

ladserg
()
Ответ на: комментарий от X-Pilot

Зачем нужен Паскаль, когда есть Си?

И безнадежно испортить человека. Писать на говне можно уже после развития чувства прекрасного(правда приходится бороться с рвотными позывами).

anonymous
()
Ответ на: комментарий от ladserg

> З.Ы. А FPC не на Си написан случайно?

Сам на себе он написан.

Nxx ★★★★★
()
Ответ на: комментарий от Nxx

Первые версии винды тоже были написаны на паскале.

пруф?

Хм, чот сейчас сунулся в инет, и не нашел достоверного источника о том, что MS Windows 1.0? анонсированная в 1983м году была написана на Pascal. А тыкать в книги по Win 3.0 API где описывался сей исторический факт думаю тыкать бесполезно (особенно если учесть что я их выкинул давно).

Впрочем и о том что она была написана на каком то ином языке достоверного источника информации тоже не нашел.

ladserg
()

Спасибо за книжку авторам, очень полезная и удобная в работе. Раздал всем школьникам 10 - 11 классов.

save_data
()

книжка жуткая, с самого начала впаривать не про азы языка, а про интерфейсы fp-ide и lazarus с мелкими камментами к коду. фактически ничем не отличаясь от методов обучения вьорду: «тыкните сюда, потом туда, потом еще вот есть меню „Файл“ и там ищите сами я забыла»

Kompilainenn ★★★★★
()

Полистал: прекрасное пособие для новичков, немного теории, разнообразные примеры, в общем - респект.

record ★★★★★
()
Ответ на: комментарий от shybovycha

>пруфлинк? пруфпик? или может быть, мозилла иль нетбинсы писались на поцкале?

http://delphi.wikia.com/wiki/Good_Quality_Applications_Built_With_Delphi

про редакторы молчу, вот только на счет netbeans сильно сомневаюсь - ну нету в нем плугина для поцкаля...

http://code.google.com/p/nbpascal/

полностью согласен. достаточно взглянуть на макароны от лазарусов/делфей

код на паскале пишут разные люди, далеко не все их них проффесионалы... как и в случае с другими языками..

более серьезный народ работает с соответствующими инструментами. пример: работать ищут более java- и c/c++ - кодеров, нежели знатоков лазаруса.

Поверь это вызвано совсем иными причинами - я сам как раз на работе использую Java и C++. Но это связано лишь со спецификой моей работы и не более.. Под десктоп с наибольшим удовольствием буду писать на FPC.

еще пример: большинство современных / востребованных библиотек не сильно-то и рассчитаны на поддержку поцкалем, делфи иль лазарусом - взять тот же devil, sdl, bullet.

Хаха - devil, sdl не требуют портирования чтобы использовать их на паскале. Я сам их использовал неоднократно. Хедеры доступны под любые версии, а если будут не доступны есть более десятка утилит для автоматической конвертации хедеров с С на Паскаль. bullet не слышал чтоб юзали, но уверен в этом нет никакой сложности максимум что надо сделать (даже если он на C++) - написать враппер.

не пытайтесь продолжать сию демагогию - все равно ведь и вы, и я останемся при своих мнениях ;)

C этим согласен)

FedeX ★★
()
Ответ на: комментарий от ladserg

> Первые версии винды тоже были написаны на паскале.

Следы сохранились в соглашении о вызове некоторых системных методов. Читал об этом в книге по WinAPI.

dave ★★★★★
()
Ответ на: комментарий от dave

Похоже, что это относилось ко временам Windows 3.x. Сейчас соглашение о вызове поменялось, судя по википедии. А так, да, следы паскаля в винде были явными.

dave ★★★★★
()
Ответ на: комментарий от alx_me

>Если попытаться вам разъяснить, то подумайте вот о чём. У меня должна быть возможность сделать как 0 так и 0.5 в данном случае. Это должно быть прозрачно реализуемо средствами языка абсолютно одинаково. В С++ есть специализации и шаблоны. Что есть у паскаля?

есть целочисленное деление - div. или можно привести результат деления «/» к integer и получить 0.

в object free pascal как и в последних версиях delphi (с 2009 вроде) - есть и шаблоны с спецификациями. В delphi ещё и анонимные функции появились.

vyv ★★★
()
Ответ на: комментарий от sjinks

>Сюрприз! Для C стандарт на язык и на библиотеку один и тот же! Более того, определение strictly conforming program предполагает наличие стандартной библиотеки, и компилятор волен использовать стандартные функции при генерации кода по своему усмотрению.

не надо юлить, тобой было заявлено - отсутствие возможности возведения в произвольную степень в ЯЗЫКЕ! попробуй в пространстве ядра LINUX заюзать функцию pow(), или ядро уже написано не на стандартном СИ (хоть и с GNU расширениями)???

vyv ★★★
()

Кстати Free Pascal и Lazarus задумывались как полностью нативная среда разработки. Не знаю как они в этом продвинулись, но раньше в настройках компилятора можно было выбирать под какой библиотекой будет gui (gtk/gtk2,qt,win,wince,carbon и ёще). Мало кто может похвастаться такой фичей.

anonymous
()
Ответ на: комментарий от no-dashi

>Вам нужно переопределение операторов? Его в паскале нет. Оно вам нужно? Идите в те языки, где оно есть. Только советую помнить, что в них может так случиться, что при указании «x/y» у вас будет 0,1,3 и 5, в зависимости от контекста (от того, с какими типами задекларированы X и Y).

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


кстати в object free pascal есть перегрузка операторов.

vyv ★★★
()
Ответ на: комментарий от I-Love-Microsoft

> Только один вопрос: Lazarus Component Library (LCL) да и сам Lazarus можно ли применять совместно с GNU Pascal Compiler (GPC)? Если нет, то данное поделие отправляется в биореактор со скоростью звука.

GPC умерло, чуть более чем полностью. GPC - не входит и не входил в проект GNU (gnu.org) ни gcc. это был просто компилятор pascal под лицензией GPL. freelascal compiler (fpc) который используется в lazarus - тоже лицензируется под GPL а рантайм библиотеки под LGPL.

кроме того, даже в лучшие годы fpc был круче и фичастее gpc.

vyv ★★★
()
Ответ на: комментарий от Absurd

>>тут уже предлагали lisp, haskell, Oberon, C++ и Perl в качестве учебных языков ?

Я бы пистон предложил.


у пистона сплошной сахар вместо синтаксиса... и табы ещё.
кроме того ужасные сообщения об ошибках с кучей квадратных скобок символов подчёркивания и бэктрейсами на 2 экрана.

vyv ★★★
()
Ответ на: комментарий от anonymous

Вы просто не поняли красоту Си. Ну ничего, это можно сделать даже многих лет дельфизма, так что и у вас ест шанс.

sv75 ★★★★★
()
Ответ на: комментарий от sv75

>> C/C++ пригодны к использованию уже после того как обучающиеся пообвыклись с базовыми понятиями, но никак не на начальном уровне.

Я видел как люди с нуля осваивали Си, мейкфайлы, вим и гцц. На мехмате МГУ это бывает.


акуеть, а в школе на уроках информатике люди также могут? или в каком нибудь ВУЗЕ средней руки на прикладухе типа биологии или экономики?

vyv ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.