fbpx

Каталог статей

Каталог статей для размещения статей информационного характера

Как выучить

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

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

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

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

Редко кто из будущих разработчиков начинает с “дорожной карты” – обзора мира программирования с высоты птичьего полета, который описывает набор соответствующих концепций программирования, языков и инструментов, которые почти 100% разработчиков используют каждый день.

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

Я тщательно отобрал эти 14 шагов, основываясь на своем личном пути обучения коду, который длился почти 20 лет.

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

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

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

Дорожная карта из 14 шагов для начинающих разработчиков

Без лишних слов, давайте начнем с самого начала!

1) Ознакомьтесь с архитектурой компьютера и основами данных

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

Это называется абстракцией – способность работать с инструментами более высокого уровня (в данном случае с языками программирования), которые упрощают и сужают необходимый объем нашего понимания и навыков.

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

В большинстве современных компьютеров есть микрочип, называемый центральным процессором (ЦП). Его можно считать мозгом компьютера. Он выполняет большинство задач по обработке чисел и логических задач, которые выполняет компьютер.

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

Если процессор – это логический центр мозга, то полезно иметь и память для временного или долгосрочного хранения информации.

Компьютеры имеют память с произвольным доступом (RAM) в качестве “рабочей памяти” (или краткосрочной памяти) для хранения информации, которая активно используется запущенными программами.

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

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

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

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

Но под капотом компьютерный чип (например, процессор или чип оперативной памяти) понятия не имеет, что такое “изображение” или “видео”.

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

Биты обычно хранятся в виде набора из восьми за один раз, известного как байт. Байт – это просто последовательность из восьми битов, например 00000001, 01100110 или 00001111. Такое представление информации называется двоичным представлением.

2) Узнайте, как работают языки программирования

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

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

Звучит ужасно для работы, не так ли? Возможно, так оно и есть, но я не знаю, поскольку в основном использую языки программирования более высокого уровня, такие как JavaScript, Python и Java.

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

Языки программирования позволяют преодолеть разрыв между тем, как наш человеческий мозг понимает мир, и тем, как его понимает мозг компьютера (CPU).

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

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

Приведем лишь несколько примеров: JavaScript и Python – интерпретируемые языки, а Java – компилируемый язык. Компилируемый или интерпретируемый язык (или их комбинация) влияет на удобство разработчика, обработку ошибок, производительность и другие аспекты, но мы не будем вдаваться в эти детали здесь.

3) Понять, как работает Интернет

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

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

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

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

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

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

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

Например, допустим, вы открываете веб-браузер и заходите на сайт “www.google.com”. В этом сценарии ваш веб-браузер является клиентом. По аналогии, клиентом можно считать и компьютер, на котором вы работаете.

В более абстрактном смысле клиентом являетесь ВЫ, поскольку именно вы инициируете разговор. Набрав в строке поиска “www.google.com” и нажав кнопку , ваш браузер запрашивает начало разговора с одним из компьютеров Google.

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

4) Практикуйте некоторые основы работы с командной строкой

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

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

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

Вы можете использовать команду L

Как только вы открываете терминал, типичный первый вопрос – “Где я”? Чтобы выяснить это, можно воспользоваться командой pwd (что расшифровывается как “Print Working Directory”). Она выводит наше текущее местоположение в файловой системе и сообщает нам, в какой папке мы сейчас находимся.

Попробуйте сделать это сами:

Как использовать командную строку

Если вы работаете на компьютере Mac, откройте приложение Terminal, которое, по сути, является терминалом командной строки Unix.

Если вы используете операционную систему без графического интерфейса пользователя (GUI), например Linux или Unix, то по умолчанию при запуске компьютера вы должны находиться в командной строке. Если ваша версия Linux или Unix имеет графический интерфейс пользователя, вам придется открыть терминал вручную.

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

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

Для удобства на домашний каталог можно ссылаться с помощью символа тильды

символ. Мы будем использовать его в нескольких примерах.

Теперь, когда мы знаем, в какой папке находимся, мы можем использовать команду ls для просмотра содержимого текущего каталога. Команда ls означает “Список”.

Введите ls и нажмите . Содержимое (файлы и вложенные папки), находящееся в текущем каталоге, будет выведено на экран.

