LINUX.ORG.RU
ФорумTalks

Паскаль - годный ЯП для начинающего?


0

1

Есть ли в этом хоть доля правды? Я сомневаюсь.

В обучении программированию всегда есть баланс между глубоким пониманием работы программы и вероятностью на программирование забить, так как стремное это дело(С) и возможностью быстро наваять прикольную програмку, повысить ЧСВ до небес и полюбить программирование, но ничего особо не понимать (Java, C#). Маргинальщине вообще нечего делать, пока не научишься нормальным ЯП. Паскалю нет места ни там, ни там. И ничего впечатляющего не напишешь и истинную суть памяти тоже не поймешь. Фраза Вирта устарела, о том что это лучший ЯП для обучения?

Разговор идет о ребенке лет в 14-15. Навеяно желанием некоторых обучить его Паскалю.

★★★★★

Лучше С, тогда вероятность быдлокода в будущем резко сократится, ибо С заставляет думать более глубоко. А вообще паскали хорош, чтобы алгоритмы показать и т.д., ибо он простой.

Zhbert ★★★★★
()

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

hibou ★★★★★
()

я начинал с бейсика, считаю это плохим началом
надо было с си.

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

>По моим наблюдениям паскалисты мыслят более четко, нежели те, кто начинал с бэйсика.

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

Zhbert ★★★★★
()

я учился еще на МК-61, поэтому мне как-то пофиг. а паскаль - годный язык для обучения, т.к действительно простой, но достаточно функциональный.

Komintern ★★★★★
()

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

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

на си у начинающего бардак будет. Даже если он будет понимать что происходит, ему будет трудно научиться дисциплине и аккуратности.

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

>на си у начинающего бардак будет.

Угу. Это все спорный вопрос. С одной стороны, лучше С, с другой паскаль.

Zhbert ★★★★★
()

> Фраза Вирта устарела, о том что это лучший ЯП для обучения?

Нет. Он разрабатывался _только_ для обучения. А начинать надо со scheme и SICP.

iBliss
()
Ответ на: комментарий от Zhbert

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

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

Я же говорил что говорил что лучше лиспы и ФП не приплетать для начала. Читать ту часть, которая о маргинальщине

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

Пусть бардак, лишь бы работало :)

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

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Пусть бардак, лишь бы работало :)

facepalm.php

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

это уже личное предпочтение. К тому же, ты выше написал, что С заставляет думать. а зачем вообще думать? почему программирование не сделать более легким и быстрым? К тому же в корпоративе всегда есть необходимость создать что-то в короткие сроки. И тут сражу в ум приходят delphi, java и .NET. Ни о каких сях речи не идет.

anonimbus ★★
()

>И ничего впечатляющего не напишешь

Всё там можно написать. Много готовых биндингов к сишным и плюсовым либам, можно писать на нормальном человеческом синтаксисе используя гтк, кутю, сдл. FPC + Lazarus и в путь.

Napilnik ★★★★★
()

Учился с паскаля. Думаю что лучше бы было начинать с си

Mitsumi
()

Cи - привевает умение и понимание делать правильные вещи.
Гениальная простота, стабильность и быстрое построение GUI тут однозначно только tcl/tk.
Все иное от лукавого, задач и от поисков тарелки с рисом.

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

>Лучше С, тогда вероятность быдлокода в будущем резко сократится,

Как раз это самый легкий способ получить быдлокодера

DNA_Seq ★★☆☆☆
()

>повысить ЧСВ до небес и полюбить программирование, но ничего особо не понимать (Java, C#)

Для простых программок это избыточно, тут как раз процедурные языки рулят и педалят

Паскалю нет места ни там, ни там.


Паскаль хорош для обучения алгоритмам и основным методам работы с данными

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

>почему программирование не сделать более легким и быстрым?

Натыкать кнопачькоф и соединить линиями? Это не программирование.

Zhbert ★★★★★
()

> Паскаль - годный ЯП для начинающего?

да, все именно так

aho
()

подари ребёнку лего - пусть глаза отдохнут

guilder
()
Ответ на: комментарий от elipse

>Гениальная простота

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

стабильность

Которая зависит от версии либц и конкретного дистрибутива. После копипасты программы в другой дистр, сишная прога имеет шансов на порядок больше паскалевской нормально заработать;)

и быстрое построение GUI тут однозначно только tcl/tk

Дельфи с лазарусом тоже не медленно шлёпают стандартную формочку.

и от поисков тарелки с рисом.

А вот тарелка с рисом решает чем заниматься в рабочее время, но С от этого хорошим ЯП не становится. Он неизбежное зло.

Napilnik ★★★★★
()

Разговор идет о ребенке лет в 14-15. Навеяно желанием некоторых обучить его Паскалю.

В этом возрасте я уже разбирался немного в Pascal'е. Сейчас на хлеб с маслом зарабатываю при помощи C++, зыркая в сторону C#, но все основы программирования таки дались вместе с Pascal'ем, который является основным моим языком и по сей день, just for fun пишу только на нём :)

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

Даже если он будет понимать что происходит, ему будет трудно научиться дисциплине и аккуратности.

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

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

завязывай бредить

Гениальная простота, стабильность и быстрое построение GUI тут однозначно только tcl/tk.

elipse ★★★
()

