<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های امیر محمد یعقوبی</title>
        <link>https://virgool.io/feed/@Amir-Mohamad</link>
        <description></description>
        <language>fa</language>
        <pubDate>2026-06-07 22:55:34</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/657194/avatar/FXTp3O.jpg?height=120&amp;width=120</url>
            <title>امیر محمد یعقوبی</title>
            <link>https://virgool.io/@Amir-Mohamad</link>
        </image>

                    <item>
                <title>مزایای یادگیری زبان برنامه نویسی پایتون</title>
                <link>https://virgool.io/@Amir-Mohamad/%D9%85%D8%B2%D8%A7%DB%8C%D8%A7%DB%8C-%DB%8C%D8%A7%D8%AF%DA%AF%DB%8C%D8%B1%DB%8C-%D8%B2%D8%A8%D8%A7%D9%86-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-yne3qwkmhsug</link>
                <description>امروزه در دنیای برنامه نویسی، پایتون یکی از قدرتمندترین زبان‌های برنامه نویسی هست. با به وجود آمدن پایتون، تحول بزرگی در دنیای برنامه نویسی توسعه برنامه‌های وب و طراحی بازی‌های رایانه‌ای به وجود اومد. این زبان از سال ۱۹۹۱ وارد دنیای برنامه نویسی شده و در سال‌های اخیر بیشتر موردتوجه برنامه نویسان قرار گرفته.به شخصه پایتون تمام انتطاراتی که از یه زبان برنامه نویسی داشتم رو به خوبی براورده کرده.اگه شما هم قصد یادگیری زبان برنامه نویسی پایتون رو دارید قطعا باید از مزایاش خبر دار باشید تا این فرایند یادگیری براتون شیرین تر بشه :)توی این مقاله هم میخوام بهتون مزایای یادگیریش رو بگم. هر چند موارد دیگه ای هم هستن ولی از بس زیادن که تو این مقاله نمیگنجه‌ :)بریم سراغ اصلی ترین مزایاش. 1: یادگیری آسانپایتون یکی از آسونترین زبان های برنامه نویسی برای یادگیری برای مبتدیان محسوب میشه. زبان پایتون یک زبان برنامه نویسی سطح بالا هست ، به این معنی که سینتکس آسونی داره که بسیار شبیه انگلیسی هستش.2:جامعه جهانی بزرگنکته مهم دیگر در مورد محبوبیت پایتون اینه که یک جامعه بزرگ و فعال از حامیان داره.به این معنی که شما به راحتی از هر نوع پیچیدگی که در حین توسعه با آن روبرو میشید، پشتیبانی کامل و آسونی در دسترس دارید. به معنای واقعی کلمه صدها هزار برنامه نویس و حامی در سراسر جهان برای بهبود ویژگی ها و عملکردهای اصلی زبان اختصاص داده شده.3:تقاضا در بازار کارگرچه پول نباید انگیزه شماره 1 شما باشه ، اما این یک موضوع کوچیک شیرین هست که به شما کمک میکنه تا در شرایط دشوار ادامه دهید. متوسط دستمزد 76.526 دلار برای توسعه دهنده پایتون در ایالات متحده هست.4:منابع یادگیری رایگانشما میتونید زبان برنامه نویسی پایتون رو به صورت 100٪ بصورت رایگان و آنلاین یاد بگیرید. ده ها و صدها آموزش ، کتاب و دوره در سطح مبتدی کاملاً رایگان در دسترس هست.5:کتابخانه های گستردههنگامی که شروع به ساخت اولین پروژه های برنامه نویسی می کنید ، احتمالاً حداقل از یک کتابخانه پایتون برای انجام سریعتر کارهاتون استفاده میکنید.پایتون در هر زمینه ای کتابخانه های بسیار گسترده ای داره که شما می تونید به صورت رایگان از اونا استفاده بکنید.6:فریم ورک های قدرتمندبرای سرعت بخشیدن به روند کار خودتون ، می تونید از بین چندین فریم ورک (چارچوب) های اُپن سورس (Open Source) در پایتون نیز گزینه هایی را انتخاب بکنید.مثلا می خواهید یک برنامه وب ایجاد بکنید. به عنوان مثال می تونید به راحتی در وقت خود صرفه جویی بکنید و روند توسعه خود را ساده بکنید و از این طریق چارچوب های قدرتمند پایتون مانند Django یا Flask و ... استفاده بکنید.7: قابل اجرا روی همه ی سیستم هاشما میتونید کد های پایتونی خود در تمامی پلتفرم ها از جمله لینوکس، مک و ویندوز به راحتی اجرا بکنید.8: رایگان و متن بازنکته آخر اینکه ،زبان پایتون 100٪ رایگان هست. برای شروع ساخت پروژه ها با اون نیازی به اشتراک خاص یا سیستم عامل سفارشی ندارید.اگه فکر می کنید به این زبان  ساده و قدرتمند در عین حال دوست داشتنی علاقه دارید می توانید از همین حالا یادگیری رو شروع بکنید.منابع و سایت های مختلفی وجود داره که به شما عزیزان این امکان رو میده تا به سادگی برنامه نویسی یاد بگیرید. همراه مرج های مختلفی در اینترنت وجود داره که میتونید سطح علم و مهارت خود در زبان برنامه نویسی پایتون را افزایش بدید و با خیال راحت سینتکس یا نوشتار پایتون که بسیار ساده و قابل فهم هست رو یاد بگیرید. اگه هم شما از زبانی دیگر به زبان پایتون مهاجرت می کنید هم میتونید با دانستن اصول برنامه نویسی و ساختار هایی مانند دستورات شرطی و یا حلقه های تکرار راحت تر با این زبان ارتباط برقرار بکنید و اونو یاد بگیرید :)لایک یادت نره که با همون لایک کلی انرژی به من میدی :)</description>
                <category>امیر محمد یعقوبی</category>
                <author>امیر محمد یعقوبی</author>
                <pubDate>Mon, 08 Aug 2022 16:45:43 +0430</pubDate>
            </item>
                    <item>
                <title>معرفی django-taggit - جنگو</title>
                <link>https://virgool.io/@Amir-Mohamad/%D9%85%D8%B9%D8%B1%D9%81%DB%8C-django-taggit-%D8%AC%D9%86%DA%AF%D9%88-pkpijqx31fu1</link>
                <description>معرفی django-taggitسلام :)توی این مقاله میخوام بهتون یه پکیج خیلی کابردی معرفی کنم که خودم تقریبا توی همه پروژه هام ازش استفاده میکنم.حدود چند ماهی میشه که با این پکیج برای تگ گذاری آشنا شدم. قبلا تمام این کارو خودم انجام میدادم ولی خب وقتی پکیجش هست و تمام نیاز های پروژه رو (حتی بیشتر) رفع میکنه چرا باید خودم بنویسمش ؟‌ :)بگذریم! میخوام توی قالب یه مثال از این پکیج استفاده کنم.فیلتر با تگشروع :)برای استفاده از این پکیج طبیعتا اول باید نصبش کنیم$ pip install django-taggitفرض کنیم میخوایم از این پکیج توی همچین مدلی استفاده کنیم. میایم و منیجر TaggableManager  رو ایمپورت میکنیم و ازش توی مدلمون استفاده میکنیم:مدل Articleحالا باید بیایم و مدلی که ساختیم رو توی پنل ادمین regsiter کنیم. admin.py فایلبعدش میایم و یه makemigrations و migrate ریز میزنیم :)حالا اگه بریم به پنل ادمین میبینیم یه بخشی اضافه شده توی بخش Article به نام tags که میتونیم از اونجا تگ هایی که میخوایم رو به آسونی انتخاب کنیم.پنل ادمین جنگومثال ؟حالا گیریم که خواستیم یه جایی این تگ ها رو نمایش بدیم. چطوری باید این کارو کنیم ؟ به این روش :)یه مثال برای نمایش تگ هاالبته بخش بالا نیاز به همچین view و url ای هم داره:views.pyurls.pyخب! این یه مثال برای استفاده از django-taggit بود.django-taggit قابلیت های دیگه ای هم داره که میتونید با خوندن داکیومنت اصلیش بفهمید :)https://django-taggit.readthedocs.io/en/latest/اگه این مقاله براتون جالب بود یادتون نره که حتما لایکش کنید تا بقیه هم بتونن ازش استفاده کنن :)</description>
                <category>امیر محمد یعقوبی</category>
                <author>امیر محمد یعقوبی</author>
                <pubDate>Thu, 30 Jun 2022 17:41:09 +0430</pubDate>
            </item>
                    <item>
                <title>مثل حرفه ای ها تست بنویس - جنگو</title>
                <link>https://virgool.io/@Amir-Mohamad/%D9%85%D8%AB%D9%84-%D8%AD%D8%B1%D9%81%D9%87-%D8%A7%DB%8C-%D9%87%D8%A7-%D8%AA%D8%B3%D8%AA-%D8%A8%D9%86%D9%88%DB%8C%D8%B3-%D8%AC%D9%86%DA%AF%D9%88-h1l14twxtd6j</link>
                <description>اگه این پست رو باز کردی به احتمال زیاد اهمیت تست نوشتن رو میدونیاما در عین حال قطعا میدونی چقد نوشتن تست برای پروژه میتونه سخت و عذاب آور باشه. اما این موضوع رو موقعی میتونی درک کنی که یه دیتابیس پیچیده داشته باشی و نیاز باشه برای تست یه نمونه مدل تعداد زیادی نمونه مدل دیگه ایجاد کنی.البته به احتمال زیاد الان هیچ تصوری از چیزی که گفتم نداری. بیاید یکمی خلاقیت به خرج بدیم.تصور می کنیم این فایل مدل ماست:فایل models.pyخب. حالا اگه بخوایم برای مدل StudentEnrolment تست بنویسیم، باید قبلش نمونه مدل های User, Subject و Student رو ایجاد کنیم (چون relation دارن با هم دیگه). اگه این کارو انجام بدیم به همچین تستی میرسیم‌:روش معمولی برای نوشتن تستخب همونطور که میبینید تعداد زیادی کد نوشتیم در حالی که هنوز واقعا شروع نکردیم به نوشتن تست.اما قطعا یه روش آسون تر برای انجام این کار وجود داره. مگه نه ؟اینجاست که model_baker وارد ماجرا میشه. بیاید حالا متد setUp رو با model_baker دوباره بنویسیم.نوشتن تست به وسیله model_bakerدیدید ؟ با یه خط کد انجامش دادیم :)این پکیج خودش میره و تمام مدل ها و فیلد هایی که بهش نیاز داشتیم رو میسازه.البته شما اگه بخواید هنوز هم میتونید برای هر فیلدی که میخواید یه مقدار مشخص تعیین کنید (با دادن argument).این روش میتونه خیلی کمک کنه وقتی که مدل شما تو طول زمان خیلی تغییر میکنه! فرض کنید میخواید یه فیلد جدید به مدلتون اضافه کنید، اگه از همون روش معمولی برای نوشتن تست هاتون استفاده کرده باشید، باید برید و توی تمام تست هاتون به اون فیلد مشخص مقدار بدید. این پکیج میتونه این مشکل رو حل کنه.خلاصه استفاده از model_baker برای نوشتن تست هاتون میتونه کلی زمان براتون صرفه جویی کنه :)اگه میخواید اطلاعات بیشتری درباره model_baker به دست بیارید شدیدا بهتون پیشنهاد میکنم یه نگاه به داکیومنت رسمیش بندازید.https://model-bakery.readthedocs.io/en/latest/اگه این مقاله براتون مفید بود یادتون نره لایکش کنید‌ :)</description>
                <category>امیر محمد یعقوبی</category>
                <author>امیر محمد یعقوبی</author>
                <pubDate>Thu, 30 Jun 2022 03:50:45 +0430</pubDate>
            </item>
                    <item>
                <title>زبان برنامه نویسی DART چیست؟</title>
                <link>https://virgool.io/@Amir-Mohamad/%D8%B2%D8%A8%D8%A7%D9%86-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-dart-%DA%86%DB%8C%D8%B3%D8%AA-iovpgghnbco5</link>
                <description>زبان برنامه نویس دارتدر این مطلب زبان برنامه نویسی DART چیست؟ را برای شما دوستان قرار دادیم. دارت (Dart) زبان برنامه‌ نویسی عمومی است که ابتدا توسط گوگل توسعه داده شد و بعد ها توسط Ecma (یک  سازمان استاندارد برای سیستم های اطلاعاتی و ارتباطی) به تصویب رسید. از  Dart برای ساخت وب، سرور و برنامه های کاربردی تلفن همراه استفاده می شود.  این زبان رابط ها، مخلوط ها، کلاس های انتزاعی، اصطلاحات عمومی، تایپ  استاتیک و سیستم نوع صدا را پشتیبانی می کند.هدف دارت جایگزین کردن جاوا اسکریپت که زبان داخلی مرورگرهای وب است می‌باشد. دارت راه حلی برای مشکلات موجود در جاوا اسکریپت (به‌طور مثال مشکل حافظه) می‌باشد که کارایی بهتر، قابلیت استفاده ساده‌ تر برای پروژه‌های بزرگ و امنیت  بیشتری را فراهم می‌کند. گوگل همچنین بسیار تلاش دارد تا دارت را پیچیده تر  بسازد و ویژگی‌ها و قابلیت‌های فراوانی به آن ببخشد…زبان برنامه نویسی DART چیست؟زبان  برنامه نویسی DART چیست؟ دارت زبانی بر پایه کلاس، وراثت یگانه و شی گرایی  است که گرامر آن شبیه زبان C بوده و دارای Interface،reified generics  کلاسهای Abstract و Optional typing می‌باشد. type annotationهای ایستا  تأثیری بر روی سمانتیک کد در زمان اجرا ندارد. در عوض type annotation  می‌تواند پرونده‌هایی برای ابزارهایی مانند checkerهای ایستا و checkهای  پویای در زمان اجرا را فراهم نماید. این پروژه توسط لارس بک و کسپر لاند  پایه‌گذاری شده‌است.اجرای کد های برنامه نویسی Dart1- کامپایل به عنوان جاوا اسکریپتبرای استفاده از مروگر های اصلی وب، دارت متکی به یک کامپایلر منبع به جاوا اسکریپت است. با توجه به سایت پروژه Dart طراحی شده تا بتوان از آن برای نوشتن ابزار توسعه، توسعه نرم افزار مدرن و  پیاده سازی با کارایی بالا استفاده کرد. در هنگام استفاده از یک کد دارت  در یک مرورگر وب، کد با استفاده از کامپایلر Dart2js به جاوا اسکریپت وارد  می شود. کامپایل به عنوان جاوا اسکریپت سازگار با تمام مروگر های اصلی است و  نیازی به مرورگر برای اتخاذ دارت نیست.2- مستقلکیت  توسعه نرم افزار (SDK) دارت با یک Dart VM مستقل حمل می شود که اجازه می  دهد کد Dart در محیط رابط خط فرمان اجرا شود. همان طور که ابزار زبان موجود  در SDK Dart بیشتر در دارت نوشته شده است، Dart VM مستقل نیز بخش مهمی از SDK است. این ابزار شامل کامپایلرDart2js و مدیر بسته به نام pub است.3- پیش از زمان وارد شدهکد دارت می تواند به صورت اتوماتیک به کد ماشین (مجموعه دستور العمل های اصلی) تبدیل شود. برنامه های ساخته شده با Flutter (برنامه SDKتلفن همراه که با Dart ساخته شده است) به صورت خودکار به عنوان کد دارت به فروشگاه برنامه ها اعمال می شوند.4- برنامه های تلفن همراه بومیگوگل Flutter را برای توسعه برنامه های بومی موبایل در هر دوی Android و IOS معرفی کرد. Flutter یک برنامه SDK تلفن همراه است که با چارچوب،  ویجت ها و ابزار ها کامل شده است و به توسعه دهندگان امکان راه اندازی  برنامه های تلفن همراه را می دهد. Flutter یک نرم افزار منبع باز است که با  زبان برنامه نویسی دارت نوشته شده و با Firebase و سایر نرم افزار های SDK  موبایل کار می کند.5- یادگیری بیشترزبان برنامه نویسی Dart به شما کمک می کند تا با استفاده از یک زبان بهینه سازی شده توسط کاربر،  چارچوب قدرتمند و انعطاف پذیر، تجربه های زیبا و با کیفیت بالا را در تمام  صفحات ایجاد کنید6-مثال برنامه سلام دنیا در Dartmain() {
print(&#039;Hello World!&#039;);
}7-متغیرها Variables در برنامه نویسی دارتبا ابتدائی ترین موارد در هر زبان برنامه نویسی شروع میکنیم، متغیرها. تمامی متغیرها در دارت زیرمجموعه ی کلاس Object هستند.در  زبان دارت (همانند بسیاری از زبان های سطح بالا نظیر جاوااسکریپت، کاتلین،  سوئیفت و…) هنگام تعریف یک متغیر نیازی نیست حتماً نوع آن را مشخص کرد و  بصورت زیر میتوانید هر متغیری از هر نوعی تعریف کنید (در زبان دارت باید از  سمیکالن یا همان ; استفاده کنید):var myNubmer = 123;
print(myNubmer);
var myString = &#039;test&#039;;
print(myString);در  مثال های بالا با واژه var میگوییم یک متغیر داریم، پس از آن اسم متغیر، و  در نهایت مقدار آن را مشخص میکنیم. اگر میخواهید انواع ثابتی از داده را  تعریف کنید نگاهی به final و const بیندازید. بصورت خلاصه به شکل زیر میتوانید انواع ثابت را تعریف کنید:8-رشته Strings در برنامه نویسی دارترشته ها بصورت “…” یا ‘…’ تعریف میشوند.// single quotes
var s1 = &#039;hello&#039;;
print(s1);
// double quotes
var s2 = &amp;quothi misagh&amp;quot
print(s2);
// interpolation
var y1 = 2;
var z1 = 5;
// میتوانید هر پارامتر، متغیر یا فرمولی را به این صورت در رشته مستقیماً بکار ببرید ${...)
var sum = &#039;The sum is ${y1+z1*2}&#039;;
print(y1); // 2
print(z1); // 5
print(sum);  // The sum is 12// همچنین اگر با یک پارامتر کار داریم میتوانیم بدون هیچ آکولادی از مقدار 
پارامتر استفاده کنیم
var number = 12;
print(&#039;$number is a number&#039;); // 12 is a number
کدهای زیر مثالی از تبدیل رشته و عدد است:
// Srring -&gt; int
var one = int.parse(&#039;1&#039;);
print(one); // 1
// اعمال محدودیت روی تعداد ارقام عدد اعشاری
String pi = 3.1415.toStringAsFixed(2);
print(pi);  // 3.14</description>
                <category>امیر محمد یعقوبی</category>
                <author>امیر محمد یعقوبی</author>
                <pubDate>Sun, 21 Feb 2021 14:41:40 +0330</pubDate>
            </item>
            </channel>
</rss>