وبلاگ بلیان

Ethereum for Web Developers : Learn to Build Web Applications on Top of the Ethereum Blockchain

جلد کتاب Ethereum for Web Developers : Learn to Build Web Applications on Top of the Ethereum Blockchain

معرفی کتاب «Ethereum for Web Developers : Learn to Build Web Applications on Top of the Ethereum Blockchain» نوشتهٔ Santiago Palladino، منتشرشده توسط نشر Apress در سال 2019. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.

توسعه نرم‌افزار همواره در حال دگرگونی است و فناوری بلاک‌چین، همانند ظهور گوشی‌های هوشمند در دههٔ گذشته، مسیرهای تازه‌ای را پیش روی برنامه‌نویسان گشوده است. کتاب «Ethereum for Web Developers» نوشتهٔ سانتیاگو پالادینو، راهنمایی جامع برای توسعه‌دهندگان وب است تا بتوانند بر بستر شبکهٔ اتریوم، برنامه‌های غیرمتمرکز یا دی‌اپ (DApp) بسازند و تجربهٔ کاربری مطلوبی را برای کاربران خود رقم بزنند.

دربارهٔ کتاب «Ethereum for Web Developers»

کتاب حاضر با رویکردی عملی و پروژه‌محور، به جای پرداختن صرف به جنبه‌های نظری بلاک‌چین، مستقیماً خواننده را با چالش‌ها و تفاوت‌های اساسی توسعهٔ برنامه‌های غیرمتمرکز در مقایسه با برنامه‌های وب سنتی آشنا می‌کند. نویسنده پس از مروری کوتاه بر تاریخچهٔ بلاک‌چین و شبکهٔ اتریوم، گام‌به‌گام ساخت یک نمونه دی‌اپ را آموزش می‌دهد تا مخاطب با تمام اجزای درگیر در این فرایند آشنا شود. این کتاب با تمرکز ویژه بر لایهٔ برنامه‌های وب، به موضوعات کلیدی چون پرسوجو و نمایش داده‌ها از بلاک‌چین، واکنش به رویدادها، تعامل با حساب‌های کاربری، ارسال تراکنش‌ها و مدیریت هزینهٔ گس (Gas) می‌پردازد. یکی از نقاط قوت این اثر، پرداختن به مباحث پیشرفته‌تر مانند ساخت سرورهای پشتیبان برای نمایه‌سازی داده‌ها و مدیریت کارآمد حافظه با استفاده از راهکارهایی نظیر سیستم فایل بین‌سیاره‌ای (IPFS) است. همچنین، نویسنده به دو چالش بزرگ دنیای اتریوم یعنی «روی‌برداری کاربران» و «مقیاس‌پذیری» پرداخته و راهکارهای نوینی همچون تراکنش‌های فرامتا (Meta-transactions)، حساب‌های هوشمند، سرویس نام‌گذاری اتریوم (ENS)، کانال‌های وضعیت و زنجیره‌های جانبی را بررسی می‌کند. در کنار تمام این موارد، فصلی اختصاصی به زبان سالیدیتی (Solidity) اختصاص یافته تا خواننده بتواند قراردادهای هوشمند خود را نیز درک کرده و حتی بسازد.

دربارهٔ نویسنده

سانتیاگو پالادینو (Santiago Palladino) از سال ۲۰۰۵ به‌عنوان توسعه‌دهندهٔ نرم‌افزار حرفه‌ای فعالیت داشته و بیش از ده سال تجربهٔ کاری در زمینهٔ برنامه‌های وب دارد. او در سال ۲۰۱۷ به تیم OpenZeppelin، به‌عنوان یکی از نخستین کارمندان، پیوست و در آنجا به‌عنوان پژوهشگر امنیتی در چندین ممیزی فعالیت کرد. پالادینو هماکنون رهبری توسعهٔ ابزارها و خدمات منبع‌باز برای ساخت برنامه‌های اتریوم را بر عهده دارد. او مدرک کارشناسی ارشد خود را در رشتهٔ علوم کامپیوتر از دانشگاه بوئنوس آیرس دریافت کرده و یکی از نویسندگان وایت‌پیپر ZeppelinOS است.

چرا باید «Ethereum for Web Developers» را بخوانید؟

این کتاب به توسعه‌دهندگان وب کمک می‌کند تا مهارت‌های خود را با فناوری بلاک‌چین تطبیق دهند و وارد دنیای برنامه‌های غیرمتمرکز شوند. از جمله دستاوردهای خواندن این کتاب عبارت‌اند از:
  • توسعهٔ برنامه‌های وب غیرمتمرکز: یادگیری گام‌به‌گام ساخت یک دی‌اپ کامل، از مرحلهٔ ایده تا پیاده‌سازی و اتصال به شبکهٔ اتریوم.
  • مدیریت ارتباط با بلاک‌چین: آشنایی با روش‌های مختلف برای پرسوجوی داده‌ها، ارسال تراکنش‌ها و واکنش به رویدادهای ثبت‌شده در بلاک‌چین.
  • درک و ساخت قراردادهای هوشمند: ارائهٔ درکی کاربردی از زبان سالیدیتی برای ساخت و تعامل با قراردادهای هوشمند.
  • حل چالش‌های دنیای واقعی اتریوم: آشنایی با جدیدترین راهکارها برای بهبود تجربهٔ کاربری (روی‌برداری) و افزایش مقیاس‌پذیری برنامه‌ها.
  • مدیریت داده و حافظه: یادگیری روش‌های کارآمد برای ذخیره‌سازی داده‌های حجیم در خارج از زنجیره و استفاده از راهکارهایی مانند IPFS.
  • استفاده از کدهای منبع معتبر: دسترسی به مخزن کدهای کتاب در گیت‌هاب که امکان تمرین و آزمایش مفاهیم را فراهم می‌کند.

