Как начать программировать?

Пока я учился программированию, у меня никогда не было четкой, осознанной картины того, что я делаю. То что-нибудь одно подучишь, то что-нибудь другое, но никогда не была видна картина «в целом». Все знания доставались как-то отрывочно. Не было понятно, откуда начинать и куда двигаться. Не было системности.

Для того, чтобы получить эту системность, я поступил в университет. Но, на самом деле, это не слишком помогает. Только пройдя некоторый путь, начинаешь что-то понимать.

Если вы так же не можете понять логики во всем этом сложном мире программирования — вам сюда. Итак, предположим, вы решили стать программистом.

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




Университет

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

Само по себе программирование, написание кода программ — не слишком сложный процесс. В этом нет ничего фундаментального. Это скорее навык, как рисование или разговор на иностранном языке. Программированию можно было бы обучать в ПТУ.

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

И говоря «полностью», я имею ввиду, не только компонентный подход («Это видеокарта, а это процессор»), а и более глубокие уровни («Регистры процессора Intel 80386 можно разделить на такие группы»), вплоть до элементарной базы («Диод — это ...»).

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

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

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

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




Если учится самому

Первый шаг людей, которые хотят научиться программированию, это обычно покупка какой-нибудь книжки. Например, Бьерн Страуструп — Язык программирования С++. С++, вообще, почему-то самый популярный язык у новичков.

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

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

Однако, если бы я начинал учить кого-то программированию, я бы предложил начать с C#.

Еще было бы неплохо сразу задумать себе какую-нибудь цель — решить написать какую-нибудь определенную программу.

Знания без применения — плохо усваиваются. А когда по крупицам реализуешь какую-то сложную идею, это мотивирует и ты незаметно сам для себя осваиваешь новые вещи.

Основная причина, почему я бы рекомендовал С# — это возможность постепенного развития.

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

Я помню, у меня была проблема, когда после изучения С++ по одной из книг, я не мог перейти к программированию приложений под Windows. Это было ужасно. Я прочел книгу о языке. Переменные, конструкции языка, вывод строк на экран — все стало довольно просто.

А вот чтобы создать простое «Hello World» окно в Windows — надо было очень постараться. Сразу появляется множество новых непонятных вещей: оконные процедуры, хендлы, сообщения и прочие атрибуты WinAPI. Перестаешь понимать, как это все работает...и забрасываешь обучение.

С# сразу привязан к Windows и прикладному уровню. Начать — совсем просто. Окна программ создаются с помощью визуального редактора — это не сложнее работы в Ворде.

Потом программа постепенно обрастает кодом.

Кроме того, C# изначально объектно-ориентирован. Мне было сложно по книге понять, что вобще этот ООП такое. Но на практике понимаешь все довольно быстро.

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

Впринципе, C# — не единственный язык, который удовлетворяет вышеперечисленным требованиям, но мне он нравится больше всех.




Практика

Чтобы начать программировать, понадобится среда программирования — Microsoft Visual Studio. Качать варез необязательно, Microsoft предлагает облегченную бесплатную версию — http://www.microsoft.com/express/vcsharp. То, что нужно для обучения.

Если опыта программирования нет вобще — лучше обзавестись книгой. Просто, чтобы познакомится с основными понятиями в программировании. Переменные, циклы, функции — все это мало отличается от языка к языку.

Необходимые примеры можно найти в интернете. В интернете вобще можно найти все необходимое. Основной источник информации для Windows программиста -- библиотека MSDN.

Удачи!

Также посмотрите:

  • Дамир
    Кстати сайт классный!
  • Дамир
    Спасибо вы мне очень помогли разобраться с этим вопросом. :)
  • Дамир
    Хотя если подумать то delphi for win 32 не очень отличается от Microsoft Visual Studio. Порядок выполнения действий в ней тот же самый что и в delphi for win 32.
  • m2yor
    В действительности, трудно определить какой язык программирования лучше, а какой хуже.
    ИМХО Delphi – хороший язык для первых шагов, так как более жесткая структурированность кода, требуемая языком, обеспечивает лучшую читабельность и понимаемость ). Я понял ООП именно на Delphi. Однако на ряду с этими достоинствами проявляются недостатки, главным из которых является – отсутствие толковой справочной системы и нехватка технической документации.
    И поскольку речь идет о программировании под win32, то я бы все-таки рекомендовал ознакомиться с принципами WinApi, без этого может возникнуть ситуация когда программист не понимает как работает его программа.
    Но опять - же все зависит от цели. Если вам просто хочется напасать к примеру, секундомер, то можно обойтись дизайнером Delphi не углубляясь в всякие там WinApi и регистры процессора.
    Советую для начала поискать какие-то готовые примеры, в том, что заинтересует – хорошо разобраться, понять как все работает, затем попытаться создать что-то не сложное самому и по мере энтузиазма совершенствовать программу. Когда более – менее разберетесь с делфи, то стоит попробовать другой язык программирования.
  • Дамир
    Я спросить хотел, я недавно начал программированию обучаться но на delphi for win 32 2006 версия, хочу узнать насколько этот язык лучше c#, и счего мне лучше начинать, потамучто на дельфи помойму легче хотя у меня такаяже запутанность как и у вас, помогите пожалуйста.
  • Дамир
    Скажите пожалуйста какую книгу я могу скачать для изучения языка c# желательно для чайников, просто в таких книгах по проще всё объясняют заранее спасибо.
blog comments powered by Disqus