Александр, "uses crt;" пишем по желанию. WriteLn не входит в crt, он в автоматически подключаемом модуле system (почему на си такого нет???).
А начинать нужно с бейсика (самая тема!). Но не с вижуал, а с обычного. Написать на нем программки с прорисовкой и движением, реакцией на клавиши… Т.е. попыаться реализовать основы. После этого хоть на асм переходи (как я в свое время и сделал).
Я сам сначала бейсик разрюхал, а потом, ввиду ограничений по скорости и прочим ограничениям компилятора, пришлось втыкать туда асмовские вставки.
В последствии выучил паскаль. Этого оказалось достаточно для решения 100% задач. Для СУБД достаточно 1С, язык которого напоминает паскаль + алгол.
Сейчас, впринципе, могу на любом языке программу написать, если будет под рукой синтаксис. Но все-равно в каждом языке свои заморочки. Делфи в этом плане самая понятная среда разработки, на мой взгляд. А блок BEGIN…END улучшает читабельность кода, да и <IF THEN> весьма помогает в этом. Хотя и в паскале можно наворотить кучу кода в одну строчку. Плюс явное определение переменных в паскале не даст наплодить кучу ненужных локальных переменных и сохранит стек в покое.
ЗЫ: Поймите правильно, я ни в коем случае не против С, С++ и прочих Си-подобных вещей. Но для того, чтобы начать писать в них, нужно хотя бы представлять, как работает программа, что такое куча, куда "утекает" память. Этому всему прекрасно учит паскаль. А те, кто с паскаля на Си переходят с трудом, просто не то учили. Они синтаксис учили, а не логику программирования. Я до сих пор на тему комманд в справку заглядываю, т.к. не помню все наизусть, но я точно знаю, что те или иные вещи есть, соотвествтенно лезу в Ф1 за дополнительными сведениями.
Мне, всё-таки кажется, что в этой теме многие подменяют понятия: вместо "разумно начинать" пишут "я начинал".
Если раньше можно было выбирать между бейсиком, фортраном и паскалем, а потом переходить на реально применяемые языки и отдельно осваивать ООП, то сейчас можно без этих окольных путей изучать актуальный язык.
ASM сейчас нужен… наверное одному программисту из ста (кто с железом работает).
GUI на Java разрабатывать не сложнее чем на других языках. Сложно тем, кто привык к фиксированному расположению элементов в Windows. А если сразу знакомиться с менеджерами компоновки, то и проблем не будет.
История языков программирования уже не раз показала, что близость к человеческому языку и читаемость – это две большие разницы, и корреляция у них скорее отрицательная.
Самый кричащий пример – COBOL.
2 Александр Чигринец:Я не делаю большого различия между тем и другим, мне кажется, человеческому языку вообще мало соответствуют конструкции вида "если-то-иначе". Не знаю, как Вы, а я так не разговариваю.Одно время меня очень радовал ООП с его полиморфизмом и паттернами, пока я не осознал избыточность и невыразительность порой объектного моделирования. Сейчас с интересом окунаюсь в мир Лиспа и вообще, функциональной парадигмы. Кстати, в этой же манере можно писать и на Руби – тоже очень симпатичная "солянка" из парадигм, приправленная его знаменитым less surprize.
Точнее, не так: к близости к человеческому языку часто стремятся ради нее самой, а не ради читаемости – и получается дрянь вроде кобола. if/then/else – из этой же оперы, это не прибавляет читаемости, а только загромождает экран лишними символами.
А так-то человеческих названий переменных, к примеру, еще никто не отменял.
Дмитрий Гайдамович, скорее всего вы лукавите по поводу неупотребления в разговоре конструкций "если – то" и "если – то- иначе" (или, что вероятнее, просто не задумывались на этот счёт).
Вообще же, читаемость – дело субъективное и упирается в привычку. Так что спорить об этом бессмысленно.
13 февраля 2008 в 22:05
Александр, "uses crt;" пишем по желанию. WriteLn не входит в crt, он в автоматически подключаемом модуле system (почему на си такого нет???).
А начинать нужно с бейсика (самая тема!). Но не с вижуал, а с обычного. Написать на нем программки с прорисовкой и движением, реакцией на клавиши… Т.е. попыаться реализовать основы. После этого хоть на асм переходи (как я в свое время и сделал).
Я сам сначала бейсик разрюхал, а потом, ввиду ограничений по скорости и прочим ограничениям компилятора, пришлось втыкать туда асмовские вставки.
В последствии выучил паскаль. Этого оказалось достаточно для решения 100% задач. Для СУБД достаточно 1С, язык которого напоминает паскаль + алгол.
Сейчас, впринципе, могу на любом языке программу написать, если будет под рукой синтаксис. Но все-равно в каждом языке свои заморочки. Делфи в этом плане самая понятная среда разработки, на мой взгляд. А блок BEGIN…END улучшает читабельность кода, да и <IF THEN> весьма помогает в этом. Хотя и в паскале можно наворотить кучу кода в одну строчку. Плюс явное определение переменных в паскале не даст наплодить кучу ненужных локальных переменных и сохранит стек в покое.
ЗЫ: Поймите правильно, я ни в коем случае не против С, С++ и прочих Си-подобных вещей. Но для того, чтобы начать писать в них, нужно хотя бы представлять, как работает программа, что такое куча, куда "утекает" память. Этому всему прекрасно учит паскаль. А те, кто с паскаля на Си переходят с трудом, просто не то учили. Они синтаксис учили, а не логику программирования. Я до сих пор на тему комманд в справку заглядываю, т.к. не помню все наизусть, но я точно знаю, что те или иные вещи есть, соотвествтенно лезу в Ф1 за дополнительными сведениями.
13 февраля 2008 в 23:01
особенно if-then, конечно, улучшает читабельность
14 февраля 2008 в 0:05
Мне, всё-таки кажется, что в этой теме многие подменяют понятия: вместо "разумно начинать" пишут "я начинал".
Если раньше можно было выбирать между бейсиком, фортраном и паскалем, а потом переходить на реально применяемые языки и отдельно осваивать ООП, то сейчас можно без этих окольных путей изучать актуальный язык.
ASM сейчас нужен… наверное одному программисту из ста (кто с железом работает).
14 февраля 2008 в 0:05
GUI на Java разрабатывать не сложнее чем на других языках. Сложно тем, кто привык к фиксированному расположению элементов в Windows. А если сразу знакомиться с менеджерами компоновки, то и проблем не будет.
14 февраля 2008 в 0:05
Дмитрий Гайдамович, а разве явная конструкция if … then… else усложняет чтение кода? Это явно ближе к человеческому языку чем
if (…)… else …;
14 февраля 2008 в 1:00
История языков программирования уже не раз показала, что близость к человеческому языку и читаемость – это две большие разницы, и корреляция у них скорее отрицательная.
Самый кричащий пример – COBOL.
14 февраля 2008 в 1:01
2 Александр Чигринец:Я не делаю большого различия между тем и другим, мне кажется, человеческому языку вообще мало соответствуют конструкции вида "если-то-иначе". Не знаю, как Вы, а я так не разговариваю.Одно время меня очень радовал ООП с его полиморфизмом и паттернами, пока я не осознал избыточность и невыразительность порой объектного моделирования. Сейчас с интересом окунаюсь в мир Лиспа и вообще, функциональной парадигмы. Кстати, в этой же манере можно писать и на Руби – тоже очень симпатичная "солянка" из парадигм, приправленная его знаменитым less surprize.
14 февраля 2008 в 1:01
Точнее, не так: к близости к человеческому языку часто стремятся ради нее самой, а не ради читаемости – и получается дрянь вроде кобола. if/then/else – из этой же оперы, это не прибавляет читаемости, а только загромождает экран лишними символами.
А так-то человеческих названий переменных, к примеру, еще никто не отменял.
14 февраля 2008 в 1:01
2 Жека jkff Кирпичев: полностью согласен и одобрямс
14 февраля 2008 в 1:02
Дмитрий Гайдамович, скорее всего вы лукавите по поводу неупотребления в разговоре конструкций "если – то" и "если – то- иначе" (или, что вероятнее, просто не задумывались на этот счёт).
Вообще же, читаемость – дело субъективное и упирается в привычку. Так что спорить об этом бессмысленно.