Языки программирования — такие же языки, как и русский, английский и т.д.
Они так же состоят из лексических, синтаксических и семантических правил.
И если вы хотя бы на среднем уровне понимаете, например, русский язык (я говорю не про правильное написание "жи" и "ши", а, скажем так, "суть", то есть — почему предложение складывается именно в таком порядке, а не каком-либо другом, чтобы соответствовать той мысли, которую хотел донести автор; почему в этом предложении это слово можно заменить синонимом, а в другом нельзя, иначе смысл слегка искажается), то при проведении аналогий между правилами языка программирования и правилами известного вам естественного ("разговорного") языка вам будет куда легче освоить этот язык программирования.
Вот по (citforum.ru/programming/cpp_march/cpp_003.shtml) этой ссылке есть статья, которая частично объясняет принцип, описанный мною выше.
Совет всем граммар-наци от меня — попробуйте себя в программировании, вдруг вам понравится)
1
1
?
1 IT
1 языки программирования
Не знаю, насколько знание языка помогает в освоении пргограммирования, но уж точно помогает знание других языков программирования)
То есть, если умеешь писать на чем-то одном, освоить еще один язык не так уж сложно. Мне в свое время пришла на ум красивая (как мне кажется) метафора — если ты смог в свое время научиться говорить, то выучить еще один язык — вполне несложная задача, так же и с программированием — если умеешь писать хоть на чем-то (хоть Turbo Pascal, хоть QBasic) "перевести" свои знания на другой язык — дело техники, а не соображалки.
Извините, но русский вы далеко не в совершенстве знаете.
По теме — мне кажется, аналогия эта с языками проводится автоматически.
а в обратную сторону тоже работает?
Хе-хе, я в 9 классе тест по Visual Basic сдала на 100%, впервые в жизни этот самый VB видя. Знание английского помогло.
Говорят, для начинающих англоговорящих программистов как раз проблемой бывает сходство ЯП с натуральным. Классический пример:
while (a == 5) do
{
// код 1
a := 4;
// код 2
}
Для них это звучит как «пока а равно пяти, делать то-то». В этом случае они воспринимают конструкцию дословно и думают, что "код 2" выполняться не будет — ведь "а" уже не равно пяти.
Анекдот по теме. Встречаются два друга программиста и один заявляет другому, что пора бы английским заняться, без него нынче никак и всё такое. Через месяц встречаются вновь и второй с удивлением обнаружив, что его друг уже очень преуспел в этом деле и вполне свободно изъясняется на английском, спрашивает в чём же секрет. На что первый отвечает: "Ты знаешь, удивительная вещь, они половину слов из C++ взяли!"
А если серьёзно, данная аналогия имеется только с парадигмой императивного программирования и даже, более того, только с процедурным. С декларативными, в частности функциональными языками, трудно провести параллель. Там больше, всё-таки математическое представление.
Чтобы всерьёз постигнуть, что Pascal напоминает какой-нибудь европейский язык (например, английский) по строю предложений, а APL напоминает какой-нибудь дальневосточный язык (например, китайский) в силу своей иероглифичности, для начала следует знать эти людские языки.
То есть совет годится только для лингвистов (или других лиц, знающих пару-тройку-другую людских языков наряду с собственною родною речью), начинающих изучать ещё и программирование — а такое случается едва ли не реже, чем поездка из Калининграда в Гурьевск.
1 как попасть из Калининграда в Гурьевск
Языки программирования помогает выучить только знание того языка, который взят за базу (на котором пишутся операторы языка). В ~99% случаев это английский язык. Если думать о всяких заоблачных абстракциях синтаксиса, это только запутает.
1 заоблачная абстракция
1С видели? И как, знание русского языка сильно помогает при чтении этого чудесного яп?
Чушь полная. Сложность программирования не в знании слов, а в понимании основ: указатели, функции, ссылки, классы и как все это взаимодействует и где нужно применять.
Единственное, в чем поможет знание языка: чтение хелпа и понимание, на что ругается компилятор. И то, даже без знания языка подобные проблемы быстро разрешимы гуглом. А когда у вас вылетает программа с ошибкой "??? ??? 0x00000005" — знание языка бесполезно.
Ах да, знание языка еще хорошо влияет на запоминание синтаксиса, да. Согласен.