Повторно выполните предыдущую команду следующим образом l s-al и нажмите . Теперь мы получим более подробную информацию о содержимом каталога, включая размеры файлов, даты модификации и разрешения файлов.~Дефис в предыдущей команде позволяет нам установить определенные флаги, которые изменяют поведение команды. В данном случае мы добавили фла г-a, который выводит список всего содержимого каталога (включая скрытые файлы), а также фла г-l, который отображает дополнительные сведения о файлах.

Далее мы можем создать новую папку с помощью команды mkdir, что означает “Создать каталог”. Ниже мы создадим новую папку под названием “testdir”.

Введите mkdir testdir и нажмите . Затем введите ls и нажмите . В списке вы должны увидеть новую директорию.

Чтобы создать сразу несколько вложенных каталогов, используйте фла г-p для создания целой цепочки каталогов, например, так: mkdi r-p directory1/directory2/directory3

Командная строка не так полезна, если мы можем оставаться только в одном месте, поэтому давайте научимся просматривать различные каталоги в файловой системе. Мы можем сделать это с помощью команды cd, что означает “Изменить каталог”.

Сначала введите cd testdir и нажмите . Затем введите pwd и нажмите . Обратите внимание, что теперь мы находимся внутри каталога “testdir”, указанного в команде cd. Мы зашли в него!

Введите cd … и нажмите . Символ .. указывает командной строке перейти назад к родительскому каталогу.

Затем введите pwd и нажмите . Обратите внимание, что вывод показывает, что вы вернулись в исходный каталог. Мы перешли в обратном направлении!

Далее мы узнаем, как создать новый пустой файл в текущем каталоге.

Введите touch newfile1.txt и нажмите . Вы можете использовать команду ls, чтобы увидеть, что новый файл

Введите touch newfile2.txt и нажмите , чтобы создать новый файл. Затем введите mv newfile2.txt testdir и нажмите , чтобы переместить файл в папку “testdir”.

Используйте команды ls и ls testdir для подтверждения того, что файл был перемещен в папку “testdir” (он больше не должен появляться в первоначальном месте, где вы его создали, поскольку он был перемещен, а не скопирован).

Команду mv можно также использовать для переименования файлов.

Для этого введите touch newfile3.txt и нажмите , чтобы создать новый файл. Затем введите mv newfile3.txt cheese.txt и нажмите , чтобы изменить имя файла. Используйте ls, чтобы подтвердить, что файл был переименован.

Наконец, мы можем удалить файлы и папки с помощью команды rm.

Введите rm cheese.txt и нажмите , чтобы удалить файл. Используйте ls, чтобы подтвердить, что файл был удален.

Введите r m-rf testdir и нажмите , чтобы удалить каталог “testdir” и его содержимое. Используйте ls для подтверждения удаления каталога.

Обратите внимание, что при удалении каталогов необходимо использовать фла г-rf. Это приведет к удалению папки и всего ее содержимого.

5) Развитие навыков работы с текстовым редактором с помощью Vim

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

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

Работа с текстовыми файлами в терминале важна, потому что компьютерный код – это не что иное, как текст, сохраненный в упорядоченном наборе файлов.

Конечно, для написания и редактирования кода можно использовать модный текстовый редактор вроде Microsoft Word (или, скорее, специализированные редакторы кода вроде Sublime или Atom), но это не обязательно. Терминал часто является наиболее удобным местом для написания и редактирования кода, поскольку обычно он уже открыт для выполнения команд!

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

Vim – один из старейших текстовых редакторов, проверенный временем. Vim расшифровывается как ” VI i M proved”, поскольку он является преемником инструмента под названием Vi.

Как уже упоминалось, Vim – это текстовый редактор, который был создан для работы непосредственно в терминале, поэтому нам не нужно открывать отдельное окно для работы или использовать мышь. Vim имеет набор команд и режимов, которые позволяют нам удобно создавать и редактировать текстовое содержимое, используя только клавиатуру.

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

Vim установлен по умолчанию во многих операционных системах. Чтобы проверить, установлен ли он на вашем компьютере, откройте командную строку и введите vi m-v .

Если Vim откроется в терминале и покажет версию, значит, все готово! Если нет, вам нужно установить его на свою систему. (Обратите внимание, что вы можете выйти из Vim, набрав :!q и нажав ). Более подробную информацию об установке Vim можно найти на сайте .

На мой взгляд, самый быстрый и простой способ научиться пользоваться Vim – это воспользоваться встроенным учебником VimTutor . Чтобы запустить его, убедитесь, что Vim установлен в вашей системе, откройте Командную строку, введите vimtutor , и нажмите .

