ⓘ このドキュメントは、Flow BlockchainによるDApp(分散型アプリケーション)構築の始め方ドキュメントの完全翻訳ページです。
ⓘ
Cadence(version1.0)は、Flow Blockchain 上でスマートコントラクトを作る為の現行のプログラミング言語です。ブロックチェーン上で作成したアカウントに紐づくストレージにPathという論理パスを作り、そこにスマートコントラクトで作成したリソースやCapability(機能群)を置き、スマートコントラクトに各アカウントからアクセス出来るようにすることでデジタル通貨などを条件に沿ってやり取りできるようになります。
Cadenceプログラミング言語でスマートコントラクトを書くには
クリックすると各ページに飛びます。(※オススメのページには🚀をつけています。※🧑🚀は翻訳をブラッシュアップ済みです。)- Introduction
- Why Use Cadence?
- Tutorial
- 1. First Steps
- 2. Hello World
- 3. Resource Contract Tutorial🚀🧑🚀
- 4. Capability Tutorial🚀
- 5.1 Non-Fungible Token Tutorial Part 1
- 5.2 Non-Fungible Token Tutorial Part 2
- 6. Fungible Token Tutorial🚀
- 7. Marketplace Setup🚀
- 8. Marketplace (⇦Capability削除に関する説明はここ)🚀🧑🚀
- 9. Voting Contract
- 10. Composable Resources🚀
-
Language Reference
- Syntax
- Constants and Variable Declarations
- Type Annotations
- Values and Types(⇦組み込み型の全関数およびプロパティ)🚀🧑🚀
- Operators
- Functions(⇦関数)🚀
- Control Flow🚀
- Scope🚀
- Type Safety
- Type Inference(⇦型推論)
- Composite Types (⇦構造体はここ)🚀
- Resources🚀
- Access control (⇦Entitlementはここ)🚀🧑🚀
- Capabilities🚀🧑🚀
- Interfaces🚀🧑🚀
- Enumerations
- Intersection Types (⇦インタフェースを型にします)🚀🧑🚀
- References
- Imports
- Accounts(⇦アカウント)🚀🧑🚀
- Attachments
- Contracts(⇦スマートコントラクト)🚀
- Contract Updatability🚀
- Transactions(⇦トランザクション)🚀🧑🚀
- Events
- Core Events
- Run-time Types
- Built-in Functions(⇦疑似乱数の生成はここ)🚀🧑🚀
- Environment Information
- Crypto
- Type Hierarchy
- Glossary(⇦記号)
- Design Patterns
- Cadence Anti-Patterns🚀
- Development Standards🚀🧑🚀
- Cadence Security Best Practices🚀🧑🚀
- Guide for Solidity Developers
- Contract Upgrades with Incompatible Changes
- JSON-Cadence format
- Measuring Time In Cadence(⇦現在時刻取得はここ)🚀🧑🚀
- Cadence Testing Framework
ⓘ
Cadenceは、日本にも馴染みの深いDieter Shirley という方が作成されたFlowブロックチェーンのスマートコントラクトを作成する為のプログラミング言語です。Crypto Kitties 、NFTの仕様(ERC-721)、Cadence、Account Linkingとブロックチェーンの歴史に名を沢山残した方による注目のブロックチェーン技術です。
Flow Blockchain dApp技術情報
どこから読んでいいか分からないという方はこちらを先に読んでください。
ブロックチェーンウォレットにはローンチ時からウォレットSDKで実績のあるBloctoがあります。JavaScriptで簡単にBloctoウォレットを呼び出す事ができ、トランザクションもJavaScript で簡単に行う事が出来ます。バックエンドではNode.jsでトランザクションを実行することが出来ます。
BlockエクスプローラにはFlow Diver↗︎があり、トランザクション結果を素早く確認する事が出来ます。Contract Browser↗︎ではスマートコントラクトやトークンなどを確認したり、直接スマートコントラクトをデプロイすることが出来ます。
WebブラウザーやNode.jsからブロックチェーンに対してトランザクションを実行するにはFlow Client Library(fcl)を使用します。アカウントを作成したりスマートコントラクトをデプロイする時にはFlow CLIを使用することができます。
Flow CLI と FCL
-
Flow CLI🧑🚀
- Install Instructions
- Super Commands(⇦エミュレータ起動方法はここ)
- Accounts
- Get an Account🚧
- Create an Account🚧
- Deploy a Contract🚧
- Update a Contract🚧
- Remove a Contract🚧
- Account Staking Info🚧
- Funding a Testnet Account🚧
- Keys
- Generate Keys🚧
- Decode Public Keys🚧
- Derive Public Key🚧
- Deploy Project
- Start Emulator🚧
- Add Project Contracts🚧
- Deploy a Project🚧
- Create Emulator Snapshot🚧
- Scripts
- Execute a Script🚧
- Transactions
- Send a Transaction🚧
- Get a Transaction🚧
- Build a Transaction🚧
- Build a Complex Transaction🚧
- Sign a Transaction🚧
- Send Signed Transaction🚧
- Build a Complex Transaction🚧
- Flow.json
- Initialize Configuration🚧
- Configuration🚧
- Manage Configuration🚧
- Security🚧
- Flow Entities
- Get Block🚧
- Get Events🚧
- Get Collection🚧
- Network Status🚧
- Utils
- Generate a Signature🚧
- Verify Signature🚧
- Snapshot Save🚧
- Development Tools🚧
- Dependency Manager🚧
- Tests
- Run Cadence tests🚧
- Cadence Linter🚧
- Flow Interaction Templates (FLIX)🚧
- Cadence Boilerplate Generation🚧
- Data Collection🚧
- Flow Emulator🚧
- Clients🚧
- Flow Client Library (FCL)🚧
- FCL Reference🚧
- SDK Reference🚧
- Authentication🚧
- How to Configure FCL🚧
- Wallet Discovery🚧
- Installation🚧
- Interaction Templates🚧
- Proving Ownership of a Flow Account🚧
- Scripts🚧
- Transactions🚧
- Signing and Verifying Arbitrary Data🚧
- WalletConnect 2.0 Manual Configuration🚧
- Flow Go SDK🚧
- Migration Guide v0.25.0🚧
- Flow Dev Wallet🚧
- Cadence VS Code Extension🚧
- Wallet Provider Spec🚧
- Authorization Function🚧
- Introduction🚧
- Provable Authn🚧
- User Signature🚧
- Flow Client Library (FCL)🚧
ハンヅオンで学べる書籍もあります。こちら↗︎
こちらのQiitaアカウント<@abcdefgac153131>のドキュメントは全て無断転載OKです。