Solidity для начинающих
Автор Samuel O'Toole
()
Об этой электронной книге
Solidity для начинающих - это исчерпывающее руководство по изучению Solidity, языка программирования, используемого для создания смарт-контрактов на блокчейне Ethereum. Эта книга идеально подходит для разработчиков, которые хотят погрузиться в мир блокчейна и создать свои собственные децентрализованные приложения.
Книга начинается со знакомства с Ethereum и концепцией смарт-контрактов, объясняя, почему они важны и как работают. Далее читатели знакомятся с Solidity и его синтаксисом и постепенно проходят через более сложные концепции, такие как типы данных, управляющие структуры, функции и наследование.
Каждая глава книги содержит множество примеров, помогающих читателю полностью понять изучаемые концепции. Эти примеры охватывают самые разные темы, включая создание простого токена, взаимодействие с другими смарт-контрактами и разработку DApps.
Помимо технических аспектов Solidity, в книге также рассматриваются лучшие практики написания безопасных и эффективных смарт-контрактов. Читатели узнают, как избежать распространенных подводных камней и написать код, устойчивый к атакам и эксплойтам.
К концу книги читатели получат прочную основу Solidity и уверенность в себе, чтобы начать создавать свои собственные смарт-контракты. Solidity для начинающих - идеальная отправная точка для тех, кто хочет освоить эту захватывающую и быстро развивающуюся область.
Связано с Solidity для начинающих
Похожие электронные книги
C--. Практика многопоточного программирования Рейтинг: 0 из 5 звезд0 оценокBlack Hat Go: Программирование для хакеров и пентестеров Рейтинг: 0 из 5 звезд0 оценокРеактивные шаблоны проектирования Рейтинг: 0 из 5 звезд0 оценокМодернизация Java Enterprise: облачные технологии для разработчиков Рейтинг: 0 из 5 звезд0 оценокGolang для профи: Создаем профессиональные утилиты, параллельные серверы и сервисы Рейтинг: 0 из 5 звезд0 оценокОсновы компиляции: инкрементный подход Рейтинг: 0 из 5 звезд0 оценокЧистый код: создание, анализ и рефакторинг Рейтинг: 0 из 5 звезд0 оценокKali Linux в действии. Аудит безопасности информационных систем. 2-е издание Рейтинг: 0 из 5 звезд0 оценокРаспределенные системы. Паттерны проектирования Рейтинг: 0 из 5 звезд0 оценокKali Linux от разработчиков Рейтинг: 0 из 5 звезд0 оценокГлубокое обучение на R Рейтинг: 0 из 5 звезд0 оценокКибербезопасность: стратегии атак и обороны Рейтинг: 0 из 5 звезд0 оценокAutodesk® Inventor® 2012 и Inventor™ LT 2012. Официальный учебный курс Рейтинг: 0 из 5 звезд0 оценокГлубокое обучение на Python Рейтинг: 0 из 5 звезд0 оценокСовременный подход к программной архитектуре: сложные компромиссы Рейтинг: 0 из 5 звезд0 оценокPython. Лучшие практики и инструменты Рейтинг: 0 из 5 звезд0 оценокAngular и TypeScript. Сайтостроение для профессионалов Рейтинг: 0 из 5 звезд0 оценокРабота с BigData в облаках. Обработка и хранение данных с примерами из Microsoft Azure Рейтинг: 0 из 5 звезд0 оценокОсваиваем Kubernetes. Оркестрация контейнерных архитектур Рейтинг: 0 из 5 звезд0 оценокАлгоритмы и структуры данных. Извлечение информации на языке Java Рейтинг: 0 из 5 звезд0 оценокKali Linux: библия пентестера Рейтинг: 0 из 5 звезд0 оценокКак устроен Python. Гид для разработчиков, программистов и интересующихся Рейтинг: 0 из 5 звезд0 оценокОблачный Go Рейтинг: 0 из 5 звезд0 оценокРуководство по криптовалютам: Руководство для начинающих по криптовалютам, блокчейну и NFT. Рейтинг: 0 из 5 звезд0 оценокМасштабируемый рефакторинг. Возвращаем контроль над кодом Рейтинг: 0 из 5 звезд0 оценокВеб-разработка с применением Node и Express: Полноценное использование стека JavaScript. 2-е издание Рейтинг: 0 из 5 звезд0 оценокAutodesk© Revit© Architecture 2013–2014. Официальный учебный курс Рейтинг: 0 из 5 звезд0 оценок100 ошибок Go и как их избежать Рейтинг: 0 из 5 звезд0 оценокБезопасность веб-приложений: Поиск уязвимостей в JavaScript Рейтинг: 0 из 5 звезд0 оценокScala. Профессиональное программирование. 5-е изд. Рейтинг: 0 из 5 звезд0 оценок
«Программирование» для вас
Python без проблем: решаем реальные задачи и пишем полезный код Рейтинг: 0 из 5 звезд0 оценокПрограммируем на Java. 5-е межд. изд. Рейтинг: 0 из 5 звезд0 оценокКурс программирования на языке Си : учебник Рейтинг: 0 из 5 звезд0 оценокИскусство поиска решения в нестандартной задаче Рейтинг: 0 из 5 звезд0 оценокТеоретический минимум по Computer Science: Все, что нужно программисту и разработчику Рейтинг: 0 из 5 звезд0 оценокPython. Экспресс-курс. 3-е изд. Рейтинг: 0 из 5 звезд0 оценокПростой Python. Современный стиль программирования. 2-е изд. Рейтинг: 0 из 5 звезд0 оценокSQL: быстрое погружение Рейтинг: 0 из 5 звезд0 оценокПараллельное программирование на C# и .NET Core Рейтинг: 0 из 5 звезд0 оценокАлгоритмы и структуры данных. Извлечение информации на языке Java Рейтинг: 0 из 5 звезд0 оценокАлгоритмы и структуры данных Рейтинг: 0 из 5 звезд0 оценокОсновы программирования на языке Python Рейтинг: 0 из 5 звезд0 оценокUnity для разработчика. Мобильные мультиплатформенные игры Рейтинг: 0 из 5 звезд0 оценокАлгоритмы неформально. Инструкция для начинающих питонистов Рейтинг: 0 из 5 звезд0 оценокGo: идиомы и паттерны проектирования Рейтинг: 0 из 5 звезд0 оценокPython и машинное обучение Рейтинг: 0 из 5 звезд0 оценокЭффективная работа в Microsoft Excel Рейтинг: 0 из 5 звезд0 оценокЗнакомство с Python Рейтинг: 0 из 5 звезд0 оценокPython. К вершинам мастерства Рейтинг: 0 из 5 звезд0 оценокЧистый Python. Тонкости программирования для профи Рейтинг: 0 из 5 звезд0 оценокPython. Чистый код для продолжающих Рейтинг: 0 из 5 звезд0 оценокВеб-разработка с применением Node и Express: Полноценное использование стека JavaScript. 2-е издание Рейтинг: 0 из 5 звезд0 оценокРазработка веб-приложений с использованием Flask на языке Python Рейтинг: 0 из 5 звезд0 оценокКодер с улицы. Правила нарушать рекомендуется Рейтинг: 0 из 5 звезд0 оценокUnity в действии. Мультиплатформенная разработка на C#. 2-е межд. издание Рейтинг: 0 из 5 звезд0 оценокSpring. Все паттерны проектирования Рейтинг: 0 из 5 звезд0 оценокЭффективное использование C++. 55 верных способов улучшить структуру и код ваших программ Рейтинг: 0 из 5 звезд0 оценокПостроение компиляторов Рейтинг: 0 из 5 звезд0 оценокMicro:bit для неугомонных ученых Рейтинг: 5 из 5 звезд5/5
Отзывы о Solidity для начинающих
0 оценок0 отзывов
Предварительный просмотр книги
Solidity для начинающих - Samuel O'Toole
Оглавление
Обложка
Solidity для начинающих
Глава 1: Введение в Solidity
1.1. Что такое Solidity?
1.2. Особенности Solidity
1.3. Синтаксис Solidity
1.4. Ограничения Solidity
1.5. Будущее Solidity
1.6. Заключение
Глава 2: Зачем изучать Solidity?
2.1. Почему стоит изучать Solidity?
2.2. Преимущества использования Solidity
2.3. Ресурсы для изучения Solidity
2.4. Заключение
Глава 3: История Solidity
3.1. Рождение Solidity
3.2. Особенности Solidity
3.3. Эволюция Solidity
3.4. Заключение
Глава 4: Настройка среды разработки
4.1. Заключение
Глава 5: Основы Solidity
5.1. Типы данных
A) Булевый
B) Integer
C) Адрес
D) Строка
E) Массив
F) Mapping
G) Enum
H) Struct
I) Байты
J) Числа с фиксированной и плавающей точкой
5.2. Заключение
Глава 6: Переменные
6.1. Типы данных
6.2. Область видимости
6.3. Хранение
6.4. Лучшие практики
6.5. Заключение
Глава 7: Операторы
7.1. Арифметические операторы
7.2. Логические операторы
7.3. Побитовые операторы
7.4. Операторы сдвига
7.5. Операторы присваивания
7.6. Операторы сравнения
7.7. Логические операторы присваивания
7.8. Заключение
Глава 8: Управляющие структуры
8.1. Условные операторы
А) Операторы if
B) Операторы switch
8.2. Циклы
A) Циклы for
B) Циклы while
C) Циклы do-while
8.3. Функции
A) Определение функции
B) Вызов функции
8.4. Заключение
Глава 9: Функции
9.1. Синтаксис функций Solidity
9.2. Параметры в функциях Solidity
9.3. Возвращаемые значения в функциях Solidity
9.4. Видимость функций Solidity
9.5. Модификаторы в функциях Solidity
9.6. События в функциях Solidity
9.7. Функции обратного хода в Solidity
9.8. Заключение
Глава 10: Смарт-контракты
10.1. Что такое смарт-контракты?
10.2. Написание и развертывание смарт-контракта
A) Введение
Шаг 1: Выберите подходящую блокчейн-платформу
Шаг 2: Напишите смарт-контракт
Шаг 3: компиляция смарт-контракта
Шаг 4: развертывание смарт-контракта
Шаг 5: Взаимодействие с умным контрактом
B) Заключение
10.3. Тестирование смарт-контракта
A) Введение
B) Важность тестирования смарт-контрактов
C) Трудности тестирования смарт-контрактов
D) Лучшие практики тестирования смарт-контрактов
E) Заключение
Глава 11: Объектно-ориентированное программирование в Solidity
11.1. Классы и объекты
11.2. Наследование
11.3. Полиморфизм
11.4. Заключение
Глава 12: Наследование
12.1. Как работает наследование в Solidity
12.2. Использование наследования Solidity
12.3. Преимущества наследования Solidity
12.4. Ограничения наследования Solidity
12.5. Лучшие практики наследования Solidity
12.6. Заключение
Глава 13: Полиморфизм
13.1. Наследование в Solidity
13.2. Переопределение функций в производных контрактах
13.3. Абстрактные контракты
13.4. Интерфейсы в Solidity
13.5. Использование полиморфизма в Solidity
13.6. Заключение
Глава 14: Абстракция
Глава 15: Продвинутый Solidity
15.1. Библиотеки
A) Введение
B) Что такое библиотеки?
C) Использование библиотек
D) Преимущества использования библиотек
E) Лучшие практики использования библиотек
F) Заключение
Глава 16: События
16.1. Введение в события Solidity
16.2. Что такое события в Solidity?
16.3. Как работают события в Solidity?
16.4. Как использовать события в Solidity
16.5. Заключение
Глава 17: Модификаторы
17.1. Что такое модификаторы?
17.2. Использование модификаторов в Solidity
A) Контроль доступа
B) Проверка входных параметров
C) Оптимизация использования газа
D) Цепочка модификаторов
17.3. Заключение
Глава 18: Обработка ошибок
18.1. Типы ошибок в Solidity
18.2. Техники обработки ошибок Solidity
A) assert()
B) require()
C) revert()
D) try-catch
18.3. Лучшие практики обработки ошибок в Solidity
18.4. Заключение
Глава 19: Соображения безопасности
19.1. Распространенные уязвимости безопасности в смарт-контрактах
19.2. Атаки на реентерабельность
19.3. Целочисленные переполнения и недополнения
19.4. Уязвимости газового лимита
19.5. Непроверенные возвращаемые значения
19.6. Уязвимости контроля доступа
19.7. Заключение
Глава 20: Лучшие практики написания безопасных смарт-контрактов
20.1. Заключение
Глава 21: Создание децентрализованных приложений (DApps) с помощью Solidity
21.1. Введение
21.2. Что такое DApps?
21.3. Преимущества DApps
21.4. Как работают DApps?
21.5. Популярные DApps и примеры их использования
21.6. Заключение
Глава 22: Создание DApp с помощью Solidity
22.1. Что такое Solidity?
22.2. Настройка среды разработки
22.3. Основной синтаксис Solidity
A) Контракты
B) Функции
C) Переменные
22.4. Создание простого DApp
A) Токен-контракт
B) Пользовательский интерфейс
C) Тестирование DApp
22.5. Развертывание DApp в сети Ethereum
Глава 23: Будущее солидности
23.1. Новые тенденции в разработке Solidity
23.2. DeFi приложения
23.3. Несгораемые токены (NFT
)
23.4. Решения для масштабирования второго уровня
23.5. Децентрализованные автономные организации (ДАО)
23.6. Межцепочечная совместимость
23.7. Заключение
Глава 24: Перспективы разработчиков Solidity
24.1. Текущее состояние индустрии блокчейна
24.2. Роль разработчиков Solidity
24.3. Навыки, необходимые для того, чтобы стать разработчиком Solidity
24.4. Карьерные пути разработчиков Solidity
24.5. Перспективы разработчиков Solidity
24.6. Заключение
Solidity для начинающих - это исчерпывающее руководство по изучению Solidity, языка программирования, используемого для создания смарт-контрактов на блокчейне Ethereum. Эта книга идеально подходит для разработчиков, которые хотят погрузиться в мир блокчейна и создать свои собственные децентрализованные приложения.
Книга начинается со знакомства с Ethereum и концепцией смарт-контрактов, объясняя, почему они важны и как работают. Далее читатели знакомятся с Solidity и его синтаксисом и постепенно проходят через более сложные концепции, такие как типы данных, управляющие структуры, функции и наследование.
Каждая глава книги содержит множество примеров, помогающих читателю полностью понять изучаемые концепции. Эти примеры охватывают самые разные темы, включая создание простого токена, взаимодействие с другими смарт-контрактами и разработку DApps.
Помимо технических аспектов Solidity, в книге также рассматриваются лучшие практики написания безопасных и эффективных смарт-контрактов. Читатели узнают, как избежать распространенных подводных камней и написать код, устойчивый к атакам и эксплойтам.
К концу книги читатели получат прочную основу Solidity и уверенность в себе, чтобы начать создавать свои собственные смарт-контракты. Solidity для начинающих - идеальная отправная точка для тех, кто хочет освоить эту захватывающую и быстро развивающуюся область.
Samuel O'Toole
Solidity для начинающих
Первое издание
Arkadia Ediciones 04.02.24
Оригинальное название: Solidity for Beginners
© Samuel O'Toole, 2024
Дизайн обложки: KMR
Изображение на обложке: Vikayatskina for Freepick
Цифровое издательство: Arkadia Ediciones
Первое издание: февраль 2024 г.
Все права защищены. Никакая часть данного произведения не может быть воспроизведена, включена в компьютерную систему или передана в любой форме и любыми средствами (электронными, механическими, фотокопировальными, записывающими или иными) без предварительного письменного разрешения владельцев авторских прав. Нарушение таких прав может представлять собой преступление против интеллектуальной собственности.
Если вы обнаружили опечатку, ошибку или описку в данной работе и хотите сообщить об этом нам, вы можете написать на следующий адрес электронной почты: arkadiaediciones@gmail.com. Мы будем рады ответить на ваши вопросы, комментарии, предложения по улучшению и любые другие замечания.
Глава 1: Введение в Solidity
В этой главе мы рассмотрим особенности Solidity, его синтаксис и то, как использовать его для разработки смарт-контрактов. Мы также обсудим преимущества и ограничения Solidity и его будущие перспективы.
1.1. Что такое Solidity?
Solidity - это высокоуровневый язык программирования, используемый для написания смарт-контрактов на блокчейне Ethereum. Он был разработан Ethereum Foundation и в настоящее время широко используется для разработки децентрализованных приложений (dApps) в сети Ethereum. Solidity - объектно-ориентированный язык, статически типизированный, поддерживающий наследование, библиотеки и сложные пользовательские типы.
1.2. Особенности Solidity
Solidity обладает рядом особенностей, которые делают его популярным выбором для разработки смарт-контрактов. К ним относятся:
Объектно-ориентированное программирование: Solidity - объектно-ориентированный язык, что означает, что он