LINUX.ORG.RU

ЯП для понимания основ

 ,


1

1

С какого ЯП стартовать, что бы понять все основы программирования (желательно ЯП с ООП)? В дальнейшем хочется перейти на PHP/Ruby + Javascript (а с этих языков не советуют начинать как с первых). Си или Си++ учить смысла не вижу, один не поддерживает ООП, второй просто грамоздкий и полгода не хватит с ним, что бы чувствовать себя более менее уверенно в программировании.

а с этих языков не советуют начинать как с первых

всегда было интересно, кто такие дурные советы даёт.

surefire ★★★
()

Паскаль же. Берёшь Вирта - «Алгоритмы и структуры данных» или лучше «Алгоритмы + структуры данных = программы». Все основы прекрасно расписаны.

ya-betmen ★★★★★
()

C есть смысл учить, именно для того, чтобы понять основы.

alix ★★★★
()

С пайтона начинай, должно пойти нормуль.

Deleted
()

«Computational category theory» + Standard ML.

olibjerd ★★★★★
()

В дальнейшем хочется перейти на PHP/Ruby + Javascript

Расслабься, быдлокодерам понимать ничего не надо, основы тем более. У тебя уже есть «правильное видение», не вкоем случае не изучай си и сицеце, а так же асм! Сразу садись за пых и жабаскрипт да строчи, для этого программировать уметь не надо.

erfea ★★★★★
()

для понимания основ

Assembler же.

Lavos ★★★★★
()

Лично я считаю, что использование ЯП с динамической типизацией для обучения должно считаться преступлением и наказываться двадцатью двумя годами отсидки. Так что плюсую к семейству ML. Возможно, имеет смысл начать с F#.

Zenom ★★★
()

Разве человек может реально что-то выбрать? Мне с вас забавно.

anonymous
()

для общего развития не помешает например java, erlang, python

Но лучше не языки, а способности действовать или бездействовать эффективно.

anonymous
()

Бабло = Java.

Хобби = пробуй разные языки, бери что нравится.

</thread>

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

С тобой не согласен университет MIT, в котором брали scheme, а затем python для обучения основам.

Типизация не имеет значения для понимания основ программирования.

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

Паскаль. Для ооп и дальше - делфи.

Сначала Форт (зри в стек!), а потом Симула, ибо Алгол офигенен.

P.S. Твои вредные советы по сравнению с моими — адекватны, как цитаты капитана Очевидность!

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

(зри в стек

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

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

Аноним перестал понимать юмор? Да какой ты, нахрен, аноним? Логинься давай :)

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

Типизация не имеет значения для понимания основ программирования.

Если учиться по курсу уровня SICP, то возможно. А для менее крутых динамическая типизация ведёт к каше в голове.

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

Очень рекомендую «Become an Xcoder». Там всё написано достаточно понятно для людей, которые о программировании знают крайне мало. Информация немного устарела, но для старта сойдёт.

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

динамическая типизация ведёт к каше в голове.

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

anonymous
()

один не поддерживает ООП

вы просто не умеете его готовить.

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

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

Zenom ★★★
()

Лор такой лор! Правильный ответ (Java) появился только к концу первой страницы комментов.

anonymous
()

Рекомендую начать с Pascal. Не Borland Pascal, а оригинальный паскаль Вирта. Очень минималистичный язык, созданный специально для обучения программированию, все его концепции в том или ином виде используются в современных языках программирования. ООП это сложная концепция, забивать ей голову со старта не стоит, лучше изучить структурное программирование для начала, распространённые структуры данных, алгоритмы.

Legioner ★★★★★
()
Последнее исправление: Legioner (всего исправлений: 1)
Ответ на: комментарий от Legioner

паскаль Вирта

если начинать с этой помоки, новичок рискует в самом начале повредить себе мозги, заразиться порочными идеями, etc. Так может статься, что до настоящего ООП он уже не дойдет, максиум на что будет способен — суррогаты типа жабы. Конечно, если человек мыслит самомтоятельно, должен сработать иммунитет, произойдет отторжение, переключение на что-то другое. В этом случае он просто потеряет время. Но в иных случаях — это навсегда. Поэтому чтение вирта, дейкстры, и прочих даунов от программирования, строго не рекомендуется

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

Сахар на сахаре. Язык на основе синтаксиса выбирают только днища рабисты.

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

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

паскаль интересно поизучать, когда имеешь навыки: C, asm, Java, Erlang, Python, Forth, SQL, PHP, Lisp, Javascript, HTML, CSS ... если конечно не пропадет желание ...

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

Вирт, Кнут, Дейкстра это общепризнанные классики и одни из основоположников Computer Science. Дауны тут явно не они.

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

Вирт, Кнут, Дейкстра это общепризнанные классики и одни

теоретически — да. А практически, когда касалось реальных дел, они все либо обосрались (например Дейкстра) либо не сделали ничего существенного (например Кнут). На деле, CS двигали совершенно другие люди. Но для быдла нужны кумиры. По аналогии, у нас в литературе, например, негр-эфиоп, писатель мыльных опер и беллетристики, считается величайшим поэтом. Так же и в CS. Народу не положено слишком много знать.

anonymous
()

Любой на котором есть курс или книги или знакомый гуру для начинающего.

umren ★★★★★
()
Последнее исправление: umren (всего исправлений: 1)
Ответ на: комментарий от Legioner

Вирт, Кнут, Дейкстра это общепризнанные классики и одни из основоположников Computer Science. Дауны тут явно не они.

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

anonymous
()

С ООП лучше вообще не начинать, если тебе реально основы нужны. Для основ начинай лучше с алгоритмов и псевдоязыка, дальше двигайся в сторону изучения парадигм программирования, чтобы понять, что и где надо использовать. Потом уже можно начинать учить ЯП, начиная со структурного программирования (привет паскаль), продолжая ООП, и дальше функциональщину + логические языки (по типу Prolog) + остальное по желанию.

cherry-pick
()
Ответ на: комментарий от cherry-pick

Алсо, я вот свой путь вообще с энциклопедии профессора Фортрана и «о чем размышляют роботы» начинал. Последняя книжка, кстати, взрослым тоже интересна будет, я считаю.

cherry-pick
()

Ах да, совсем забыл - php и javscript не ООП ни разу, скорее жалкая пародия. В общем, я серьезно - учи с основ алгоритмов/информатики, времени потратишь в разы больше, зато и пользы будет больше.

cherry-pick
()

советую ruby, кретина entefeed не слушай, у него пукан рвет при одном упоминании о ruby, травма детства ...

не обязательно начинать с фреймворка rails, можно глянуть на более легковесные решения: http://www.sinatrarb.com/

http://lotusrb.org/

http://scorchedrb.com/

также не помешает разобраться в http://rack.github.io/

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

php и javscript не ООП ни разу,

В похапе да, там жабская кастрированная модель. Что же касается JS, то тут ты лоханулся. В JS мощная модель ООП, заимствованная из SELF, который, в свою очередь, продолжатель идей Смоллтока. Единственное существенное отличие — наличие примитивных типов. На практике это ограничение существенной роли не играет.

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

жабская
кастрированная

Ясно-понятно, этот эксперт сломался уносите его.

cherry-pick
()
Ответ на: комментарий от cherry-pick

С ООП лучше вообще не начинать, если тебе реально основы нужны.

Старпер в треде, все в инвалидку!

anonymous
()

Си или Си++ учить смысла не вижу, один не поддерживает ООП, второй просто грамоздкий

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

cPunk ★★
()
Последнее исправление: cPunk (всего исправлений: 3)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.