رضا کیا
3 سال پیش توسط رضا کیا مطرح شد
4 پاسخ

شروع یادگیری برنامه نویسی وب

سلام
من میخوام تازه شروع کنم که برنامه نویسی وب رو یاد بگیرم، صفر صفر هستم ینی هیچی نمیدونم الان،
به صورت اصولی از کجا باید شروع کنم و به ترتیب چه چیزهایی رو باید یادبگیرم؟ ممنون میشم راهنماییم کنید.


ثبت پرسش جدید
مبینا ستاری
تخصص : توسعه دهنده بک اند
@mobinasattari7 3 سال پیش مطرح شد
0

درود بر شما.
حوزه خیلی خوبی رو انتخاب کردید. آدم وقتی صفرِ صفر باشه؛ اولش احساس خیلی گنگی داره. بالاخره همه باید از یه جایی شروع کنن دیگه! توصیه من برای شما اینه که اصلا زمان رو هدر ندید و تا آخرش تسلیم نشید. به قول یه جمله معروف؛ اگه قراره امتحانش کنی تا آخر مسیر برو!
بگذریم.
وب به دو بخش تقسیم میشه. فرانت اند و بک اند. اگه الان نمیدونید اینا چین اصلا نترسید اسم هاشون ممکنه عجیب و غریب و تازه باشه اما بشدت ساده است.
فرانت اند که یعنی سمت کاربر، بیشتر چیزهای گرافیکیه. شما الان به ظاهر این سایت یا هر سایت دیگه ای نگاه کنید؛ یه سری چیز گرافیکی میبیند. اِلمان ها موقعیت های خودشون رو دارن اصطلاحا میگم پوزیشن خودشون رو دارن. ما تعیین میکنیم که هر چیزی چه رنگی باشه، فاصله اش از المان های دیگه چقدر باشه، طول و ارتفاع و عرض و ایناش چقدر باشه. ما همه اینا و خیلی بیشتر از این رو با دو تا زبان نشانه گذاری کنترل میکنیم. دقت کنید که نشانه گذاری نه زبان برنامه نویسی. ما توی این زبان ها از چیزی به اسم محاسبات ریاضی یا دستورات شرطی استفاده نمیکنیم. کم لطفیه بگیم زبان نیستن، اما خیلی محسوب نمیشن.
اینجا ما یه زبان کلیدی داریم به اسم HTML. این در واقع شبیه اسکلت سایت میمونه. یه ساختمون که هنوز دیوار و اینا نداره و تصور کنید. هنوز دیوار نداره، گچ کاری نشده، رنگ نشده و .... ولی اسکلت داره. میلگرد داره، ستون داره و ... که همه اینا در کنار هم اسکلتش رو ساختن. این شد از HTML.
اما آیا اسکلت به تنهایی کاربردی داره؟ خیر! آدم میخواد جایی زندگی کنه که دیواراش رنگی باشن، خوشگل باشه، به دل آدم بشینه! سایت هم مثل خونه، هم میتونه دنج باشه هم دلگیر! ولی یه اسکلت خالی خیلی خیلی دلگیر تره! پس برای اینکه خونمون رو خوشگلاسیون کنیم، نیازمند یه زبان نشانه گذاری یا من بهش میگم خوشگل سازی دیگه، به نام CSS هستیم!
توی CSS، ما به کد های HTML میگیم که مثلا موقعیتشون کجا باشه. اگه یه نوشته داریم، فونتش چی باشه چه اندازه ای باشه چه رنگی باشه!
CSS اینا و خیلی بیشتر از این رو برای ما هندل میکنه. ناگفته نماند که CSS یسری فریمورک داره که کار ما رو ساده تر میکنه اما الان نیازی نیست بدونید.
میرسیم به مورد بعدی. جاوا اسکریپت، هم میتونه به خوشگلاسیون کمک کنه، همه به خیلی چیزای دیگه! بازم تو مثال ساختمون، اینو آسانسور در نظر بگیرید. آسانسور خیلی کار مارو راحت میکنه درسته؟ تا اینکه مجبور شیم با پله بالا بریم! اما هنوز تموم نشده! جاوا اسکریپت یا عامیانه ترش جی اس (JS) قابلیت های شگفت انگیزی داره! اما لازم نیست الان نگرانش باشید. اینا باید پله پله طی بشن و عجله ممنوعه!
جاوا اسکریپت هم یه سری فریمورک برای خودش داره، که بعدا بهش میرسید.
این شد از فرانت اند. سعی کردم به ساده ترین نحو توضیح بدم.
حالا بک اند چیه؟ بک اند یعنی زبان سمت سرور ما. ما اطلاعاتی که میخوایم رو باید توی یه جایی ذخیره کنیم به نام دیتا بیس. برای اینکه نیاز به یه زبان بک اند داریم. توی همون مثال آسانسور، فرض کنید میخواید برید به یه طبقه ای. از اونجایی که این آسانسور ها هم برنامه نویسی شدن، این باید بره این طبقه ای وارد کردید رو یه جایی ذخیره کنه. (ممکنه این مثال تو دنیای واقعی نباشه) حالا، شما هی میزنید طبقه 3. این یا حرکت نمیکنه میگه دوباره بزن، یا مثل میره گیر میکنه! میگه من یادم نیست کجا قرار بود برم! پس باید یه جایی رو براش مشخص کنیم که از طریق اون بره و این اطلاعات رو ذخیره کنه، بعد دوباره بره بخونتش. اینطوری دیگه یادش نمیره ما هم به تمام طبقاتی که رفته دسترسی داریم.
این ساده ترین تعریف بک اند که ممکنه هنوز هم پیچیده باشه. توی دنیای سایت هم به همین شکله. شما نیاز دارید که اطلاعات کاربر رو یه جا ذخیره کنید. این جا همون دیتا بیسه. برعکس زبان های فرانت اندی، تو بک اند حق انتخاب دارید. میتونید برید PHP, Django, NodeJs و ... . هر کدوم رو یاد بگیرید میتونید بک اند سایت رو بزنید. یه تفاوت هایی دارن اما نهایتا کار یکسانی انجام میدن. الان php محبوب تره. نظر من اینه که خودتون هم تحقیق کنید که بیشتر دستتون بیاد.
تا جایی که تونستم ساده گفتم. البته این لا به لا جزئیات بیشتری هست که توی یه پاسخ نمیشه گفت.
گام های یادگیری راکت رو هم بررسی کنید به کارتون میاد . از این لینک

