برای برنامه نویسی DApp و ایجاد شناخت بهتر نسبت به معماری یک DApp، لازم ست به معماری یک برنامه تحت وب (WEB APPLAICATION) نگاهی داشته باشیم. در این مقاله کمی به این موضوع میپردازیم.یکی از تفاوتهای برنامه نویسی DApp با وباپلیکیشن متعارف این است که در دنیای غیرمتمرکز یا Decentralized، مرکز وجود ندارد. شبکهای از گرههای کامپیوتری (Nodeها) وجود دارد که در سراسر دنیا پراکندهاند و به وسیله پرتکلهایی در سراسر دنیا به هم متصلند.
ما در گروه آموزشی فردانش، در دوره «آموزش برنامهنویسی Solidity جهت توسعه قراردادهای هوشمند ترون»، یک پروژه واقعی و کاربردی از توسعه یک دپ high-risk رو پیش بردیم. قصد دارم اینجا مقداری درباره جوانب مختلفش صحبت کنم. ابتدا تعریفی از DApp، قراردادهای هوشمند خواهم داشت. در ادامه به برنامهنویسی قراردادهای هوشمند و برخی تفاوتهای آن با برنامهنویسی متعارف خواهم پرداخت.