۳۰ شهریور ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

نقد و بررسی: Appsmith برای توسعه کم کد با بودجه می درخشد

Appsmith یک پالت کامل از ویژگی های توسعه با کد پایین را در یک محیط کشیدن و رها کردن در دسترس ارائه می دهد. به عنوان یک گزینه رایگان و منبع باز می درخشد، با زنگ ها و سوت های اضافی با قیمتی که در دسترس است.

Appsmith یک پالت کامل از ویژگی های توسعه با کد پایین را در یک محیط کشیدن و رها کردن در دسترس ارائه می دهد. به عنوان یک گزینه رایگان و منبع باز می درخشد، با زنگ ها و سوت های اضافی با قیمتی که در دسترس است.

بازار پلتفرم‌های کم‌کد یا بدون کد صدها فروشنده دارد که محصولاتی با میزان، قیمت، راحتی و کارایی متفاوت تولید می‌کنند. بازار توسعه با کد پایین حداقل تا حدی مبتنی بر ایده توسعه‌دهندگان شهروندی است که بیشتر کار را انجام می‌دهند، اگرچه نظرسنجی سال ۲۰۲۱ توسط فروشنده Creatio نشان داد که دو سوم توسعه‌دهندگان شهروند کاربران مرتبط با فناوری اطلاعات هستند. همان نظرسنجی مشخص کرد که کد پایین در حال حاضر عمدتاً برای توسعه برنامه های کاربردی سفارشی در واحدهای تجاری جداگانه استفاده می شود.

هنگامی که یک دهه پیش برای یک فروشنده پلتفرم برنامه‌های کاربردی کم‌کد یا بدون کد (نرم‌افزار آلفا) کار می‌کردم، بیش از ۹۰ درصد از پروژه‌های موفق کم‌کد مشتری که دیدم، شخصی از IT درگیر است، و اغلب بیش از یک. معمولاً یک کاربر تجاری پروژه را هدایت می کند که توسط مدیر پایگاه داده و یک توسعه دهنده پشتیبانی می شود. کاربر تجاری ممکن است بیشترین زمان را صرف کند، اما فقط می تواند پروژه را با کمک مدیر پایگاه داده شروع کند، عمدتاً برای ارائه دسترسی دروازه ای به پایگاه های داده شرکتی. آنها معمولاً برای تکمیل و اجرای پروژه به کمک یک توسعه دهنده نیاز داشتند. اغلب، بخش کاربر تجاری به عنوان خوکچه هندی، آزمایش کننده معروف به و همچنین کمک به الزامات و در نهایت استفاده از محصول داخلی خدمت می کند.

Appsmith یکی از حدود دوجین محصول توسعه کم کد یا بدون کد است که منبع باز هستند. پروژه Appsmith تقریباً ۶۰% TypeScript، ۲۵% Java و ۱۱% JavaScript است. Appsmith خود را برای ساخت، ارسال و نگهداری ابزارهای داخلی، با قابلیت اتصال به هر منبع داده، ایجاد رابط های کاربری (UI) با ویجت های از پیش ساخته شده، کدنویسی آزادانه با ویرایشگر جاوا اسکریپت داخلی، و استقرار با یک کلیک توصیف می کند. . Appsmith ابزارهای داخلی را به‌عنوان داشبوردهای سفارشی، پنل‌های مدیریت و برنامه‌های CRUD تعریف می‌کند که تیم شما را قادر می‌سازد فرآیندها را خودکار کند و به طور ایمن با پایگاه‌های داده و API‌های شما تعامل داشته باشد. در نهایت، Appsmith با بیش از ۴۰۰ فروشنده کم‌کد یا بدون کد رقابت می‌کند، و بزرگترین رقبا آن‌هایی هستند که قابلیت‌های مشابهی دارند.

Appsmith به عنوان یک ابزار داخلی برای یک شرکت سازنده بازی شروع به کار کرد. “چند سال پیش، ما یک بازی منتشر کردیم که در فضای مجازی منتشر شد. صدها درخواست کمک یک شبه وارد شد. ما به یک برنامه پشتیبانی نیاز داشتیم تا بتوانیم آنها را سریع مدیریت کنیم. آنجا بود که متوجه شدیم ساختن سریع یک اپلیکیشن داخلی اولیه چقدر سخت است! کمتر از یک سال بعد، Appsmith شروع به شکل گیری کرده بود.”

