스마트 계약이 당신이 생각하는 백엔드가 아닌 이유는 무엇입니까?

백엔드 개발은 작동하는 많은 웹사이트 및 기술에 있어 매우 중요합니다. 이 측면이 나무 아래에서 상당히 많은 기술을 처리하기 때문입니다. 사용자 데이터베이스 처리, 보안, 성능, 권한 부여 및 인증에 이르기까지 다양합니다. 앱 개발의 백엔드 부분이 펼치는 기능 목록은 애플리케이션에 통합된 기술의 종류에 따라 더 많이 확장됩니다. 그럼에도 불구하고 데이터베이스, 보안, 페어링, 권한 부여 및 인증에 중점을 둘 필요가 있습니다.

분산 응용 프로그램과의 대부분의 상호 작용이 스마트 계약과 관련된 web3 생태계로 장면을 전환합니다. 스마트 계약은 web2의 백엔드 개발에 대한 이해와 다릅니다. 블록체인 네트워크와의 모든 상호 작용에는 비용이 따릅니다. 여기서는 스마트 계약이 소프트웨어 애플리케이션 사용자의 모든 세부 정보를 수신해야 하는 일반적인 백엔드가 아니라는 점을 설명하겠습니다.

사용자의 모든 정보를 얻는 이유는 무엇입니까?

일부 초보자에게 스마트 계약 작성은 애플리케이션 사용자의 거의 모든 정보를 수신하는 백엔드 코드 작성과 유사합니다. 일부는 이름, 출생 및 기타 많은 개인 정보를 캡처하는 프로젝트 생성에 빠르게 참여합니다. 이 사실을 알려 드리게 되어 죄송합니다. 스마트 계약은 너무 똑똑해서 해당 정보를 더 스마트하게 만들 수 없습니다.

블록체인 기술과의 상호 작용은 그것이 생성하는 프라이버시에도 불구하고 누가 스마트 계약과 상호 작용하는지 일반 대중에게 알립니다. 차단 탐색기에 더 자세한 정보를 제공하고 싶지 않습니다. 스마트 계약이 작동하는 방식인 대중에게 사용자의 세부 정보를 공개하는 것 외에도 메커니즘은 스마트 계약이 가스에 최적화된 경향이 있다고 기대합니다. 가스 최적화를 잘 이해하면 탈중앙화 애플리케이션과 상호 작용하는 데 높은 가스 비용으로 사용자를 놀라게 하지 않는 최적화된 dapp을 만드는 원칙을 발견할 수 있습니다.

이를 더 명확하게 하기 위해 일부 초보자에게서 목격한 몇 가지 실제적인 예를 보여 드리겠습니다.

pragma solidity 0.8.5;

contract Office {
    struct OfficeWorkers {
     string name;
     address owner;
     uint256 phoneNumber;
   }


  function doSomething() external view returns(bool) {}

}


위의 코드 블록에는 문자열, 주소 및 부호 없는 정수를 받는 구조체가 포함되어 있습니다. 꽤 수용적이죠?

이것은 실제로 누가 기능을 호출하고 정보를 제공하는지 자세히 설명하지만 슬픈 사실은 스마트 계약 생태계는 항상 해당 조항을 무관하게 만드는 돈을 포함한다는 것입니다. 위의 코드를 사용하면 해당 정보를 상태 머신 스토리지에 추가하는 함수를 호출하는 비용이 확실히 급증할 것입니다. 잘 확인해보세요.

코드 블록에 대한 비판적 검토에서 데이터베이스가 되는 스마트 계약의 결함이 하나 이상 있습니다. 구조체 내의 변수 패킹이 좋지 않습니다. 가변 포장? 이것은 변수가 저장소에서 자리를 차지하도록 구성되는 방식입니다. 가까운 시일 내에 다른 콘텐츠에서 살펴보도록 하겠습니다.

민감한 기술이기 때문에 스마트 계약 작성은 상태 머신이 성공적인 거래를 돕는 방법을 이해하기 위한 주의와 집중을 기대합니다. 이 지식은 블록체인으로 이동해야 하는 불필요한 데이터를 적절하게 필터링하고 효율적인 분산 응용 프로그램을 만드는 데 도움이 됩니다.

좋은 웹페이지 즐겨찾기