Книги для программистов
55.1K subscribers
1.36K photos
283 videos
24 files
1.23K links
Книги по программированию, библиотека электронных книг для разработчиков.


По всем вопросам @evgenycarter

РКН clck.ru/3Ko9cz
Download Telegram
Автоматизация Selenium на Python

Что такое Автоматизация тестирования GUI и Selenium. 1 урок.
Импорт Selenium. 2 урок
Открытие браузера с помощью Selenium. 3 урок
Заполнение полей с помощью метода send_keys. 4 урок
Поиск локаторов. Что такое XPATH? 5 урок
Заполнение формы авторизации. 6 урок
Построение первых тестов. 7 урок
Негативное тестирование. 8 урок
Обновление страницы браузера. 9 урок
Имитация нажатия клавиш клавиатуры. 10 урок

источник

#qa #testing

Подпишись👉 @testlab_qa
👍61🤔1
Html, Css & Javascript in easy steps Special Edition
Автор: Mike McGrath (2020)

Книга в простых шагах инструктируют читателя по каждому из трех аспектов веб разработки, которые используются для создания современных веб-страниц:
✔️ Теги языка разметки гипертекста (HTML)
✔️Правила каскадных таблиц стилей (CSS)
✔️Функции JavaScript

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

Скачать книгу

👉 @bfbook
👍123
Пример реализации двухфакторной авторизации на 1С 8.3.21

&НаСервере
Процедура СозданиеШаблонаНастроекВторогоФактораАутентификации() // кнопка в обработке

ШаблонНастроек = ШаблоныНастроекВторогоФактораАутентификации.СоздатьШаблон();

ЗапросHTTP = Новый HTTPЗапрос;
ЗапросHTTP.АдресРесурса = "&host"; //в этот параметр на следующем шаге запишется адрес куда отправлять HTTP запрос
ЗапросHTTP.УстановитьТелоИзСтроки("Ваш код &secret","utf-8"); //тут можно изменить текстовку, обязательно ставим кодировку

ШаблонНастроек.HTTPЗапросНаАутентификацию = ЗапросHTTP;
ШаблонНастроек.МетодHTTPЗапросаНаАутентификацию = "POST"; //тут или GET, или POST,
//я в дальнейшем буду запрашивать пароли через POST
ШаблонНастроек.Имя = "ИмяШаблона"; //задаем имя шаблона, который используем в дальнейшем для назначения пользователю

ШаблонНастроек.Записать();

// Ставим галочку в конфигураторе у пользователя
// (Администрирование->Пользователи->ищем кому поставить) "Аутентификация токеном доступа"

КонецПроцедуры

&НаСервере
Процедура НазначениеШаблонаВторогоФактораАутентификации()

Пользователь = ПользователиИнформационнойБазы.НайтиПоИмени("ИмяПользователя"); //ИмяПользователя - меняем на имя пользователя
НастройкаВФА = Новый НастройкаВторогоФактораАутентификации;
НастройкаВФА.ИмяШаблонаНастройки = "ИмяШаблона"; //Имя шаблона задавали на 1-ом этапе