معنای ابر بومی برای کسب و کار شما چیست

شروع با یک برنامه داخلی و تقویت آن برای استفاده مشتری مسیر سختی است و اغلب به خوبی ختم نمی شود. در اینجا یک بررسی عملی ارائه شده است تا به شما کمک کند تصمیم بگیرید که آیا Appsmith پلتفرم کم‌کدی است که به دنبال آن بودید یا خیر.

توسعه با کد کم با Appsmith

Appsmith یک محیط کشیدن و رها کردن را برای ساختن رابط‌های فرانت‌اند، پایگاه داده و رابط‌های API برای تقویت بک‌اندها، قابلیت‌های کدگذاری جاوا اسکریپت جاسازی‌شده نسبتاً ساده و انتشار و اشتراک‌گذاری آسان ارائه می‌دهد. در اینجا نگاهی گذرا به نحوه کار این ویژگی‌ها در پروژه توسعه Appsmith داریم.

اتصال به منابع داده

می توانید با استفاده از اتصالات مستقیم Appsmith یا با استفاده از REST API به منابع داده متصل شوید. منابع داده پشتیبانی شده در حال حاضر شامل Amazon S3، ArangoDB، DynamoDB، ElasticSearch، Firestore، Google Sheets، MongoDB، Microsoft SQL Server، MySQL، PostgreSQL، Redis، Redshift، Snowflake، و SMTP (برای ارسال نامه) هستند. بسیاری از این پایگاه‌های اطلاعاتی نه متعارف در نظر گرفته می‌شوند. Appsmith اعتبارنامه شما را رمزگذاری می کند و از ذخیره داده های بازگردانده شده از درخواست های شما جلوگیری می کند. از استخرهای اتصال برای اتصالات پایگاه داده استفاده می کند و حداکثر تعداد پرس و جوهایی را که می توانند همزمان روی یک پایگاه داده اجرا شوند به پنج محدود می کند، که در صورت داشتن تعداد زیادی کاربر و اجرای پرس و جوهای پیچیده می تواند به یک گلوگاه تبدیل شود. Appsmith همچنین از ۱۷ رابط API پشتیبانی می کند که برخی از آنها به طور معمول پایگاه داده در نظر گرفته می شوند.

ساخت رابط کاربری

Appsmith حدود ۴۵ ویجت از جمله کانتینرها و کنترل ها را ارائه می دهد. می توانید ویجت ها را از پالت به بوم بکشید و رها کنید. ویجت‌های موجود روی بوم با قرار دادن ویجت‌های جدید از مسیرشان خارج می‌شوند و ویجت‌ها می‌توانند اندازه خود را تغییر دهند و در عین حال نسبت ابعاد خود را حفظ کنند.

دسترسی و اتصال به داده

شما می توانید پرس و جوهایی را در برابر هر یک از منابع داده خود ایجاد، آزمایش و نامگذاری کنید. سپس، می توانید از پرس و جوهای نامگذاری شده از ویجت های مناسب استفاده کنید. نتایج پرس و جو در ویژگی داده شی پرس و جو ذخیره می شود، و شما می توانید با استفاده از جاوا اسکریپت نوشته شده در داخل دستور “دستگاه”، aka “سبیل” به داده ها دسترسی داشته باشید. مثالی در اینجا آمده است:

{{ Query1.data }}

می‌توانید از پرس‌و‌جوها برای نمایش داده‌های خام یا تبدیل‌شده در ویجت، نمایش فهرست‌های داده‌ها در فهرست‌های کشویی و جداول، و برای درج یا به‌روزرسانی داده‌های گرفته‌شده از ویجت‌ها در پایگاه داده خود استفاده کنید. Appsmith واکنش‌پذیر است، بنابراین ویجت‌ها به‌طور خودکار هر زمان که داده‌های درخواست تغییر کرد، به‌روزرسانی می‌شوند.

کد نوشتن