Это настолько хороший учебник, что мне нет смысла тратить время на его объяснение. Так что идите и изучайте VimTutor, прямо сейчас! Увидимся в следующем разделе.

Если у вас еще остались силы после прохождения VimTutor, ознакомьтесь с этими 7 командами Vim, которые значительно повысят вашу производительность, когда вы начнете работать с Vim.

6) Возьмитесь за HTML

HTML – сокращение от H yper T ext M arkup L anguage – можно считать костями веб-страницы. Он определяет структуру страницы, указывая элементы, которые должны отображаться, и порядок их расположения.

Каждая веб-страница, которую вы когда-либо посещали в своем браузере, имеет некоторый HTML, связанный с ней. Когда вы посещаете веб-страницу, веб-сервер, на котором размещена веб-страница, отправляет HTML в ваш браузер. Затем браузер читает его и отображает для вас.

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

Следует помнить, что HTML технически не является языком программирования, хотя его часто называют “HTML-кодом”.

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

На самом деле HTML – это просто данные. Это данные, которые определяют, как должна выглядеть веб-страница, и ничего больше.

Как же писать HTML? HTML использует стандартный набор тегов (по сути, это просто метки) для идентификации доступных элементов, составляющих веб-страницу. Каждый тег определяется с помощью угловых скобок.

Например, тег title определяется следующим образом

Заголовок моей страницы

а тег абзаца определяется как

куча произвольного текстового содержимого.

Каждый элемент HTML состоит из начального и конечного тегов. Начальный тег – это просто метка тега между угловыми скобками, как, например, здесь:

Это открывает новый тег HTML. Конечный тег, по сути, то же самое, но после первой угловой скобки ставится прямая косая черта, чтобы обозначить его как конечный тег:

Любой текст между этими двумя тегами является фактическим содержимым, которое будет отображаться на странице.

Давайте рассмотрим несколько наиболее часто используемых тегов. Первый – это тег. Он определяет начало HTML-страницы. Соответствующий (обратите внимание на прямую косую черту) определяет конец HTML-страницы. Любое содержимое между этими тегами будет частью страницы.

Вторым является

.

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

тег определяет конец раздела HEAD.

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

секции.Далее следует тег the. Все содержимое внутри этого тега составляет основное содержание веб-страницы. Размещение этих четырех тегов вместе выглядит примерно так:Приведенный выше простой фрагмент HTML представляет собой простую веб-страницу с заголовком и одним абзацем в качестве основного содержимого.

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

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

: Где x – число от 3 до 6, для заголовков меньшего размера.

: Изображение.

: Ссылка.

: Форма, содержащая поля или входы для заполнения и отправки пользователем.

  • : Поле ввода для пользователей для ввода информации, обычно в форме.

  • : Разделение содержимого, используемое для группировки нескольких других элементов в целях разделения.
  • : : Еще один элемент группировки, но используется для обертывания текстовых фраз внутри другого элемента, обычно для применения специфического форматирования только к определенной части текстового содержимого.
  • 7) Разберитесь с CSS
  • Веб-страница без CSS – или C ascading S tyle S heets – подобна торту без глазури. Торт без глазури служит своей цели, но выглядит он неаппетитно!
  • CSS позволяет нам связывать свойства стиля, такие как цвет фона, размер шрифта, ширина, высота и другие, с нашими HTML-элементами.
  • Каждое свойство стиля указывает браузеру, что нужно отобразить на экране желаемый эффект. Как и HTML, CSS технически не является языком программирования. Он не позволяет нам выполнять действия, он просто позволяет нам добавлять стили к элементам HTML.
  • Давайте посмотрим, как связать стили CSS с элементами HTML. В этой головоломке есть три части:
  • Селектор CSS: Используется для определения элемента или элементов HTML, к которым мы хотим применить стиль.
  • Имя свойства CSS: имя конкретного свойства стиля, которое мы хотим добавить к соответствующим элементам HTML.

Значение свойства CSS: Значение свойства стиля, которое мы хотим применить.

Вот пример того, как эти части объединяются, чтобы задать цвет и размер шрифта абзаца:

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

(абзац) HTML-тега. Это означает, что стили внутри фигурных скобок будут применяться ко всем

тегам на веб-странице.

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

Здесь мы находим пары свойств и значений CSS, разделенные двоеточием. Свойства (в данном случае “color” и “font-size”) находятся слева. Значения этих свойств (в данном случае “red” “12px”) находятся справа. Точка с запятой завершает каждую пару “свойство/значение”.

