سلام دوستان گلم سال نو تون مبارک💜
من بین دو زبان قدرتمند پایتون و جاوااسکریپ موندم که کدوم رو شروع کنم (به هر دوتاشون علاقه دارم یک اندازه)
میخواستم کمی من رو راهنمایی کنید که کدومشون رو انتخاب کنم
آیا به نظرتون خوبه که برای فرانت اند جاوااسکریپ کار کنم
و برای بک اند هم پایتون(Django or flask)
یادم رفت اضافه کنم لطفا اگر هر کدومشون رو پیشنهاد می کنید دلیلش رو هم بگید ممنون
یعنی هیچ مشکلی نداره این ها رو کار کنم؟
جاوا اسکریپت رو خوشتون بیاد نیاد مجبورید یاد بگیرید یا از چیزهایی مثل تایپ اسکریپت استفاده کنید اما برای بک اند پایتون گزینه بهتری هست
عاشق جاوااسکریپ هستم
OK, ممنون
نکتهای که خیلیا حواسشون نیست اینه که برای بکاند از هر زبونی میشه استفاده کرد. روی سرور خودمونه دیگه! هرچی باشه کانفیگ میکنیم و به ریکوئستهای HTTP جواب میده. (حالا ما میایم از یه زبانی استفاده میکنیم که سرعت develop توش بالا باشه یا یه زبونی که سرعت اجراش بالا باشه. برای همین ندیدم کسی با C بک-اند بنویسه.)
اگه بخوایم برای کلاینت کار کنیم، قضیه فرق میکنه. مثلا برای وب باید از js استفاده کنیم (چون تنها زبان front-end نویسیه) البته یه سری زبانهای دیگه هم هست مثل typescript - coffeescript - clojurescript که اینا هم تبدیل (transpile) میشن به جاوااسکریپت چون بروزرها فقط js میفهمن. برای موبایل باید با java/kotlin یا objective-c/swift کار کنیم. برای دسکتاپ البته یه مقدار گزینههای بیشتری داریم.
برای بکاند پیشنهاد میکنم از پایتون استفاده کنید، یعنی همیشه بجز front-end از چیزی بجز js استفاده کنید. زبان جاوااسکریپت، خیلی ساختار بدی داره. تجربتون که با چندتا زبان خوشساخت بالا بره متوجه منظور من میشید. برنامه نویسی به تنهایی سخت هست، انتخاب کفشی که راحت نیست مسیر رو سختتر میکنه.
برای پایتون، لایبرریهای وب زیادی وجود داره. پیشنهاد من به شما flask هست. سبک و کوچیکه، مزاحم کار نمیشه و هر کاری که بخوایم انجام بدیم رو توش میسازیم.
گزینهی دیگه django هست که امکانات بیشتری داره و بزرگتره (فکر میکنم بازارکار بیشتری هم داشته باشه) ولی مشکل همین بزرگ بودنشه. وقتی از یه framework کامل استفاده میکنیم، باید به روش اون فریموورک کارمون رو انجام بدیم و انعطافمون کمتر میشه.
برای دیتابیس، گزینههای خیلی زیادی هست، مسلما پیشنهاد من استفاده از یه دیتابیس relational مثل mysql/mariadb یا postgresql هست.
برای ارتباط با دیتابیس لایبرریهایی در پایتون وجود داره، هم میتونید کوئریها رو به صورت دستی بنویسید (که نیاز داره کوئریهای دیتابیس رو یاد بگیرید) و راندمانش بالاتره، هم میتونید با استفاده از چیزهایی مثل sqlalchemy کوئری بسازید که کدهاتون خیلی سادهتر میشه ولی ممکنه برای یه کوئری ساده، در حقیقت دو یا سه تا کوئری زده بشه (راندمان پایینتر)
برای جاوااسکریپت اینقدر لایبرری وجود داره که یه Q/A توی استکاوورفلو دیدم نوشته بود:
Q: بهترین لایبرری جاوااسکریپت توی سال ۲۰۱۸ چیه؟
A: یه کم دقیقتر بگو یکچهارم اول یا دوم یا سوم یا چهارم؟
ولی اگه جواب ساده میخواید، باید بگم ۲تا راه دارید، یا به سبک قدیمی با jquery کارتون رو انجام بدید (که نتیجه میشه یه سایت معمولی که هرروز میبینیم) یا میتونید از یکی از این لایبرریها (مثلا react) استفاده کنید برای ساخت وبسایتهای SPA (Single Page Application)
یه نکتهی دیگه هم بگم.
حرفهای شدن توی بک-اند و فرانت-اند به صورت همزمان کار خیلی سختیه و اصلا لازم نیست. هر کسی یه بخش رو دوست داره و یه بخش رو انجام میده.
همینه میگن عشق آدمو کور میکنه
قدیمیها یه حرف درست داشته باشن اونم اینه که عشق چشم رو کور میکنه !!!
خب شما چه زبانی رو پیشنهاد می کنید؟
چون من میخوام روی زبانی کار کنم که آینده داشته باشه که الکی وقتم رو از الان هدر ندم!
اگر می خوای وب کار کنی جاواسکریپت رو مجبوری یاد بگیری. اما نکته اصلی اینه که برنامه نویس به یه زبان محدود نمی شه. شما باید بنا به نیاز و مسئله ای که می خوای حل کنی ابزار مناسب رو انتخاب کنی . یه جا این ابزار جاواسکریپت هست یه جا چیزه دیگه. روی یه زبان خاص نباید تعصب داشت
من دوست داشتم برای وب اون چیز هایی رو که گفتم رو یاد بگیرم برای آندروید و ios فلاتر
چون هم به برنامه نویسی آپ علاقه دارم هم به وب
سلام
پایتون برای بک اند و جاواسکریپت برای فرانت اند گزینه های خوبی هستن اما اگر قبلا برنامه نویس نبودی به نظرم اول حل مسئله و فهمیدن مفاهیم مهندسی نرم افزار رو با پایتون تا یه حد خوبی پیش برو و بعد جاواسکریپت رو هم شروع کن به صورت حرفه ای یاد بگیر .
البته احتمالا لازم باشه که اوایل کارت هم زمان با یادگیری پایتون ، جاواسکریپت رو در حد مقدماتی بلد باشی که اگه لازم شد بتونی با جی کوئری و کارای ریز دیگه سر و کله بزنی اما تمرکز اصلیت رو پایتون باشه.
خیلی ممنون💚
دوستان چرا به PHP برای بک اشارهای نداشتن؟
علت خاصی داشت؟
php زبان برنامه نویسی خوبی نیست. مثل js مشکلات زیادی داره و به نظر من مهمترین مشکلش اینه که اصلا به درد پروژههای بزرگ نمیخوره. (programming in the large)
شاید مطالعهی این مطلب، مفید باشه.