Учимся программировать: секрет рекурсивного метода

5

Кодирование — это то, за чем будущее, как глобально, так и индивидуально. В этом нет никаких «если» или «но». Боитесь за свою работу, беспокоитесь о глобализации и боитесь, что в ближайшие годы не сможете сводить концы с концами? Затем защитите себя в будущем, научившись программировать.

Он открыт для всех, независимо от их возраста, пола или цвета кожи, он приносит хорошие деньги, средний разработчик программного обеспечения получает около 100 000 в год, и ожидается, что этот сектор будет продолжать расти со скоростью 22% до 2022 года.

И это совершенно независимо от местоположения. Вы можете легко сделать это онлайн, общаясь по электронной почте Skype или Snapchat. Так что, если вы живете в Ржавом поясе, Бангладеш или в пещере, пока у вас есть приличная связь, вы можете программировать, получать зарплату и жить в комфорте — хотя, по общему признанию, последняя часть может быть трудной, если вы живущий в целом в земле.

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

Единственное, что тебя сдерживает, это ты.

Какой язык следует выучить?

Ладно, это может быть немного бойко. Есть еще кое-что, что вас сдерживает. Но все проблемы можно преодолеть! Это даже не должно стоить вам денег. Первый выбор, который вы должны решить, это какой язык вы хотите начать изучать. Их много, и это может немного пугать.

К счастью, здесь тоже есть инструменты. В качестве альтернативы, вы можете справиться с этим самостоятельно. На самом деле это не так сложно. Первое, что вам нужно знать, это то, что существуют две разные группы языков. Это динамические и статические языки.

  • Динамические языки более удобны для начинающих. Они не требуют столько кода и очень гибки. Они научат вас теории. Они также известны как «высший уровень». Это означает, что они не беспокоятся о битах и ​​болтах (которые являются нижними уровнями), а вместо этого удаляются оттуда на несколько шагов. Таким образом, вместо того, чтобы говорить «достаньте хлеб из холодильника, достаньте два ломтика, возьмите масло…», вы просто скажете: «приготовьте бутерброд с арахисовым маслом и джемом». Очевидно, что последний намного быстрее, и поэтому динамические языки быстрее дают вам результаты.
  • Статически типизированные языки — обратная сторона медали. Эти языки ближе к тому, что вы представляете, когда думаете о кодировании. Этот язык находится на более низком уровне и, следовательно, требует больше кода для выполнения того же самого — но, по крайней мере, вы решаете, будет ли ваш сэндвич с корочкой или без, так что вот что. Эти языки программирования считаются более масштабируемыми, надежными и простыми в обслуживании. В то же время ошибки наказываются более сурово.

Понял? Хорошо, теперь давайте рассмотрим несколько примеров языков, которые вы могли бы использовать. Сначала мы начнем с некоторых динамических языков.

PHP

Если вы планируете поэкспериментировать с WordPress — а, скорее всего, так оно и есть, поскольку это одна из самых популярных платформ для создания веб-сайтов, на которой создано XXX веб-сайтов в Интернете, — тогда вам стоит начать с PHP. .

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

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

Другие платформы, построенные на PHP, включают Facebook, Wikipedia, Yahoo и Tumblr.

Javascript

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

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

Отлично, теперь давайте рассмотрим некоторые языки со статической типизацией.

Ява

Вы действительно не можете говорить о статически написанном языке, не упоминая Java. Это все равно, что говорить о Северной Америке, не говоря о США. Девяносто процентов компаний из списка Fortunate 500 используют Java. Вот так. Девять ноль. А те, кто этого не делает, вероятно, похожи на людей, отказавшихся от Apple в нулевых. В принципе дело, блин!

Это не совсем простой язык, поэтому, возможно, это не лучшее место для начала. Тем не менее, этому, безусловно, можно научиться, потому что, если 90% этих компаний используют его, то, очевидно, кто-то должен его зарабатывать, верно? Конечно, вы могли бы сделать хуже, чем выбрать Java в качестве своего первого статически написанного языка.

С

Другим (очень) важным языком является C. Это язык выбора операционных систем. Это повлияло на все языки программирования, которые мы упоминали до сих пор. В некотором смысле это похоже на латынь: каждый европейский язык в значительной степени заимствовал из нее и ее идеи. И, как и в случае с латынью, его изучение значительно облегчит изучение всех остальных языков.

Проблема? Опять же, латинское сравнение сослужит мне хорошую службу. Это сложно и абстрактно и потребует довольно много кода, чтобы делать то, что другие делают гораздо меньше. Это означает, что новичку может быть трудно сохранять мотивацию. Вероятно, лучше сначала изучить что-то, чтобы разобраться с основными идеями, а затем взяться за C.

Где я могу узнать об этих платформах?

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

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

CodeAcademy бесплатна, и 24 миллиона человек уже научились программировать на этой платформе. Это, вероятно, больше людей, чем вы думали, могут написать код в этом мире. Это очень хорошее место для начала. Здесь вы можете изучить HTML, CSS, Javascript, Jquery, PHP, Python и Ruby.

На Coursera доступно более 1000 курсов. Большинство курсов бесплатны. Вы также можете получить сертификат для некоторых курсов, если вы платите. В этом месте есть курсы таких прославленных мест, как Вашингтонский университет, Стэнфорд, Университет Торонто и Вандербильта.

edX — еще один хороший. Это с открытым исходным кодом, поэтому вам никогда не придется ничего платить. Он был построен Гарвардом и Массачусетским технологическим институтом еще в 2012 году и с тех пор растет. Сегодня с этим местом связано более 60 школ. Таким образом, вы будете знать, что у вас будет разнообразие и вы будете на переднем крае. Вы, конечно, могли бы сделать хуже.

Как учиться

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

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

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

Кроме того, вы можете начать изучать шаблоны проектирования в языке. Что означает это загадочное выражение? Это означает, что вы посмотрите на некоторые базовые решения для важных вещей, которые должен делать каждый язык программирования. Да, вы можете попытаться разобраться в этом самостоятельно — на самом деле, я советую вам попробовать хотя бы несколько из них, так как это научит вас думать на языке программирования и понимать основы. Тем не менее, вы не хотите тратить время на изобретение колеса, особенно потому, что ваше колесо, вероятно, будет квадратным по сравнению с тем, что уже существует.

Читать рекурсивно

Очень важный способ научиться читать статьи по программированию — читать их рекурсивно. Это означает, что вы читаете информативную статью, берете все непонятные вам термины и самостоятельно гуглите их. Затем вы читаете самые полезные статьи и, если есть термины, которых вы здесь не знаете, повторяете процесс. Наконец, когда вы пришли к пониманию концепции, на которую наткнулись, вы возвращаетесь к статье и продолжаете ее читать.

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

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

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

Вывод

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

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

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

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