译文/Translated:
随着EOSIOTM 软件生态系统不断发展,如何给EOSIO上的开发人员提供更好的体验也一直是我们追求的目标。在EOSIO战略愿景中,我们提出四个关注重点作为平台发展的综合方向:可规模化、开发者、用户和企业。本文讨论针对开发者的增强功能和帮助他们开发应用的工具。
为了减少软件部署中的摩擦,我们的目标是让在EOSIO上开发的工程师能够获得最好的工具。区块链系统架构师需要一个途径检查区块和交易、简化多个验证器之间的兼容性,也需要一些可靠的方法帮他们对智能合约进行审计和调试。他们需要测试环境和健全的文档来帮助他们部署和入职新人才。此外,智能合约搜索和功能的整体完善能够扩大EOSIO区块链应用的功能。
对开发者来说,获得流畅的体验就意味着他们能有更清晰的路径建立更加稳健和丰富的区块链生态系统,给用户带来安全的应用、满足他们的需求。是开发者实现了我们这个多元的生态系统,要让他们能够交付应用,我们也不断努力改进他们在EOSIO上的体验。以下是我们在EOSIO战略愿景中规划的相关项目,这些项目能够让EOSIO离这个目标更近一步。
图形用户界面
先前,开发者需要通过功能命令行访问nodeos(EOSIO区块链流程),尽管该命令行是手动的。为了改善这一体验,我们正在打造图形的用户界面(GUIs),用来启动nodeos,进入区块浏览器进行交易和区块检查,以及其他通用开发用途。我们相信,工具加上好上手的用户界面才能带来更大的灵活性、提高效率,因为这让多个开发者同时在一个nodeos实例上并行工作。我们最新发布的EOSIO浏览器在EOSIO开发者体验中就加入了更多可视化工具。
改进通用认证库
通用库认证(UAL)今年早些时候在EOSIO Lab TM上宣布,它提供了开发者可构建到应用中单一集成和相关的前端组件,目的是支持数个可兼容的验证器。过去开发人员想要在应用中使用某些特定的验证器,他们要一个个集成过去,相比起来,现在这样简单、统一的方法就减少了开发时间。同时,这样的方法还给基于EOSIO的应用的终端用户提供了更加无缝和统一的用户体验,提高了整个发展中的区块链应用生态系统的可用性。UAL让开发者可以提供统一的前端用户体验,让用户可以选择最适合他们需求或个人喜好的验证器。随着通用认证库在整个生态系统中得到使用,UAL库未来会支持更多的验证器
适用于Java和Swift的EOSIO SDK
为了更好地为各个介质的用户群提供服务,EOSIO区块链应用的开发者经常使用Web应用,而后再把这些应用复制成移动端。开发者可以使用最近发布的Java和Swift库在本地安卓或iOS平台生成应用,提供更快的响应时间、实现用户端界面更精细化。我们也在不断收到关于SDK的反馈并对其进行调整,同时,我们还会继续发布其升级版本。
调试智能合约
我们也在不断探索,更好地提供卓越的智能合约调试资源。我们已经在研究各类工具,让开发者能够在智能合约代码上加入断点,让他们能够在状态探索和审计过程中,一步到底地检验功能。智能合约开发中这样高效的工具越多,开发者就越能在EOSIO上建立无缝和安全的合约。
EOSIO测试网
因为测试智能合约部署的测试选择有限,我们团队在想方设法构建一个测试基础设施,让它集成我们的开发者文档,并通过在测试网上进行测试引导用户。提供额外的文档指导能够让现存的开发者在产品环境中部署应用之前先完成测试周期。
可规模化的文档平台
我们不断保证我们的更新速度,提供各方面的EOSIO源代码,同时,我们也在努力简化开发人员门户,提供更无缝的体验让他们和EOSIO软件代码库同步。此外,为了在全球开发环境中提高包容性,我们还在探索如何实现文档核心更新的多语言支持,给生态系统中非英语母语的开发人员提供更大的支持。
高分辨率的状态跟踪
过去,开发者要利用如State History插件这样的官方工具跟踪每个区块的状态变化。除了跟踪区块以外,我们还会继续探索如何让开发者能够更好地控制针对智能合约状态变化的行为审核。这样我们就有可能把审查范围细化到单个交易或动作上,开发者在采用数据聚合器工具的时候就能获得更大的灵活性。除了智能合约中的应用,智能合约外的应用也能获益于开发者收集的这些数字点,他们还能避免相关的逻辑错误。加强数据访问的工具,如State History插件,会提供高效的链上数据的实时访问,而如Demux这样的架构模式让开发者能够把存储和查询卸载到规模化的数据库,如MongoDB,中。
增强智能合约的功能性
智能合约应该能够相互调用并更新状态数据,而不产生任何冲突。一个智能合约访问想另一个智能合约的状态数据时,它就要调用一个相应的表格。当访问的智能合约调用这个表格的时候,它就把表结构合并到其代码中。如果被调用数据的智能合约调整了该表格,冲突就产生了。为了减少这样的限制因素,我们正在测试是否可能让智能合约使用只读层,其他的智能合约就可以调用这层,这样,每个智能合约都可以不出任何错误就更新自己的数据结构。
EOSIO规范库
社区一直在努力创建稳定、高效、规模化的EOSIO区块链,我们也会不断提供支持和资源。我们不断给EOSIO战略愿景增加各个层面,在这个关键阶段,我们从研究者、应用开发者、和其他社区成员中获得的反馈就显得至关重要了。这一努力由规范库引导,规范库也是EOSIO Lab TM的一个项目,它能让用户在我们这个不断成长的生态系统中获得更大的增益效果。如果您想参与我们,请阅读我们草拟的规范,并直接在GitHub上提供反馈,同时,我们也会把这些特点加入EOSIO中。
联系我们
EOSIO平台在不断扩展,不管是从范围的角度还是从技术的角度都是如此,其中一部分原因要归功于社区的投入。这些反馈让过去的软件获得提高,也激发未来的创新。我们在努力创新和集成新的解决方案,但同时,我们也希望能和社区携手走向美好的未来。如果您想提供反馈,和我们的团队协作,为开发人员改进EOSIO,您可以给我们的开发者关系小组发邮件 developers@block.one
我们也会在邮件列表会不断更新未来的公告和发布通知。现在就在EOSIO新站订阅我们吧。
重要通知:所有提供的材料都受此重要通知的约束,您必须自行熟悉此间条款。该通知包含与我们软件、出版物、商标、第三方资源以及前瞻性声明相关的信息、限制和约束内容。通过访问我们的材料,您接收并同意此通知的条款。
原文/Original:
While the EOSIO™ software ecosystem continues to grow, improving the developer experience building on EOSIO is at the forefront of our minds. In the EOSIO Strategic Vision, we identified four central points of focus for a collective approach to platform development; Scalability, Developers, Users, and Enterprises. This article focuses on enhancements for Developers and the tools that help them build.
To ease friction with software deployment our goal is to make the best tools available for developers building on EOSIO. Blockchain system architects need a means to inspect blocks and transactions, streamline compatibility for multiple authenticators, and ways to reliably audit and debug smart contracts. They need test environments and robust documentation to aid in deployment and on-boarding new talent to their organizations. In addition, overall improvements to smart contract searchability and functionality will expand the capabilities of EOSIO blockchain applications.
A smoother experience for developers means a clearer path to building a more robust and diverse blockchain ecosystem that provides users secure applications to fit their needs. Developers make this diverse ecosystem possible, and to help them deliver we’re dedicated to improving their experience on EOSIO. Below are the initiatives we have outlined in the EOSIO Strategic Vision to move EOSIO closer to that goal.
Graphical User Interfaces
Formerly, developers have been relegated to accessing nodeos (the EOSIO blockchain process) via a functional, albeit manual, command line interface. To improve this experience, we’re working on graphical user interfaces (GUIs) that can be utilized to launch nodeos, access block explorers for transaction and block inspection as well as other general development uses. We believe that offering tools with easily accessible user interfaces will provide greater flexibility and improve efficiency by allowing multiple developers to work in parallel on a single instance of nodeos. Our recent release of the EOSIO Explorer adds more visual tools into the EOSIO developer experience.
Advancing the Universal Authenticator Library
Announced earlier this year under EOSIO Labs™, Universal Authenticator Library (UAL) provides a single integration and associated front end components for developers to build into their applications to support a number of compatible authenticators. This simple, unified approach not only reduces development time when compared to integrating with each specific authenticator a developer wants to have available in their application, it provides a more seamless and consistent user experience to end users of EOSIO based applications improving usability across the growing ecosystem of blockchain applications. UAL makes it possible for developers to provide a unified front end experience in their application giving users the option to choose an authenticator that best suits their needs or personal preferences. The future of the UAL library will see a wider range of authenticator support as it is adopted across the ecosystem.
EOSIO SDKs for Java and Swift
To better serve a user base across multiple mediums EOSIO blockchain application developers often take web applications and replicate them for the sake of mobile device interface. Developers can use both the recently released Java and Swift libraries to generate applications in native Android or iOS platforms, providing faster response time, and more finely tuned interfaces on the user end. As we receive feedback and continue to fine tune these SDKs, we will continue to release additional improvements.
Debugging Smart Contracts
Exploration continues to better deliver superior smart contract debugging resources. Promising research is underway on tools that let developers add breakpoints to their smart contract code so that functions can be reviewed in a step-through process during state exploration and auditing. More robust tools available for smart contract development will help developers build more seamless and secure contracts on EOSIO.
The EOSIO Testnet
As options for testing the deployment of smart contracts are limited, our team is working on a testing infrastructure that is integrated with our developer documentation and can guide the user through the process of testing on a testnet. Providing additional documentation as a guide will better onboard new developers to the EOSIO platform and make it easier for existing developers to run testing cycles before deploying their applications into production environments.
Scalable Documentation Platform
While continuous updates are made at a rapid pace to improve many facets of the EOSIO source code, we are working in parallel to streamline our developer portal to provide a more seamless experience in sync with the scale of the EOSIO software codebase. Additionally, to maximize inclusivity in a global development environment we’re exploring multi-lingual support for core updates to documentation to provide a greater degree of support to non-english speaking developers in the ecosystem.
High Resolution State Tracking
In the past, developers tracked state differences on a per-block basis with official tools such as the State History Plugin. Going beyond blocks, we’re continuing to investigate how to give developers more control over behavioral review of smart contract state changes. This would make it possible to refine the scope of review to individual transactions or actions, offering developers greater flexibility with the implementation of data aggregator tools. Developers will be able to gather these data points for applications outside smart contracts and avoid associated logic errors. Tools that enhance data access, like the State History Plugin, provide efficient real-time access to on-chain data while architecture patterns such as Demux allow developers to offload storage and queries to a scalable database like MongoDB.
Enhanced Smart Contract Functionality
Smart contracts need to be able to refer to one another and update their state data without causing clashes. When one smart contract accesses another smart contract’s state data it does so by referring to a corresponding table. When the accessing smart contract refers to another’s table, it incorporates that table’s structure into its code. If the smart contract whose data is being referred to ever makes a change to that table it will create a conflict. To remove this limitation we are testing the viability of enabling smart contracts to use a read-only layer to which other smart contracts can refer so each can update their data structures without any errors.
EOSIO Specification Repository
The community effort towards building stable, efficient, and scalable EOSIO blockchains remains ongoing and we will continue to provide support and resources. We are continuing to implement various facets of the EOSIO Strategic Vision and during this crucial stage the feedback we receive from researchers, application developers, and other members of the community makes an impact. This effort is spearheaded by the Specification Repository, an EOSIO Labs™ initiative to support greater synergy amongst stakeholders in our growing ecosystem. If interested in getting involved, please review the specifications drafted and provide feedback directly in GitHub as we work through the implementation of these features in EOSIO.
Stay Connected
The EOSIO platform is expanding both in scope and technology, driven in part by community input. That feedback leads to improvements in previous software releases and assists with forthcoming innovations. While we continue to invent and integrate new solutions we intend to work hand in hand with the community towards a bright future. If you would like to offer feedback and work more closely with our team to improve EOSIO for developers, you can send our developer relations team an email at developers@block.one.
We are continuously update our mailing list with future announcements and release notes. Subscribe today on the new EOSIO website.
Important Note: All material is provided subject to this important notice and you must familiarize yourself with its terms. The notice contains important information, limitations, and restrictions relating to our software, publications, trademarks, third-party resources and forward-looking statements. By accessing any of our material, you accept and agree to the terms of the notice.
原文链接/Original URL: