faq

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

فلاتر یک فریم ورک UI برای طراحی اپلیکیشن‌های بسیار زیبا برای موبایل، وب و دسکتاپ می‌باشد. فرض کنید می‌خواهید یک اپلیکیشن بنویسید که روی اندروید، ای او اس، ویندوز، لینوکس، مک قابل نصب باشد و همچنین یک نسخه وب هم داشته باشد. به نظر شما بهترین راه چیست؟ قطعا نوشتن یک اپلیکیشن برای 6 پلتفرم کار بسیار سخت و زمانبری است و نیاز به تخصص و هزینه زیادی دارد. فلاتر این مشکل را حل کرده. کافیست فلاتر را یاد بگیرید و با یک بار کدنویسی برای همه ی پلتفرم هایی که ذکر شد خروجی بگیرید.

 1. کراس پلتفرم است(با نوشتن یک کد چندتا خروجی برای پتلفرم های مختلف می‌توانید بگیرید)

2. عملکرد فوق العاده فلاتر (با وجود کراس پلتفرم بودنِ فلاتر، انتظار می‌رود که اپلیکیشن‌هایی که با این فریم ورک نوشته می‌‌شوند پرفورمنس پایینی داشته باشند. ولی فلاتر دقیقا برعکس! اپلیکیشن های فلاتری، پرفورمنس و سرعت بسیار بالایی دارند!)

3. طراحی آسان UI

4. سرعت بالای دولوپ نرم افزار 

و …

اگر با مباحث ابتدایی برنامه نویسی از قبیل حلقه‌ها، شرط‌ها و …) و شی گرایی(کلاس‌ها، متدها و …) آشنایی داشته باشید، فلاتر برای شما آسان خواهد بود. ولی اگر مباحث مذکور را بلد نیستید نگران نباشید می‌توانید ابتدا موارد پایه‌ برنامه نویسی را یاد بگیرید و سپس به آسانی یادگیری فلاتر را اغاز کنید. گوگل ادعا می‌کند که افراد زیادی را دیده که با دانش بسیار کم فلاتر را یاد گرفته‌اند و از فلاتر برای ساخت پروتوتایپ استفاده می‌کنند

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

برای استارت فلاتر یک سیستم با حداقل مشخصات زیر نیاز خواهید داشت:

 

سیستم عامل: از هر سیستم عاملی استفاده می‌کنید، دقت کنید که حتما باید به صورت 64 بیت نصب شده باشد.

 

RAM: گوگل 8 گیگابایت رم را پیشنهاد می‌دهد. اگر مشکلی با کند بودن سیستم ندارید 4 گیگابایت رم هم کافی است ولی قطعا سیستم به شدت کند خواهد شد.

 

CPU: در ضعیف‌ترین حالت شما یک Intel Core i3-8100 و یا مشابه آن در AMD نیاز خواهید داشت.

 

حافظه: نهایتا اگر بخواهیم حساب کنیم حجم SDK فلاتر بیشتر از 3 گیگابایت نخواهد شد.

 

پیشنهاد: احتمالا اسم SSD را شنیده‌اید. SSD نوعی حافظه است مثل هارد(HDD) که می‌توانید اطلاعاتی همچون عکس‌ها، موزیک‌ها و … را روی آن بریزید. تفاوت SSD با هارد این است که SSD سرعت فوق العاده بالایی نسبت به هارد دارد بنابراین SSD می‌تواند کار کردن با فلاتر را برای شما بسیار لذت بخش کند چون اکثر اوقات مشکل این است که CPU باید منتظر بماند تا اطلاعات از هارد واکشی شوند. و این باعث می‌شود که سرعت سیستم پایین بیاید ولی با SSD این مشکل تا حد بسیار زیادی رفع می‌شود.

SDK فلاتر بر روی ویندوز، لینوکس و مک قابل نصب است. کافیست که SDK مربوط به سیستم عامل خود را از اینجا دانلود کنید و برنامه نویسی با فلاتر را اغاز کنید.

IDE یا محیط توسعه نرم افزار به شما کمک می‌کند تا درگیر مسائل سینتکس نشوید و تمرکزتان بر روی الگوریتم و توسعه نرم افزار باشد. بهترین محیط برای توسعه اپلیکیشن‌های فلاتر اندروید استدیو خواهد بود. به دلیل مشکلاتی که اندروید استدیو دارد(مثل سنگین بودن آن) شما می‌توانید از Visual Studio Code(اگر قبلا دات نت کار بوده‌ایید و از محیط های مایکروسافتی خوشتان می‌آید انتخاب خوبی است) یا IntelliJ IDEA استفاده کنید. 

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

