Тому я розглядаю цей шаблон Solidity, де ви визначаєте власну бібліотеку GoonLib з функцією add для обробки операцій з uint256. Потім ви створюєте власний тип NumberoGoono (який фактично є обгорткою для uint256) і приєднуєте бібліотеку до нього за допомогою ключового слова 'using'.
Річ у тім, що ви ініціалізуєте внутрішню змінну стану _number значенням 1, а потім викликаєте _number.add(5) для виконання функції бібліотеки. Це чистий спосіб розширити функціональність типу без роздування логіки основного контракту.
Але чесно—чому б ви структурювали це саме так? Маю на увазі, цей шаблон підходить для складних операцій, де потрібно зберігати модульність. Якщо ви виконуєте пакетні арифметичні операції або складні математичні обчислення, приєднання бібліотек до власних типів допомагає тримати код організованим. А для простих додавань? Здається, це перебір. Залежить від того, що саме ви створюєте.
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
16 лайків
Нагородити
16
5
Репост
Поділіться
Прокоментувати
0/400
NoStopLossNut
· 6год тому
Цей режим прив'язки бібліотечних функцій здається трохи "модульним заради модульності"... Чи справді для простого додавання потрібно так все ускладнювати?
Переглянути оригіналвідповісти на0
WhaleInTraining
· 6год тому
Цей NumberoGoono дійсно дуже поганий, навіщо ускладнювати просте додавання?
Переглянути оригіналвідповісти на0
UncommonNPC
· 6год тому
ngl цей хак з використанням бібліотеки у великих проектах дійсно крутий, але для маленьких контрактів це справді не потрібно так робити
Переглянути оригіналвідповісти на0
StakeHouseDirector
· 6год тому
ngl цей режим я давно вже набрид, просте додавання справді не потрібно так ускладнювати
Переглянути оригіналвідповісти на0
GasFeeCrier
· 6год тому
Братане, цей нэймінг трохи смішний — NumberoGoono... Виглядає як назва якогось мем-койну. Але ця бібліотека using дійсно зроблена дуже чисто.
Тому я розглядаю цей шаблон Solidity, де ви визначаєте власну бібліотеку GoonLib з функцією add для обробки операцій з uint256. Потім ви створюєте власний тип NumberoGoono (який фактично є обгорткою для uint256) і приєднуєте бібліотеку до нього за допомогою ключового слова 'using'.
Річ у тім, що ви ініціалізуєте внутрішню змінну стану _number значенням 1, а потім викликаєте _number.add(5) для виконання функції бібліотеки. Це чистий спосіб розширити функціональність типу без роздування логіки основного контракту.
Але чесно—чому б ви структурювали це саме так? Маю на увазі, цей шаблон підходить для складних операцій, де потрібно зберігати модульність. Якщо ви виконуєте пакетні арифметичні операції або складні математичні обчислення, приєднання бібліотек до власних типів допомагає тримати код організованим. А для простих додавань? Здається, це перебір. Залежить від того, що саме ви створюєте.