Skip to content

Latest commit

 

History

History
100 lines (69 loc) · 5.22 KB

keien.md

File metadata and controls

100 lines (69 loc) · 5.22 KB
timezone
Asia/Shanghai

KeienWang

  1. 自我介绍
  • 嗨,你好,我是 keien。
  • 热爱编程、唱,跳,rap,篮球。
  • 热爱计算机科学和IT互联网事业,希望能成为一名优秀的开发者。
  • 我们正在让这个世界变得更加美好,通过代码的重复使用和延展构建完美体系。
  •  We're making the world a better place. Through constructing elegant hierarchies for maximum code reuse and extensibility.
  1. 你认为你会完成本次残酷学习吗?
  • 我坚信我会

Notes

2024.09.23

今天学习了Solidity的基本语法和数据类型。掌握了变量声明、基本运算符和控制结构。
  • 变量声明: 学习了如何声明和使用不同类型的变量,包括整型(int, uint)、布尔型(bool)、地址(address)等。
  • 基本运算符: 掌握了算术运算符(+, -, *, /, %)、比较运算符(==, !=, >, <, >=, <=)和逻辑运算符(&&, ||, !)的使用。
  • 控制结构: 学习了if-else条件语句、for和while循环的使用方法。

2024.09.24

  • 合约声明: 学习了如何使用 contract 关键字声明一个智能合约,以及合约的基本结构。
  • 状态变量: 了解了如何在合约中声明和使用状态变量,这些变量用于存储合约的持久数据。
  • 函数: 学习了如何定义和使用函数,包括公共函数、私有函数、内部函数和外部函数的区别。
  • 事件: 掌握了如何声明和触发事件,以及事件在智能合约中的重要作用。
  • 编写了一个简单的存储合约,包含状态变量、setter和getter函数,以及一个事件来记录状态变化。
  • 创建了一个基本的投票合约,使用状态变量存储候选人和投票结果,通过函数实现投票逻辑,并使用事件记录每次投票。

2024.09.25

  • 函数修饰符: 学习了如何使用修饰符(Modifiers)来改变函数的行为,了解了常见的修饰符如onlyOwner、require等的使用方法。
  • 错误处理: 掌握了Solidity中的错误处理机制,包括使用require、assert和revert来进行条件检查和错误处理。
  • 自定义错误: 学习了如何定义和使用自定义错误,以提高合约的可读性和调试效率。

2024.09.26

今天学习了Solidity中的事件和日志:
  • 事件(Events): 学习了如何在智能合约中定义和触发事件,了解了事件在记录合约操作和状态变化中的重要作用。
  • 日志(Logs): 掌握了如何使用事件生成日志,并在区块链上存储和查询这些日志。
  • 事件参数: 学习了事件参数的使用方法,包括indexed参数的作用和限制。

2024.09.27

今天学习了Solidity中的合约继承和多态:
  • 合约继承: 学习了如何使用Solidity中的继承机制来复用代码,了解了继承的基本语法和规则。
  • 多重继承: 掌握了Solidity中的多重继承特性,学习了如何解决多重继承中的菱形继承问题。
  • 重载和重写: 学习了函数重载和重写的概念,了解了如何在子合约中重写父合约的函数。
  • 抽象合约: 了解了抽象合约的概念,学习了如何定义和使用抽象合约来实现接口和多态。
  • 接口(Interfaces): 学习了如何定义和实现接口,了解了接口在智能合约设计中的重要作用。

2024.09.28

今天继续深入学习Solidity,主要学习了以下内容:
  • 库(Libraries): 学习了如何使用库来组织和复用代码,了解了库函数的调用方式和库的部署方式。
  • 库的特性: 掌握了库的特性,包括库函数是静态调用的,库不能有状态变量,库不能继承或被继承等。
  • 使用库的优势: 了解了使用库可以减少代码重复,提高代码的可读性和可维护性。

2024.09.29

今天学习了Solidity中的合约部署和测试:
  • 合约部署: 学习了如何使用Truffle框架部署智能合约,了解了部署脚本的编写和配置。
  • 部署环境: 掌握了不同部署环境的配置,包括本地开发网络、测试网络(如Ropsten、Rinkeby)和主网。
  • 合约交互: 学习了如何使用Web3.js与已部署的智能合约进行交互,了解了常见的交互方法和事件监听。
  • 单元测试: 学习了如何为智能合约编写单元测试,使用Truffle框架进行测试驱动开发(TDD),确保合约的正确性和可靠性。

2024.09.30

今天学习了Solidity中的合约优化和Gas费用管理:
  • Gas费用: 学习了以太坊网络中的Gas机制,了解了Gas的计算方法和影响因素。
  • 优化合约代码: 掌握了几种常见的合约优化技巧,如减少存储操作、使用更高效的数据结构和函数优化等,以降低Gas费用。
  • Gas限制和Gas价格: 了解了Gas限制和Gas价格的概念,学习了如何在部署和调用合约时设置合理的Gas限制和Gas价格。

2024.10.01

2024.10.02

2024.10.03

2024.10.04

2024.10.05

2024.10.06

2024.10.07

2024.10.08

2024.10.09

2024.10.10