1. موبایل: ابتدا باید قابلیت USB Debugging تلفن همراه خود را فعال نمایید. سپس موبایل خود را به وسیله کابل به سیستم متصل کنید(به زودی آموزش اتصال موبایل به صورت وایرلس را در وبسایت قرار خواهیم داد) سپس وارد اندروید استدیو(یا محیط برنامه نویسی که دارید) شوید. حالا باید موبایل شما شناسایی شده باشد. در صورت عدم شناسایی ابتدا درایور گوشی خود را نصب کرده(سرچ کنید به عنوان مثال درایور گوشی سامسونگ S20 برای ویندوز) و سپس مجددا مراحل بالا را امتحان کنید)

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

Genymotion

NoxPlayer

Memu

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

 

همه چیز بستگی به نیاز شما دارد. طبیعتا چون فلاتر کراس پلتفرم است به نسبت زبان‌های نیتیو دسترسی‌های محدودتری دارد(که البته فلاتر هر روز در حال پیشرفت است) پیشنهاد شخصی ما این است که اگر اپلیکیشنی می‌خواهید بنویسید که زیاد با API‌های سیستم عامل سرو کار ندارد از فلاتر استفاده کنید. به عنوان مثال اپلیکیشن‌های فروشگاهی، رزرواسیون و … بهترین نوع اپلیکیشن‌هایی هستند که می‌توان از فلاتر استفاده کرد.

دنیای تکنولوژی دائم درحال آپدیت است و ما در بازه‌های زمانی کم شاهد معرفی تکنولوژی‌های جدید هستیم. به همین دلیل سخت است که بخواهیم پیش بینی کنیم.

این موضوع که فلاتر آینده برنامه نویسی موبایل را در دست دارد خیلی مطرح است.

گوگل دائما در حال به روزرسانی فلاتر است و در هر آپدیت شاهد افزایش چشمگیر قدرت و عملکرد فلاتر هستیم.

همچنین برنامه نویسان زیادی به این فریم ورک ابراز علاقه کرده‌اند.

طبق آخرین تحقیقات، سیستم عامل آینده گوگل(فیوژا) هم از همین فریم ورک احتمالا قرار است استفاده کند.

فلاتر یک ورک است و زبان برنامه نویسی آن دارت می‌باشد. پس طبیعتا قبل از یادگیری فلاتر باید یک آشنایی کلی با سینتکس و مفاهیم زبان دارت داشته باشید. دارت هم یک زبان مثل زبان‌های خانواده C است و اگر قبلا با این زبان‌ها کار کرده باشید یادگیری دارت برای شما آسان خواهد بود.

 فلاتر باعث می‌شود که زمان و هزینه تولید اپلیکیشن کاهش یابد. البته به این معنی نیست که دولوپر فلاتر کمتر حقوق بگیرد نه!  فرض کنید یک شرکت می‌خواهد برای اندروید و iOS اپلیکیشن طراحی کند. اگر شرکت بخواهد برای هر پلتفرم به صورت نیتیو کار کند باید دو نفر نیرو را استخدام کند که یکی به کاتلین(Android) مسلط باشد و دیگری به سوییفت(iOS). اگر هر کدام از این دو، 10 میلیون حقوق بگیرند، شرکت مجبور است ماهیانه 20 میلیون تومان به این دو نیرو حقوق بدهد. اما اگر یک نیرو استخدام کند که به فلاتر مسلط باشد و مثلا 12 میلیون حقوق بگیرد، در آخر ماه شرکت 8 میلیون تومان صرفه جویی کرده است.

به همین دلیل اکثر شرکت‌هایی که سیاست صرفه جویی را در پیش گرفته اند از این استراتژی استفاده می‌کنند.

بله!

  1. Google Ads

2. Reflectly (این اپلیکیشن ابتدا با React Native نوشته شده و سپس بنا به دلایلی با فلاتر بازنویسی شده است. اگر علاقه مند هستید دلایل سازندگان این اپلیکیشن برای مهاجرت از React Native به Flutter را بدانید می‌توانید ویدیو یا مقاله آن را ببینید)

3. Alibaba

4. Birch Finance

5. Coach Yourself

6. Tencent

7. Watermaniac

شما می‌توانید به سه صورت عمل کنید:

 

در یک شرکت استخدام شوید و روی پروژه‌های شرکتی کار کنید. طبیعتا در این حالت وظیفه تامین پروژه بر عهده شرکت می‌باشد. شما صرفا باید قابلیت‌ها و توانایی‌های خود را به شرکت نشان دهید.

 

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

 

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

 

سوال دیگری دارید؟

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

ممنون که از ما حمایت می کنید!

۶۲۱۹-۸۶۱۰-۴۴۳۱-۴۶۲۲

به نام محمد غنچه - بانک سامان

:TRC-20

TXH658Q57XgJtMUpRz59b4ANRgq72VHKt5

در نهایت می تونید برای ارسال رسید یا هر سوال و هماهنگی دیگری با من ارتباط برقرار کنید: ۰۹۰۴۴۰۳۹۱۵۳