Пущай читает SICP и пишет на лиспе. Мужиком вырастет!

lambrianov
()

Разговор идет о ребенке лет в 14-15. Навеяно желанием некоторых обучить его Паскалю


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

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

> Самый годный, я бы так даже сказал.

Чистый паскаль несколько вещь в себе.
Ну численные методы стругать и в консольку сплевывать выхлоп.
Очень поучительно.

elipse ★★★
()

Паскаль не нужен. Применимость в реальной жизни у него мизерная (либы, фреймворки, переносимость, все дела), так что придётся потом другой язык всё равно изучать. Если уже знаешь основы программирования, это будет напрасный труд - тратить силы на паскаль. Если субъект изучения полный ноль, то, может, он и кстати окажется - это случай школы. Впрочем, как в школе изучают, то можно что угодно колупать. У меня вот, например, в школе даже про работу с файлами не рассказывали, а их «вычислительные» задачи хоть на жабоскрипте сделать можно было.

Smacker ★★★★★
()

Да. Паскаль весьма годный язык. Позволит человеку изучить основы алгоритмизации и построения структур данных без опасения сломать себе мозг в отличие от.

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

Школьник осилит, да.

Но школьники как поставщики ПО для GNU/Linux? Нет уж, увольте.

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

> сломать себе мозг в отличие от.

А такие мозги не нужны в программировании, если они сразу ломаются от всего «в отличие от».

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

Всё прекрасно работает, но при выходе новой платформы идиллия кончается

и все n тысяч программ и библиотек в Debian на С и С++ разом ложатся, а мейнтейнеры рвут на себе волосы

Которая зависит от версии либц и конкретного дистрибутива

поставил lazarus, ничего не менял - сразу сбилдил пустой проект, получил бинарник, сделал ему ldd:

	linux-gate.so.1 =>  (0x00eab000)
	libX11.so.6 => /usr/lib/libX11.so.6 (0x00ed3000)
	libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x0038d000)
	libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x004e1000)
	libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x00ce2000)
	libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x0032e000)
	libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x00110000)
	libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00b4c000)
	libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x001da000)
	libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x00a46000)
	libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x002fb000)
	libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x0090a000)
	libcairo.so.2 => /usr/lib/libcairo.so.2 (0x001df000)
	libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00259000)
	libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00b52000)
	libxcb.so.1 => /usr/lib/libxcb.so.1 (0x0025d000)
	libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x003a7000)
	librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x00277000)
	libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00280000)
	libXext.so.6 => /usr/lib/libXext.so.6 (0x002a6000)
	libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00971000)
	libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x00ac3000)
	libXi.so.6 => /usr/lib/libXi.so.6 (0x002b6000)
	libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x00933000)
	libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x00afc000)
	libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x00e68000)
	libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0x00993000)
	libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x002c4000)
	libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x002c8000)
	libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x002ce000)
	libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00445000)
	libz.so.1 => /lib/libz.so.1 (0x00314000)
	libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x008b6000)
	libpcre.so.3 => /lib/libpcre.so.3 (0x0093b000)
	/lib/ld-linux.so.2 (0x004c4000)
	libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0x00997000)
	libdirectfb-1.2.so.0 => /usr/lib/libdirectfb-1.2.so.0 (0x00d78000)
	libfusion-1.2.so.0 => /usr/lib/libfusion-1.2.so.0 (0x0036d000)
	libdirect-1.2.so.0 => /usr/lib/libdirect-1.2.so.0 (0x00377000)
	libpng12.so.0 => /lib/libpng12.so.0 (0x009f1000)
	libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0 (0x002f5000)
	libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x004bb000)
	libXau.so.6 => /usr/lib/libXau.so.6 (0x00329000)
	libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x008e6000)
	libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0x008ec000)
	libselinux.so.1 => /lib/libselinux.so.1 (0x00a16000)
	libexpat.so.1 => /lib/libexpat.so.1 (0x00a89000)

ладно думаю - создал пустой проект консольного приложения:

	linux-gate.so.1 =>  (0x00d1b000)
	libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00582000)
	libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00592000)
	/lib/ld-linux.so.2 (0x00410000)

ладно - удалил все что в заготовке написало, оставил:

begin
     writeln( '1' );
end.

и, о чудо - да, теперь libc ему не надо, но вот интересно - такой же hello-world собранный на C с флагом --static также не требует libc, наверное я что-то делаю не так

aho
()
Ответ на: комментарий от Napilnik

> А вот тарелка с рисом решает чем заниматься в рабочее время, но С от этого хорошим ЯП не становится. Он неизбежное зло.

Все, закончил ?
Дураки тоже неизбежное зло, и что ?

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

>Какими именно моделями микроконтроллеров?

В данный момент Silicon Labs C8051F320, но в будущем, наверно, будут более мощные и сложные, ибо надо АЦП побольше и прочего.

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

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

Дооо, только человек потом ничего полезного ДАЖЕ себе сделать не может.

Я сам переучивался после камерных и абстрактных знаний в институте.

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

Возьми обратный пример: человек выучил все тонкости С, но не знает чем отличается прямой обход бинарного дерева от обратного. Такое нужно или как?

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

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

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