Вы, вероятно, видите, как это работает. Приведенные выше фрагменты CSS-кода говорят браузеру использовать красные буквы размером 12px для всего текста, размещенного внутри тегов

тегов.

Как же HTML-страница узнает, что нужно включить эти стили CSS? С помощью тега HTML. Обычно стили CSS создаются в отдельных файлах (файлы .css) от HTML. Это означает, что нам нужно каким-то образом импортировать их в наши HTML-файлы, чтобы браузер знал о существовании стилей.

Для этой цели существует элемент. Мы включаем элементы в секции HTML-файлов, которые позволяют нам указать внешние CSS-файлы для импорта:

В этом примере мы импортируем стили CSS, указанные атрибутом href, в данном случае файл /home/style.css .

В следующих трех разделах мы (наконец-то) погрузимся в более технические языки программирования!

Мы рассмотрим общий обзор JavaScript, Python и Java, а также пройдемся по некоторым основным концепциям кодирования, общим для этих трех языков. Мы сравним и противопоставим возможности языков и приведем примеры кода, чтобы вы могли получить полное представление об основах всех трех языков.

8) Начните программировать на JavaScript

Давайте начнем с ответа на следующий вопрос: если мы можем использовать HTML для создания структуры веб-страницы и CSS для придания ей красивого вида, то зачем нам нужен JavaScript?

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

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

Что такое JavaScript?

Так что же такое JavaScript? JavaScript – это язык программирования, который был создан специально для веб-сайтов и Интернета. Как мы уже говорили в разделе 2, большинство языков программирования либо компилируются, либо интерпретируются, и программы обычно выполняются автономно.

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

Код JavaScript можно писать либо в текстовых файлах с расширением .js, либо в тегах непосредственно в HTML.

В течение многих лет код JavaScript в основном выполнялся в веб-браузерах. Но проект Node.js изменил эту парадигму, создав автономную среду JavaScript, которая может работать где угодно.

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

Теперь, когда мы рассмотрели некоторые общие сведения, давайте погрузимся в некоторые основы языка JavaScript.

Переменные и присваивание в JavaScript

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

Слово переменная подразумевает, что хранимое значение может меняться в ходе выполнения программы.

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

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

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

В JavaScript мы объявляем переменные с помощью ключевого слова let, например, так: let x; .

Это объявляет x как переменную, которую мы можем использовать в нашем коде. Обратите внимание, что мы добавили точку с запятой в конце строки. В JavaScript (и многих других языках) точка с запятой используется для указания конца каждого оператора кода.

Теперь, когда мы создали переменную x , мы можем присвоить ей значение с помощью знака равенства, который также называется оператором присваивания: x = 10;

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

Объявление переменной и присвоение можно выполнить в одной строке, как показано ниже:

Типы данных в JavaScript

В предыдущем разделе мы хранили целое число в переменной с именем x. Вы также можете хранить десятичное число.

Следующий тип данных, который мы рассмотрим, – булево. Булева переменная может содержать только одно из двух значений: true или false – и все они должны быть в нижнем регистре. В JavaScript true и false – это два ключевых слова, которые используются специально в качестве значений для булевых переменных:

Обратите внимание, что значения true и false не заключаются в кавычки, как это делают строки. Если бы мы заключили их в кавычки, значения были бы строками, а не булевыми функциями.

Мы часто используем булевы для управления потоком программ в условных операторах (if/else), о которых мы узнаем далее.

Выражения управления потоком программ в JavaScript

Теперь, когда у нас есть представление о переменных и основных типах данных JavaScript, давайте посмотрим, что можно с ними делать.

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

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

Утверждение If / Else

Первый оператор, который мы рассмотрим, – это оператор if. Оператор if позволяет нам выполнить некоторое действие только в том случае, если истинно требуемое условие. Вот как это работает:

5 . Мы только что определили, что x равно 10, поэтому мы знаем, что это условие истинно в данном примере.

Поскольку условие в круглых скобках истинно, код между фигурными скобками будет выполнен, и мы увидим строку “X БОЛЬШЕ 5!”, выведенную на экран. (Мы не обсуждали значение console.log(), поэтому пока просто знаем, что он выводит на экран значение в круглых скобках).

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

Циклы While

Следующий тип оператора, который мы рассмотрим, – это цикл while. Циклы позволяют нам повторять блок кода столько раз, сколько мы хотим, не копируя и не вставляя код снова и снова.