می‌توانید از جاوا اسکریپت در داخل فرمان‌ها در هر جایی از Appsmith استفاده کنید. شما می توانید هر موجودیتی را در Appsmith به عنوان یک متغیر جاوا اسکریپت ارجاع دهید و تمام عملکردها و عملیات جاوا اسکریپت را روی آنها انجام دهید. این بدان معناست که می‌توانید به همه ویجت‌ها، APIها، جستارها، و داده‌ها و ویژگی‌های مرتبط با آن‌ها در هر کجای برنامه با استفاده از فرمان یا نحو سبیل ارجاع دهید.

GitHub Copilot Chat به GitHub می آید

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

ویژگی های توسعه Appsmith

از ۵ اکتبر ۲۰۲۲، Appsmith تعدادی بهبود را اعلام کرده است. اول، گواهینامه SOC2 Type II را دریافت کرده است، به این معنی که یک ممیزی شخص ثالث را برای تأیید انطباق اطلاعات خود تکمیل کرده است. دوم، پشتیبانی از GraphQL را اضافه کرده است. GraphQL یک زبان پرس و جو و دستکاری داده منبع باز برای APIها و یک زمان اجرا برای انجام پرس و جوها با داده های موجود است. توسط فیس بوک، اکنون متا، توسعه یافته است.

Appsmith اکنون یک نمای داخلی برای گزارش‌های کنسول دارد. شما مجبور نیستید از دیباگر مرورگر استفاده کنید. همچنین ویجتی اضافه کرده است که به کاربران امکان می دهد کدها را با استفاده از دوربین دستگاه خود اسکن کنند. از ۱۲ فرمت، از جمله بارکدهای محصول یک بعدی مانند UPC-A و -E، بارکدهای صنعتی یک بعدی مانند کد ۳۹ و کدهای دو بعدی مانند QR و Data Matrix پشتیبانی می کند. سه کنترل لغزنده جدید اضافه کرد: اعداد، محدوده و دسته‌ها. مهندسان Appsmith زمان رندر ویجت ها را فقط با ترسیم مجدد ویجت هایی که تغییر کرده اند به نصف کاهش دادند.

گزینه های میزبانی Appsmith

