<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های محمد صدرا برومند</title>
        <link>https://virgool.io/feed/@sadrabroo</link>
        <description>Full Stack Developer and Mobile Developer</description>
        <language>fa</language>
        <pubDate>2026-06-16 13:10:45</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/304416/avatar/anzQL9.png?height=120&amp;width=120</url>
            <title>محمد صدرا برومند</title>
            <link>https://virgool.io/@sadrabroo</link>
        </image>

                    <item>
                <title>نسخه clone اپلیکیشن ایرانیکارت</title>
                <link>https://virgool.io/@sadrabroo/%D9%86%D8%B3%D8%AE%D9%87-clone-%D8%A7%D9%BE%D9%84%DB%8C%DA%A9%DB%8C%D8%B4%D9%86-%D8%A7%DB%8C%D8%B1%D8%A7%D9%86%DB%8C%DA%A9%D8%A7%D8%B1%D8%AA-qcu2lfauhr6x</link>
                <description>تصویر از نسخه cloneمقدمهسلام در این پست به بررسی پروژه تمرینی خودم که شامل نسخه کلون اپلیکیشن موبایل ایرانیکارت هست می پردازم. این پروژه یک باز طراحی از اپلیکیشن ایرانیکارت است. من این پروژه را با استفاده از React Native Expo ساختم و از زبان برنامه نویسی TypeScript استفاده کردم. در ادامه تمرین مایلم سمت بک اند پروژه را نیز بسازم. تمرینتمرین یکی از مهم ترین بخش های یادگیری یک زبان برنامه نویسی یا فریم ورک یا کتابخانه هست و در بسیاری از موارد از بخش یادگیری مباحث و پروژه واقعی مهم تر می باشد. شما در تمرین می توانید یک هدف مشخص که می تواند شامل ساخت یک نسخه کلون از یک وب اپلیکیشن یا موبایل اپلیکیشن باشد را انجام دهید، این کار به شما کمک می‌کند که مباحثی که در زبان برنامه نویسی یا فریم ورک یاد گرفته اید بسنجید و مهارت های خود را تقویت و در ذهن ثابت کنید. پس تمرین را در اولویت قرار دهید حتی اگر مدتی با یک زبان برنامه نویسی و یک فریم ورک کار کرده اید و الان مدتی است که از محیط آن خارج شدید حتما تمرین کنید، چون ممکن از زودتر از چیزی که فکر می کنید فراموش کنید.دمو و سورس کد نسخه کلون ایرانیکارت برای مشاهده نسخه دموی اندروید آن می توانید از لینک زیر دانلود کنید. https://drive.google.com/file/d/1uLwy4glcF9ARPKvrmzToOn_XGgVNWK7Q/view?usp=sharingهمچنین برای مشاهده سورس کد می توانید از لینک Github زیر استفاده کنید.https://github.com/SadraBoromand/IraniCard</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Sat, 24 May 2025 11:56:24 +0330</pubDate>
            </item>
                    <item>
                <title>تجربه من از رویداد انتقال تجربه</title>
                <link>https://virgool.io/@sadrabroo/%D8%AA%D8%AC%D8%B1%D8%A8%D9%87-%D9%85%D9%86-%D8%A7%D8%B2-%D8%B1%D9%88%DB%8C%D8%AF%D8%A7%D8%AF-%D8%A7%D9%86%D8%AA%D9%82%D8%A7%D9%84-%D8%AA%D8%AC%D8%B1%D8%A8%D9%87-cijnaflnh1vn</link>
                <description>پوستر رویدادسلام به همه دوستانتجربه من از رویداد بزرگ انتقال تجربه کامپیوتر 🌱 یکی از اولین رویدادهایی که امسال شرکت کردم رویداد انتقال تجربه کامپیوتر دانشگاه اصفهان بود.در این رویداد با حضور سخنرانان بسیار با تجربه از شرکت های داتین و ایرانیکارت و اسنپ و کسرا بودند، سخنرانان در حوزه های CTO، مدیر محصول، مدیر ارشد بودند.در این رویداد از تجربه های شروع برنامه نویسی و تحصیلات سخنرانان گفته شده و همچنین راهنمایی به جوانان برای شروع مسیر گفتند، یک پرسش و پاسخ بسیار کوتاه هم انجام شد.در این رویداد از اهمیت ویژه شبکه سازی بسیار گفته شد، می‌توان گفت در دنیای کنونی و بازار رقابتی زیاد شبکه سازی بسیار مهم می باشد.شبکه سازی می تواند انواع مختلف داشته باشه از معرفی خود تا قرار دادن رزومه در مکان های مناسب یا حتی داشتن آشنا (پارتی) در برخی از مکان ها می تواند بسیار کاربردی باشد🙋🏻.در بخش پرسش و پاسخ سعی شد به توصیه هایی راجب رزومه نویسی پرداخته شود و همچنین به سوال بی پاسخ که چرا رزومه های تمامی افراد همیشه ریجکت می‌ شوند و رزومه ها در کمتر از ۱ دقیقه ریجکت می شوند پاسخ ندهند.(جدی خیلی دانشجویان دنبال پاسخ بودند ولی سخنرانان زرنگ تر بودند و پاسخ ندادند😅)تیم اجرایی این رویداد اکثرا از انجمن علمی‌کامپیوتر دانشگاه اصفهان بودند. این تیم اکثرا از دختران بسیار پر حرف و عکاس تشکیل شده بود که از لحظه لحظه رویداد تصویر ثبت کردند📷 و در طول مراسم مدام در حرکت و صحبت کردند بودند.تیم اجرایی این رویداد بسیار فعال بودند و سعی کردند که آیتم های مختلفی نظیر مسابقه در این رویداد قرار بدهند هرچند که خیلی بخش های مختلف رویداد سریع اجرا می شد و کمبود وقت بسیار مشاهده می شد.در کل رویداد مناسبی بود 👍.شرکت هایی که در این رویداد بودند👇University of Isfahan برگزار کنندDotin UI ACM برگزار کنندIraniCard | ایرانیکارت Snapp! Kasra Company | شرکت مهندسی کسرا</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Sun, 13 Apr 2025 19:01:30 +0330</pubDate>
            </item>
                    <item>
                <title>مقایسه سامانه گلستان و سامانه آموزشیار</title>
                <link>https://virgool.io/@sadrabroo/%D9%85%D9%82%D8%A7%DB%8C%D8%B3%D9%87-%D8%B3%D8%A7%D9%85%D8%A7%D9%86%D9%87-%DA%AF%D9%84%D8%B3%D8%AA%D8%A7%D9%86-%D9%88-%D8%B3%D8%A7%D9%85%D8%A7%D9%86%D9%87-%D8%A2%D9%85%D9%88%D8%B2%D8%B4%DB%8C%D8%A7%D8%B1-osmwokpxs7dc</link>
                <description>باسلام در این پست می خوام از تجربه خودم از سامانه گلستان و سامانه آموزشیار بگم.خب اول اینکه من دوره کارشناسی را با سامانه گلستان گذراندم و دوره ارشد را با سامانه آموزشیار و تجربه های زیادی از هر دو این سایت ها پیدا کردم.اول سامانه گلستانخب سامانه گلستان یک سامانه قدیمی هست که در دانشگاه های دولتی استفاده می شود، این سامانه اصلا رسپانسیو responsive نیست و برای ورود به سامانه فقط کافیه شما نام کاربری و رمز تون را وارد کنید و سریع وارد می شید و این کار را برای دانشجو خیلی راحت و سریع می کنه.این سامانه طی سال هایی که من ازش استفاده کردم به باگ یا مشکلی ندیم داشته باشه و شما می تونید با استفاده از کدهای مربوط به هر بخش به آنجا هدایت شوید و البته از منو سمت راست هم می تونید دسترسی پیدا کنید.در هر بخش اول باید بخش مورد نظر وارد شوید و بعد  فیلتر کنید یا اگر فیلتری نکنید به صورت پیش‌فرض اوکی هست و بعد روی مشاهده بزنید.برای گرفتن گزارش های مختلف مثل اشتغال به تحصیل یا کارنامه می تونید خیلی راحت به بخش مورد نظر برید و روی پرینت بزنید و خروجی pdf بگیرید.انتخاب واحد در این سامانه در زمان مقرر خودش که اعلام میشه باز میشه و بهتر هست برای انتخاب واحد از کد درس استفاده کنید و این سامانه انتخاب واحد ساده هست.اگر زمان انتخاب واحد بگذره می تونید در حذف و اضافه درس را بردارید.در کل سامانه ساده و خوبی هست و بعد از مدتی خیلی راحت تمامی بخش هاش دستتون میاد. و نیاز به اینترنت زیادی برای لود سایت نداره.خب در ادامه بریم سراغ سامانه آموزشیار نکته اول سامانه آموزشیار این هست که شما برای هر کاری باید پول پرداخت کنید تاکید می کنم باید هر کاری باید پول پرداخت کنید 💰💸.از صفحه ورود که با استفاده از نام کاربری و رمز و کد پیامک هست پولی هست یا با استفاده از آیگپ می تونید کد را وارد کنید و وارد شوید که آیگپ خیلی بدرد نخور هست و ممکنه پیام را دیر ارسال کنه و مدت بگذره.این سامانه مثل سامانه گلستان مدت خیلی زیادی رسپانسیو responsive نبوده ولی الان کمی رسپانسیو شده است البته هنوز در بسیاری از صفحات رسپانسیو درست نیست ولی باید باهاش کنار بیاین. آموزشیار به صورت دو نسخه هست یک نسخه برای فعالیت های آموزشی و یک نسخه برای انتخاب واحد و حذف و اضافه داره.البته ظاهر هر دو یکی قبلا یکسان بود و فقط نسخه سامانه انتخاب واحد یک منو بیشتر برای انتخاب واحد داشت که در زمان انتخاب واحد باید فعال هست.برای گرفتن گزارش های مختلف باید حضوری به دانشگاه برید مثلا برای گرفتن یک گواهی ساده اشتغال به تحصیل باید حتما تا دانشگاه برید تا بهتون نسخه چاپی بدهند و اصلا مثل سامانه گلستان نیست که خیلی راحت بهت یک نسخه pdf بده.یک نکته بسیار مهم:در آموزشیار شما برای گرفتن هر گزارشی یا هر فعالیت دیگری باید ابتدا تسویه حساب کامل کنید و گرنه به شما اجازه هیچ فعالیتی داده نمی شود.ابن ارور را همیشه در انتخاب واحد می بینیفرایند انتخاب واحد در آموزشیارفرآیند انتخاب واحد در آموزشیار فرآیندی اعصاب خورد کنی هست و سخت هست، این سامانه همیشه در انتخاب واحد به مشکل می خورد و قطع می شود و ارور می دهد و شما همیشه در زمان انتخاب واحد به ارور می خورید و زمانی که وصل می شود ممکن هست درس انتخابی شما حذف شده باشد و یا پر شده باشد. این سامانه همچنین در زمان انتخاب واحد دچار باگ پرداخت می شود به نحوی که شما پول را پرداخت می کنید و داخل سامانه دیر وارد می شود و شما نمی تونید انتخاب واحد کنید (پیشنهاد بنده این هست قبل از انتخاب واحد هزینه شهریه ثابت را پرداخت کنید که موقع انتخاب واحد به مشکل نخورید).نکته مهم این سامانه این هست ممکن هست پول از حسابتون کم شود ولی در سامانه نشان ندهد نگران نباشید طول می‌کشد که سامانه بروز شود پشت ظاهر جدید این سامانه کدهای قدیمی زیادی هست.حتما بعد از انتخاب واحد لیست دروس تون را بررسی کنید ممکن هست درسی اضافه نشده باشد و یا حذف شده باشد.معایب این سامانه زیاد هست مثلا گاهی باگ می خورد و شما باید ساعات زیادی در آموزش دانشگاه باشید.و البته در تحصیلات تکمیلی زمانی که شما پایان نامه را تمدید می کنید باید نصف هزینه ثابت را بگیرد ولی گاهی کل هزینه محاسبه می شود و این از باگ های سامانه آموزشیار هست.سامانه آموزشیار در کل سامانه ای بر پایه پول هست و برای هر کاری باید شما پول پرداخت کنید وگرنه به ارور می خورید.تجربه شخصی منتجربه شخصی من از کار با جفت این سامانه ها می تونم بگم که سامانه گلستان حقیقتا بهتر از سامان آموزشیار هست چون بسیاری از کارها را شما بدون هیچ باگ یا مشکلی می تونید انجام دهید ولی سامانه آموزشیار باگ ها و مشکلات بسیار زیادی داره و این مشکلات طی سال های زیادی بوده و رفع نشده است و فقط ظاهر سایت را کمی بهتر کردند ولی در اصل تمامی مشکلات هنوز هست و کدهای قدیمی در پشت کار همیشه وجود دارند.</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Wed, 25 Sep 2024 22:23:18 +0330</pubDate>
            </item>
                    <item>
                <title>مقایسه Drizzle Orm و Prisma Orm</title>
                <link>https://virgool.io/@sadrabroo/%D9%85%D9%82%D8%A7%DB%8C%D8%B3%D9%87-drizzle-orm-%D9%88-prisma-orm-on1epdmzck4t</link>
                <description>باسلامدر این پست به مقایسه دو orm محبوب برای Node.js می پردازیم که می توانید در پروژه های Next.js, Nuxt.js, Nest.js و سایر پروژه های خود استفاده کنید، مقایسه بین Drizzle Orm vs Prisma Orm هر دو این orm ها node.js هستند و از Typescript پشتیبانی می کنند و برای پایگاه داده های محبوب نظیرPostgreSQLMySQLSQLiteپشتیبانی می کنند و البته پایگاه داده های بیشتری را نیز پشتیبانی می کنند.مقایسه بر اساس یک پروژه node.js و پایگاه داده Postgresql انجام می شود.Node.js Project• Language: TypeScript• Dependencies:• Drizzle: ^1.99.0• Prisma: ^3.12.0• Postman Runner: ^8.10.0 PostgreSQL Database• Provider: Digital Ocean Managed Database• Size: 1 GB RAM• CPU: 1 vCPU و روی یک دیتابیس با اطلاعاتی بیش از 5300 سطر به انجام کوئری های زیر می پردازد:لینک پایگاه داده worldDB-1.0 :https://github.com/morenoh149/postgresDBSamples/blob/master/worldDB-1.0/world.sqlکوئری های اجرا شده شاملFetch all Citiesشامل دریافت اطلاعات کامل تمامی شهرهاInsert a new Cityشامل افزودن یک شهر جدیدUpdate a City Infoبروز رسانی اطلاعات یک شهرDelete a Cityحذف یک موجودیت شهر معیارهای ارزیابی شامل معیار Synthetic و معیار Performance می باشد:در اسلاید ۲ به نمایش نتایج معیار Synthetic می پردازد که در این نتایج Drizzle در کوئری های Fetch all Cities و Delete a City بهتر عمل کرده است و نتایج در زمان کمتری در واحد ms انجام شده است و در سایر کوئری ها Prisma نتایج بهتری کسب کرده است.در اسلاید ۳ به نمایش نتایج معیار Performance می پردازد، که در این معیار براساس میانگین زمان Response انجام شده است که در نهایت Drizzle با زمان 17ms و Prisma با زمان 1565ms انجام شده است. نتیجه گیریدر حالی که Drizzle در هر دو تست Performance و Synthetic برتری دارد، ضروری است که وضعیت آن را به عنوان یک ORM نسبتاً جدید با document محدود و پشتیبانی جامعه community support تأیید کنیم.  از طرف دیگر، Prisma به دلیل رویکرد توسعه‌دهنده‌پسند خود متمایز است که با اسناد گسترده و سازگاری با پایگاه‌های داده متعدد، چه رابطه‌ای و چه غیررابطه، پشتیبانی می‌شود.لینک منبع:https://stories.bazaarnxt.com/drizzle-vs-prisma-a-comprehensive-comparison-daefa0e670ef</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Sun, 17 Mar 2024 11:13:18 +0330</pubDate>
            </item>
                    <item>
                <title>ساخت clone موبایل بانک ملی - بام</title>
                <link>https://virgool.io/codenevis/baan-clone-mmweibbwovjs</link>
                <description>صفحه  اصلی  باسلام، ساخت clone موبایل بانک ملی - بام 🔴لینک ویدیو آپارات:🔴 https://www.aparat.com/v/71VKqدر این پست به بررسی بسیار سریع نسخه clone موبایل بانک ملی یا همان بام می پردازیم، این نسخه سعی شده بسیاشبیه به نسخه اصلی باشد ولی هرچند در بسیاری از جزئیات تفاوت دارند. صفحه پروفایلپس از رد شدن رزومه ام در بیش از 40 موقیت شغلی توسعه دهنده در کشور در سایت های آی استخدام و جابنجا و جای ویژن و کوئرا با عنوان &quot;عدم دانش فنی&quot; با نا امیدی تصمیم گرفتم از یک برنامه که برایم جذاب بود یک نسخه clone بسازم، از آنجایی که مایل به ساخت یک نسخه موبایل ساده نبودم تصمیم گرفتم یک برنامه زیبا مثل بام را شبیه سازی کنم. همان طور که اطلاع دارید موبایل بانک ملی یا بام یک اپ با طراحی بسیار زیبا هست و نسبت به سایر موبایل بانک ها به نظر بنده طراحی و رابط کاربری UX/UI بهتری دارد. صفحه کارت هامن سعی کردم با استفاده از تکنولوژی Expo - Native React استفاده کنم چون حقیقتا حال درگیری برای نصب gradle و sdk و بقیه موارد در studio android و همچنین نصب VM و نصب macOS را نداشتم و تصمیم گرفتم با Expo بسازم. از طرفی باید به این فکر می بودم که باید طوری برنامه را بسازم که Performance خوبی داشته باشد. Splash screen * لطفا برنامه را نصب کنید و نظرات و پیشنهادات و انتقادات خودتان را نسبت به آن برای بنده ارسال کنید. برنامه کاملا آفلاین می باشد. لینک فایل apk: https://drive.google.com/file/d/1I-UzlnCuQhb6c1RAfc-toNFw22grQ4x4/view?usp=sharing</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Sat, 03 Feb 2024 22:06:59 +0330</pubDate>
            </item>
                    <item>
                <title>ساخت Snapp food Clone 🍔 _ بخش دوم</title>
                <link>https://virgool.io/@sadrabroo/%D8%B3%D8%A7%D8%AE%D8%AA-snapp-food-clone-%D8%A8%D8%AE%D8%B4-%D8%AF%D9%88%D9%85-fwnbbhdylxqw</link>
                <description>ساختار تکنولوژی های استفاده شدهبا سلام، من صدرا هستم!در ادامه پست قبل که به ساخت مدل ها و migration آنها پرداختیم و در این پست به ساخت Serializer و سپس به مدیریت Request و Response و بروزرسانی admin.py و views.py و urls.py می پردازیم.ساختار routing سمت بک اند با Django Rest Frameworkایتدا یک فایل با نام serializers.py می سازیم و در آن کد های زیر را برای مدل های خود قرار می دهیم.from rest_framework import serializersfrom . import modelsclass CitySerializer(serializers.ModelSerializer):class Meta:model = models.Cityfields = &#039;__all__&#039;class UserSerializer(serializers.ModelSerializer):class Meta:model = models.Userfields = &#039;__all__&#039;class CategorySerializer(serializers.ModelSerializer):class Meta:model = models.Categoryfields = &#039;__all__&#039;class FoodSerializer(serializers.ModelSerializer):class Meta:model = models.Foodfields = &#039;__all__&#039;class ShopsFoodSerializer(serializers.ModelSerializer):Foods = FoodSerializer(many=True, read_only=True)category = CategorySerializer(read_only=True)city = CitySerializer(read_only=True)class Meta:model = models.ShopsFoodfields = &#039;__all__&#039;نکته : به طور ساده و خلاصه فایل serializers.py برای تبدیل مدل های ما به فرمت json و ساخت Rest Api کمک می کند.در مرحله بعد به ساخت views.py می پردازیم.در این فایل ما می خواهیم به مدیریت request و response از سمت کاربر استفاده می شود.شکل کامل ارتباط برقراری بین سرور و کلاینتدر شکل بالا همان طور که مشاهده می کنید ابتدا یک سرور می سازیم برای مدیریت درخواست ها request و پاسخ ها response استفاده می شود.در سمت سرور برای ارتباط برقرار کردن با پایگاه داده database ما از django ORM استفاده می کنیم و در بستر فریم ورک جنگو رست Django rest framework این مدیریت را انجام می دهیم و این ارتباط بین وب اپ و پایگاه داده را برقرار می کنیم.فریم ورک Django rest framework قابلیت مدیریت Rest API را به ما می دهد و ما را قادر می سازد تا بر روی درخواست های GETPOSTPUTDELETEمدیریت بسیار خوب و ساده ای انجام دهیم، ویژگی بسیار مهم این تکنولوژی بستر ساده آن است که ما می توانیم بدون پیچیدگی زیاد آن را مدیریت کنیم.در ادامه به کدهای بخش views.py می پردازیم:from rest_framework.request import Requestfrom rest_framework.response import Responsefrom rest_framework import statusfrom rest_framework.views import APIViewfrom . import modelsfrom . import serializersclass UserViewApi(APIView):def get(self, req: Request):users = models.User.objects.all()serializer = serializers.UserSerializer(users, many=True)return Response(serializer.data, status.HTTP_200_OK)def post(self, req: Request):username = req.data.get(&#039;username&#039;)password = req.data.get(&#039;password&#039;)print({username, password})try:user = models.User.objects.get(username=username, password=password)serializer = serializers.UserSerializer(user)return Response(serializer.data, status.HTTP_202_ACCEPTED)except:return Response(None, status.HTTP_401_UNAUTHORIZED)User View APIclass CityViewApi(APIView):def get(self, req: Request):id = req.query_params.get(&#039;id&#039;)if id != None:cities = models.City.objects.get(pk=int(id))serializer = serializers.CitySerializer(cities)else:cities = models.City.objects.all()serializer = serializers.CitySerializer(cities, many=True)return Response(serializer.data, status.HTTP_200_OK)