Например, предположим, что нам нужно вывести предложение на экран 5 раз. Мы можем сделать это следующим образом:

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

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

В этом примере мы инициализируем x значением 1. Затем мы напишем цикл while. Подобно оператору if, мы добавляем условие в круглых скобках. В данном случае условие – x x меньше или равно 100.

We defined a variable called x and set its value to 10. Then comes our if statement. After the keyword if , we have a set of parentheses containing the condition to evaluate, in this case, x >Далее в фигурных скобках мы указываем блок кода для выполнения. Сначала мы выводим наше сообщение на консоль. Затем мы увеличиваем x на 1.

В этот момент цикл пытается повторно оценить условие, чтобы проверить, истинно ли оно еще. Переменная x теперь имеет значение 2, так как она была увеличена в первом цикле. Условие по-прежнему истинно, так как 2 меньше 100.

Код в цикле повторяется до тех пор, пока x не увеличится до значения 101. В этот момент x больше 100, поэтому условие становится ложным, и код в цикле прекращает выполнение.

Тег HTML

Теперь, когда мы познакомились с JavaScript, давайте обсудим, как добавить файлы кода JavaScript в HTML-страницу. Мы можем сделать это с помощью HTML-тега, который мы еще не обсуждали, – тега .

Он похож на элемент, который мы использовали для добавления файлов CSS в наш HTML, за исключением того, что этот элемент предназначен специально для JavaScript.

Допустим, мы сохранили один из предыдущих примеров JavaScript, которые мы обсуждали, в файле под названием customscript.js в той же папке, что и наш HTML-файл. Мы можем добавить этот файл JavaScript в наш HTML, добавив следующий тег HTML в раздел

в раздел нашего HTML:

Это загрузит код JavaScript из файла, который будет выполняться при отображении веб-страницы в браузере.

Как только вы освоите JavaScript, вы можете попробовать создать некоторые из этих забавных проектов для начинающих, чтобы попрактиковаться.

9) Продолжайте программировать на Python

Теперь, когда вы изучили некоторые основы JavaScript, будет полезно перейти на другой язык программирования – Python.

Многие языки программирования предоставляют схожий набор функций, включая переменные, арифметические операторы, операторы if/else, циклы и функции.

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

Что такое Python?

Сначала мы расскажем немного справочной информации о Python. Как и JavaScript, Python – это высокоуровневый язык программирования, в котором приоритет отдается простоте разработки, а не скорости выполнения..На мой взгляд, Python – один из лучших языков для изучения новичками. Синтаксис чист и интуитивно понятен, и это очень популярный язык в сфере open-source и бизнеса.

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

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

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

Код Python может быть выполнен на любом компьютере, на котором установлен интерпретатор Python. Это по-прежнему широко используемый язык сценариев, но он также широко используется для науки о данных и приложений на стороне сервера.

Переменные и присваивание в Python

Как и JavaScript, Python позволяет нам определять переменные. В Python мы можем просто использовать знак равенства для создания и присвоения переменных по мере необходимости:

Синтаксис определения переменных в Python и JavaScript имеет два отличия. В Python нам не нужно ключевое слово let, а также не нужно ставить точку с запятой в конце каждой строки.

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

Типы данных в Py

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

Утверждение If / Else

Это Python-эквивалент примера if/else, который мы рассматривали в разделе JavaScript:

Мы определили переменную x и установили ее значение равным 10, а затем ввели оператор if. Поскольку условие в круглых скобках оценивается как True, код, отступленный после оператора if, будет выполнен, и мы увидим строку ‘X is GREATER than 5!’, выведенную на экран.

В Python для вывода информации на экран мы используем функцию print().

Также обратите внимание на оператор else, который выведет на экран альтернативную строку if x, если условие False.

Есть два основных отличия между приведенным выше кодом Python и кодом JavaScript, который мы видели ранее. Python использует двоеточие вместо фигурных скобок для обозначения начала блока оператора if.

Кроме того, в Python имеет значение отступ функции print(). В JavaScript отступы или пробелы между утверждениями не имеют значения, поскольку JavaScript идентифицирует блоки кода с помощью фигурных скобок и определяет конец утверждения с помощью точки с запятой. Но в этом примере Python нет ни запятой, ни фигурных скобок!

Это потому, что Python использует пробел и символ новой строки для идентификации конца утверждений и блоков кода.