راکت هم همه این دوره ها رو داره و جایی برای نگرانی نیست. برای جمعبندی میگم:

front-end: 
HTML
CSS
JS 
back-end:
php or
django or,
nodejs or....

اینا هر کدوم یه حوزه محسوب میشن و توسعه دهنده ها یا دولوپر های خودشون رو دارن، اما به کسی که هر دو رو بلد باشه میگن فول استگ دولوپر. اینا یه جورایی همه فن حریفن! D:
اگه مشکلی داشتید صدام بزنید.
اگه میخواید واردش بشید، نترسید و انجامش بدید. لازم نیست آماده باشید و قرار هم نیست که همین اول حرفه ای باشید! اشتباه کنید اما ادامه بدید! اگه واقعا به سمتش برید، هیچی قرار نیست جلو دار شما باشه!
موفق باشید


رضا کیا
@reza.kia16 3 سال پیش مطرح شد
0

خیلی خیلی جامع و کامل و شفاف توضیح دادید خیلی ممنون ازتون، فقط یه سوال میمونه الان واسم
من یه دوره برنامه نویسی با عنوان "توسعه گر" از یه شخصی به نام محسن مدهج خریداری کردم ، https://mohsenmodhej.com/
اینا به من گفتن که پیش نیاز یادگرفتن برنامه نویسی تحت وب یاد گرفتن اصول برنامه نویسی هست ، و حدود 30 ساعت ویدئو برای من فرستادن با عنوان های ، کدفرست، سی شارپ، شی گرا، دیتابیس، ویندوز اپلیکیشن، مهماری نرم افزار، اسکرام و....
الان من برای یاد گرفتن برنامه نویسی تحت وب به نظرتون نیازه که اینهارو قبلش یاد بگیرم؟ یا اینکه سرم کلاه رفته و وقتم رو تلف نکنم دیگه؟
تازه بعد این 30 ساعت آموزش میخوان وارد مبحث وب بشن ،
ممنون میشم در این مورد هم راهنمایی بفرمایید @mobinasattari7