ПараметрыНастройки = Новый Соответствие;
ПараметрыНастройки.Вставить("host","https://"127.0.0.1/otpavkod/hs/sendpass/?tel=123456789"); //Задаем адрес на который будет отправлен HTTP Запрос с кодом для авторизации
НастройкаВФА.Параметры = ПараметрыНастройки; //Задаем значение настройки

МассивНастроек = Новый Массив;
МассивНастроек.Добавить(НастройкаВФА); //задаем массив настроек, тут важно, что это массив, а значит можно указать несколько настроек аутентификации

Пользователь.НастройкиВторогоФактораАутентификации = МассивНастроек; //Устанавливаем настройки пользователю
Пользователь.ОбработкаНастроекВторогоФактораАутентификации = ТипОбработкиНастроекВторогоФактораАутентификации.ИспользоватьСледующуюПриОшибке; //что делать при некорректном вводе кода
Пользователь.Записать();

КонецПроцедуры



✍️ @odin1C_rus
💩32👍11🤡11😱1🤮1
Forwarded from ITmozg
51 год автору WinRAR и FAR Manager

10 марта 1972 в Челябинске родился Евгений Лазаревич Рошал — российский программист, автор файлового менеджера FAR Manager, формата сжатия RAR (Roshal ARchiver, которому в этом году исполняется 30 лет!), архиваторов RAR и WinRAR.

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

Идея создать RAR возникла ещё в 1991-м. Но первая попытка к осязаемому результату не привела. Через год-два Евгений занялся этим опять, и на этот раз более успешно. Первой версией RAR, которую он рискнул отдать нескольким своим знакомым, был RAR 0.1, выпущенный в марте 1993. Потом были версии 0.9, 1.0, 1.1, 1.15, и тому подобные, с вариациями алгоритма сжатия. Но реально RAR пошел в распространение осенью 1993 после выхода версии 1.30. Во-первых, эта версия паковала намного лучше предшествующих за счет 64Kb окна поиска повторяющихся строк, а во-вторых, Евгений тогда познакомился с Андреем Спасибожко, который и помог двинуть RAR в массы.

Желая сосредоточиться на совершенствовании формата и архиваторов RAR и WinRAR, Евгений Рошал в 2000 году прекратил работу над файловым менеджером FAR Manager и передал авторские права на него группе программистов FAR Group, а в 2004 году передал авторские права на программы RAR и WinRAR своему старшему брату Александру (р. 1965), оставшись лишь разработчиком.

@itmozg
👍161👏14🔥10🫡73🎉1
Web API Development with Python: A Beginner's Guide using Flask and FastAPI
Автор: Rehan Haider (2021)

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

Скачать книгу

👉 @bfbook
👍10
Media is too big
VIEW IN TELEGRAM
Как сделать Asteroids в Unity (полное руководство) 🚀🌑🌑

Научитесь создавать классическую 2D аркадную игру Asteroids в Unity. Asteroids - это аркадная игра на космическую тематику с многонаправленным шутером, разработанная Лайлом Рейнсом, Эдом Логгом и Домиником Уолшем и выпущенная в ноябре 1979 года компанией Atari, Inc. Игрок управляет одним космическим кораблем на астероидном поле, которое периодически пересекают летающие тарелки. Цель игры - стрелять и уничтожать астероиды и тарелки, не сталкиваясь ни с одним из них и не попадая под ответный огонь тарелок. Игра становится сложнее по мере увеличения количества астероидов.

0:00​ - Introduction
1:10 - Project Creation
1:57 - Scene Setup
7:42 - Player Movement
19:22 - Shooting
32:25 - Asteroid Prefab
42:06 - Spawning Asteroids
1:04:22 - Destroying Asteroids
1:16:09 - Dying & Respawning
1:34:19 - Explosion Particle Effect
1:44:31 - Scoring
1:49:17 - Game Over
1:51:33 - Outro

#gamedev

👉 @game_devv
👍7🤮3👎1
Вопрос по SQL с собеседования Airbnb

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

airbnb_search_details

id:int
price:float
property_type:varchar
room_type:varchar
amenities:varchar
accommodates:int
bathrooms:int
bed_type:varchar
cancellation_policy:varchar
cleaning_fee:bool
city:varchar
host_identity_verified:varchar
host_response_rate:varchar
host_since:datetime
neighbourhood:varchar
number_of_reviews:int
review_scores_rating:float
zipcode:int
bedrooms:int
beds:int


Ответ

SELECT city, property_type, avg(bedrooms) as n_bedrooms_avg, avg(bathrooms) as n_bathrooms_avg
FROM airbnb_search_details
GROUP BY city, property_type
ORDER BY city


#db

👉 @database_info
👍20😁10
Top 1000 Java Interview Questions: Includes Spring, Hibernate, Microservices, GIT, Maven, JSP, AWS, Cloud Computing
Автор: Knowledge Powerhouse (2017)

Сборник вопросов для подготовки к собеседованию на позицию Java разработчика

Скачать книгу

👉 @bfbook
👍10
Вопрос с собеседования Dropbox

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

db_employee

id:int
first_name:varchar
last_name:varchar
salary:int
department_id:int
db_dept

id:int
department:varchar

Ответ:

select abs(max(salary) filter (where department = 'marketing') - max(salary) filter (where department = 'engineering'))
from db_employee emp
LEFT JOIN db_dept dept on emp.department_id = dept.id


#db

👉 @database_info
👍10
Everyday Go - The Fast Track for Golang
Автор: Alex
Ellis (2021)

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

“Everyday Go” - представляет собой сборник практических примеров, уроков и методик для разработчиков Go. Темы охватывают жизненный цикл программного обеспечения от изучения основ до тестирования программного обеспечения, распространения и мониторинга.

Скачать книгу

👉 @bfbook
👍5
Парсинг веб-страниц с помощью C++

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

В этом руководстве вы узнаете, как использовать C++ для реализации веб-скрапинга с помощью библиотек libcurl и gumbo. Вы можете следить за развитием событий на GitHub.

👉 @cpp_lib
👍6
The Art of Computer Programming, Vol. 1: Fundamental Algorithms, 3rd Edition
Автор: Donald E. Knuth (1997)

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

Скачать книгу

👉 @bfbook
👍14🔥2