این کتاب برای چه کسانی مناسب است؟

این منبع ارزشمند به‌طور خاص برای توسعه‌دهندگان وب که در حوزهٔ برنامه‌های سمت کلاینت تخصص دارند و با زبان‌های جاوااسکریپت، اچ‌تی‌ام‌ال و سی‌اس‌اس آشنایی دارند، نوشته شده است. نکتهٔ مهم این است که برای بهره‌مندی از این کتاب، نیازی به پیش‌دانش قبلی دربارهٔ بلاک‌چین، اتریوم یا ارزهای دیجیتال نیست؛ زیرا نویسنده مباحث را از سطح پایه و با زبانی روان آغاز می‌کند. بنابراین، هم برنامه‌نویسانی که قصد ورود به حوزهٔ بلاک‌چین را دارند و هم توسعه‌دهندگانی که به‌دنبال ارتقای دانش خود در زمینهٔ ساخت دی‌اپ هستند، مخاطب اصلی این کتاب محسوب می‌شوند.

سوالات متداول

آیا برای درک این کتاب نیاز به دانش قبلی در زمینهٔ بلاک‌چین دارم؟

خیر، این کتاب برای توسعه‌دهندگان وب با دانش جاوااسکریپت و HTML/CSS نوشته شده و هیچ پیش‌دانشی دربارهٔ بلاک‌چین یا اتریوم فرض نشده است.

آموزش‌های این کتاب بیشتر جنبهٔ تئوری دارد یا عملی؟

رویکرد کتاب کاملاً عملی و پروژه‌محور است و با ساخت یک نمونه برنامهٔ غیرمتمرکز از ابتدا، مفاهیم به‌صورت کاربردی آموزش داده می‌شود.

آیا ساخت برنامه‌های غیرمتمرکز با برنامه‌های وب سنتی تفاوت زیادی دارد؟

بله، توسعهٔ دی‌اپ‌ها با چالش‌ها و تفاوت‌های بنیادین در حوزه‌هایی مانند مدیریت تراکنش‌ها، هزینه‌ها، امنیت و تعامل با کاربر همراه است که کتاب به‌تفصیل به آن‌ها پرداخته است.

Technology is constantly evolving, and blockchain is taking development to new places, as mobile did a decade ago – and Ethereum is the leading platform for creating this new wave of applications. This book reveals everything you need to create a robust decentralized application (more commonly known as DApp). Unlike other books on the topic, this one focuses on the web application layer, and guides you in creating great experiences on top of the Ethereum blockchain. You’ll review the challenges and differences involved in developing DApps as opposed to traditional web applications. After a brief introduction to blockchain history and Ethereum in particular, you’ll jump directly into building a sample decentralized application, to familiarize yourself with all the moving pieces. This book offers specific chapters on querying and rendering data from the blockchain, reacting to events, interacting with user accounts, sending transactions, managing gas, handling confirmations and reorganizations, and more. You will also find a chapter dedicated to Solidity that will give you the necessary means to understand and even build your own smart contracts. Other important topics covered include building backend servers that act as indexing layers, and managing storage efficiently with solutions like the interplanetary file system, or IPFS. Last but not least, you will find chapters that examine the biggest problems on Ethereum today: onboarding and scalability. These include the state of the art of the available strategies to tackle them, such as meta-transactions, smart accounts, ENS, state channels, sidechains, and more. **What You'll Learn** * Connect to the blockchain from the browser and send transactions from client-side * Build a web app that provides a read-only interface to a blockchain contract * Create a wallet interface for arbitrary fungible tokens, displaying the user’s balance and allowing for simple transfers to other addresses * Develop a web app that stores large blobs of data off-chain, and keeps a reference to it on-chain (e.g. avatars, long text descriptions) * Produce a web app that relies on a centralized server for indexing on-chain information to be presented to the user **Who This Book Is For** Web developers focused on client-side applications, with knowledge of JavaScript and HTML/CSS. You do not need any prior knowledge of Blockchain, Ethereum, or cryptocurrency. Front Matter ....Pages i-xxi Blockchains (Santiago Palladino)....Pages 1-16 A Sample DApp (Santiago Palladino)....Pages 17-38 A Crash Course on Smart Contracts (Santiago Palladino)....Pages 39-87 Querying the Network (Santiago Palladino)....Pages 89-125 Sending Transactions (Santiago Palladino)....Pages 127-180 Indexing and Storage (Santiago Palladino)....Pages 181-214 User Onboarding (Santiago Palladino)....Pages 215-273 Scalability (Santiago Palladino)....Pages 275-319 Back Matter ....Pages 321-328
دانلود کتاب Ethereum for Web Developers : Learn to Build Web Applications on Top of the Ethereum Blockchain