Точка входа в программирование
20.3K subscribers
1.25K photos
216 videos
2 files
2.77K links
Фундаментальные знания по основам программирования

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/zrgj
Download Telegram
Словарик айтишника. Буква Г

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

#начинающим
👍10🔥1🍌1
​​Что такое очередь и где её применяют

Очередь (queue) — ряд данных, хранящий элементы последовательным образом. Очередь похожа на стек, но в отличие от него, работает по принципу FIFO — First In, First Out (англ. «первым пришёл — первым ушёл»). Данные добавляют в конец, а извлекают из начала.

Для понимания, приведем пример: очередь людей. Последний занял место — последним и будешь, а первый — первым ее и покинет.

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

Применение очередей:
— реализация очередей, например на доступ к определённому ресурсу;
— управление потоками в многопоточных средах;
— генерация значений.
— Для создания буферов.

#начинающим
🔥7👍3❤‍🔥1🍌1
Инкапсуляция в ООП

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

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

#начинающим #ооп
🔥74👍2🍌1
​​Языки описания данных и алгоритмические ЯП

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

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

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

К таким языкам относятся: XML, HTML, DDL SQL и другие.

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

К алгоритмическим языкам можно отнести: Pascal, C++, Java, C# и т.д.

Был ли для вас полезен этот пост?
❤️‍🔥 — да, спасибо.
👎 — не очень.

#начинающим
❤‍🔥14🍌2👍1
Что такое связные списки и какими они бывают
 
Связный список (linked list) — это структура данных типа массив, где каждый элемент является отдельным объектом и состоит из двух элементов – данных и ссылки на следующий узел. 

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

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

Связные списки применяют для:
— построения более сложных структур данных;
— реализации файловых систем;
— формирования хэш-таблиц;
— выделения памяти в динамических структурах данных.

#начинающим
👍12🍌1
Словарик айтишника. Буква Д

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

#начинающим
❤‍🔥7👍32🗿1
​​Что такое граф и зачем он нужен

Граф (graph) — это набор узлов (вершин), которые соединены между собой ребрами (дугами) и имеют вид сети.

Граф является более общим случаем дерева, которое порой называют ациклическим графом. Два основных отличия между ними:
— в графе возможны циклы, то есть «ребёнок» может быть «родителем» для того же элемента;
— рёбра тоже могут нести смысловую нагрузку, то есть нужно сохранять их значения.

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

Применение графов:
— хранение информации, связанной друг с другом сложными соотношениями;
— анализ соотносящейся друг с другом информации;
— построение маршрута из точки А в точку Б.

#начинающим
8🍌2🔥1
Словарик Айтишника. Буквы Е и Ж

Сегодня объединим два буквы и рассмотри слова и на Е, и на Ж.

А относите ли вы себя к железячникам?

#начинающим
🔥9👍4❤‍🔥2🍌1
​​Советы программистам от специалиста с 20-летним стажем

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

#начинающим
❤‍🔥5👎3👍1🔥1🍌1
​​Почему JavaScript останется популярным языком программирования в 2024 году

Более 60% опытных программистов регулярно применяют JavaScript в своей работе, а 60% начинающих разработчиков выбирают изучение именно HTML/CSS и JS для старта своей карьеры.

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

#js #начинающим
❤‍🔥5🍌3👍1
​​Компиляция и интерпретация: что это такое и в чем разница

И компиляторы, и интерпретаторы выполняют одну и ту же работу, но работают по-разному.

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

Интерпретация — построчный анализ, обработка и выполнение исходного кода.

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

#начинающим
👍12🍌2🔥1
​​Как стать тестировщиком в 2024 году: что происходит на рынке и что учить

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

Читать статью

#начинающим
👌4❤‍🔥2🍌2👍1👎1
​​Как собрать пет-проекты для первого портфолио

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

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

#начинающим
👍11🔥31🍌1
Словарик Айтишника. Буква З

Сегодня мы узнаем, какая змея ведется в лесах IT и почему не все зомби едят мозги.

А какие ещё слова вы бы хотели видеть?

#начинающим
13👍5👎1🍌1
​​Гайд: как собрать компьютер самому

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

Внутри — примеры под каждый бюджет, актуальные на январь 2024 года.

#начинающим
3🍌3
​​Old but gold: ​Android-разработка для новичков

Добротный материал с подборкой 20+ ресурсов для старта в карьере мобильного разработчика. Подборка хоть и 2023 года, но начинающим — самое то: https://habr.com/ru/companies/yandex_praktikum/articles/738638/

#android #начинающим
❤‍🔥3🍌2👍1
Learn Anything или простая алтернатива Google поиску

Learn Anything — сервис, на котором можно выучить практически «всё». Это открытая образовательная поисковая система, которая отображает статьи, источники и репозитории, за которые проголосовало сообщество, в виде интеллект-карт:

https://learn-anything.xyz/

#начинающим
4
«Рик и Морти» создаём приложение на Swift

Серия видеоуроков по созданию iOS-приложения на тему популярного мультсериала с помощью Swift и UIKit.

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

https://youtu.be/EZpZDuOAFKE

#начинающим #ios
1
Как стать программистом самостоятельно?

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

https://habr.com/ru/post/707596/

#советы #начинающим
❤‍🔥8👍4🤔1
Проектирование базы данных для самых маленьких — на примере кинотеатра

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

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

#статья #бд #начинающим #ru
👍4🤔1