می‌توانید از نسخه ابری Appsmith استفاده کنید (در https://appsmith.com/)  یا خودتان میزبان Appsmith باشید. نسخه منبع باز Appsmith در هر صورت رایگان است. Appsmith استفاده از Docker یا Kubernetes را در دستگاه یا ماشین مجازی با دو vCPU و ۴ گیگابایت حافظه توصیه می‌کند. گزینه های نصب یک دکمه برای Appsmith در AWS و DigitalOcean وجود دارد.

اگر پشتیبانی اولویت‌دار، SAML و SSO و مخازن Git خصوصی نامحدود می‌خواهید، می‌توانید برای Appsmith Business پرداخت کنید. این سرویس از زمان نوشتن این مقاله برای دسترسی زودهنگام باز است.

ویجت های Appsmith

ویجت‌های Appsmith شامل بیشتر کنترل‌ها و کانتینرهایی است که انتظار دارید در سازنده رابط کاربری با کشیدن و رها کردن پیدا کنید. آنها شامل کنترل های ساده، مانند متن، ورودی، و کنترل دکمه. ظروف مانند ظروف عمومی، زبانه ها و فرم ها. و کنترل‌های رسانه‌ای مانند عکس‌ها، پخش‌کننده‌های ویدیو، صدا در داخل و خارج، کنترل دوربین برای عکس‌برداری ثابت و ویدیو، و اسکنر کد جدید.

کار با Appsmith

من برای ساختن داشبورد پشتیبانی مشتری در Appsmith Cloud، آموزش مقدماتی Appsmith را مرور کردم. از یک پایگاه داده PostgreSQL که از قبل با جدول کاربران پر شده است استفاده می کند. به نظرم سبک آموزش کمی حمایت‌کننده بود (به تمام علامت‌های تعجب و پیام‌های تبریک توجه کنید)، اما شاید به بدی آموزش‌های «مقدمه‌ای» در برخی محصولات که به سرعت بالای سر کاربران می‌رود، نباشد.

هدف زبان کربن این است که C++ بهتری باشد

توجه داشته باشید که اگر برنامه پیشرفته تری در ذهن دارید، ممکن است یک الگوی شروع کننده را در بین ۲۰ ارائه شده است.

آموزش Appsmith با خلاصه ای از نحوه کار Appsmith شروع می شود.

صفحه شروع آموزش Appsmith.

در اینجا برنامه‌ای است که می‌خواهیم بسازیم. من آن را با افزودن یک نام به رکورد ۸، از جمله موارد دیگر، آزمایش کردم.

نمونه برنامه.

در اینجا یک آزمایش از جستجوی SELECT برای جدول کاربر در جعبه ایمنی SQL آمده است.

آزمایش پرس و جو SELECT در جعبه ایمنی کاربر.

در اینجا، ما یک درخواست SQL آماده شده از جاوا اسکریپت را برای پر کردن ویجت جدول مشتریان فراخوانی می‌کنیم.

 فراخوانی یک پرسش SQL آماده شده از جاوا اسکریپت.

بعد، پنجره ویژگی جدول مشتریان را مشاهده می کنیم.

صفحه ویژگی جدول مشتریان.

اکنون، می‌توانیم ساخت فرم به‌روزرسانی مشتری را شروع کنیم.

ساخت فرم به روز رسانی مشتری.

ما فراخوانی جاوا اسکریپت را اضافه کرده‌ایم که نام را به ویژگی مقدار پیش‌فرض برای ویجت NameInput استخراج می‌کند.

افزودن تماس جاوا اسکریپت.

و فیلدهای ایمیل و کشور را از طریق جاوا اسکریپت و SQL به جستارهای صحیح متصل کرده ایم.

پیوند کردن فیلدهای ایمیل و کشور به جستارهای صحیح.

در اینجا، ما یک دکمه به‌روزرسانی را در زیر فرم اضافه کرده‌ایم. هنوز به یک اقدام محدود نشده است.

افزودن دکمه به‌روزرسانی

اولین مرحله در پردازش به‌روزرسانی، اجرای عبارت updateCustomerInfo است، همانطور که در اینجا نشان داده شده است.

اجرای عبارت updateCustomerInfo.

پرسمان updateCustomerInfo یک عبارت SQL UPDATE است. توجه داشته باشید که چگونه با استفاده از متغیرهای جاوا اسکریپت محدود به فیلدهای فرم پارامتربندی می شود.

پرس و جو با استفاده از متغیرهای جاوا اسکریپت محدود به فیلدهای فرم پارامتربندی می شود.

مرحله دوم در به‌روزرسانی، دریافت مجدد مشتریان پس از تکمیل اولین پرس‌وجو، همانطور که در زیر نشان داده شده است.

به محض تکمیل پرس و جو مشتریان را دریافت کنید.

اکنون، می‌توانیم برنامه خود را قبل از استقرار در محیط توسعه آزمایش کنیم.

قبل از اجرای برنامه، آن را آزمایش کنید.

پس از استقرار، می‌توانیم برنامه را بدون دیدن محیط توسعه اجرا کنیم.

برنامه را پس از استقرار اجرا کنید.

توجه داشته باشید که یک فضای کاری Appsmith شامل همه برنامه های شما است. (مال من اینجا نشان داده شده است.)

فضای کاری Appsmith.

این صفحه تمام ۲۰ الگوی Appsmith را نشان می‌دهد که برای استفاده و سفارشی‌سازی در دسترس هستند.

لیستی از الگوهای Appsmith.

نتیجه گیری

همانطور که مشاهده کردید، Appsmith یک پلت فرم برنامه کاربردی با قابلیت کشیدن و رها کردن کد پایین است. تا زمانی که به پشتیبانی اولویت دار، SAML، SSO یا بیش از سه مخزن Git خصوصی نیاز نداشته باشید، این شامل یک گزینه منبع باز رایگان است. برای هر یک از این ویژگی‌ها، یا برای کنترل‌های دسترسی سفارشی، گزارش‌های حسابرسی، پشتیبان‌گیری و بازیابی، یا نام تجاری سفارشی، به برنامه تجاری Appsmith پولی نیاز دارید.

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