Фундаментальные знания по основам программирования Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Другие наши проекты: https://tprg.ru/media
Закончится ли это когда-нибудь...? Возможно, нет.
Читать полностью…Вчера мы с вами разобрали ключевое слово defer
в Go, посмотрим, насколько вы поняли эту тему?
#викторина #go #golang
Ключевое слово defer в Golang
В Go defer
— это ключевое слово, позволяющее отложить выполнение какого-либо действия до тех пор, пока окружающая функция не завершится. Основным применением defer является гарантирование закрытия файла при его создании/открытии.defer
вызывается в трёх случаях:
— закончено выполнение функции, в которой вызывается defer
;
— окружающая функция выполнила оператор return
(например, в теле цикла);
— возникновение паники.
Важно: если в коде несколько ключевых слов defer
, то при компиляции они выполняются в порядке обратном их объявлению. При этом операции, обёрнутые в defer
вызываются в прямом порядке, а не обратном.
Рассмотрим работу этого ключевого слова на примере:
package main
import "fmt"
func main() {
defer fmt.Println("World")
fmt.Print("Hello, ")
}
fmt.Println("World")
будет вызвана после выполнения fmt.Print("Hello, ")
, но до завершения функции main
.Hello, World
.
Читать полностью…
Словарик айтишника. Буква В
В этот раз вы узнаете, что такое вилдкарды, почему жёсткий диск называют винчестером и как Витя связан с проводами.
#начинающим
Что такое стек и как он работает
Стек — это абстрактный тип данных, представляющий собой список элементов, организованных по принципу LIFO (от англ. last in — first out, «последним пришёл — первым вышел»).
Просмотреть стек можно целиком, а добавлять и удалять элементы только из начала. Последний добавленный в стек элемент должен будет покинуть его раньше остальных.
Примером стека может быть куча книг, расположенных в вертикальном порядке. Для того, чтобы получить книгу, которая где-то посередине, вам нужно будет удалить все книги, размещенные на ней.
Как применяют стеки:
— реализация рекурсии;
— вычисления постфиксных значений;
— временное хранение данных, например истории запросов или изменений.
Свежий путеводитель по Flutter-разработке от коммьюнити
Новичкам он будет полезен для уверенного старта, а опытным разработчикам подскажет, куда развиваться дальше.
В дорожной карте собраны все актуальные инструменты и технологии по мнению комьюнити, а также ссылки на полезные материалы. У репозитория больше 5 тысяч звезд, а последнее обновление — всего несколько месяцев назад: https://github.com/olexale/flutter_roadmap
#flutter
А где же ваши ручки?
А точнее пальцы. Именно они понадобятся вам в финтех-кликере от Газпромбанка.
Предлагаем сделать перерыв от рабочих дел и узнать самых значимых предков современного финтеха, начиная с каменного века.
Кликайте сюда, чтобы кликать ещё больше.
Реклама АО «Газпромбанк» erid: LjN8KGtSx
React: тестируем компоненты с помощью Jest и Testing Library
В этой статье вы сможете найти множество полезной информации:
— создание шаблона React-приложения с помощью Vite;
— создание компонента для получения приветствия от сервера;
— установка и настройка Jest, Testing Library;
— тестирование компонента с помощью снимков Jest, а также Testing Library, используя стандартные возможности, кастомный рендер и кастомные запросы.
#js #react
Погружаемся в мир рекуррентных нейронных сетей
Ключевым преимуществом RNN по сравнению с обычными нейросетями является их способность анализировать последовательные данные с учётом контекста. Это открывает широкие возможности для применения в таких сферах, как обработка естественного языка.
В прикреплённой ниже лекции вы узнаете о них чуть лучше. Ведущая хорошо объясняет принцип устройства рекуррентного слоя и рекуррентной нейронной сети, а также процесс обработки данных такими сетями (forward pass).
#лекция #rnn #nlp
Что такое массивы и какими они бывают
Для простоты восприятия можно считать, что массив (array) — это таблица, каждый элемент которого имеет индекс — «адрес», соответствующих его позиции.
Эта структура данных является самой простой и широко используемой, а другие структуры, такие как стеки и очереди, являются производными от массивов.
Массивы бывают:
— одномерные;
— многомерные;
— статические;
— динамические.
Понять, выглядят одномерные и многомерные массивы можно на картинке, а вот два других типа рассмотри поподробнее.
Статические массивы — это массивы, которые имеют неизменяемый размер, то есть если мы зададим длину массива три, то в нем может храниться только три элемента.
Применение статических массивов:
— в качестве блоков для более сложных структур данных;
— для хранения несложных данных небольших объёмов;
— для сортировки данных.
Динамические массивы — это массивы, которые в ходе жизни могут изменять свой размер. Задается размерность таких массивов, как правило, не числом, а переменной, значение которой может меняться.
Применение динамических массивов:
— в качестве блоков для структур данных.
— для хранения неопределённого количества элементов.
#начинающим
Таблицы в SQL: понятие, типы и операции
Одной из важнейших составляющих SQL являются таблицы, которые представляют собой структурированную коллекцию данных, представленную в виде столбцов (также известных, как поля или атрибуты) и строк (иначе, записи или кортежи). Они используются для хранения и организации данных в реляционных базах данных.
Основные операции над таблицами:
— создание;
— вставка данных;
— выборка данных;
— обновление данных;
— удаление данных.
Таблицы делятся на:
1. обычные;
2. секционированные;
3. системные;
4. широкие;
5. временные, которые делятся на:
— локальные;
— глобальные;
А подробнее узнать о самих таблицах и их видах и операциях над ними можно в этом полезном материале.
#sql #начинающим
Не так давно мы прошли материал по методу pop()
в Python. Проверим ваши знания по этой теме ещё раз?
#python #викторина
Визуализация алгоритмов сортировки
Визуализатор, создан с использованием React для того, чтобы помочь понять работу основных алгоритмов сортировки.
Что он может:
— сортировать массив из любых трехзначных натуральных чисел;
— менять скорость выполнения;
— запускать, приостанавливать и сбрасывать выполнение;
— генерировать массив из случайных чисел.
Подробнее на GitHub
Опробовать визуализатор можно по этой ссылке.
Компиляция и компоновка в C++
Создание исполняемого файла из исходного кода на C++ состоит из трех этапов:
1. обработка директив препроцессора;
2. компиляция;
3. компоновка (линковка).
Рассмотри их подробнее:
На первом этапе препроцессор выполняет включение файлов #include, определение макросов #define и условную компиляцию #ifdef, #ifndef, #if, #elif, #else, #endif.
На втором же этапе с помощью специальных программ происходит проверка кода на соответствие правилам языка C++, а исходный код переводится в файл машинного кода, называемый объектным файлом.
На заключительном, третьем этапе выполняются три важные задачи:
1. объектные файлы объединяются в единую исполняемую программу;
2. файлы библиотек связываются компоновщиком;
3. обеспечивается правильное разрешение всех межфайловых зависимостей.
На картинке мы может видеть процесс создания исполняемого файла в случае, когда исходный код находится в двух файлах .cpp
#c
Приглашаем на девятый QIWI Server Party
В этот раз своими историями поделятся спикеры из QIWI, Яндекса и Альфа-Банка. В программе митапа:
— Павел Черняк, QIWI: «Нельзя просто так взять и обновить» — обновление Java до 17 версии, Spring Framework до 6-й и связанные с этим подводные камни;
— Андрей Свиридов, Альфа-Банк: «Как TDD поможет вам лучше работать»;
— Дмитрий Некрылов, Yandex 360: «Защищаем пользователей от раздвоения конференций»;
— Самвел Барсегян, QIWI: «Инфраструктурная платформа QIWI» — знакомство с Platform engineering на практическом примере.
Приезжайте на митап или подключайтесь к трансляции. Детали и регистрация по ссылке.
Реклама КИВИ БАНК (АО) ИНН 3123011520/772601001 LjN8KGR8R
10 бесплатных нейросетей для работы с текстом и медиа
Делегирование работы искусственному интеллекту может помочь сэкономить много времени и сил. Для разных типов задач подходят разные ИИ, поэтому в этой подборке вы сможете найти подборку бесплатных сервисов, работающих с текстом и изображениями.
#ии #инструменты
Пользовательские директивы во Vue
Во Vue директивы представляют собой специальные html-атрибуты, позволяющие манипулировать DOM-элементами. Все директивы обычно начинаются с буквы v, а затем через дефис идет название директивы.
Помимо встроенных директив (таких как v-model
и v-show
), Vue также позволяет регистрировать ваши собственные пользовательские директивы. Подробнее о том, как можно создать свои директивы, вы сможете узнать в этом подробном уроке.
#js #vue #веб #фронтенд
Интересные горячие клавиши и хитрости SQL Management Studio
В этой статье не будет банальных Ctrl+Home/End и Shift+Up/Down, о них и так многие знают. Однако есть комбинации клавиш, которые мало кто использует, но они могут значительно упростить и ускорить вашу работу в SQL Management Studio.
А кроме того, работу каждой комбинации можно увидеть на гифках, добавленных автором.
#sql
Специалисты по кибербезопасности, отметьте в календаре 2 декабря
Всего за один день вы сможете пройти все этапы отбора, познакомиться с будущей командой и даже получить оффер.
Какие задачи будут в вашем планере:
— проведение аудитов кибербезопасности компаний Группы Сбер: оценка процессов и технических мер;
— подготовка отчётных материалов по результатам аудита для руководства компаний и банка;
— согласование планов развития кибербезопасности;
— развитие методологии аудитов.
У Сбера разнообразный стек технологий: от классического энтерпрайза до микросервисной архитектуры, и методология аудитов кибербезопасности собственной разработки на основании подходов CMMI с уклоном в техническую защищённость.
Присоединяйтесь к команде, которая обеспечивает безопасную работу инфраструктуры Сбера и помогает клиентам защищать свои средства от мошенников.
Масштабные проекты и работа в крупнейшем IT-сообществе ждут вас. Регистрируйтесь на One Day Offer.
Реклама ПАО СБЕРБАНК
Задачи на Python для разминки
Если вы хотели ввести в свою рутину программирование, но не знали, с чего начать, то эта статья может вам с этим помочь. В ней мы собрали для вас 4 задачки на Python, с которых будет комфортно начинать.
#задачи #python
Область видимости в JavaScript
Мы используем переменные, чтобы хранить в них временные значения, а потом в нужный момент получать к ним доступ. Но не все переменные в нашем коде одинаково доступны. Доступна ли переменная и как получить к ней доступ, определяет область видимости.
Область видимости — это часть программы, в которой мы можем обратиться к переменной, функции или объекту. Этой частью может быть функция, блок или вся программа в целом — то есть мы всегда находимся как минимум в одной области видимости.
А более детально узнать что это такое и на примерах рассмотреть то, как работает эта область, вы сможете в этой статье.
#js
Нужен ли английский программисту
Краткий ответ — да. Без полноценного знания английского не получится стать высококлассным специалистом и сделать карьеру в большинстве областей IT.
О том, почему это так и какие преимущества дает знание английского вы сможете узнать в этом ролике. Автор видео не только расскажет, но и на конкретных примерах покажет, зачем нужен этот язык для специалистов в сфере IT.
#начинающим
Словарик айтишника. Буква Б
Сегодня мы кратко пройдемся по ключевых терминам и жаргонизмам, связанных с IT и программированием. На этот раз разберем слова на вторую букву алфавита.
#начинающим
Что такое <html> и зачем он нужен
Элемент <html> представляет собой элемент верхнего уровня HTML-документа, который называют корневым элементом. Все другие элементы должны быть потомками этого элемента то есть должны находиться внутри него. Тег <html> ставят сразу после <!DOCTYPE>.
К этому элементу применимы следующие атрибуты:manifest
— указывает URI (унифицированный идентификатор ресурса) манифеста, который сообщает браузеру, какие элементы страницы могут быть закэшированы;title
— добавляет всплывающую подсказку, которая появляется, когда курсор мыши задерживается в окне веб-страницы;prefix
— здесь прописывают open-graph разметку, она используется для того, чтобы при репосте из соцсетей передавались те заголовки, картинки и описания, которые мы укажем.xmlns
— необязательный для HTML5, но необходимый для XHTML-документов атрибут. Определяет пространство имён XML, в котором находится документ;version
— определяет версию шаблона HTML-документа, но необходимости в этом нет (вышел из употребления с версии HTML5);lang
— подсказывает браузеру язык, на котором написан текст на странице и позволяет понять, отличается ли язык страницы от языка вашей системы.
#html
Может показаться, что разработчики только и делают, что пишут код
Но 29 ноября ребята из Газпромбанка развеют это заблуждение. На вебинаре старший технический директор компании Максим Морев и Software Engineer, Head of Profession backend-разработки Вадим Ваганов расскажут:
— чем занимается разработчик и какую пользу приносит организациям;
— с какими проблемами сталкивается в повседневной деятельности;
— почему круто работать в большой команде вовлеченных профессионалов;
— как составить дорожную карту backend-разработчика для уверенного старта.
Встретимся с вами на лекции «Дорожная карта разработчика» 29 ноября в 17:00 (по МСК)
Реклама Банк ГПБ (АО), ИНН: 7744001497
Дальше вся информация будет только в книжках и документации
Читать полностью…Soft Skills: что это и как найти их у себя
Все мы знает о таком скилле как коммуникабельность, но как понять, на каком уровне у тебя этот навык? И что делать, если на низком или его практически нет?
Ответы на эти и другие важные вопросы о soft skills вы сможете узнать в этом материале.
#softskills #советы
Метод pop() в Python
Вчера мы провели викторину, где участвовал метод pop()
и многие из ответивших выбрали неверный ответ. Это нормально, мы проводим такие опросы как раз для того, чтобы понять пробелы в знаниях и ликвидировать их. Сегодня более подробно разберем этот метод.pop()
— это встроенный метод списка в Python, который из списка удаляет и возвращает элемент по индексу. Если оставить скобки пустыми, то по умолчанию удаляется и возвращается последний элемент в списке. Если же передать индекс, то метод выталкивает элемент, соответствующий ему.
Рассмотрим его работу на примерах (их можно увидеть на картинке):
1. в первом случае pop()
передал в переменную del_value
последний элемент из списка и удалил его оттуда;
2. во втором случае pop()
передал в переменную del_value
второй элемент в списке (с индексом 1 т.к. отсчет начинается с 0) и удалил его.
Надеюсь, мы помогли вам разобраться в этой теме. В ближайшее время проведем викторину на с участием метода pop()
, чтобы закрепить материал.
#python
Устроим викторину. Как думаете, сможете ответить правильно?
#викторина #python