Skip to content

mwherman2000/neo-csguide

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 

Repository files navigation

C#.NEO Smart Contract Developers Guide

NEO Blockchain C# Center of Excellence

The neo-csharpcoe project is an "umbrella" project for several initiatives related to providing tools and libraries (code), frameworks, how-to documentation, and best practices for full-stack development using .NET/C# and C#.NEO and the NEO Blockchain software platform.

The neo-csharpcoe is an independent, free, open source project that is 100% community-supported by people like yourself through your contributions of time, energy, passion, promotion, and donations. To learn more about contributing to the neo-csharpcoe, click here.

Purpose

The purpose of this document is capture the knowledge and best practices for C# smart contract development on the NEO Blockchain platform.

This document is specifically targeted at .NET developers and architects.

Caveat

In addition, when the first version of the document was written (February 2018), you will also need to have an early adopters mind set. It's the early days. You'll be downloading the code for most of the developer tools (aside from Visual Studio) and compiling them yourself. It may not always be fun but I promise it will certainly be rewarding in the end.

Goals

  • Capture basic as well as advanced knowledge related to developing C# smart contracts across the application lifecyle (ALM)
    • Requirements
    • NEO C# Language Considerations
    • NEO System Fees
    • Design Patterns
    • Creating Secure Contracts
    • Implementation
    • Deployment
    • Testing
    • Maintenance
    • Documentation
  • Capture recommended best practices for C# smart contract development
  • Non-goal: This scope of this document is limited to smart contract development only - not the other components and services of the NEO Blockchain platform.

Principles

  • Provide reliable documentation: timely, accurate, visual, and complete
  • Save as much of a person's time as possible
  • Use open source software whenever possible

Drivers

  • Need in the NEO .NET developer community to have concise and easy-to-follow documentation to enable people to get up to speed developing NEO smart contracts in as short a time as possible

Sections

  1. Getting Started
  2. Blockchain Basic Concepts
  3. What is NEO?
  4. NEO Development Tools
  5. Lab: Writing First C#.NEO Smart Contract: Hello World!
  6. The C#.NEO Language
  7. Lab: Using NEO Storage: Meetup Attendee Sign-in #1
  8. Introduction to Entities
  9. Using Other Languages
  10. NEO Architecture
  11. Lab: Edit-Compile-Debug: Meetup Attendee Sign-in #2
  12. NEO Persistable Classes Introduction
  13. Programming with Entities
  14. Lab: Programming with Entities: Meetup Attendee Sign-in #3
  15. Off-chain Client Development
  16. Lab: Off-chain Client Development: Meetup Attendee Sign-in #4
  17. NEP5 Token Standard
  18. Lab: NEP5 Tokens: A Meetup Token
  19. Design Patterns
  20. Deployment
  21. Testing
  22. Maintenance
  23. Writing Secure Contracts
  24. Documentation
  25. Appendix A - NEO Object Model Overview
  26. Appendix B - Roadmap
  27. Appendix C - Sample Smart Contracts
  28. Appendix D - NEO System Fees

References

Other Good Resources

  • TODO

Releases

No releases published

Packages

No packages published