<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>پست‌های انتشارات وبلاگ توسعه دهندگان</title>
        <link>https://virgool.io/developerblog/feed</link>
        <description>وبلاگی برای استفاده ی همه توسعه دهندگان ، فضایی برای تمام آدم فضایی هایی که آدم های عادی درکشون نمیکنن و نمیفهمنشون????</description>
        <language>fa</language>
        <pubDate>2026-06-17 04:58:37</pubDate>
        <image>
            <url>https://files.virgool.io/upload/publication/k7z4ulj8ixb7/y6hzg2.png</url>
            <title>وبلاگ توسعه دهندگان</title>
            <link>https://virgool.io/developerblog</link>
        </image>

                    <item>
                <title>استفاده از ستونهای محاسبه ای در لاراول</title>
                <link>https://virgool.io/developerblog/%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-%D8%B3%D8%AA%D9%88%D9%86%D9%87%D8%A7%DB%8C-%D9%85%D8%AD%D8%A7%D8%B3%D8%A8%D9%87-%D8%A7%DB%8C-%D8%AF%D8%B1-%D9%84%D8%A7%D8%B1%D8%A7%D9%88%D9%84-e8cprtp4xchz</link>
                <description>دیتابیس های MySQL و SQLite (از ورژن ۳.۳۱.۰) از ستونهای محاسبه ای پشتیبانی میکند. اجازه بدهید که ببینیم چطور میتوانیم از ستون های محاسبه ای در دیتابیس خود استفاده کنیم و در چه سناریویی ما میتوانیم این نوع از ستونها را در میگریشن خود اضافه کنیمستونهای مجازی و ذخیره شدهاساسا دو نوع ستون محاسبه ای وجود دارد: مجازی و ذخیره شده. اصلیترین تفاوت آنها در این است که ستون محاسبه ای مجازی هر بار با اجرای  کوئری ، محاسبه را انجام داده و مقدار را برمیگرداند، که در این حالت هیچ فضایی از حافظه اشغال نمیگردد در صورتی که در ستون محاسبه  ای ذخیره شده مقداری از فضا را برای ذخیره اطلاعات اشغال میکند اما این  اطلاعات با insert شدن و یا update شدن محاسبه شده و در حافظه ذخیره میشود. به طور خلاصه ستونهای مجازی کوچکتر اما کندتر هستند در صورتی که ستونهای ذخیره شده بزرگتر و سریعتر هستند.اجازه بدید که ببینیم در SQL چطور ستونهای محاسبه شده ایجاد میشود:drop table if exists users;