مبینا ستاری
تخصص : توسعه دهنده بک اند
@mobinasattari7 3 سال پیش مطرح شد
0

درود دوباره.
من واقعا این آقا رو نمیشناسم و تا به حال هم ندیدم نه شنیدم، اما متاسفانه افراد سودجویی که فقط دنبال پول باشن خیلی خیلی زیادن سرخود منم کلاه رفته.
این خیلی کلاه برداریه! اصلا قصدم این نیست که بگم کار اشتباهی کردید، از این اشتباهات برای همه پیش میاد و باید هم پیش بیاد! وگرنه ممکنه یه مسیر غلط رو همینطوری ادامه بدیم!
اینایی که اینا گفتن کوچکترین ربطی به برنامه نویسی وب نداره! سی شارپ یه زبان جداست اصلا پروسه ی جدایی داره ما میتونیم تو بک اند ازش استفاده کنیم اما این دیگه ربطی به ویندوز اپلیکیشن و معماری نرم افزار و برنامه نویسی موبایل و ... اینا نداره! نه اینکه نداشته باشه اینا حوزه هایی کاملا تخصیصه و این خیلی غیر حرفه ای که چنین کاری انجام دادن ایشون!
برنامه نویسی موبایل یه حوزه تخصیصه، دسکتاپ همینطور، وب همینطور! هیچ کسی نمیتونه اول کاری بیاد این همه زبان یاد بده هیچ کس دیگه ای هم نمیتونه این همه زبان رو یاد بگیره! اونم اول کار!
این یه نوع بازاریابی خیلی غلطه و حرامیه! کسی که میخواد برنامه نویس موبایل بشه، بایدبره جاوا یا کاتلین یاد بگیره! لازم نیست بدونه معماری نرم افزار تو سی شارپ چه شکلیه! کار درست اینه که این دوره ها جدا جدا باشن نه اینکه همه رو بذاره تو یه پکیج و بگه که الان شما هم موبایل بلدی؛ هم دسکتاپ بلدی، هم توسعه دهنده وب! بفرمایید استخدام!
بعد پایینش چه چیزایی گفته! هم اپ دیجی کالا میسازیم، هم سایتشو! 10 روزه یاد میدیم، استخدام هم میکنیم، یه مدرکم میدیم که هم مایکروسافت، هم فیس بوک و پونصد تا غول فناوری دیگه قبولش دارن! فقط داره کاربر رو قانع میکنه که بخر حرف نداره! در صورتی که خیلی حرف داره!
اینا ممکنه بعدا به کارتون بیاد اما شما هدفتون رو مشخص کردید! دیگه چه نیازیه الان وقتتون رو روی ویندوز و اینا تلف کنید! فقط سردرگم میشد و احساس شکست میکنید!
بارها از این دوره ها دیدم خودم هم گیرشون افتادم. برای همه هم پیش میاد خودتون رو ناراحت نکنید. اون چند نفری هم که باهاشون مصاحبه کرده ممکنه جعلی باشه و اصلا ندونن اون دوره چیه! اون برنامه هایی هم که در تلوزیون داشته، صرفا برای جذب مخاطبه و افراد میتونن به شبکه ها پول بدن تا یه تایمی تو یه برنامه یه توضیحی چیزی بدن! امیدوارم این آقا متوجه باشه داره چیکار میکنه وگرنه عواقبی بدتر از تصادف در انتظارشه!


رضا کیا
@reza.kia16 3 سال پیش مطرح شد
0

ممنون من پیش از این هم از چندتا برنامه نویس سوال کرده بودم و همه همین نظر شمارو داشتن ، الان حداقلش اینه که میدونم مسیر رو اشتباه انتخاب کرده بودم و دیگه وقتم رو هدر نمیدم ، یک دنیا ممنون از شما که وقت گذاشتید . @mobinasattari7


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

ورود یا ثبت‌نام