City Routingclass CategoryViewApi(APIView):def get(self, req: Request):id = req.query_params.get(&#039;id&#039;)if id != None:try:categories = models.Category.objects.get(pk=id)serializer = serializers.CategorySerializer(categories)except:return Response(None, status.HTTP_404_NOT_FOUND)else:categories = models.Category.objects.all()serializer = serializers.CategorySerializer(categories, many=True)return Response(serializer.data, status.HTTP_200_OK)Category Routingclass ShopsFoodViewApi(APIView):def get(self, req: Request):id = req.query_params.get(&#039;id&#039;)if id != None:try:shopsFood = models.ShopsFood.objects.get(pk=id)serializer = serializers.ShopsFoodSerializer(shopsFood)except:return Response(None, status.HTTP_404_NOT_FOUND)else:shopsFood = models.ShopsFood.objects.all()serializer = serializers.ShopsFoodSerializer(shopsFood, many=True)return Response(serializer.data, status.HTTP_200_OK)
Shop Food Routingclass FoodViewApi(APIView):def get(self, req: Request):id = req.query_params.get(&#039;id&#039;)if id != None:try:food = models.Food.objects.get(pk=id)serializer = serializers.FoodSerializer(food)except:return Response(None, status.HTTP_404_NOT_FOUND)else:food = models.Food.objects.all()serializer = serializers.FoodSerializer(food, many=True)return Response(serializer.data, status.HTTP_200_OK)
Food Routingclass SearchApiView(APIView):def get(self, req: Request):city_id = req.query_params.get(&#039;city&#039;)category_id = req.query_params.get(&#039;category&#039;)shopsFood = models.ShopsFood.objects.all()if city_id != None:shopsFood = shopsFood.filter(city=city_id)# filter(category=category_id, city=city_id))if category_id != None:shopsFood = shopsFood.filter(category=category_id)serializer = serializers.ShopsFoodSerializer(shopsFood, many=True)return Response(serializer.data, status.HTTP_200_OK)Search Food Routingclass SearchFoodApiView(APIView):def get(self, req: Request):title = req.query_params.get(&#039;title&#039;)foods = models.Food.objects.all()if title != None:foods = foods.filter(title__contains=title)serializer = serializers.FoodSerializer(foods, many=True)return Response(serializer.data, status.HTTP_200_OK)در ادامه باید برای مدیریت Rest API های موجود در بخش views.py باید بخش urls.py را بروز رسانی کنیم.در ادامه به بروزرسانی بخش urls.py می پردازیم:from django.urls import pathfrom . import viewsurlpatterns = [# path(&#039;api/&#039;, include(&#039;snappApi.urls&#039;))path(&#039;user/&#039;, views.UserViewApi.as_view()),path(&#039;city/&#039;, views.CityViewApi.as_view()),path(&#039;city/&lt;int:id&gt;&#039;, views.CityViewApi.as_view()),path(&#039;category/&#039;, views.CategoryViewApi.as_view()),path(&#039;category/&lt;int:id&gt;&#039;, views.CategoryViewApi.as_view()),path(&#039;shopFood/&#039;, views.ShopsFoodViewApi.as_view()),path(&#039;shopFood/&lt;int:id&gt;&#039;, views.ShopsFoodViewApi.as_view()),path(&#039;food/&#039;, views.FoodViewApi.as_view()),path(&#039;food/&lt;int:id&gt;&#039;, views.FoodViewApi.as_view()),path(&#039;search/&#039;, views.SearchApiView.as_view()),path(&#039;searchFood/&#039;, views.SearchFoodApiView.as_view()),]در ادامه باید پنل admin فریم ورک Django هم بروزرسانی کنیم تا مدل های ما را شناسایی کند.در ادامه کدهای بخش admin.py را بروزرسانی می کنیم:from django.contrib import adminfrom .models import City, User, Category, Food, ShopsFood# Register your models here.@admin.register(User)class UserAdmin(admin.ModelAdmin):list_display = [&#039;username&#039;, &#039;city&#039;]list_filter = [&#039;city&#039;]@admin.register(City)class CityAdmin(admin.ModelAdmin):list_display = [&#039;title&#039;]@admin.register(Category)class CategoryAdmin(admin.ModelAdmin):list_display = [&#039;title&#039;]@admin.register(Food)class FoodAdmin(admin.ModelAdmin):list_display = [&#039;title&#039;, &#039;price&#039;]@admin.register(ShopsFood)class ShopsFoodAdmin(admin.ModelAdmin):list_display = [&#039;title&#039;, &#039;category&#039;]list_filter = [&#039;category&#039;]تصویر از پنل ادمین Djangoدر این مرحله بخش back end پروژه تمام می شود.اکنون شما یک Rest API برای برنامه تحت وب خود دارید که برای مدیریت مدل هایCityUserCategoryFoodShopsFoodمی باشد و می توانیم به راحتی مدل های بالا را مدیریت کنید.در ادامه به ساخت بخش فرانت اند front end با React.js می پردازیم.</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Fri, 02 Feb 2024 17:47:48 +0330</pubDate>
            </item>
                    <item>
                <title>ساخت Snapp food Clone 🍔 _ بخش اول</title>
                <link>https://virgool.io/codenevis/%D8%B3%D8%A7%D8%AE%D8%AA-snapp-food-clone-%D8%A8%D8%AE%D8%B4-%D8%A7%D9%88%D9%84-vkvbkuuy6xy2</link>
                <description>با سلام در این پست از تجربه شخصی خودم از ساخت یک نسخه clone از اسنپ فود توضیح می دم.Snapp food cloneبرای ساخت این clone من از دو تکنولوژی زیر استفاده می کنم برای back end از Django rest framework و برای front end از React.js استفاده می کنم.آیکون  اسنپ فوددر ابتدا باید سراغ back end برویم ، پیشنهاد من برای ساخت سریع back end برای rest api فریم ورکDjango rest framework است این فریم ورک بسیار سبک و راحت هست و می توانید خیلی راحت و سریع یک api بسازید.در ادامه به ساخت این clone به صورت گام به گام می پردازیم.گام اول: ساخت back endدر ابتدا با دستور زیر یک پروژه django rest framework می سازیم.pip install djangorestframeworkسپس دستور زیر را در settings.py اضافه کنیدINSTALLED_APPS = [    ...    &#x27;rest_framework&#x27;,]سپس در فایل urls.py کد زیر را اضافه می کنیمurlpatterns = [    ...    path(&#x27;api-auth/&#x27;, include(&#x27;rest_framework.urls&#x27;))]در مرحله بعد ساختار فایل ها و پوشه ها باید به صورت زیر باشدBack end structures در تصویر بالا ساختار فایل های back end را مشاهده می کنید در مرحله بعد یک app بسازید با نام  snappApi برای ساخت app می توانید از دستور زیر استفاده کنیدpython manage.py startapp snappApiاستفاده کنیدگام دوم : ساخت مدل modelsدر مرحله بعد به بررسی ساخت مدل های برنامه می پردازیمداخل فایل models.py مدل های زیر را اضافه کنیدfrom django.db import models# Create your models here.class City(models.Model):    title = models.CharField(max_length=150)    def __str__(self):        return self.title    class Meta:        db_table = &amp;quotCity&amp;quotclass User(models.Model):    username = models.CharField(max_length=150)    password = models.CharField(max_length=150)    city = models.ForeignKey(City, on_delete=models.CASCADE)    def __str__(self):        return self.username    class Meta:        db_table = &amp;quotUser&amp;quotclass Category(models.Model):    title = models.CharField(max_length=150)    iconUrl = models.TextField()    def __str__(self):        return self.title    class Meta:        db_table = &amp;quotCategory&amp;quotclass Food(models.Model):    title = models.CharField(max_length=150)    price = models.DecimalField(decimal_places=0, max_digits=10)    bannerUrl = models.TextField()    def __str__(self):        return self.title    class Meta:        db_table = &amp;quotFood&amp;quotclass ShopsFood(models.Model):    title = models.CharField(max_length=150)    rank = models.FloatField(max_length=50)    bannerUrl = models.TextField()    iconUrl = models.TextField()    category = models.OneToOneField(Category, on_delete=models.CASCADE)    city = models.OneToOneField(City, on_delete=models.CASCADE)    Foods = models.ManyToManyField(Food)    def __str__(self):        return self.title    class Meta:        db_table = &amp;quotShopsFood&amp;quotدر بالا مدل های User , food , shopfood ,city, category را ساختیم نکته : می توانید به جای ساخت مدل جدید user از مدل پیشفرض django استفاده کنیدگام سوم : migrationدر ابن مرحله مدل ها را migrate می کنید ابتدا باید یک super user بسازید که از دستور زیر استفاده کنیدpython manage.py createsuperuserدر مرحله بعد باید migration را بسازید با دستور زیر می توانید بسازیدpython manage.py makemigrationsو در مرحله بعد باید migration را روی database مورد نظر اجرا کنید با استفاده از دستور زیر می توانید اجرا کنیدpython manage.py migrateنکته : بنده از پایگاه داده پیشفرض django استفاده کردم که sqlite است شما می توانید از postgresql یا mysql استفاده کنیدادامه مبحث در بخش ۲</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Mon, 29 Jan 2024 21:40:37 +0330</pubDate>
            </item>
                    <item>
                <title>چرا از نصف قابلیت های Next.js استفاده نمی شود؟</title>
                <link>https://virgool.io/@sadrabroo/%DA%86%D8%B1%D8%A7-%D8%A7%D8%B2-%D9%86%D8%B5%D9%81-%D9%82%D8%A7%D8%A8%D9%84%DB%8C%D8%AA-%D9%87%D8%A7%DB%8C-nextjs-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D9%86%D9%85%DB%8C-%D8%B4%D9%88%D8%AF-dglme4jnktzh</link>
                <description>باسلامچرا در ایران از نصف قابلیت های Next.js استفاده نمی شود؟ چرا کدهای React.js را بدون تغییر کپی در Next.js می کنند؟در این پست می خوام از تجربه ام از قابلیت های Next.js بگم و اینکه چرا در ایران هر پروژه ای که دیدم از قابلیت های Next.js استفاده نکرده اند.خب همون طور که میدونید نکست یک فریم ورک full stack هست یعنی می تونید باهاش خیلی راحت هم back endfront endapiرا هندل کنید مثلا می خواید یک فروشگاه اینترنتی بسازید می تونید خیلی راحت با یک orm به یک دیتابیس مثل mysql یا postgresql متصل شوید و با استفاده از ساخت یک model و migrate کردن آن خیلی سریع جداول پایگاه داده را بسازید،بعد می توانید با api در همان Next.js سمت front end را بسازید و حتی می توانید authentication و JWT هم مدیریت کنید یا حتی graphQl هم هندل کنید،و حتی می توانید از api ساخته شده با Next.js در سایر پروژه ها استفاده کنید،همچنین به جای استفاده از تگ های مرسوم html می توانید از تگ های optimizer در Next.js استفاده کنید که باعث سرعت و Performance خیلی بهتری می شود این تگ ها برای موارد زیادی مثل image, css, link, script,head, ets....می باشند که در خیلی از پروژه ها دیدم اصلا استفاده نمی شوند،همچنین می توانید مدیریت فایل ها را نیز مثل Express انجام دهید و مدیریت خوبی روی فایل ها داشته باشید،در کل قابلیت های این فریم ورک خیلی خوب هست به شرط اینکه استفاده شوند و صرفا فقط کدهای React.js را کپی پیست در Next.js نکنیم.موفق باشید 💯</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Wed, 27 Dec 2023 21:22:50 +0330</pubDate>
            </item>
                    <item>
                <title>تجربه من از Next.js و Prisma</title>
                <link>https://virgool.io/@sadrabroo/nextjs-and-prisma-on7ype4rnjia</link>
                <description>Next.js &amp; Prismaباسلام به همه دوستاندر این پست می خوام از تجربه شخصی خودم در مورد ساخت سایت های full stack با Next.js و prisma بپردازم.چند وقتی هست دارم با Next.js و prisma سایت های مختلفی می سازم و می تونم بگم که prisma یک orm خیلی خوب هست و قابلیت اتصال با بسیاری از پایگاه داده های محبوب مثل postgresql و mongoDb و sqlite و mysql و sql server را دارد.جدیدا دوستان زیادی دارن سمت MERN میرن ولی تجربه شخصی خودم بهشان این هست که برای ساخت وب سایت های full stack یکی از بهترین گذینه ها Next.js هست شما به راحتی می تونید با این فریم ورک و prisma به اکثر پایگاه داده های محبوب متصل بشید و هم API بسازید و هم تمامی عملیات های مربوط به CRUD را انجام بدید. به صورت خلاصه config و ساخت برنامه های full stack با Next.js و prisma بسیار سریع تر و راحت تر از Express.js و Reac.js و Node.js هست و حتی از بسیار دیگر از فریم ورک های وب بهتر هست.پیشنهاد من به شما این هست قبل از رفتن سراغ MERN ابتدا سراغ Next.js و prisma برید تا متوجه قدرت و سرعت این فریم ورک بشوید.دوستدار شما صدرا 👋</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Sat, 25 Nov 2023 14:29:24 +0330</pubDate>
            </item>
                    <item>
                <title>سخت یا آسان React Native</title>
                <link>https://virgool.io/@sadrabroo/react-native-simple-or-hard-gjm2rhufxw2p</link>
                <description>باسلام طی چند وقت گذشته بنده شاهد ساخت پروژه های بسیار خوبی با React Native و Expo بودم برنامه threads با Expo  - React Native البته یکسری از پروژه ها هم بوده که برنامه نویس پروژه به دلیل عدم تسلط درست بر Javascript یا Typescript پروژه را بسیار کثیف و غیر اصولی ساخته و بعد خیلی حق به جانب گفته: React Native به درد نمی خوره و سخته و خیلی ارور میدهصفحه ارور های React Native دوستان قدیمی برنامه نویس موبایل که برنامه نویسی موبایل را با java و xml ساختن اطلاع دارن که برای ساخت یک ui ساده در گذشته مجبور بودن چقدر کد بنویسند و حقیقتا اون موقع برنامه نویسی موبایل سخت و پر از ارور های عجیب بودمحیط Android Studio الان با وجود تکنولوژی هایی مثل React Native یا Flutter برنامه نویسی موبایل بسیار شیرین و لذت بخش هست به شرط اینکه مسلط به Javascript یا Typescript یا dart باشید و بعد سراغ فریم ورک هاشون برید.Javascript در کل برنامه نویسی با React Native بسیار لذت بخش و البته ساده هست و با پکیج های فراوان می تونید خیلی پروژه های خوبی با این تکنولوژی بسازید.طراحی برنامه های موبایل با React Native </description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Fri, 29 Sep 2023 16:20:25 +0330</pubDate>
            </item>
                    <item>
                <title>یک زبان برای Backend ?‍? و Ai ?</title>
                <link>https://virgool.io/@sadrabroo/%DB%8C%DA%A9-%D8%B2%D8%A8%D8%A7%D9%86-%D8%A8%D8%B1%D8%A7%DB%8C-backend-%D9%88-ai-jgxva9dfvfa0</link>
                <description>سلام ?مدتی پیش یکی از دوستان برنامه نویس از من پرسید، می خوام یک زبان برنامه نویسی را شروع به یادگیری کنم که هم بتونم باهاش Backend بسازم و هم برای Ai همون هوش مصنوعی بتونم استفاده کنم.خب خیلی از افراد بدون آگاهی و اطلاعات کافی می خوان وارد زمینه هوش مصنوعی بشن و ذهنیت آن ها این است که هوش مصنوعی مثل Frontend# یا Backend# اول یک زبان برنامه نویسی را یاد می گیریم و بعد یک فریم ورک و بعد یک برنامه نویس توی اون حوزه میشیم.ولی حوزه هوش مصنوعی یکم فرق دارههوش مصنوعی شاخه های مختلفی داره نظیر  #ML , #DL , #ANN , #DIP , #NLP , ets...و خب کتابخانه های مختلفی برای الگوریتم های هوش مصنوعی هست که البته این کتابخانه ها برای زبان های محبوب وجود دارن و این طور نیست که مختص یک زبان برنامه نویسی باشن.اکثرا فکر می کنن کتابخانه های هوش مصنوعی مثل tensorflow# فقط برای زبان پایتون هست و اگه بخوان ازش استفاده کنند باید حتما با زبان پایتون انجام بدن ولی باید این نکته را بدونید که این کتابخانه برای زبان هایی نظیر #C و Javascript# و... هم هست و شما محدودیتی برای انتخاب زبان ندارید.Tensorflowپس پیشنهاد من به دوستان برنامه نویس این هست برای انتخاب زبان اول به دنبال حوزه خودتون برید و بدونید در کدام حوزه Ai می خواید فعالیت کنید و شما می تونید خیلی راحت یک زبان را برای Backend انتخاب کنید و در آن زبان از کتابخانه های Ai استفاده کنید.البته پیشنهاد من به دوستان این هست که خودتون را درگیر یک زبان همه کاره نکنید و به اصل ماجرا که درک درست از برنامه نویسی برسانید، بعد متوجه می شوید که زبان برنامه نویسی فقط یک وسیله هست و محدودیتی ایجاد نمی کند.در کل پیشنهاد من زبان برنامه نویسی برای هوش مصنوعی #Python یا #Rهست،Pythonدلیل انتخاب پایتون خب سادگی آن و ابزار های و محیط های توسعه مثل #google_colab هست،و دلیل انتخاب زبان R محاسبات سریع آن و Visualization های کاربردی این زبان هست،و برای #backend شما هیچ محدودیتی ندارد و زبان هایی نظیر php , c sharp , java , Javascript, python هستن که هر کدام فریم ورک های خوبی دارن که نقاط قوت و ضعف خودشون را دارن،و البته برای آنالیز دیتا ها از سمت Backend به عنوان Dataset برای حوزه های Ai اصلا نگران نباشید راه های بسیار زیادی برای استفاده از اطلاعات و آنالیز آن ها هست،در کل سعی کنید از برنامه نویسی لذت ببرید و این خیال باطل که یک زبان برنامه نویسی از بقیه برتر و کاربردی تر هست را فراموش کنید، چون هر زبان برنامه  نویسی حوزه ای خوب هست و ممکن است برای حوزه دیگری زیاد جالب نباشد.موفق باشید ?</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Fri, 24 Mar 2023 00:54:49 +0330</pubDate>
            </item>
                    <item>
                <title>چگونه یک برنامه نویس ارشد بشیم</title>
                <link>https://virgool.io/@sadrabroo/%DA%86%DA%AF%D9%88%D9%86%D9%87-%DB%8C%DA%A9-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3-%D8%A7%D8%B1%D8%B4%D8%AF-%D8%A8%D8%B4%DB%8C%D9%85-oygvoarky2jv</link>
                <description>سلام به همه دوستان عزیزمن در این مطلب می خوام در مورد تبدیل شدن به یک برنامه نویس موفق صحبت کنم و مسیر تبدیل شدن به یک سنیور دولوپر را بگم، با من همراه باشید.دوستان من صرفا از تجربه شخصی خودم می گم و چیز هایی که دیدم، و البته مسیر تبدیل شدن به یک برنامه نویس ارشد برای هر شخص متفاوت هست.کلاس های چند میلیونیاینکه یکسری میرن کلاس های چند میلیونی ثبت نام می کنند و انتظار دارن یک Developer یا Programmer خوب بشن این کاملا اشتباه هست، با پول می تونید دوره های خوبی بخرید ولی با پول نمی تونید مهارت بخرید، تنها راه بدست آوردن مهارت با استفاده از تجربه هست. 
دوستان برای پیشرفت تو برنامه نویسی در هر حوزه ای که می خواید فقط و فقط شما نیاز به عشق برای ساختن برنامه دارید و در مرحله دوم تمرین زیاد.تمرینتمرین یکی از بخش های خیلی مهم برای تبحر در هر کاری هست پس دوستان یک آموزش را ببینید و بعد برای خودتان پروژه تعریف کنید و شروع به انجام پروژه کنید، هر جا هم که به مشکل یا ارور برخوردید اول یکم روش فکر کنید معمولا مشکلات جوابشان جلوی چشم خود آدما هست. معمولا مشکلات جوابشان جلوی چشم خود آدم استخوش بختانه برنامه نویسی جزو شاخه هایی از علوم هست که آموزش برای یادگیری خیلی داره و همچنین منابع خیلی زیادی هم هست و می تونم بگم در بسیاری از شاخه های برنامه نویسی امروزه منابع رایگان بسیاری هستمهارتدوستان برای بدست آوردن مهارت در برنامه نویسی حتما لازم نیست دوره ای شرکت کنید و یا حتی کارآموزی برید شما خیلی راحت با مشخص کردن پروژه های کوچک و ساده در ابتدا می توانید مهارت برنامه نویسی خود را تقویت کنید، بعد از تقویت مهارت های پایه برنامه نویسی خود می توانید با تعریف پروژه های بزرگ تر و جالب تر مهارت های خود را به چالش بکشید و تجربه بیشتری کسب کنید.کسب مهارت با تمرین در کارآموزی شرکت ها به شما یکسری ویدیو آموزشی می دهند که برید ببینید و تمرین کنید(که البته بعضی از شرکت ها بابت این کار هزینه دریافت می کنند?‍♂️)، خب شما این کار را می توانید در منزل هم انجام دهید? و در وقت و انرژی و پول ?خود صرفه جویی کنید.حقوقخب الان میریم سراغ بخش حقوق برنامه نویس های ارشد، حقوق برنامه نویس های ارشد معمولا از ۱۵ میلیون شروع می شود البته این رقم در سال ۱۴۰۱ این مقدار هست و در سال های بعد متناسب با قیمت دلار و مشکلات اقتصادی حتما افزایش پیدا می کند. در کل حقوق برنامه نویس ها به نوع شرکت یا پروژه یا حتی شهر هم متفاوت هست و نمی توان حدی برای آن مشخص کرد.خلاصهدوستان اول از همه عاشق برنامه نویسی شوید بعد یک زبان و یک Framework یا Library اون زبان را انتخاب کن و یاد بگیر با منابع رایگان ( از روی Document  خودش و آموزش های رایگان YouTube و ... ) و بعد برای خودت پروژه تمرینی درست کن. برای کسب مهارت لازم نیست دوره چند میلیونی بخری یا چند ماه کارآموزی بری.و در نهایت کار خودت را ارزون نفروش ?و نزار کسی کارت را بی ارزش جلوه بده ?</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Sun, 25 Dec 2022 18:08:10 +0330</pubDate>
            </item>
                    <item>
                <title>استفاده از React.js به جای Next.js</title>
                <link>https://virgool.io/@sadrabroo/%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-reactjs-%D8%A8%D9%87-%D8%AC%D8%A7%DB%8C-nextjs-drxqifau4pcs</link>
                <description>با سلام خدمت همه دوستانبه نظر شما آیا وجود فریم ورک Next.js و امکانات و قابلیت های فوق العاده ای که این فریم ورک داره لزوم راه اندازی پروژه های جدید با React.js به جای Next.js چیست؟بر خلاف آنچه که شرکت ها معمولا می نویسند که بر روی لبه تکنولوژی حرکت می کنند ولی به نظر می رسه شرکت های ایرانی تمایل به استفاده از تکنولوژی های بروز را ندارند و هنوز تمایل بسیار زیادی به استفاده از تکنولوژی های قدیمی دارند، مثلبه جای استفاده از Next.js از React.js استفاده می کنند وبه جای استفاده از Angular یا Nest.js تمایل به استفاده از Angular.js دارند.Papular Frontend Frameworkبسیاری از شرکت های تولید نرم افزار در خارج از ایران تمایل به استفاده از تکنولوژی های به روز دارند و در آگهی ها جاب آفری که مشاهده می کنید معمولا دنبال تکنولوژی های بروز هستند، ولی شرکت های ایرانی معمولا دنبال استفاده از تکنولوژی های جا افتاده در ایران هستند و این باعث تاسف برای بسیاری از شرکت های ایرانی هست.به امید پیشرفت ایران در تمامی عرصه های علمی</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Mon, 05 Sep 2022 19:40:20 +0430</pubDate>
            </item>
                    <item>
                <title>تجربه من از فریم ورک Next.js</title>
                <link>https://virgool.io/@sadrabroo/%D8%AA%D8%AC%D8%B1%D8%A8%D9%87-%D9%85%D9%86-%D8%A7%D8%B2-%D9%81%D8%B1%DB%8C%D9%85-%D9%88%D8%B1%DA%A9-nextjs-ti6bvkmaryre</link>
                <description>Next.jsسلام خدمت تمامی دوستان می خوام به صورت خیلی سریع و خلاصه از تجربیات خودم تو کار با فریم ورک Next.js بگم.Popular Frontend frameworks اول اینکه من با فریم ورک Angular و Express.js و همچنین با کتابخانه های React.js و Jquery کار کردم ولی می تونم به جرئت بگم Next.js یکی از بهترین تجربیاتم بین فریم ورک های جاوا استریپ بود، Next.js یک فریم ورک برای کتابخانه React.js هست که خیلی بهینه شده و قابلیت SSR هم داره.Routing in Next.jsاول از همه سیستم Routing در این فریم ورک خیلی ساده و روان هست و همچنین دریافت پارامتر ها از طریق query و body خیلی راحت هست شما با این فریم ورک به صورت کاملا مستقل می تونید یک وب سایت را هم backend و هم frontend پیاده سازی کنید همچنین شما می تونید Api نیز با این فریم ورک بسازید با این فریم ورک می تونید به پایگاه داده MongoDb متصل بشید و ازش استفاده کنیدMongo DB همچنین می تونید با یک فریم ورک دیگه backend را بنویسید و از Api استفاده کنید و fetch data کنیدیکی دیگه از مزایای خوبی که داشت در مبحث Optimization برای تصاویر و لینک ها و هدرها و اسکریپ ها هست که خیلی خوب هست.در کل یک فریم ورک خوبی هست که هم یادگیری ساده ای داره و هم کلا پیچیده گی خاصی نداره البته خیلی از کمپانی های ایرانی و خارجی از این فریم ورک استفاده می کنند.در کل من تجربه ی خیلی خوبی با Next.js داشتم پیشنهاد می کنم برای پروژه هاتون استفاده کنید. ?#frontend #frontenddeveloper #frontendwebdeveloper #reactjs #javascript #nextjs #فرانت_اند #جاوااسکریپت #ریکت</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Sun, 04 Sep 2022 20:02:09 +0430</pubDate>
            </item>
                    <item>
                <title>شروع با React.js یا Angular</title>
                <link>https://virgool.io/@sadrabroo/%D8%B4%D8%B1%D9%88%D8%B9-%D8%A8%D8%A7-reactjs-%DB%8C%D8%A7-angular-ef0t9zim3dyt</link>
                <description>Angular vs ReactJsبا سلام خدمت همه خوانندگان عزیزدر این مطلب به بررسی شروع یادگیری با کتابخانه جاوا اسکریپت به نام React.js و فریم ورک جاوا اسکریپت به نام Angular بپردازیم و در این مطلب از تجربیات شخصی خودم در یادگیری و همچنین پروژه ها با این دو تکنولوژی به صورت خیلی مختصر می پردازم.اول سراغ کتابخانه محبوب و سریع React.jsخب برای یادگیری این کتابخانه شما ابتدا باید به صورت خوبی با زبان Html و css آشنایی خوبی داشته باشید همچنین برای این کتابخانه شما باید با زبان Javascript و همچینن ES6 هم آشنایی داشته باشید .توصیه برای دوستان عزیز :فقط به یاد بگیری Javascript و ES6 تنها مشغول نباشید و حتما سراغ زبان Typescript هم برید ساختار خوبی دارد و اگر با زبان های شی گرا آشنا باشید می توانید سریع Typescript را یاد بگیرید.خب یادگیری React.js یک فریاد به شدت لذت بخش و ساده دارد نسبت به Angular چون شما خیلی سریع می توانید با یادگیری Html می تونید سریع ساختار JSX را درک کنید و همچین مثال های فراوان در سطح اینترنت و همچنین پروژه های زیاد در GITHUB هم برای این کتابخانه موجود هست که کار شما را برای یادگیری ساده تر می کند .کتابخانه Reactjs به طور کلی توسعه دهندگان برای مدیریت State ها از Redux استفاده می کنند که البته قابلیت های خوبی در اختیار توسعه دهندگان می گذارد. از آنجایی که React.js یک کتابخانه برای زبان جاوا اسکریپت می باشد توسعه یکسری از برنامه ها خارج از فریم ورک خاصی با این کتابخانه کمی سخت می شود در اینجا ما از یک فریم ورک برای این کتابخانه استفاده می کنیم. Next.js Next.js frameworkهمان طوری که گفته شد برای کتابخانه React.js یک فریم ورک با نام Next.js وجود دارد که کار را برای توسعه دهندگان برای پروژه های نسبتا بزرگ و همچنین پروژه های کارآمد تر و بهتر آسان می کند.بازار کار توسعه دهنده React :برای توسعه دهنده React میشه گفت همیشه بازار کار هست به دلیل سادگی در یادگیری و همچین سرعت خوب و همچین وجود انجمن های بزرگ این کتابخانه این کتابخانه بازار خوبی را دارد و در بسیاری از وب سایت های بزرگ نیز نظیر نتفلیکس و اینستاگرام از این کتابخانه استفاده می شود.بررسی فریم ورک قدرتمند Angular:خب وقتی قرار به صحبت درباره یک برنامه دقیق و  کار آمد و سریع می شود که قابلیت توسعه فراوانی داشته باشد کمپانی های بزرگ سراغ فریم ورک Angular می روند. این فریم ورک دارای ساختار MVC می باشد و اگر با این ساختار آشنایی داشته باشید درک این فریم ورک کار زیاد دشواری نیست.زبان مورد استفاده در این فریم ورک زبان Typescript می باشد که پیش نیاز برای یادگیری این زبان آشنایی و یادگیری زبان Javascript و همچین ES6 می باشد.این فریم ورک در شرکت های بزرگی نظیر گوگل مورد استفاده قرار می گیرد و همچین در پروژه های بزرگ و سنگین از این فریم ورک استفاده می شود.این فریم ورک در مقایسه با کتابخانه React.js مزیت های زیادی دارد ولی به دلیل شی گرا بودن این فریم ورک و همچین یادگیری زبان Typescript برای استفاده از این فریم ورک افراد کمتری سراغ یادگیری این فریم ورک می روند البته این فریم ورک انجمن های مخصوص خود را دارد و همچنین افراد متخصص زیادی از این فریم ورک استفاده می کنند پس نگران برطرف نشدن مشکلات خود در این فریم ورک نباشید.سرعت Angular بسیار خوب و بالا هست و برای برنامه های وب و همچینن Ionic بسیار کارآمد عمل می کند.IonicIonic frameworkشما با این فریم ورک می توانید برنامه های تحت Android و iOS بسازید که البته مورد استقبال قرار گرفته هست ولی به دلیل کمتر شناخته شدن این فریم  ورک بالطبع کمتر کارفرمایان برای پروژه های خود از این فریم ورک استفاده می کنند، البته یادگیری این فریم ورک خالی از لطف نیست و با وجود یادگیری Typescript و Angular یادگیری این فریم ورک Ionic زیاد کار مشکلی نیست.بازار کار Angular :همان طور که گفته شد بازار کار این فریم ورک به زیادی بازار React.js نیست ولی هر شرکتی که دنبال یک فریم ورک قدرتمند و توسعه پذیر بالا باشد برای پروژه های بزرگ خود سعی می کند از Angular استفاده کند البته طی سال های اخیر Angular محبوبیت خوبی پیدا کرده است و انتظار می رود طی سال های اخیر به محبوبیت جامع و بسیار بالایی دست پیدا کند.در کل شما متناسب با علاقه خود و همچین نوع فعالیت آینده خود بین React.js و Angular یکی یا هر دو را انتخاب کنید و پیش نیاز یادگیری هر دو آنها HtmlCssJavascript ES6Typescript می باشد که البته Typescript نیازی برای React نیست ولی شما در صورت علاقه و همچین کار های بهتر می توانید از Typescript نیز استفاده کنید.و یک نصیحت :سریع بین React و Angular یکی را انتخاب کنید و شروع به یادگیری کنید هر دو در مراحلی ساده هستند و در مراحلی سخت می شوند ولی هر دو کارآمد و سریع هستند و خودتان را محدود به یادگیری یکی از این دو نکنید در صورت تمایل شما توانایی فعالیت در هر دو حوضه های توسعه دهنده  React و توسعه دهنده Angular را دارد و می توانید در هر دو فعالیت کنید.</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Sun, 26 Dec 2021 16:26:19 +0330</pubDate>
            </item>
                    <item>
                <title>استخدام به عنوان برنامه نویس</title>
                <link>https://virgool.io/fboard/%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85-%D8%A8%D9%87-%D8%B9%D9%86%D9%88%D8%A7%D9%86-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3-kd0nkbpqrt5p</link>
                <description>با سلام خدمت تمامی عزیزان در این مطلب می خوام نکاتی در مورد استخدام شدن در شرکت های بزرگ و کوچک را بگم که بیشترشان از تجربیات خودم هست .خوب شما به عنوان کسانی که می خواید وارد بازار برنامه نویسی بشید احتمالا چیز های زیادی از در آمد های بالا و محیط خوب و شاد و خیلی چیز های دیگه شنیده اید ولی من در ادامه چیز های خیلی مهم تری به شما می گویم .شروع قدرتمنداول از همه خیلی از افراد با دیدن یک دوره آموزشی برنامه نویسی و یا نوشتن یک برنامه فکر می کنند که بسیار آماده هستند و در اولین گام سریع می رن در سایت های کاریابی اینترنتی و دنبال شغل متناسب با اون ز بان برنامه نویسی می گردن حالا این افراد اگر جایی کار آموز بخواهند نیز حاضر می شوند بروند و بین ۳ تا ۶ ماه کار آموزی بروند و می خوام در ادامه یک چیز را بهتون بگم که این جمله پایین واقعا خیلی بدرد بخور و مفید هستو این جمله این هست که اگر خودت یاد بگیری خیلی بیشتر و بهتر یاد می گیری تا نسبت به کار آموزینکته بعدی این هست که برای کار آموزی شرکت ها از شما نباید پول بگیرن و روال کار این گونه هست به عنوان مثال شما ۳ ماه کار آموزی می کنید و ۳ ماه بعدی بهتون چند تا پروژه می دن تا تکمیل کنید .در مورد استخدام برای استخدام در زمینه ها طراحی وب و طراحی قالب که شامل HTML و CSS و استفاده از فریم ورک های CSS مثل بوت استرپ BOOTSTRAP و .. معمولا متناسب با کیفیت کار حقوق از ۳.۵۰۰.۰۰۰ به بالا هست ( اگر کیفیت کارتون خوب باشه و خلاقیت بالایی داشته باشید حقوق تان بیشتر می شود )برای برنامه نویسی وب با فریم ورک های مشهور مثل LARAVEL و NODE معمولا از ۵.۰۰۰.۰۰۰ به بالا می باشد و اگر فریم ورک ها دیگه مثل ASP.NET MVC و ASP.NET CORE باشه به دلیل قدرتمند بودن معمولا حقوق ها کمی بیشتر هست .در مورد برنامه نویسی اندرویدخوب یکی از پر تقاضا ترین نوع برنامه نویسی برنامه نویسی اندروید است ، در حال حاظر می توان گفت اکثر بازار برنامه های اندروید  را با فلاتر FLUTTER می سازند و بازار خوبی داره و حقوق های خوبی می گیرنولی خوب برنامه نویسی اندروید همیشه با یک زبان مشهور بوده که هیچ وقت نمیشه بگیم اندروید بدون این زبان باشه و این زبان زبان جاوا JAVA هست .این زبان هنوز در بسیاری از موارد بهترین راه حل برای ساخت برنامه های اندروید است ولی خوب در ایران معمولا فریم ورک های زبان های مختلف که خروجی اندروید و آی او اس می ده بیشتر می پسندند چون تو ایران می خوان هی آپشن روی قرار داد بیارن که پول بیشتری از کارفرما بگیرن ?خلاصه : در برنامه نویسی را با لذت یاد بگیرید همیشه شغل برای برنامه نویس ها هست حداقل تا ۱۰۰ سال آینده که هوش مصنوعی که خود برنامه نویس ها ساختند جای خودشان را بگیرند برای برنامه نویس ها جای کار هست تو ایران این زمان بیشتر هست چون تو ایران به مباحث هوش مصنوعی و مباحث علمی و روباتیک  برنامه نویسی زیاد ارزش قائل نمی شن و در نتیجه شاید برنامه نویسی در ایران اشباع بشه ولی مطمئنا پیشرفت این علم در ایران نیست با این وضع ( ولی ممکن هست هم اتفاق بیافتد چون کشور ما بسیار مردمی باهوش و با استعداد دارد )در آخر می خواستم بگم که معمولا چه  پروژه هایی که به شما محول می شود که انجام دهید که در اکثر موارد این ها تکراری می باشند و خوب این کاملا عادی است چون ایرانیان وقتی میبینم که یک چیز پیشرفت کرده سعی می کنند سریع از روی آن کپی برداری کنند تا آنها هم سریع پیشرفت کنند و مثل آن سوددهی زیادی داشته باشندپروژه هایی که معمولا به شما می دهنداولین : فروشگاه اینترنتی : فروشگاه اینترنتی در چند سال اخیر به صورت خیلی گسترده رواج پیدا کرده‌اند و بسیار شناخته شده اند یکی از مشهورترین فروشگاه های اینترنتی دیجی کالا هست که معمولاً همه کارفرماها به امید ساخت یک کپی از دیجیکالا می خواهند که شما برایشان یک سایت فروشگاهی بسازیددومین : خرید و فروش محصولات دست دوم : خوب همونطور که میدونید این هم مثل دیجی کالا که خیلی مشهور شد در چند سال اخیر و قبل تر از آن پروژه دیوار که اولین بار به صورت برنامه اندروید ارائه شد بسیار پر تقاضا می باشد و بسیاری از کارفرماها دنبال یک اپلیکیشن اندروید میخواهند که مثل دیوار بتوانند کاربران ثبت نام بکنند پیامک کد موقت برای آنها ارسال شود و بتوانند محصولات دست دوم خود را عکس بگیرند قیمت بگذارند و به فروشنده مثل دیوار و حالا با نام های متفاوت اپلیکیشن خود را نامگذاری کنند ولی در حقیقت همه آنها کپی برداری از دیوار استسوم : برنامه های حسابداری و مدیریت مالی و مدیریت کالاها : خود نرم افزار های حسابداری و مدیریت مالی از گذشته پر تقاضا بوده اند و هم اکنون با پیشرفته تکنولوژی همه دوست دارند که نرم‌افزارهای حسابداری مدیریت کالاها را در گوشی‌های خود و یا به صورت وبسایت داشته باشند این همه سال های بسیار موفقی از نرم افزارها می باشدچهارم : ساخت سامانه های گسترده برای اداره جات ها ارگان های دولتی : خوب معمولاً ارگانهای دولتی سامانه های مختلفی را ارائه می دهند ولی در کل ساختار تمامی سامانه ها و پرتال ها به گونه ای است که تمامی اطلاعات کاربر را بگیرد و ذخیره کند و این بسیار برای ارگانهای دولتی ارزشمند است که تمامی اطلاعات را گرفته و به آن دسترسی داشته باشند و همین را در تمامی به وضوح می توانید ببینید و معمولاً این سامانه ها برای افرادی با تعداد بسیار زیاد طراحی می‌شوندو در آخر این که شغل برنامه نویسی تا بسیاری از سال‌های آینده جایگاه مناسبی در ایران دارد و سعی کنید از این شغل لذت ببرید هرچند که باید از صبح تا عصر روی صندلی بدی بنشینید و روی مانیتور زل بزنید و در سن ۳۰ سالگی چشم‌هایتان آستیکمات بشوند و کمر تان آسیبهای زیادی ببینندبه عنوان یک نصیحت به همه برنامه نویسان ایران برنامه ورزشی و رژیم غذایی سالم را در برنامه خود قرار دهید و در آخر برای هیچ پروژه‌ای حرص نخورید اگر پروژه را به خوبی انجام دادید خوشحال باشید و اگر نتوانستید خود را سرزنش نکنید و هر کسی که شما را سرزنش کرد به آن توجه نکنید .موفق باشید✋نوشته ای از یک برنامه نویس خسته ?</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Thu, 12 Aug 2021 17:40:20 +0430</pubDate>
            </item>
                    <item>
                <title>شروع برنامه نویسی ، ورود به دنیای برنامه نویسی</title>
                <link>https://virgool.io/fboard/%D8%B4%D8%B1%D9%88%D8%B9-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D9%88%D8%B1%D9%88%D8%AF-%D8%A8%D9%87-%D8%AF%D9%86%DB%8C%D8%A7%DB%8C-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-sdmxihm5gdz5</link>
                <description>خانواده زبان های سیبا سلامدر این مطلب می خواهیم به موضوع شروع برنامه نویسی برای کسانی که می خوان وارد دنیای برنامه نویسی بشن یه توضیح کوچکی بدم .با کدام زبان برنامه نویسی شروع کنیم ؟یکی از سوال های اولیه هر کسی که می خواد وارد دنیای برنامه نویسی بشه این هست که با چه زبانی شروع کنم .خب می خوام یک خبر خوب بهتون بدم و آن این هست که فرقی نداره با چه زبانی شروع می کنی چون ساختار کلی زبان ها یکی هست ( در ادامه توضیح می دم ) و فقط تفاوت زبان ها در سینتکس ( نوع نوشتن کد ها ) متفاوت هست .در مورد ساختار زبان ها برنامه نویسی این موضوع را بگم که یکسری از چیز ها در تمام زبان های برنامه نویسی هستن مثل حلقه ها و گزاره های شرطی و ... این چیز ها در تمامی زبان های برنامه نویسی هست و فقط شکل نوشتن آن ها فرق می کنه .Programmerدر کل شما با هر زبانی شروع کنید تمامی مباحث برنامه نویسی نظیر متغییر ها      Variableگزاره های شرطی      if - elseحلقه ها      for - whileتوابع      functionsساختار ها      Structuresشی گرایی      OOPو ...تمامی این ها در اکثر زبان های برنامه نویسی به یک مفهوم می باشند و استفاده می شوند ، و شما با یادگیری یک زبان برنامه نویسی تمامی این مطالب را یاد می گیرید .چه زبانی بهتر تر است ؟موضوع این هست که هیچ زبانی بهتر نیست و هر زبانی نقاط قوت و ضعف خود را دارد .به عنوان مثال خانواده زبان سی Cخب خانواده زبان سی یکی از مشهور ترین خانواده زبان های برنامه نویسی هست ، شما حتما با کمی تحقیق متوجه کاربرد ها و البته استفاده های این زبان شده اید ، به هر حال من یه توضیح کمی می دم .خانواده زبان سی که شاملCC++C#می باشد . سیستم عامل ویندوز و لینوکس با زبان سی ساخته شده است و همچنین بسیاری از برنامه های قدرتمند دنیای نرم افزار ها با این زبان ساخته شده است .Windows OSهمچنین بسیاری از بازی های ساخته شده با موتور بازی سازی Unreal Engine با این زبان ساخته شده اند .Unreal Engine و همچنین بسازی از زبان های برنامه نویسی از این زبان تاثیر گرفته اند و متوجه شباهت این زبان ها با زبان C می شوید ، زبان هایی نظیر C++C#JAVAPHPJAVASCRIPTOBJECTIVE_Cو ...شما متوجه می شوید که بسیاری از زبان های برنامه نویسی محبوب و کاربردی از زبان C تاثیر گرفته اند و تقریبا شباهت بسیاری به این زبان دارند .البته یکی از نقطه ضعف های خانواده زبان C سینتکس این زبان ها می باشد ، این زبان ها از دیر باز جزوء زبان های نسبتا دشوار می باشند البته نسبت به زبان های دیگر نظیر پایتون و ... ولی در صورت یادگیری یکی از زبان های خانواده C متوجه شباهت بسیار زیاد این زبان ها با هم می شوید و لذت یادگیری سریع تر زبان هایی نظیر C# و Java و Php و JavaScript را می توانید بچشید .php programming languageخب پس اگر خانواده زبان C این قدر کاربردی هست پس شما با یادگیری این زبان خیلی راحت می توانید با زبان های بالا که گفته شد ارتباط برقرار کنید و سریع تر و راحت تر زبان های بالا را یاد بگیرید. بر اساس نتایج گرفته شده از خانواده زبان C در حوزه های ساخت سیستم عاملساخت کامپایلر هاساخت برنامه های تحت وبتوسعه نرم افزار هاتوسعه بازی هاکاربرد در زمینه های یادگیری ماشینو کاربرد هایی برای صنعت و پلی برای دستور دهی به سخت افزار ها مورد استفاده قرار می گیرید .نتیجهیکی از بهترین زبان هایی که شما با یادگیری آن می توانید در حوزه های مختلف فعالیت کنید زبان های برنامه نویسی خانواده C می باشد ، زبان هایی نظیر C++C#که شما با یادگیری این زبان های می توانید به توسعه برنامه ها و اپلیکیشن ها در حوزه های مختلف و پلتفرم های مختلف بپردازید و به سهولت قابلیت یادگیری زبان هایی که از این زبان تاثیر گرفته اند بپردازید ، زبان هایی نظیر JAVAPHPJAVASCRIPTOBJECTIVE_Cو همچنین بسیاری از زبان های دیگر . خوبی خانواده زبان C در این می باشد که در بسیاری از حوزه های صنعت برنامه نویسی دست شما را بسیار باز می گذارد .ولی در کل دست شما برای انتخاب زبان برنامه نویسی برای شروع بسیار باز است ولی پیشنهاد من برای شما که این مطلب را تا این جا مطالعه کردید این است که طبق تجربیات من شما با یادگیری یکی از زبان های خانواده C شما می توانید بسیاری از زبان های دیگر را بسیار راحت یاد بگیرید . و همچنین شما با یادگیری هر یک از زبان های C++ یا C# می توانید برای انواع پلتفرم ها به توسعه برنامه و اپلیکیشن بپردازید .شما با یادگیری زبان C++ و توسعه نرم افزار با Qt می توانید به تولید برنامه های گرافیکی برای انواع پلت فرم ها بپردازید .Qtهمچنین شما با یادگیری زبان C# قادر خواهید بود با فریم ورک های قدرتمند این زبان به توسعه برنامه های در حوزه های وبموبایل ویندوز لینوکسو...بپردازید ، از مشهور ترین فریم ورک های زبان C# می توان گفت ASP . NETXAMARIN UNITY WPFو ...Xamarin Formنام برد که می توان گفت در تمامی پلتفرم ها دست شما را برای توسعه باز می گذارد .امیدوارم این مطلب کوتاه مسیر درستی برای شروع برنامه نویسی برای افرادی که مایل به وارد شدن به حوزه برنامه نویسی هستن مفید واقع شود .اگر سوالی در مورد حوزه برنامه نویسی و یا خانواده زبان سی بود در زیر مطرح نمایید من در اسرع وقت پاسخ گوی علاقه مندان هستم .</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Tue, 02 Feb 2021 00:29:38 +0330</pubDate>
            </item>
                    <item>
                <title>یادگیری ماشین با پایتون</title>
                <link>https://virgool.io/@sadrabroo/%DB%8C%D8%A7%D8%AF%DA%AF%DB%8C%D8%B1%DB%8C-%D9%85%D8%A7%D8%B4%DB%8C%D9%86-%D8%A8%D8%A7-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-xkhxb6dqhkos</link>
                <description>Machine learning with Python ?با سلامدر این مطلب می خواهیم به کاربرد امروزی زبان محبوب پایتون در حوزه پادگیری ماشین که یکی از حوزه های محبوب در هوش مصنوعی است بپردازیم .زبان برنامه نویسی پایتون مقدمه زبان پایتون یک زبان تفسیری ، سطح بالا ، شی گرا و همه منظوره است . پایتون در سال ۱۹۹۱ عرضه شد .شما با پایتون می توانید برنامه هایی برای بسیاری از پلتفرم ها بسازید ، شما می توانید برنامه برای ویندوز با pyQt و البته لینوکس بسازید همچنین شما با استفاده از فریم ورک kivy ( کیوی) می توانید برای اندروید و آی او اس برنامه بسازید که البته زیاد متداول نیست و برنامه نویس های اندروید ترجیح می دهند با استفاده از کاتلین برنامه های خود را توسعه بدهند .فریم ورک کیویالبته هنوز هم بسیاری از برنامه نویس ها برای توسعه اندروید بهترین زبان را جاوا می دانند ، ولی کاتلین به دلیل سینتکس ساده و کد ساده تر و سریع تر به سوی کاتلین مهاجرت کرده اند .فریم ورک جنگوهمچنین شما با استفاده از پایتون می توانید وب اپلیکیشن بسازید و با استفاده از فریم ورک جنگو Django شما می توانید برنامه های تحت وب بسازید .البته لازم به ذکر است بسیاری از برنامه نویس ها ترجیح می دهند برای ساخت وب اپلیکیشن خود از فریم ورک محبوب php یعنی لاراول Laravel و یا از فریم ورک جدید و قدرتمند و سریع C# یعنی Asp.net Core استفاده کنند .البته موضوع این مطلب این مطالب نبود شاید فریم ورک های پایتون نتواند مقبولیت و قدرت و سرعت را در بین بسیاری از فریم ورک های سطح بازار به دست آورد ولی توی یک زمینه رتبه اول را دارد .MLیادگیری ماشین با پایتونMachine Learning ماشین لرنینگ یا یادگیری ماشین ، به روشی می گویند که ما با استفاده از الگوریتم هایی به ماشین دستوراتی را می دهیم که ماشین خود بتواند دستورات جدید را با استفاده از متد های قبلی توسعه بدهد و به گونه ای خود ماشین بیاموزد که چه عملی را انجام دهد ، به زبان ساده تربه ماشین یاد می دهیم که خود چیز های جدید را خودشان یاد بگیرند .حوزه یادگیری ماشین طی چند سال اخیر یکی از محبوب ترین حوزه های برنامه نویسی در دنیا بوده است  و همچنین یکی از پر تقاضا ترین حوزه های برنامه نویسی بوده است .در حوزه یادگیری ماشین زبان های بسیاری و جود دارند از نظیر :پایتون Pythonآر Rمتلب Matlabجاوا Javaاس کیو ال SQL و در نهایت زبان همه کاره سی شارپسی شارپ C#در حوزه یاد گیری ماشین زبان پایتون به دلیل سرعت و سینتکس ساده بسیار پیشرفت چشم گیری داشته و به طور قطع می توان گفت بهترین گذینه برای حوزه یادگیری ماشین است .یادگیری ماشین یکی از زیر مجموعه های هوش مصنوعیتکنولوژی جدید ML.NETسی شارپ در زمینه یادگیری ماشین یک فریم ورک معرفی کرده به نام ML.NET که با استفاده از ابزار ها و متد های داخلی  برنامه نویسی ماشین را برای شما راحت تر می سازد. ولی با وجود پایتون کسی برای یادگیری ماشین لرنینگ به سراغ سی شارپ نمی رود .همچنین یکی از زبان های محبوب و بسیار خوب برای ماشین لرنینگ زبان R می باشد .این زبان هم دارای سینتکس ساده و مناسبی برای توسعه یادگیری ماشین است و همچنین می تواند یکی از گذینه ها برای شما باشد ولی به دلیل عدم وجود جامعه برنامه نویسی قنی نسبت به پایتون باز گذینه بهتر برای شما زبان ساده و محبوب پایتون است .یادگیری ماشین در بسیاری از جاها مورد استفاده قرار می گیرد به عنوان مثال یک کاربرد علنی آن در شبکه های اجتماعی می باشد مثل اینستاگرام و فیس بوک و یوت یوب و ... می باشد که در آن های طی روز های یا ماه ها ماشین با بررسی داده های جستجو شده و یا بیشتر دنبال شده و یا بیشتر بازدید در این شبکه ها می تواند ترند ها هشتک ها و یا نوع ویدیو های محبوب بین اکثریت افراد عضو در این شبکه ها را بررسی کند و به طور مثال با قاطعیت  بگوید که فلان بازیگر یا خواننده محبوبیت بیشتری در سطح این شبکه ها را دارد و موارد دیگر .همچنین از موارد مهم تر و کاربردی تر یادگیری ماشین می توان گفت در فروشگاه ها و یا بانک ها برای احراز اصل بود مدارک یا تطابق امضا های مشتری می توان نام برو همچنین در ناسا هم مورد استفاده قرار می گیرد .در کل اگر مشتاق یادگیری ماشین یا ماشین لرنینگ می باشید شما باید درک درستی از ساختار داده ها و ساختمان داده ها و همچنین تئوری یادگیری ماشین و الگوریتم ها را خوب یاد بگیرید و شما باید درک درستی از علوم کامپیوتر نظیر طراحی الگوریتم و معماری کامپیوتر داشته باشید و درک کافی از آمار و احتمال داشته باشید و البته درک مناسب از ریاضیات باید داشته باشید .در کل یادگیری ماشین مبحثی می باشد که فقط مربوط به زبان برنامه نویس نمی باشد و شما باید در حوزه های مختلف کامپیوتر و آمار و ریاضیات اطلاعات کافی داشته باشید ولی یک زبان ساده و روان می تواند تاثیر بسزایی در پیش برد این فرآیند داشته باشد .و در آخر می توان گفت که در آمد افرادی که در حوزه یادگیری ماشین در دنیا فعالیت می کنند بسیار خوب می باشد و انتظار می رود که این حوزه در ایران هم طی سال های بعد به جایگاه مناسبی برسد .امید و ارم با این مقاله نه چندان جامع به شما مسیری برای ماشین لرنینگ که یکی از زیر شاخه های هوش مصنوعی است علاقه مند ساخته باشم .</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Sun, 01 Nov 2020 21:05:38 +0330</pubDate>
            </item>
                    <item>
                <title>شروع از PHP ، پایان با Laravel</title>
                <link>https://virgool.io/@sadrabroo/%D8%B4%D8%B1%D9%88%D8%B9-%D8%A7%D8%B2-php-%D9%BE%D8%A7%DB%8C%D8%A7%D9%86-%D8%A8%D8%A7-laravel-bzzlppjftvmo</link>
                <description>با سلامدر این مطلب می خواهیم درباره زبان PHP و فرمورک قوی آن یعنی لاراول صحبت کنیم .Hypertext Preprocessorزبان PHPزبان PHP یک زبان برای برنامه نویسی سمت سرور است و برای ساخت وب سایت ها استفاده می شود .بیشتر وب سایت های در سطح اینترنت از این زبان ساخته شده اند و همچنین دارای دو سیستم مدیریت محتوا می باشد که در سطح دنیا بسیار محبوب و کاربردی می باشد .سیستم مدیرت محتوا یا CMS های PHP تعداد زیادی هستند ولی از مشهور ترین آن ها می توان به دو مورد زیر اشاره کرد :ورد پرس Wordpressجوملا Joomlaرا نام برد که از مشهور ترین های آن ها می باشند .Wordpressسیستم مدیریت محتوا چیست ؟سیستم مدیریت محتوا به اتوماسیونی گفته می شود که با استفاده از آن و بدون کد نویسی و برنامه نویسی کاربران می توانند وب سایت ها خود را در قالب های مشخصی طراحی و تولید کنند .به عنوان مثال شما می توانید در وردپرس یک سایت شخصی بسازید و یا یک سایت برای وب لاگ های خود ایجاد کنید و یا حتی یک فروشگاه بسازید .چاپ Hello World در PHPسینتکس PHPسینتکس PHP دارای متغییر های داینامیک هست به توضیح بهتر و حرفه ای تر داینامیک تایپ هست .داینامیک تایپ به متغییر هایی گفته می شوند که به صورت پیش فرض نوع متغییر ایجاد نمی شود و هنگام مقدار دهی به آن آن متغغیر نوع خود را تعیین می کند .زبان های داینامیک تایپ امروزه بسیار محبوب هستند مثل زبان های JAVASCRIPT ، KOTLIN ، PYTHON و ... که شناخته ترین آن ها می باشند .مثالی برای زبان های داینامیک تایپ و استاتیک تایپ :استاتیک تایپ مثل زبان های خانواده سیstring name ; // type is stringname = &quot; My Name is Sadra &quot; ; // valueزبان های داینامیک تایپ مثل PHP$name = &quot; My Name is Sadra &quot; ; // type is string and valueهاست وردپرسهاست های PHPاکثر هاست های سطح اینترنت از زبان PHP پشتیبانی می کنند و بسیاری از هاست های زبان PHP نسبت به هاست های ویندوزی بسیار ارزان تر و حتی رایگاه هستند .و بسیار مناسب برای افرادی که می خواهند یک وب سایت به کمترین هزینه ها بسازند می باشد .پایگاه داده MySqlپایگاه داده MySqlزبان PHP با پایگاه داده MYSQL بسیار سازگار می باشد و شما به راحتی با روش های مختلف می توانید با این پایگاه داده ارتباط برقرار کنید .روش برقراری ارتباط با MYSQL شما باید آشنایی با زبان SQL داشته باشد و سپس با استفاده از روش های مختلف شما می توانید به پایگاه داده وصل شده و اطلاعات خود را واکشی و درج و حذف و... کنید .روش های اتصال به پایگاه داده در PHP چند مورد می باشد مثل روش PDO و ...زبان ساختار یافته پسرمان یافته ( SQL ) :برای برقراری ارتباط و واکشی اطلاعات شما نیاز به یادگیری زبان SQL در گذشته داشتید .زبان SQL ساختاری منظم و منطقی دارد و در یادگیری بسیار شیرین می باشد و در مفاهیم اولیه بسیار روان می باشد و کلا پیچیدگی های زیادی ندارد مگر در حالت های QUERY های تو در تو و داخلی و البته و دینامیک کوئری که می توان گفت مباحث پیشرفته تر در زبان SQL می باشد ولی شما برای PHP نیازی به یادگیری مباحث پیشرفته نیستید .فرم ورک لاراولشروع با فرمورک محبوب PHPلاراول LARAVELشروع با فرم ورک محبوب لاراول ، لاراول یکی از فرم  ورک های PHP می باشد که طی چند سال اخیر از سایر فرمورک های PHP نظیر فرمورک هایسیمفونی Symfonyزند Zendکیک پی اچ پی CakePHPکدایگنایتر Codeigniterپیشی گرفته و در رتبه محبوب ترین فرم ورک PHP قرار گرفته است .ساختار لاراولساختار لاراول دارای معماری MVC می باشد ولی الگو های طراحی های دیگر هم شما می توانید در لاراول پیاده سازی کند . لاراول برای برقراری ارتباط با دیتابیس از تکنولوژی هایی نظیر Migration استفاده می کند که کار ساخت کوئری و ساخت جداول را بسیار ساده و شیرین می کند .Laravel frameworkبازار کار لاراولبازار کار لاراول طی چند سال اخیر در ایران بسیار رشد داشته و در آمد برنامه نویس های آن بسیار خوب بوده است ، اکنون طی چند سال اخیر با رواج رقیبانی نظیر Django و Asp.net Core بازار از حریفان قدرتمند ی پر شده که می توانند مثل جنگو با لاراول رقابت کنند و یا حتی بیشتر از لاراول سبقت بگیرند مثل Asp.net Core ولی لاراول هنوز بازار خود را دارد و با وجود حریف قدرتمند Asp.net Core هنوز بازار داغ خود را دارد و می تواند بازار خود را حفظ کند .نتیجه :زبان PHP زبانی کار آمد و راحتی می باشد که با استفاده از آن می توانید بسیاری از وب سایت های خود را طراحی کنید و بسازید .فرم ورک لاراول یک فرم ورک محبوب و کار آمد می باشد که با استفاده از آن می توانید در سرعت و سهولت هرچه بیشتر سایت های خود را طراحی و بسازید .</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Tue, 20 Oct 2020 18:33:46 +0330</pubDate>
            </item>
                    <item>
                <title>ارتقاء از ADO.NET به EF CORE</title>
                <link>https://virgool.io/@sadrabroo/%D8%A7%D8%B1%D8%AA%D9%82%D8%A7%D8%A1-%D8%A7%D8%B2-adonet-%D8%A8%D9%87-ef-core-apw2tr8urefa</link>
                <description>Dot Netبا سلام در این مطلب می خوام درباره سیر تکامل روش های برقراری ارتباط با پایگاه داده طی دوره های زمانی مختلف کمی توضیح بدم .ADO.NETروش ADO :روش ADO یکی از روش های رایج طی چندین دوره و سال های مختلف بوده است که برای ایجاد ارتباط با پایگاه داده ها استفاده می شد .برای روش ADO شما باید ابتدا پایگاه داده خود را می ساختید و سپس به برقراری ارتباط با آن با استفاده از رشته اتصال بپردازید . ( CONNECTION STRING  )پس از برقراری ارتباط با پایگاه داده و REQUEST دادن به پایگاه و RESPONSE گرفتن از دیتابیس شما باید آشنایی مقدماتی با زبان قدرت مند SQL می داشتید و در خواست های خود را باید به صورت کوئری می فرستادید . ( Structured Query Language)Structure Query Languageزبان ساختار یافته پسرمان یافته ( SQL ) :برای برقراری ارتباط و واکشی اطلاعات شما نیاز به یادگیری زبان SQL در گذشته داشتید .زبان SQL ساختاری منظم و منطقی دارد و در یادگیری بسیار شیرین می باشد و در مفاهیم اولیه بسیار روان می باشد و کلا پیچیدگی های زیادی ندارد مگر در حالت های QUERY های تو در تو و داخلی و البته و دینامیک کوئری که می توان گفت مباحث پیشرفته تر در زبان SQL می باشد ولی شما برای ADO نیازی به یادگیری مباحث پیشرفته نیستید .EF CORE تکنولوژیارتقاعی متحولانه در حوزه ارتباط با پایگاه داده هاروش قدرتمند EF COREخوب برای EF شما نیاز به نوشتن دستورات SQL ندارید و خوب EF به طور  پیش فرض از قابلیتی پشتیبانی می کند به نام QUERY BUILDER که برای شما به طور اتوماتیک کوئری می سازد و این یک مزیت خیلی خوب در EF می باشد .برای برقراری ارتباط با دیتابیس در EF شما باید از کلاس DbContext ارث بری کنید و با استفاده از دستورات Migration شما می توانید تغییرات را در پایگاه داده اعمال کنید . و تغییرات را با دستور Update-DataBase روی پایگاه داده مورد نظر خود اجرا کنید. ( Execute)EntityFramwork تکنولوژی روش های برقراری و ساخت جداول در EFدر EF شما می توانید به روشی بسیار ساده و با استفاده از کلاس ها به ساخت جداول بپردازید و خود EF با استفاده از متد های داخلی برای شما کلاس های شما را به صورت جداول در پایگاه داده می سازد و شما فقط کافی است در DbContext جداول خود را معرفی کنید .با استفاده از DbSet ، که در این مبحث به توضیح کامل آن نمی پردازیم می توانیم جداول خود را در پایگاه داده معرفی کنید و بسازید .نتیجه :طی سال های اخیر EF و EF CORE بسیار پیشرفت کرده و با یادگیری آن می توانید در انواع پروژه های از این تکنولوژی استفاده کنید .پروژه هایی نظیر ASP.NET CORE  از این تکنولوژی قدرتمند استفاده کنید و انواع پروژه های خود را پیاده سازی کنید .یادگیری EF CORE بسیار لذت بخش می باشد و با یادگیری آن می توانید پروژه های خود را بسیار تمیز تر و سریع تر راه اندازی کنید و نیازی به یاد گیری زبان SQL نمی باشد .</description>
                <category>محمد صدرا برومند</category>
                <author>محمد صدرا برومند</author>
                <pubDate>Mon, 19 Oct 2020 21:32:45 +0330</pubDate>
            </item>
            </channel>
</rss>