Skip to content

Commit 8a14d5c

Browse files
committed
fix: unbind framework
1 parent 493f1d3 commit 8a14d5c

File tree

5 files changed

+17
-27
lines changed

5 files changed

+17
-27
lines changed

solidity/junior-1/code-style/linting-and-formatting.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ _Важно!_ Нужно быть внимательным. Расширения
4949

5050
## Linting and formatting для тестов
5151

52-
Если несколько подходов в организации тестов для смарт контрактов. Например, для Foundry тесты пишутся на языке Solidity и это значит, что нам достаточно стандартного линтинга и форматирования только для языка Solidity.
52+
Есть несколько подходов в организации тестов для смарт контрактов. Например, для Foundry тесты пишутся на языке Solidity и это значит, что нам достаточно стандартного линтинга и форматирования только для языка Solidity.
5353

5454
В других средах разработки ситуация может быть немного иной. Например в Hardhat используются: библиотека [ethers.js](https://docs.ethers.org/v5/) и тестовый фреимворк [mocha](https://mochajs.org/). Это подразумевает написание тестов на языке [javascript](https://learn.javascript.ru/) или [typescript](https://www.typescriptlang.org/).
5555

solidity/junior-1/code-style/readme.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,4 @@
1212

1313
- [Style guides](./style-guides.md)
1414
- [Комментирование кода](./code-comments.md)
15-
- [Linting и Formatting](./linting-and-formatting.md)
16-
17-
## Example
18-
19-
Пример настройки hardhat проекта можно посмотреть в [репозитории](https://github.com/PavelNaydanov/HhStarterKit).
15+
- [Linting и Formatting](./linting-and-formatting.md)

solidity/junior-1/practice/1-fund-me.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
2. Зачем нужна переменная `msg.value`? Какие еще существуют глобальные переменные?
2626
3. За что отвечают поля `inputs` и `outputs` в ABI функции?
2727
4. Какой модификатор обязателен для функции принимающей эфир? Как переменную типа `address` переопределить, чтобы можно было отправить эфир с этого адреса?
28-
5. Что произойдет если перед тем как транзакция ревертнется мы успеем сделать запись в переменную из `storage`?
28+
5. Что произойдет если перед тем как транзакция ревертится мы успеем сделать запись в переменную из `storage`?
2929
6. Когда `view` функцию вызывает другой контракт это стоит газа или нет?
3030
7. Как работать с числами с плавающей точкой в solidity? Что такое `decimals`? Для чего нужен `decimals` при расчете цен токенов?
3131
8. Зачем в функции `getPrice` при получении значения `answer` запятые перед и после значения? Как ты объяснишь запись `uint256(answer * 10000000000)`?

solidity/junior-1/practice/2-erc-20.md

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,9 @@
99
- Понять как работают `transfer`, `transferFrom` и `approve`. Отличие перевода ERC20-токена от нативного токена сети (например, ETH).
1010
- Пройтись по литературе на которую приведены ссылки.
1111

12-
> Дополнительно: Необязательно делать если пока нет четкого понимания работы ERC20, но потом нужно вернуться.
13-
14-
- Попробовать расширить функциональность токена. Понять, как это работает.
15-
- Попробовать добавить Permit, сформировать и передать подпись в контракт.
16-
- Попробовать добавить transferAndCall.
12+
> Дополнительно: Необязательно делать если пока нет четкого понимания работы ERC20, но потом нужно вернуться.Попробовать расширить функциональность токена:
13+
> - Попробовать добавить Permit, сформировать и передать подпись в контракт.
14+
> - Попробовать добавить transferAndCall.
1715
1816
## Какие навыки даст задание?
1917

@@ -32,21 +30,21 @@
3230
8. Какие недостатки есть у ERC20?
3331
9. Какие расширения ERC20 есть у OpenZeppelin?
3432
10. Расширения ERC20, Какой функционал добавляют следующие расширения:
35-
- Burnable.
36-
- Capped.
37-
- Pausable
38-
- Snapshot
39-
- Wrapper
33+
- Burnable.
34+
- Capped.
35+
- Pausable
36+
- Snapshot
37+
- Wrapper
4038

4139
## Дополнительно
4240

4341
1. Расширения, которые помогают устранить недостатки ERC20:
44-
- Permit (ERC2612). Какие варианты использования?
45-
- TransferAndCall (ERC-223, ERC-677, ERC-1363) В чем преимущества и недостатки трех подходов?
42+
- Permit (ERC2612). Какие варианты использования?
43+
- TransferAndCall (ERC-223, ERC-677, ERC-1363) В чем преимущества и недостатки трех подходов?
4644
- В чем отличие ERC777 от ERC20? Какие преимущества дает ERC777? Почему сообщество отказалось от идеи использовать ERC777?
47-
- Tokenized Vault Standard (ERC4626). Для чего нужен?
45+
- Tokenized Vault Standard (ERC4626). Для чего нужен?
4846
2. Утилиты
49-
- SafeTransfer - как использовать библиотеку и зачем? Какие есть аналоги?
47+
- SafeTransfer - как использовать библиотеку и зачем? Какие есть аналоги?
5048

5149
## Литература помимо той, что дана в курсе:
5250

solidity/junior-1/practice/4-marketplace.md

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
- по умолчанию комиссия должна быть 2% (прописывается в контракте либо задается через конструктор)
2626
- должна быть возможность просматривать комиссию на смарт-контракте
2727
- должна быть возможность изменять комиссию на смарт-контракте
28-
- должна быть возможность установить минимальную комиссию 0.01% (смотри базисные пункты и как с ними работать в солидити для точных расчетов)
28+
- должна быть возможность установить минимальную комиссию 0.01% (смотри базисные пункты и как с ними работать в solidity для точных расчетов)
2929
- маркетплейс может установить получателя комиссии
3030
- получатель комиссии должен задаваться в конструкторе
3131
- должна быть возможность изменить получателя комиссий площадки
@@ -59,8 +59,4 @@
5959
- **В смарт контракте должны быть все необходимые проверки** - например токен оплаты ERC20 должен проверяться на нулевой адрес, а ERC721 должен поддерживать интерфейс ERC721, в функции должны передаваться корректные аргументы и т.д.
6060
- **Функции площадки должны быть с ограниченным доступом** (использовать Ownable)
6161
- **Использовать ReentrancyGuard от OpenZeppelin** - для защиты функций смарт-контракта от повторных вызовов.
62-
63-
---
64-
65-
- Итогом выполнения задания должен быть github-репозиторий, в котором будет лежать `hardhat + typescript` проект.
66-
- Покрытие unit тестами должно быть 100%. Для проверки покрытия тестами кода можно использовать плагин [solidity-coverage](https://www.npmjs.com/package/solidity-coverage)
62+
- **Покрытие unit тестами 100%**. Для проверки покрытия тестами кода можно использовать плагин [solidity-coverage](https://www.npmjs.com/package/solidity-coverage)

0 commit comments

Comments
 (0)