Двоеточие сообщает интерпретатору Python, что блок if начинается. Код, составляющий блок if, должен иметь отступ (1 табуляция = 4 пробела – таково соглашение), чтобы интерпретатор Python знал, что он является частью блока if. Следующая строка без отступов будет означать конец блока if.

Циклы While

Далее мы обсудим циклы в Python. Цикл while в Python – это, по сути, то же самое, что мы видели в JavaScript, но с синтаксисом Python:

Различия между этим циклом while и версией JavaScript заключаются в следующем:

Мы убрали let при определении наших переменных.

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

Мы заменили фигурные скобки двоеточием.

Мы убедились, что код в цикле отделен табуляцией.

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

Начинающим питонистам я рекомендую заглянуть в Zen of Python, который представляет собой список из 20 правил написания питоновского кода.

10) Расширьте свои знания с помощью Java

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

В отличие от JavaScript и Python, которые выполняют исходный код в реальном времени с помощью интерпретатора, Java является компилируемым языком. Это означает, что для преобразования исходного кода Java в понятную компьютеру форму используется компилятор (вместо интерпретатора).

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

Тег HTML

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

JVM выполняет ту же функцию, что и интерпретаторы, о которых мы говорили в предыдущих главах. Но вместо того, чтобы принимать на вход исходный код (который хранится в файлах .java), она принимает скомпилированный байткод.

  • Преимущество такой установки заключается в том, что она позволяет байткоду, скомпилированному на определенных операционных системах и платформах, выполняться JVM на любой другой платформе.
  • Например, представьте, что у нас есть файл с кодом Java, который был написан и скомпилирован в байткод на компьютере под управлением операционной системы Windows. Этот байткод может быть выполнен (то есть программа может быть запущена) JVM на любой платформе, включая Windows, Mac OS, Linux и так далее.
  • Это не относится к большинству скомпилированных исполняемых файлов на других языках программирования, которые могут выполняться только в той среде, для которой они были скомпилированы.
  • Переменные и присваивание в Java

Одно из основных отличий Java от языков, которые мы рассматривали до сих пор (Python и JavaScript), заключается в том, что Java является статически типизированным языком.

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

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

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

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

В Java мы создаем переменные, используя следующий синтаксис:

Здесь Datatype – это тип данных, которые будет хранить переменная, например Integer, String и так далее. Далее, имя представляет собой имя переменной, которую мы определяем, чтобы мы могли использовать ее в нашем коде. Значение – это фактическое значение, которое мы присваиваем переменной. Обратите внимание, что, как и в JavaScript, все утверждения в Java заканчиваются точкой с запятой.

Типы данных в Java

В Java основные встроенные типы данных называются примитивными типами данных, и они выглядят очень знакомо, исходя из того, что мы видели в языках более высокого уровня, таких как Python и JavaScript. Основными примитивными типами являются:

Integer int : Хранит целые числа в диапазоне о т-2,147,483,648 до 2,147,483,647.

Float float : Хранит десятичные числа в диапазоне от 3,4×10^-038 до 3,4×10^038.

Boolean bool : Хранит одно из двух булевых значений true или false.

Обратите внимание, что есть еще несколько примитивных типов (short, long, byte и double), которые мы не будем здесь рассматривать, поскольку они используются не так часто, как остальные. Вот как мы инициализируем эти типы данных:

Integer: int x = 100;

Float: float pi = 3.14;

Char: char middleInitial = ‘T’;

Boolean: bool isHuman = true;

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

Например, ошибка возникнет, если наша программа попытается сохранить символьное значение в переменной, которая объявлена как целое число. Мы не можем присвоить символ ‘S’ целочисленной переменной x в предыдущем примере.

Следующим типом данных, который мы рассмотрим, будет строка – последовательность символов, чисел или знаков, представленных в виде текстовых данных.

Строки в Java являются непервичным типом данных, что означает, что они строятся из более мелких частей. Чтобы объявить строковую переменную, мы используем тип данных String и помещаем присваиваемое значение в двойные кавычки:

Заявления управления потоком данных в Java

  • Как и в JavaScript, в Java используются фигурные скобки для определения блоков кода для операторов if, циклов и функций. Мы рассмотрим те же управляющие утверждения программы, что и в предыдущих главах, и обновим примеры, чтобы использовать синтаксис Java.
  • Утверждение If / Else
  • Здесь представлен оператор if/else на языке Java, который повторяет примеры из предыдущих разделов:

Этот базовый пример if практически идентичен версии JavaScript. Единственное отличие – мы объявили тип данных x как int и используем System.out.println() вместо console.log() для вывода нашего сообщения.

Далее мы перейдем к рассмотрению циклов в Java. Поскольку синтаксис Java и JavaScript довольно похож, цикл while в Java по сути такой же, как мы видели в JavaScript:

Этот цикл while распечатает заданное сообщение 100 раз.

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

Теперь мы завершим эту статью несколькими промежуточными темами, которые вы, возможно, не сразу начнете изучать.

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

11) Отслеживайте свой код с помощью Git

Git – это самая популярная система контроля версий (СКВ), используемая сегодня. Она позволяет нескольким разработчикам совместно работать над программным обеспечением. В этом разделе мы узнаем, что такое Git, как он работает и как использовать его основные команды.

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

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

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

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

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

Добавить новые файлы и папки в проект

Редактировать код в существующих файлах и папках

Удалять существующие файлы и папки

По мере роста проекта и добавления новых функций количество файлов и папок (а также объем кода в них) увеличивается. В крупных проектах количество файлов, содержащих миллионы строк кода, может достигать сотен тысяч.

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

В связи с этим возникает вопрос: “Как, черт возьми, все эти разработчики, которые могут быть географически разбросаны по всему миру, отслеживают код своих программных проектов таким образом, чтобы они могли работать вместе над одним проектом? “

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

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

Git

Subversion (SVN)

Mercurial (Hg)

Однако Git завоевал корону как самая популярная система контроля версий в наши дни. На сегодняшний день это самая популярная VCS, используемая правительственными, коммерческими и open-source сообществами по всему миру.

Git составляет основу популярных веб-платформ ВКС, таких как GitHub и Bitbucket. Git – необходимый инструмент для любого разработчика, который он должен добавить в свой набор навыков.

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

Существует два основных способа создания репозитория Git на вашем компьютере. Первый – создать совершенно новый Git-репозиторий в существующей папке в вашей файловой системе.

Для этого просто откройте командную строку, создайте новую папку в удобном месте, например на рабочем столе, и перейдите в нее:

Теперь, когда мы создали новую папку и перешли в нее, мы можем инициализировать новый Git-репозиторий с помощью команды:

Вы должны увидеть вывод, похожий на следующий:

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

  • Команда git init создает скрытую папку .git в текущем каталоге. Эта папка и есть репозиторий Git, о котором мы говорили выше. Вы можете увидеть это, выполнив команду l s-al .
  • Второй способ получить Git-репозиторий на свой компьютер – загрузить его откуда-нибудь еще, например, из Bitbucket или GitHub.
  • Bitbucket и Github – это веб-сайты, которые позволяют

Команда git clone загружает репозиторий с указанного URL в новую папку на вашем компьютере. URL может быть либо веб-адресом, как в примере выше, либо SSH-адресом, как показано ниже:

После выполнения команды git clone должна появиться новая папка. Если вы перейдете в нее, то увидите все файлы и подпапки, составляющие проект, который вы скачали.

Следующая команда, которую мы упомянем, это git add. Команда git add используется для указания Git’у, какие файлы мы хотим отслеживать, а также для добавления изменений в уже отслеживаемых файлах в область хранения Git’а .

После того, как новые или измененные файлы были помещены в staging, они могут быть зафиксированы в хранилище с помощью команды git commi t-m “Commit message” . Это сохранит изменения во всех staged-файлах в репозитории Git.

Команды git status и git log удобны для просмотра текущего состояния рабочего каталога и истории фиксации вашего проекта.

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

12) Хранение данных с помощью баз данных и SQL

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

Вы наверняка работали с таблицами в Microsoft Excel. Таблица – это просто набор столбцов и строк, содержащих данные. Мы можем создавать таблицы в базе данных для хранения информации, которая необходима нашим программам для правильной работы.

Пишем ли мы программы на JavaScript, Python, Java или каком-либо другом языке, мы можем указать нашим программам взаимодействовать с базами данных по мере необходимости.

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

Наши программы могут взаимодействовать с базами данных в режиме реального времени по мере того, как происходят события в нашем приложении. Для этого большинство баз данных говорят на языке SQL, сокращенно от Structured Query Language.

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

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

Запрос на чтение SQL – это запрос, который просто извлекает данные из базы данных для просмотра или использования. Он вообще не изменяет данные в базе данных.

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

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

