<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های وب سایت آموزشی سه گوش</title>
        <link>https://virgool.io/feed/@segoosh</link>
        <description>سه گوش تلاش خود را می کند تا بهترین آموزش ها و خلاق ترین آموزش های برنامه نویسی را برای شما دوستان عزیز تهیه کند. وب سایت سه کوش :‌segoosh.org</description>
        <language>fa</language>
        <pubDate>2026-06-18 11:44:26</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/92817/avatar/cPQMHI.png?height=120&amp;width=120</url>
            <title>وب سایت آموزشی سه گوش</title>
            <link>https://virgool.io/@segoosh</link>
        </image>

                    <item>
                <title>فلاتر و فیوژا ؟ تکنولوژی برتر آینده ؟</title>
                <link>https://virgool.io/@segoosh/%D9%81%D9%84%D8%A7%D8%AA%D8%B1-%D9%88-%D9%81%DB%8C%D9%88%DA%98%D8%A7-%D8%AA%DA%A9%D9%86%D9%88%D9%84%D9%88%DA%98%DB%8C-%D8%A8%D8%B1%D8%AA%D8%B1-%D8%A2%DB%8C%D9%86%D8%AF%D9%87-iinuqine4zy2</link>
                <description>فلاتر چیست ؟‌فلاتر یک فریم وورک با قابلیت چند سکویی است ، یعنی اینکه می توانید با یک کد چندین خروجی متفاوت داشته باشید. در شروع کار فلاتر به شما امکان تولید اپلیکیشن هایی فقط برای اندروید و ای او اس را میداد. کمی بعد گوگل پروژه ای را تحت عنوان Hummingburd معرفی کرد که به شکل آزمایشی بود و می توانستید خروجی های وب ، محلی ( نیتیو ) موبایل ، دسکتاپ و حتی سایر دستگاه ها را بگیرید. با استفاده از کیت رابط کاربری گوگل می توانید یک بار کد بنویسید و در همه جا استفاده کنید.برای اطلاعات بیشتر در مورد فلاتر می توانید ویدیو معرفی رسمی آن را ببینید .تجربه توسعه دهندگانویژگی چند سکویی بودن فلاتر به تنهایی باعث می شود که دیگر نگرانی بابت ساخت ، تست و نگه داری چندین پلتفرم را برای یک پروژه نداشته باشیم . فلاتر از state ها استفاده می کند و قابلیت hot reload را در اختیار شما قرار میدهد که میتوانید تغییرات اعمال شده روی کد خود را سریعا ببینید و دیگر نیازی نیست کلا اپلیکیشن را مجدد اجرا کنید. این امر باعث شده است که بهره وری افزایش یابد و در مقایسه با توسعه در جاوا و سویفت افزایش سرعت در توسعه داشته باشیم. اگر توسعه دهنده اندروید باشید از مشکلات ان با خبر هستید. فلاتر از زبان دارت استفاده می کند که زبان برنامه نویسی خوبی است که اخیرا به واسطه یادگیری آسان آن ، محبوبیت زیادی پیدا کرده است .کارایی نرم افزار و رابط کاربریفلاتر از یک کیت رابط کاربری متریال از پیش طراحی شده را در اختیار شما قرار می دهد که می توانید اجزای مورد نظر آن را به راحتی تنظیم و سفارشی سازی کنید. عملکردی نزدیک به اپلیکیشن های نیتیو دارد و در مقایسه با ریکت نیتیو سریع تر و نرم تر است.اگر چه در نسخه دسکتاپ و وب به اندازه ی موبایل خوب نیستند ، اما انتظار می رود که در اینده بهتر شود چون در حال حاظر این دو بخش در حالت آزمایشی هستند.آینده فلاتراگر فلاتر محبوبیت خود را با همین سرعت حفظ کند ، مردم بیشتری به سمتش میروند و جامعه اماری بیشتری را تشکیل میدهند. فلاتر می تواند یک دگرگونی را ایجاد کند چرا که چیزی شبیه به آن قبلا ایجاد نشده است . ریکت نیتیو نزدیک ترین چیزی است که به آن رسیدیم اما با واسطه و پل ارتباطی اجرا می شود.گوگل در حال ساخت سیستم عاملی است که پتانسیل جایگزینی سایر سیستم عامل ها را دارد. اسم این سیستم عامل Fuchsia است که در مراحل ابتدایی خود به سر می برد. فیوژا برای توسعه اپلیکیشن های خود از فلاتر استفاده می کند. با پشتیبانی زیاد فلاتر از فیوژا این قابلیت وجود دارد که تمامی اپلیکیشن های کاربردی ان وجود داشته باشد این کار ریسک عدم موفقیت سیستم عامل فیوژا را کاهش میدهد. همچنین گوگل قصد دارد تمامی برنامه های موجود برای آندروید را به فیوژا منتقل کند .آنچه که فیوژا را خاص میکند ، توانایی اجرای هر نوع معماری CPU است که این عمل مبتنی بر microkernel به نام Zircon است که قادر به اجرا روی موبایل ها ، دسکتاپ ها و سایر موارد دیگر است. همچنین امکان بهبود عمر باطری ، عملکرد و در تراشه های ان در اندروید نیز وجود دارد. این روند می تواند بزرگ باشد در صورتی که شبیه به ios شود. البته الان خیلی زود است که بگوییم موفق خواهد شد یا شکست خواهد خورد.مشتاقانه منتظر فیوژا باشید...منبع : وب سایت آموزشی سه گوش</description>
                <category>وب سایت آموزشی سه گوش</category>
                <author>وب سایت آموزشی سه گوش</author>
                <pubDate>Thu, 13 Feb 2020 21:00:54 +0330</pubDate>
            </item>
                    <item>
                <title>طراحی صفحه اصلی تلگرام با Flutter</title>
                <link>https://virgool.io/@segoosh/%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C-%D8%B5%D9%81%D8%AD%D9%87-%D8%A7%D8%B5%D9%84%DB%8C-%D8%AA%D9%84%DA%AF%D8%B1%D8%A7%D9%85-%D8%A8%D8%A7-flutter-ptmazbxcwldq</link>
                <description>در این ویدیو کست که به شکل تایم لپس می باشد ، مشاهده خواهید کرد که به چه سادگی می توانیم صفحه اصلی تلگرام را در flutter بسازیم . این ویدیو کست در واقع تایم لپس دوره اموزش Flutter وب سایت سه گوش است . دقت کنید در دوره اموزشی فقط طراحی صفحه اول تلگرام بررسی شده است.ویدیو تایم لپس طراحی صفحه اصلی تلگرام با فریم ورک فلاترمنبع : وب سایت سه گوش</description>
                <category>وب سایت آموزشی سه گوش</category>
                <author>وب سایت آموزشی سه گوش</author>
                <pubDate>Wed, 01 Jan 2020 10:00:39 +0330</pubDate>
            </item>
                    <item>
                <title>انواع ListView در Flutter</title>
                <link>https://virgool.io/@segoosh/%D8%A7%D9%86%D9%88%D8%A7%D8%B9-listview-%D8%AF%D8%B1-flutter-wmw5mz2ztaat</link>
                <description>برای این که بخواهیم از اطلاعات انبوهی مثل استفاده از یک لیستی که ۱۰۰ عدد آیتم دارد استفاده کنیم ، باید از ListView  ها استفاده کنیم.در این مقاله انواع Listview ها را در فلاتر بررسی می کنیم.اولین حالت ListView استفاده ان به ساده ترین حالت ممکن است که به شکل زیر استفاده می شود:دو ویژگی مهمی که ListView  دارد ، scrollDirection  و childrenهستند که به ترتیب جهت لیست و ایتم ها را مشخص می کنند . جهت لیست ها می توانند افقی یا عمودی باشد.پیش از این که بخواهیم کار را ادامه دهیم ، یک تابعی ایجاد می کنیم که یک ایتم از این لیست ویوو ما را شامل شود و از این ایتم در مثال های بعدی هم استفاده می کنیم.از این تابع به عنوان ایتم های لیست ویوو استفاده می کنیم  و به شکل زیر فراخوانی می کنیمخروجی کد بالا به شکل زیر است :فرض کنید ما تعداد زیادی ایتم داریم مثلا بالای ۱۰۰ آیتم !! حالا باید چه کاری انجام داد ؟‌برای استفاده از تعداد ایتم نامحدود و استاندارد از متد Builder کلاس ListView  استفاده می کنیم :در نمونه کد بالا قسمت itemCount ، تعداد ایتم های ما است ، قسمت itemBuilder برای تولید هر کدام از ایتم های لیست می باشد که پارامتر های ان context و index هستند . در واقع index شماره ایتم را به ما می دهد که از صفر شروع می شود . خروجی کد ما به شکل زیر است :‌اگر شما بخواهید یک جداکننده بین آیتم های لیست ویوو خود قرار بدید ، می توانید از separated  استفاده کنید به شکل زیر :‌ستفاده از این حالت هم دقیقا مثل حالت قبلیست با این تفاوت که یک separatorBuilder  هم دارد که به ما کمک می کند تا بین ایتم های خود یک جدا کننده قرار دهیم ، خروجی کد بالا به شکل زیر است :‌منبع : وب سایت سه گوش</description>
                <category>وب سایت آموزشی سه گوش</category>
                <author>وب سایت آموزشی سه گوش</author>
                <pubDate>Mon, 30 Dec 2019 12:36:19 +0330</pubDate>
            </item>
                    <item>
                <title>مدیریت state ها در Flutter چگونه است ؟</title>
                <link>https://virgool.io/@segoosh/%D9%85%D8%AF%DB%8C%D8%B1%DB%8C%D8%AA-state-%D9%87%D8%A7-%D8%AF%D8%B1-flutter-%DA%86%DA%AF%D9%88%D9%86%D9%87-%D8%A7%D8%B3%D8%AA-ed0jpmx5denk</link>
                <description>مدیریت اطلاعات و state  ها در Flutter مهم ترین موضوع در یک اپلیکیشن می باشد چرا که تغییر اطلاعات در یک اپلیکیشن یک امر عادی و طبیعی است . به ندرت می توان اپلیکیشنی را یافت که نیازی به تغییر اطلاعات و state  های خود نداشته باشد !!در این مقاله قصد داریم بپردازیم به بررسی روش های مدیریت state  ها در فلاتر اما پیش از اینکه ادامه بدیم باید یک تعریفی از state اشته باشیم تا بهتر درک کنیم که اصلا state چیست ؟تعریفی از Stateبهتر با یک مثال مفهوم را بررسی کنیم .فرض کنید شما یک اپلیکیشنی دارید که شامل یک Button  و Text  هست که می خواهید وقتی روی Button  کلیک شد ، متنText تغییر کند. همانند تصویر زیر :‌برای این که این عمل اتفاق بیفتد ، باید ویدجت ها تغییر کنند و دوباره از نو ساخته شوند و اطلاعات جدید جایگزین شوند در مثال بالا متن Flutter  بعد از کلیک شدن به Hello Flutter  تغییر پیدا می کند یعنی ویدجت Text دوباره با اطلاعات جدید ساخته می شود .در واقع به تغییر اطلاعات در رابط کاربری اپلیکیشن ها state می گوییم که رابط کاربری شما نمایشی از این state ها هستند.علت استفاده از State هابدون شک اپلیکیشنی را پیدا نمی کنید که اطلاعاتی را درون خود داشته باشد که نیاز نباشد تغییر کند پس نیازمند استفاده از state  ها و نحوه مدیریت آن ها هستیم.روش های زیادی برای مدیریت state  ها وجود دارد که بسته به نوع پروژه و نحوه استفاده باید از هر کدام در جای مناسب خود استفاده کنیم در نتیجه نباید به یک روش پسنده کنید و باید روش های زیادی را یاد بگیرید و در جای مناسب از آن استفاده کنید .اینکه از چه روشی استفاده کنید خیلی مهم هست زیرا مدیریت state ها در کارکرد اپلیکیشن تاثیر دارد.برای مدیریت state ها در فلاتر شما می توانید از خود پکیج های درونی فلاتر استفاده کنید که شامل موارد زیر است :StatefulWidgetStatefulBuilderStreamBuilderInheritedBuilderغیر از این موارد می توانیم از پکیج های خارج از فلاتر هم استفاده کنیم که در مقالات بعدی به نحوه کار با آن ها می پردازیم . در مقاله قصد داریم که مورد های StatefulWidget  و StatefulBuilder را بررسی کنیم.یک نکته مهمی که وجود دارد این است که اگر نیازمند به تغییر اطلاعاتی نیستید و صرفا جنبه نمایشی دارد بهتر از تمامی ویدجت های خود را درون یک state  قرار دهید و از ویدجت هایStateless استفاده کنید .روش StatefulWidgetاین روش اولین روش و ساده ترین روش برای تغییر state ها می باشد که برای استفاده از این حالت می توانید به سادگی با استفاده از دستور setState هر جا که نیاز داشتید داده ای را تغییر بدید ، بروز رسانی کنید.مثال Button  و Text را که برای درک مفهوم state ها زدیم را میخواهیم با این روش پیاده سازی کنیم.در ابتدا فرض می کنیم که شما با ویدجت های Stateless  و Stateful آشنایی دارید.برای شروع باید یک ویدجت از نوع Stateful بسازیم و در متد Build آن کد های زیر را قرار بدهیم.برای نمایش متن ، یک متغییر تعریف کردیم تحت عنوان label  و از آن برای نمایش در ویدجت Text  استفاده کردیم . زمانی که مقدار این متغییر تغییر کند مقدار Text هم تغییر پیدا می کند. برای انجام این کار باید از دستور setState  در تابع کلیک دکمه ی خود استفاده کنیم . همانند زیر :خروجی کار به این شکل است که اگر روی دکمه کلیک کنید مقدار Text تغییر خواهد کرد.این روش یک عیبی دارد این است که روی عملکرد تاثیر می گذارد و با بزرگ شدن پروژه ممکن است دردسر ساز شود چرا که برای یک تغییر کوچک باید تمامی ویدجت های داخل متد Build  مجددا بازسازی بشوند.روش StatefulBuilderزمانی هست که شما تعداد بسیار زیادی ویدجت دارید و می خواهید فقط بخش کوچکی از یک ویدجت را تغییر بدید در این شرایط استفاده از Statefulwidget  پیشنهاد نمی شود چرا که برای یک تغییر کوچک باید تمامی ویدجت ها مجددا بازسازی شوند. در این شرایط بهتر است از StatefulBuilder استفاده کنید .این ویدجت به ما کمک می کند که تنها بخشی از اپلیکیشن خود را تغییر بدیم . برای استفاده از این ویدجت برای مثال بالا به این شکل عمل می کنیم.ابتدا یک ویدجت Stateless تعریف می کنیم و در بخشی که میخواهیم اطلاعاتی تغییر کند از ویدجت StatefulBuilder  استفاده می کنیم .یکی از پارامتر های ورودی این ویدجت از جنس StateSetter هست که دقیقا همانند setState ویدجت های Stateful عمل می کند با این تفاوت که فقط در بلاک های ویدجت StatefulBuilder  کار می کند.کد زیر مثال Button  و Text با استفاده از StatefulBuilder را نشان می دهد:مدیریت state ها روش های متفاوتی را دارند که با توجه به شرایط متفاوت هستند . در مقالات آینده قطعا موارد بهتری از مدیریت state ها همانند : bloc , mobx , rxdart را بررسی خواهیم کرد.منبع : وب سایت آموزشی سه گوش</description>
                <category>وب سایت آموزشی سه گوش</category>
                <author>وب سایت آموزشی سه گوش</author>
                <pubDate>Sat, 14 Dec 2019 22:07:22 +0330</pubDate>
            </item>
                    <item>
                <title>معرفی ویدجت Text در Flutter</title>
                <link>https://virgool.io/@segoosh/%D9%85%D8%B9%D8%B1%D9%81%DB%8C-%D9%88%DB%8C%D8%AF%D8%AC%D8%AA-text-%D8%AF%D8%B1-flutter-uybhffxn9zlx</link>
                <description>اگر با Flutter آشنا باشید ، این موضوع را به خوبی می دانید که فلاتر برای طراحی ظاهر اپلیکیشن از Widget ها استفاده می کند . Widget ها در واقع ابزارک هایی هستند که به ما کمک می کنند که سریع تر به رابط کاربری مورد نظر خودمان برسیم .همچنین می توانید برای یادگیری Flutter ، از دوره آموزش Flutter استفاده کنید .در این مقاله قصد داریم که ویدجت پایه ای و پر کاربرد Text را به شما دوستان معرفی کنیم و برخی از ویژگی های این ویدجت را مورد بررسی قرار دهیم .همانطور که از عنوان ویدجت پیداست ، این ویدجت برای استفاده از متن به کار می رود و شما می توانید با استفاده از این ویدجت ، متن های خود را مدیریت کنید .روش استفاده از این ویدجت به این گونه هست که کافیست هرجایی که نیاز به متن داشتید این کلاس را فراخوانی کنید .Text()این ویدجت ویژگی های زیادی را دارد که میخواهیم برخی از این ویژگی ها را با هم دیگر بررسی کنیم.ویژگی textAlign به ما کمک می کند که نحوه قرار گیری متن خود را مشخص کنیم . مثلا متن ما راست چین باشد یا چپ چین ، وسط چین باشد یا به شکل justify :در دو تصویر زیر می توانید حالت های Center و Justify شده ی یک متن را مشاهده کنید :مورد بعدی که وجود دارد ، maxLines و overflow هستند . maxLines که مشخص هست یعنی متن ما را در تعدادی خط محدود می کند و overflow هم اگر فضای کافی نداشته باشیم متن را در انتهای متن به شکل سه نقطه ، بریده شده و یا fade نشان می دهد .همچنین در تصویر می توانید نتیجه متن را در ۲ خط ببینید :و اما مهم ترین بخش ویدجت Text بخش Style آن است که می توانید مواردی چون : سایز متن ، رنگ متن ، بک گراند ، فونت و ... مشخص کنید .fontSize : با استفاده از این ویژگی می توانید سایز فونت متن خود را مشخص کنید color : می توانید رنگ متن خود را مشخص کنید decoration : با استفاده از این ویژگی می توانید با استفاده از کلاس TextDecoration به متن خود یک زیر خط (underline) ، روی خط (overline) و یا به شکل خط خطی (lineThrough) اضافه کنیدdecorationStyle : این ویژگی وابسته به decoration هست و شما می توانید به خط خود style بدید.backgroundColor : با استفاده از این ویژگی هم می توانید به زمینه ، متن رنگی را اضافه کنیدfontWeight : می توانید با این ویژگی متن خود را Bold کنیدletterSpacing : فاصله های بین کاراکتر ها را می توانید مشخص کنید wordSpacing : فاصله های بین کلمات را می توانید مشخص کنید height : فاصله ی بین خط ها را می توانید کنترل کنید fontFamily : نوع فونت استفاده شده برای متن را می توانید مشخص کنید در تصویر زیر نتیجه کد های بالا را مشاهده می کنید :در ادامه باید این نکته را بگویم که همین ویدجت Text به ظاهر ساده ، ویژگی های دیگری هم دارد که ما مهمترین های آن ها را بررسی کردیم .منبع : وب سایت سه گوش </description>
                <category>وب سایت آموزشی سه گوش</category>
                <author>وب سایت آموزشی سه گوش</author>
                <pubDate>Fri, 06 Dec 2019 12:05:54 +0330</pubDate>
            </item>
                    <item>
                <title>معرفی رسمی گوگل Flutter با زیرنویس فارسی (ویدیو)</title>
                <link>https://virgool.io/@segoosh/%D9%85%D8%B9%D8%B1%D9%81%DB%8C-%D8%B1%D8%B3%D9%85%DB%8C-%DA%AF%D9%88%DA%AF%D9%84-flutter-%D8%A8%D8%A7-%D8%B2%DB%8C%D8%B1%D9%86%D9%88%DB%8C%D8%B3-%D9%81%D8%A7%D8%B1%D8%B3%DB%8C-%D9%88%DB%8C%D8%AF%DB%8C%D9%88-x17g75fqvlsn</link>
                <description>سلام به همگی همانطور که می دانید ، Flutter یک فریم ورک برای توسعه اپلیکیشن های اندروید و ios می باشد که توسط گوگل در سال ۲۰۱۷ معرفی شده است .اگر اطلاعات کافی در مورد فلاتر ندارید ، این ویدیو خیلی می تواند به شما کمک کند .در این ویدیو کست شما به شکل رسمی ویدیو شرکت گوگل را مشاهده خواهید کرد که به شدت جذاب است و پیشنهاد میشه که حتما ببینید.همچنین وب سایت سه گوش محتویات این ویدیو را ترجمه کرده است و شما می توانید با زیرنویس فارسی این ویدیو را مشاهده کنید.برای مشاهده ویدیو رسمی معرفی Flutter با زیرنویس فارسی کلیک کنید .منبع : وب سایت آموزشی سه گوش</description>
                <category>وب سایت آموزشی سه گوش</category>
                <author>وب سایت آموزشی سه گوش</author>
                <pubDate>Thu, 05 Dec 2019 13:57:40 +0330</pubDate>
            </item>
                    <item>
                <title>طراحی صفحه اصلی دیجی کالا با Flutter</title>
                <link>https://virgool.io/@segoosh/%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C-%D8%B5%D9%81%D8%AD%D9%87-%D8%A7%D8%B5%D9%84%DB%8C-%D8%AF%DB%8C%D8%AC%DB%8C-%DA%A9%D8%A7%D9%84%D8%A7-%D8%A8%D8%A7-flutter-szluzvbtpfro</link>
                <description>همانطور که می دانید ، Flutter یک فرم ورک چند سکویی برای توسعه اپلیکیشن های اندروید و ios می باشد که در سال ۲۰۱۷ توسط گوگل معرفی شد .در این قسمت ما به یک ویدیو تایم لپس آماده کردیم که می توانید طراحی صفحه اصلی دیجی کالا را مشاهده کنید . این ویدیو تماما اختصاصی توسط وب سایت سه گوش برای شما عزیزان آماده سازی شده است .مدت زمان اصلی این ویدیو حدود ۱ ساعت و نیم می باشد که در ۳ دقیقه فشرده شده است ، این ویدیو صرفا جهت آشنایی شما عزیزان با فریم ورک Flutter می باشد . همچنین اسکرین شات هایی از این اپلیکیشن طراحی شده را در تصویر زیر مشاهده می کنید .</description>
                <category>وب سایت آموزشی سه گوش</category>
                <author>وب سایت آموزشی سه گوش</author>
                <pubDate>Wed, 04 Dec 2019 20:54:31 +0330</pubDate>
            </item>
                    <item>
                <title>راه های توسعه یک اپلیکیشن موبایل</title>
                <link>https://virgool.io/@segoosh/%D8%B1%D8%A7%D9%87-%D9%87%D8%A7%DB%8C-%D8%AA%D9%88%D8%B3%D8%B9%D9%87-%DB%8C%DA%A9-%D8%A7%D9%BE%D9%84%DB%8C%DA%A9%DB%8C%D8%B4%D9%86-%D9%85%D9%88%D8%A8%D8%A7%DB%8C%D9%84-tszxcfgtozkk</link>
                <description>همانطور که از عنوان این مقاله پیداست ، می خواهیم به بررسی راه های تولید یک اپلیکیشن بپردازیم. اینکه کدام روش بهترین هست ، بستگی به معیار ها و نوع پروژه دارد که کدام یک پاسخگو نیاز یک پروژه می باشد ، لزوما سریع ترین روش ، بهترین روش مطلق نیست.به شکل کلی در حال حاضر  چهار روش برای توسعه یک اپلیکیشن موبایل وجود دارد که در ادامه به بررسی آنها می پردازیم.۱ - بومی (Native)اولین مسیری که از زمان به وجود آمدن سیستم عامل های موبایل وجود داشته ، توسعه دادن از طریق زبان های نیتیو یا محلی است . اگر بخواهیم امروزه سیستم عامل های موبایل را دسته بندی کنیم باید در دوسته اندروید و ios قرار بدهیم . اگر شما بخواهید از زبان های نیتیو استفاده کنید باید برای اندروید از جاوا یا کاتلین استفاده کنید و برای ios از سوئیفت بهره ببرید . مزیت هایی که این روش دارد ، پشتیبانی محکم گوگل و اپل از زبان مورد نظر است که بهترین نتیجه و عملکرد را دارد اما نکته مهم اینجاست که هزینه ها و زمان شما به شدت افزایش خواهد یافت چرا که شما باید از دو زبان برنامه نویسی متفاوت و دو پروژه متفاوت برای توسعه یک اپلیکیشن بهره ببرید تا بتوانید خروجی اندروید و ios داشته باشید که این امر باعث می شود روند توسعه و نگه داری پروژه سخت بشود چونکه برای تغییر یا اضافه کردن یک ویژگی جدید به اپلیکیشن خود باید روی هر دو نسخه اندروید و ios جدا گانه تغییرات را اعمال کنید.۲ - وب ویو (Hybrid)این روش یک روش قدیمی محسوب می شود که همانند یک webView عمل می کند و برای استفاده از سرویس های موبایل از جاوا اسکریپت به عنوان یک پل استفاده می کند. سرعت و عملکرد در این روش اصلا قابل مقایسه با سایر روش ها نیست و سرعت و عملکرد چندان جالبی را ندارد و دارای محدودیت هایی نیز هست اما با این حال پاسخگوی خیلی از پروژه ها می باشد . از فریم ورک های معروفی که می توان نام برد ، lonic و phoneGap هستند.۳ - چند سکویی (crossPlatform)این روش که خیلی روش مناسبی است و در ایران هم جا افتاده است ، استفاده از فریم ورک های معروف Flutter و ReactNative است . در این دو فریم ورک از کامپوننت ها و ویدجت ها استفاده می شود که در نهایت به شکل نیتیو رندر می شوند . در ریکت نیتیو از بستر جاوا اسکریپت برای تبدیل شدن به نیتیو استفاده می شود اما در فلاتر تماما سعی شده که به شکل مستقیم به نیتیو تبدیل شود و این امر باعث شده که Flutter سرعت و عملکرد بهتری داشته باشد .۴ - پیش رونده ها (pwa)این سبک اپلیکیشن ها هم متد جدیدی از توسعه اپلیکیشن ها هستند که برای کسانی که وبسایت دارند و نمی خواهند زیاد هزینه سنگینی کنند ، مناسب است . اپلیکیشن های پیش روند را نمی توان یک اپلیکیشن نیتیو در نظر گرفت چرا که کلا با روش های قبلی متفاوت است و شما هنگام استفاده از این روش نیازی به نصب فایل روی گوشی خود ندارید . پیش رونده ها از مرورگر و webApi ها  استفاده می کنند که این نوع اپلکیشن ها به شما دسترسی آفلاین به صفحات وب را می دهند . این روش میتونه یک روش مکملی برای کسب و کار ها باشد و نمی توان یک روش مستقل برای توسعه اپلیکیشن در نظر گرفت.منبع : وب سایت آموزشی سه گوش</description>
                <category>وب سایت آموزشی سه گوش</category>
                <author>وب سایت آموزشی سه گوش</author>
                <pubDate>Wed, 04 Dec 2019 11:47:03 +0330</pubDate>
            </item>
                    <item>
                <title>بررسی Flutter در برابر React Native</title>
                <link>https://virgool.io/@segoosh/%D8%A8%D8%B1%D8%B1%D8%B3%DB%8C-flutter-%D8%AF%D8%B1-%D8%A8%D8%B1%D8%A7%D8%A8%D8%B1-react-native-fqkei4dtkmoi</link>
                <description>بحث داغی که این روز ها میان برنامه نویسان به وجود آمده است ، مقایسه فریم ورک های فلاتر و ریکت نیتیو با یکدیگر هست . در این مقاله قصد داریم که به بررسی این موضوع بپردازیم که در نهایت انتخاب این که کدام یک از این فریم ورک ها مناسب تر می باشد به عهده ی خود شماست .فلاتر و ریکت نیتیو دو فریم ورک cross-platform هستند که شما می توانید با یکبار کد نوشتن ، خروجی اندروید و ای او اس بگیرید و دیگر نیازی نیست برای انجام پروژه های خود از دو زبان متفاوت استفاده کنید . ریکت نیتیو اولین بار در سال ۲۰۱۵ توسط شرکت فیسبوک معرفی شد و نگاه های جدیدی را به سمت خودش جذب کرد و در سویی دیگر فلاتر در سال ۲۰۱۷ توسط شرکت گوگل معرفی شد و ۲ سال بعد یعنی در سال ۲۰۱۹ اولین نسخه پایدار از آن معرفی شد .در این مقاله قصد داریم که Flutter و React Native را با پارامتر های زیر با یکدیگر مقایسه کنیم :زبان برنامه نویسیمعماری فنییادگیریسرعت توسعهدیدگاه برنامه نویسانزبان برنامه نویسیفریم ورک Flutter از زبان برنامه نویسی Dart استفاده می کند که سینتکس آسانی دارد و برای کسانی که جاوا کار کرده باشند قابل فهم تر است . React Native از زبان محبوب جاوا اسکریپت استفاده می کند که همین علت به محبوبیت این فریم ورک افزوده است چرا که خیلی از برنامه نویسان وب که با جاوا اسکریپت کار می کنند ، به سمت این فریم ورک تمایل پیدا کردند تا بتوانند اپلیکیشن های موبایلی نیز تولید کنند .معماری فنیفلاتر از معماری Skia استفاده می کند . فلاتر از دارت برای ارتباط با ماژول های نیتیو استفاده می کند که این کار باعث افزایش حجم کار می شود اما دیگر نیازی به پلی برای تبدیل کردن به ماژول های نیتیو ندارد که همین امر باعث بالا رفتن سرعت و عملکرد اپلیکیشن می شود .ریکت نیتیو از Flux استفاده می کند . ریکت نیتیو هنگام اجرا ، کد های جاوا اسکریپتی خود را به ماژول های نیتیو کامپایل می کند که همین امر باعث می شود در مقایسه با فلاتر سرعت کمتری را در عملکرد خود داشته باشد.یادگیریشما برای یادگیری React Native باید اول JavaScript را یاد بگیرید و سپس ECS6 را فرا بگیرید و بعد کار با فریم ورک React و در انتها کار با React Native را آغاز کنید . در فلاتر شما تنها نیاز است که زبان دارت را یاد بگیرید و بعد از آن Flutter را شروع کنید . خب اگر از لحاظ یادگیری مقایسه کنیم ، می بینیم که فلاتر خیلی آسان تر و سریع تر می باشد چرا که گام های کمتری را نسبت به ریکت نیتیو دارد.سرعت توسعههر دو فریم ورک کامپوننت های آماده زیادی را دارند که باعث می شوند زمان توسعه شما به شدت افزایش یابد و واقعا نمی توان گفت که از این نظر کدام یک برتری دارد چون تمام نیاز های یک پروژه را به خوبی می توانند رفع کنند.دیدگاه برنامه نویسانکسانی که هم ریکت نیتیو کار کردند و هم فلاتر ، به این موضوع اشاره دارند که دردسر های فلاتر خیلی کمتر از ریکت نیتیو می باشد . به عنوان مثال چون ریکت نیتیو خیلی از پکیج های آن توسط برنامه نویسان توسعه داده شده است با آپدیت ورژن پروژه شما برای استفاده از این پکیج ها بر ارور های زیادی بر خورد می کنید که واقعا کلافه کننده خواهد بود اما در فلاتر این مشکل به این شدت وجود ندارد و شما نگرانی از بابت آپدیت پکیج ها و ورژن پروژه خود نخواهید داشت.سخن پایانیما در این مقاله سعی کردیم به شکلی کاربردی دو فریم ورک فلاتر و ریکت نیتیو را با یکدیگر مقایسه کنیم . هر کدام مزیت ها و معایب خود را دارند ، اینکه کدام بهتر است ، بستگی به خود شما دارد که کدام را برای یادگیری انتخاب کنید اما به نظر شخصی من ، فلاتر مراحل یادیگری آسان تری دارد و همچنین عملکرد بهتری از لحاظ سرعت نسبت به ریکت نیتیو دارد و آینده درخشانی در انتظار خود می بیند.منبع : وب سایت آموزشی سه گوش</description>
                <category>وب سایت آموزشی سه گوش</category>
                <author>وب سایت آموزشی سه گوش</author>
                <pubDate>Tue, 03 Dec 2019 11:00:51 +0330</pubDate>
            </item>
                    <item>
                <title>فلاتر (Flutter) چیست ؟</title>
                <link>https://virgool.io/@segoosh/%D9%81%D9%84%D8%A7%D8%AA%D8%B1-flutter-%DA%86%DB%8C%D8%B3%D8%AA-vjzt8qqib4jx</link>
                <description>اگر علاقه مند به دنیای برنامه نویسی موبایل  باشید ، احتمالا اسم فلاتر (Flutter) را شنیده اید . در سال ۲۰۱۷ کمپانی گوگل از فریم ورک جدید خود ، یعنی فلاتر رونمایی کرد . Flutter با این که عمر بسیار کمی دارد اما به سرعت در میان برنامه نویسان محبوب و مورد توجه قرار گرفته است.جالبی کار اینجاست که شما تنها با یک بار کد نوشتن می توانید خروجی Native اندروید و ios بگیرید در حالی که اگر میخواستید به شکل جداگانه برای اندروید و ios اپلیکیشن تولید کنید ، باید دو زبان متفاوت را یاد میگرفتید که در زمان و هزینه اصلا به صرفه نخواهد بود.البته تنها ویژگی Flutter چند سکویی بودن آن نیست !! ویژگی های خیلی بهتری هم دارد که شخصا خودم تجربشون کردم و واقعا برای من لذت بخش بودند که در ادامه مقاله به آن ها می پردازیم .زبان مورد استفاده در  فلاتر  زبان توسعه یافته توسط گوگل به نام دارت Dart می باشد که یک زبان شی گرا و سطح بالا با شباهت به جاوا می باشد .ویژگی های Flutterسرعت بالا در توسعه ی اپلیکیشن :شما در فلاتر می توانید  تغییراتی که در کدتان می دهید را در کمتر از یک ثانیه مشاهده کنید ، یعنی برای یک تغییر کوچک دیگر نیاز نیست کلا اپلیکیشن را مجدد اجرا کنید . به این قابلیت در فلاتر Hot Reloading  می گویند .hotReloadمورد دیگری که در توسعه سریع فلاتر وجود دارد این است که ، به عنوان مثال اگر شما بخواهید فلاتر و با زبان های بومی مثل کاتلین یا جاوا مقایسه کنید به این نکته پی می برید که توسعه دادن یک پروژه همسان در فلاتر خیلی سریع تر از کاتلین می باشد چرا که خیلی از Widget ها در فلاتر مانند ListView در فلاتر وجود دارند و تنها با چند خط کد ساده می توانید از آن استفاده کنید در حالی که در زبان های بومی استفاده از همین ListView به شدت دردسر دارد .رابط کاربری منعطف :یکی دیگر از مهمترین و جذاب ترین ویژگی های فلاتر ، این است که می توانید ظاهر های خلاقانه و پیچیده ای را به آسانی پیاده سازی کنید . شاید اگر بخواهید ظاهر های زیبا و پیچیده ای را در زبان های بومی پیاده سازی کنید ، دچار مشکلاتی بشوید اما در فلاتر کار شما به شدت آسان تر خواهد بود.رایگان بودن تمام ابزار های مورد نیاز :فلاتر کاملا متن باز و رایگان است و اصلا نیازی نیست برای استفاده از آن هزینه ای را پرداخت کنید . همین متن باز بودن فلاتر سبب شده است که پکیج های زیادی که توسط سایر برنامه نویسان توسعه داده شده است در دسترس باشد و کار را برای شما آسان تر کنند.عملکرد عالی :در مقایسه با فریمورک React Native از نظر عملکراین Flutter و زبان دارت هست که دست بالا را دارد. به دلیل اینکه هیچ نیازی به جاوا اسکریپت ندارید تا با کامپوننت های نیتیو ارتباط برقرار کند. همین کار باعث افزایش عملکرا و بهره وری اپلیکیشن می شود.فلاتر مناسب چه کسانی است ؟اگر قصد تولید سریع اپلیکیشن با ظاهر زیبایی را دارید ، قطعا فلاتر بهترین گزینه برای شما خواهد بود ، چرا که علاوه بر توسعه سریع اپلیکیشن کاهش هزینه های چشم گیری را به همراه دارد چونکه دیگر نیازی نیست برای یک پروژه از دو زبان مختلف یکی برای اندروید و دیگری برای ios استفاده شود و همین امر باعث کاهش زمان و هزینه می شود.همچنین می توانید در صورت نیاز به یادگیری فلاتر از طریق لینک زیر اقدام کنید :آموزش فلاتر تحت عنوان سوپر طراح اپلیکیشن موبایل و سایتمنبع : وب سایت سه گوش</description>
                <category>وب سایت آموزشی سه گوش</category>
                <author>وب سایت آموزشی سه گوش</author>
                <pubDate>Mon, 02 Dec 2019 20:25:16 +0330</pubDate>
            </item>
            </channel>
</rss>