create table users (
    id int auto_increment primary key,
    first_name varchar(50) not null,
    last_name varchar(50) not null,
    salary int(10) not null,
    name varchar(101) as (concat(first_name, &#039; &#039;, last_name)),
    insurance int(10) as (salary * 0.1) stored
);همانطور   که  میبینید ما میتوانیم ستونی ایجاد کنیم که مقدار آن بر اساس ستونی دیگر در همان سطر محاسبه شود. در برخی از سناریوها ، این بسیار مفید است ، به خصوص اگر بخواهیم این محاسبات را به صورت خودکار انجام دهیم.ستونهای محاسبه شده در میگریشن لاراولحالا ، اجازه بدید ببینیم که چطور در میگریشن لاراول خود ، یک ستون محاسبه شده اضافه کنیمSchema::create(&#039;products&#039;, function (Blueprint $table) {
    $table-&gt;id();
    $table-&gt;string(&#039;name&#039;);
    $table-&gt;integer(&#039;price&#039;);
    $table-&gt;integer(&#039;tax&#039;)-&gt;virtualAs(&#039;price * 0.27&#039;)-&gt;nullable();
    $table-&gt;integer(&#039;discount&#039;)-&gt;storedAs(&#039;price - 100&#039;)-&gt;nullable();
});دقت کنید ،‌ ستونهای محاسبه شده برای SQLite در لاراول 8.x پشتیبانی میشود.نکته جالب اینجاست که ایجاد ستون های محاسباتی در میگریشن های ما واقعاً آسان است و این بدان معنی است که ما می توانیم این موارد را به راحتی به مدل های خود اضافه کنیم و نیازی به افزودن پروپرتی محاسبه شده به خود مدل ها نیست.خلاصهدر بعضی از موارد استفاده از ستونهای محاسبه شده یک دیدگاه خوب به شمار میرود. این به شما و موقعیت شما برمیگردد که از ستونهای محاسبه شده مجازی یا ذخیره شده استفاده کنید یا خیر، اما هر دو عملکرد خوبی دارند و به طور بالقوه می توانند کد را در خود فریم ورک کوچکتر و تمیزتر کنند.چیزی که در این مقاله خواندید ترجمه ای از یک مقاله انگلیسی بود که از اینجا میتوانید متن انگلیسی آن را بخوانید.باشد که با  کد تمیزتری  رستگار شوید.</description>
                <category>وبلاگ توسعه دهندگان</category>
                <author>ali shojaei</author>
                <pubDate>Tue, 08 Sep 2020 09:01:09 +0430</pubDate>
            </item>
                    <item>
                <title>باید ها و نبایدهای ویرایش قالب وردپرس (قسمت اول)</title>
                <link>https://virgool.io/developerblog/%D8%A8%D8%A7%DB%8C%D8%AF-%D9%87%D8%A7-%D9%88-%D9%86%D8%A8%D8%A7%DB%8C%D8%AF%D9%87%D8%A7%DB%8C-%D9%88%DB%8C%D8%B1%D8%A7%DB%8C%D8%B4-%D9%82%D8%A7%D9%84%D8%A8-%D9%88%D8%B1%D8%AF%D9%BE%D8%B1%D8%B3-%D9%82%D8%B3%D9%85%D8%AA-%D8%A7%D9%88%D9%84-zgmvdjkujvru</link>
                <description>سلاموردپرس یکی از محبوبترین cms ها در دنیاست. یکی از دلایلی که وردپرس را تبدیل به محبوبترین سیستم مدیریت محتوا کرده ، وجود افزونه ها و قالبهای آماده بسیار حرفه ای است که میتونه قابلیت های بسیاری را به وردپرس اضافه کنه.برای طراحان و برنامه نویسانی که بر روی این سیستم مدیریت محتوا در حال کار هستن بسیار پیش اومده که لازم شده تغییراتی رو در قالبهایی که خریداری کرده اند اعمال کنن.ویرایش قالبهای آماده بسیار مرسومه، اما اصولی ترین راه برای ویرایش قالب چیه؟در این مقاله میخواهیم با هم روش ویرایش حرفه ای قالبهای آماده را مرور کنیمنباید خیلی خیلی مهم:‌ به هیچ عنوان فایل های فولدر اصلی قالب را حذف یا تغییر ندید.قالب های آماده ای که در اینترنت وجود داره معمولا از سایتهایی مثل themeforest گرفته میشه. این قالب ها هرازگاهی بروزرسانی میشن. چه بروزرسانی هایی که باعث افزایش امنیت سایت میشه، چه بروزرسانی هایی که باعث اضافه شدن ویژگی جدید به سایت میشه و چه بروزرسانی هایی که مشکلات عملکردی فعلی را رفع میکنه.به همین دلیل ، اگر فایل های قالب اصلی را تغییر بدید دیگه نمیتونید از این بروزرسانی ها استفاده کنید و این مساله ی مهمیه.باید خیلی خیلی مهم: حتما یک child-theme برای قالب اصلی خود بسازید.وردپرس این امکان را فراهم کرده که یک قالب جانبی را انتخاب کنید که از ویژگی های قالب اصلی بهره ببرهچگونه یک child-theme بسازیم؟حقیقتش الان دیگه وقت ندارم مقاله رو ادامه بدم ، شما میتونید همین عنوان رو کپی کنید و تو گوگل سرچ کنید لینکها خوبی براتون میاداگر حوصله گشتن ندارید یا با نگارش من حال کردید باید صبر کنید که توی مقاله بعدی ادامه اش رو براتون بگم ????</description>
                <category>وبلاگ توسعه دهندگان</category>
                <author>ali shojaei</author>
                <pubDate>Fri, 10 Jan 2020 16:58:15 +0330</pubDate>
            </item>
                    <item>
                <title>دردسرهای نصب ویندوز (mbr و gpt)</title>
                <link>https://virgool.io/developerblog/%D8%AF%D8%B1%D8%AF%D8%B3%D8%B1%D9%87%D8%A7%DB%8C-%D9%86%D8%B5%D8%A8-%D9%88%DB%8C%D9%86%D8%AF%D9%88%D8%B2-mbr-%D9%88-gpt-wehtr5jofuvb</link>
                <description>rufusداستان رسیدن به مشکلچند روز پیش بود که لپتاپ خانومم مشکل نرم افزاری پیدا کرد و مجبور به نصب مجدد ویندوز پیدا کرد. من هم که دیدم خانومم نصب ویندوز رو بلده گفتم خودت ویندوز رو دانلود کن و بریز رو فلش و شروع کن به نصب.گفت چطوری بریزم روی فلش؟ گفتم نرم افزار rufus رو دانلود کن ، فایل iso که دانلود کردی رو ادرسش رو به نرم افزار rufus بده و فلشی که به لپتاپت وصل کردی رو هم توی rufus انتخاب کن. خودش فلش رو برات آماده میکنه.تمام موارد رو انجام داد و سیستم توسط فلش بوت شد و به قسمت انتخاب پارتیشن برای نصب ویندوز رسید. خانوم از من پرسید که الان کدوم رو انتخاب کنم. من هم بهش گفتم همون که ۱۰۰ گیگ هست اون رو اول پاک کن و فرمت کن و انتخاب کن که ویندوز روش نصب بشه.پارتیشن رو پاک کرد و ساخت پارتیشن جدید رو زد اما اجازه ساخت پارتیشن نداد و خطا داد.حل مشکل ساخت پارتیشناز طریق command line موجود در بوت نصب تونستم پارتیشن جدید رو بسازم. میخواستم نصب رو ادامه بدم که با پیغام زیر روبرو شدمMBR Errorبا تمام توضیحاتی که توی سایتهای مختلف خوندم ، متوجه شدم که دو نوع پارتیشن بندی وجود داره MBRGPTکه  GPT راه حل بهتری برای مدیریت پارتیشن هست و در صورتی که هارد شما از ۲ ترابایت بیشتر حجم داشته باشه باید حتما از سیستم GPT استفاده بشه اما در سیستم های قدیمی همون MBR هم اوکی هستراه حل اصلیببخشید خیلی حرف زدم. همه اینا رو گفتم که به این راه حل برسمدوتا راه حل وجود داشت برامکل پارتیشن رو پاک کنم و از نو با حالت GPT پارتیشن بندی کنمفلش رو هم در زمان بوتیبل کردم به حالت MBR بوتیبل کنم (حالت دیفالت rufus حالت GPT بود)مورد دوم دقیقا موردی که باید خانومم بهش دقت میکرد و یا من بهش میگفتم. که البته با توجه به این که خیلی وقت بود که ویندوز عوض نکرده بودم خودم هم نمیدونستم و این موضوع نزدیک به ۲ الی ۳ ساعت وقت من رو حروم کرد.نهایتا روی یه سیستم دیگه ای rufus رو نصب کردم و فلش رو دوباره با حالت MBR بوتیبل کردم و نصب به راحتی انجام شدممنون که توجه کردید امیدوارم که کسی دردسر چنین موردی رو نکشه</description>
                <category>وبلاگ توسعه دهندگان</category>
                <author>ali shojaei</author>
                <pubDate>Wed, 27 Mar 2019 14:52:46 +0430</pubDate>
            </item>
                    <item>
                <title>راهنمای فعال سازی تایید دو مرحله برای اکانت های اپل</title>
                <link>https://virgool.io/developerblog/%D8%B1%D8%A7%D9%87%D9%86%D9%85%D8%A7%DB%8C-%D9%81%D8%B9%D8%A7%D9%84-%D8%B3%D8%A7%D8%B2%DB%8C-%D8%AA%D8%A7%DB%8C%DB%8C%D8%AF-%D8%AF%D9%88-%D9%85%D8%B1%D8%AD%D9%84%D9%87-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A7%DA%A9%D8%A7%D9%86%D8%AA-%D9%87%D8%A7%DB%8C-%D8%A7%D9%BE%D9%84-dcclbq7omjly</link>
                <description>چند وقت پیش ایمیلی از طرف وبسایت اپل به دستمون رسید که از تاریخ Februray 27th فعال سازی تایید دو مرحله برای تمامی حساب های توسعه دهندگان اجباری خواهد شد!‌و از اون تاریخ دست ما عملا عصا شددیگه حساب توسعه دهنده من امکان بیلد گرفتن و تقریبا هیچ کاری رو در xcode به من نمی داد و ما مونده بودیم و مشتریهایی که منتظر اپشون بودندراه حل های زیادی به ذهنمون رسیداز کمک گرفتن از دوستان و آشنایانی که خارج از کشور بودن تا گرفتن پنل های مجازی پیامک در سایتهای مختلف که متاسفانه همش به دلایل مختلف به در بسته خورد تا این که یه مقاله در ویرگول به من کمک کرد که یکی از دوستان عزیزم بهم معرفی کردفعال سازی تایید دو مرحله و همچنین تایید دو عامله برای اکانت های اپلو بالاخره مشکلمون حل شد قبلش بگم که خدا خیرشون بده حالا پس چرا من این مقاله رو دارم مینویسم برای اینکه یه کم بیشتر توضیح بدم در مورد خیلی از موارد و سرویس دهنده هایی که توی اون مقاله اسم برده نشداول اینکه اپلیکیشنی که ایشون در مقاله شون استفاده کرده بودن برای ما تحریم بود امکان دانلودش در اپ استور نبود که در اینجا من بهتون پیشنهاد میکنم که اگر اون اپ رو نتونستید پیدا یا نصب کنید میتونید از نرم اپ Dingtone استفاده کنید که یه جورایی محیطش مثل همونه اما یه بدی داره اینکه هزینه ی خرید شماره اش گرونتر و برابر ۴.۹۹ دلار هستدومین سرویس دهنده ای که دوست داشتم در موردش صحبت کنم وبسایت https://giftcard.ir/ هست که امکان خرید کارتهای هدیه اپ استور و بقیه جاها رو ارائه میده و خیلی سرویس دهی خوبی داشتن و من برای پرداخت هزینه خرید شماره در اپ Dingtone از این سایت گیفت کارت خریدم و به اکانتم اضافه کردم و نهایتا پرداختش رو انجام دادم راهنمای استفاده از کارتهای هدیه itunes برای شارژ حساب اپ استور و خرید اپ و نهایتا نکته ای که باید در موردش صحبت کنم اینه که شما نمیتونید تایید دومرحله ای رو روی سایت اپل فعال کنید و باید حتما روی گوشی یا دیوایس مکتون فعال کنیدالبته خیلی از مواردی که گفته شد جایگزین داره ، و بنده صرفا تجربه ام رو گفتم. امیدوارم تونسته باشم که کمکی کرده باشم و از امیر فهمیده وطن دوست هم به خاطر مقاله خوبشون تشکر کنم.راستی سال نوتون مبارک البته اگر مقاله رو همین الان خوندید اگر بعدا بهش رسیدید روزهای باقیمانده عمرتون براتون مبارک باشه و مواظبش باشید</description>
                <category>وبلاگ توسعه دهندگان</category>
                <author>ali shojaei</author>
                <pubDate>Fri, 22 Mar 2019 13:12:33 +0430</pubDate>
            </item>
            </channel>
</rss>