Например, допустим, у нас есть таблица PERSON с 4 столбцами, FIRST_NAME и LAST_NAME. Мы можем использовать следующий запрос, чтобы выбрать все данные только из столбца FIRST_NAME:

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

Затем мы используем ключевое слово FROM, чтобы указать базе данных, из какой таблицы мы хотим получить данные, в данном случае из таблицы PERSON. Также обратите внимание, что все команды SQL завершаются точкой с запятой.

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

Например, мы можем захотеть выбрать из таблицы PERSON только строки для людей с именем “PHIL”. Мы можем применять фильтры в SQL-запросах с помощью ключевого слова WHERE:

Этот запрос вернет все столбцы в таблице PERSON, поскольку мы использовали звездочку * в предложении SELECT вместо перечисления конкретных имен столбцов. Будут получены только те строки таблицы PERSON, в которых FIRST_NAME имеет значение “PHIL”.

Наконец, мы поговорим о сортировке. Бывают случаи, когда мы хотим видеть результаты запроса отсортированными в определенном порядке. Для этого мы можем использовать предложение ORDER BY:

Это вернет все столбцы таблицы PERSON, отсортированные в алфавитном порядке по фамилии.

По умолчанию результаты будут отсортированы по возрастанию, от A до Z. Мы можем добавить дополнительное ключевое слово ASC или DESC, чтобы указать, в каком порядке сортировать – по возрастанию или по убыванию:

13) Читайте о веб-фреймворках и MVC

Часто мы сталкиваемся с написанием кода для очень распространенных типов приложений. Веб-приложения (или веб-приложения) – это приложения, работа которых зависит от Интернета. Веб-приложения являются одними из наиболее часто создаваемых типов программных приложений.

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

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

Некоторые функции, характерные для большинства веб-приложений, включают:

предоставление удобного способа динамического изменения содержимого веб-страниц

Выполнение безопасной аутентификации пользователя через страницу входа в систему

Обеспечение надежных функций безопасности приложения

Чтение и запись данных в базу данных

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

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

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

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

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

Java имеет Spring Framework, который особенно удобен благодаря Spring Boot. Python

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

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

Менеджер пакетов – это программа, которая помогает нам поддерживать зависимости системы или программного проекта. Под “поддержкой” мы подразумеваем установку, обновление, внесение в список и удаление зависимостей по мере необходимости.

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

  • Mac OS X: Homebrew
  • Homebrew – это самый популярный менеджер пакетов для операционной системы Mac OS X. Он предлагает удобный способ установки, обновления, отслеживания, составления списка и удаления пакетов и приложений на вашем Mac.
  • Многие приложения, которые можно установить с помощью загруженных файлов .dmg, также можно загрузить и установить с помощью Homebrew.
  • Вот пример установки пакета wget с помощью Homebrew:

Linux: Apt и Yum

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

Большинство основных версий Linux поставляются со встроенным менеджером пакетов. Advanced Package Tool (APT) является родным менеджером пакетов для дистрибутивов Linux на базе Debian и Ubuntu. Yellowdog Updater, Modified (YUM) – это встроенный менеджер пакетов для дистрибутива RedHat Linux.

Вот пример установки Vim с помощью APT:

JavaScript: Node Package Manager (NPM)

Теперь, когда мы увидели, как работают некоторые менеджеры пакетов на уровне ОС, давайте рассмотрим некоторые менеджеры пакетов для конкретных языков программирования. Они могут помочь нам управлять библиотеками программного обеспечения, от которых зависят многие наши проекты по кодированию. Node Package Manager (NPM) устанавливается по умолчанию вместе с Node.js.

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

По умолчанию пакеты устанавливаются локально, но вы можете использовать фла г-g для установки пакета глобально:

Python: Pip

В Python также есть менеджер пакетов под названием Pip . Pip может быть уже установлен в вашей системе, так как он поставляется в комплекте с последними версиями Python. Pip позволяет легко устанавливать пакеты из Python Package Index с помощью команды pip install:

Java: Apache Maven

Apache Maven (обычно называемый просто Maven) – это бесплатный набор инструментов с открытым исходным кодом, включающий управление зависимостями.

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

Резюме

В

Если вам понравилась эта статья, я написал книгу под названием Coding Essentials Guidebook for Developers, которая состоит из 14 глав, каждая из которых посвящена одной из тем, обсуждаемых в этой статье.

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

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

Если у вас есть вопросы, предложения или замечания по поводу этой книги, я буду рад услышать вас по адресу jacob@initialcommit.io.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *