با توجه به بازار داغ دنیای وب، پرونده این شماره ماهنامه شبکه را به مبحث جذاب توسعه وب اختصاص دادیم. در پرونده ویژه این شماره به جای آنکه تنها روی روندها و ابزارهای قدرتمند توسعه وب متمرکز شویم، تصمیم گرفتیم محتوایی ترکیبی آماده کنیم که ضمن پرداختن به آینده وب، اطلاعاتی در ارتباط با شرح وظایف توسعهدهندگان فرانتاند، بکاند و فولاستک ارائه کند. علاوه بر این، مقالهای در ارتباط با اشتباهات رایجی که توسعهدهندگان وب مرتکب میشوند آماده کردیم، مهمترین روندهای تاثیرگذار وب در سال 2021 را بررسی کردیم و به واکاوی این موضوع پرداختیم که چرا پیاچپی مهم است، SvelteJs چهارچوب قدرتمندی است و نودجیاس چه نقشی بر دنیای وب دارد.
فهرست مطالب ماهنامه شبکه 237
دیدگاه
- سرمقاله؛ مهارت هماهنگی با دیگران- قسمت دوم
- رابطه حاکمیت فناوری اطلاعات و حاکمیت شرکتی
- برقگرفتگی با کرونا
پرونده ویژه
- ورود هوشمندانه به دنیای توسعه وب
- بهترین چهارچوبهای توسعه وب در سال 2021
- توسعهدهنده فرانتاند، بکاند یا فولاستک، کدامیک آینده شغلی بهتری دارند؟
- این هشت اشتباه مهلک باعث میشوند شغل خود به عنوان یک توسعهدهنده را از دست بدهید
- چرا Node.JS نقش مهمی در دنیای توسعه وب دارد؟
- چرا SvelteJs ممکن است بهترین چهارچوب برای توسعه وب باشد؟
- چرا PHP بهترین زبان برنامهنویسی وب و Laravel بهترین چهارچوب برای این زبان است؟
- مهمترین روندهای تاثیرگذار بر دنیای توسعه وب در سال 2021
شاهراه اطلاعات
- آیا فناوری بلاکچین، توزیع بهموقع واکسنها را سادهتر میکند؟
- دنیای دوربین: بینایی خودکار
فناوری شبکه
- توسعه شبکههای مرکز داده به کدام سمت و سو خواهد رفت
- جایگاه پردازش ابری ایران کجاست؟
- مشاوران شبکه مورد تایید سیسکو چه روترهایی را برای کسبوکارها پیشنهاد میکنند؟
امنیت
- سـال 2021 شاهد ظهور چه تهدیدات سایبری خواهیم بود؟
عصر شبکه
- آیا شبکههای عصبی عمیق میتوانند جعبه سیاه مغز موجودات زنده باشند؟
- سگ آبی پرمشغله، ماشین تورینگ و برنامههای کامپیوتری فوقآهسته
کارگاه
- 10 رویداد مهم هوش مصنوعی و یادگیری ماشیـن در سال 2021
- چه تفاوتی بین پایگاه داده MongoDB و PostgreSQL وجود دارد؟
ورود هوشمندانه به دنیای توسعه وب
در چند سال گذشته شاهد انتشار کتابخانهها و چهارچوبهای جذاب، جدید و قدرتمندی نظیر ReactJS ، VueJS و Svelte بودیم که هر یک قابلیتهای قدرتمندی در زمینه ساخت برنامههای وبمحور ارائه کردند. اگر تازهواردی به دنیای برنامهنویسی وب (فرانتاند یا بکاند) هستید یا فردی هستید که سابقه چند ساله در این زمینه دارد، بهتر است در ارتباط با تغییر و تحولات توسعه وب در سال آینده پژوهشی انجام دهید. سرمایهگذاری درست روی مهارتهای کلیدی اجازه میدهند در زمان کوتاهتری به اهداف مدنظر خود برسید. گزارشهای منتشر شده توسط سایتهای کاریابی و آگهیهای استخدامی نشان میدهند که بازار کار توسعهدهندگان وب همچنان داغ است و به نظر نمیرسد در آینده تغییر خاصی در این زمینه اتفاق بیافتد.
درست است که طیف گستردهای از کاربران فضای مجازی از گوشیهای هوشمند و برنامههای اختصاصی برای ورود به شبکههای اجتماعی نظیر واتسآپ استفاده میکنند، اما این حرف به معنای آن نیست که دوران طراحی وبسایت به اتمام رسیده است. اگر عملکرد کسبوکارهای فعال در بازار ایران به ویژه در حوزه فناوریاطلاعات را بررسی کنید به خوبی متوجه میشوید که این شرکتها ترکیبی از توسعهدهندگان وب و توسعهدهندگان برنامههای موبایل را جذب کردهاند، زیرا کسبوکارها و بنگاههای اقتصادی برای نشان دادن خدمات یا محصولاتی که ارائه میکنند حداقل به یک وبسایت نیاز دارند و برخی دیگر در کنار وبسایت به برنامه اختصاصی خود نیاز دارند که در حالت کلی این برنامه بر مبنای وبسایت شرکت طراحی میشود.
موسسات پژوهشی فعال در حوزه وب پیشبینی کردهاند توسعهدهنده فرانتاند یکی از جذابترین مشاغل حوزه فناوریاطلاعات در سال 1400 است. اگر در گذشته، اصلیترین مهارتهایی که توسعهدهندگان فرانتاند برای پیادهسازی وبسایتهای تعاملی به آن نیاز داشتند، تسلط بر زبان نشانهگذاری ابرمتن (HTML)، جیکوئری و CSS بود، دیگر اینگونه نیست. امروزه توسعهدهندگان فرانتاند با اکوسیستمی بزرگ از ابزارها، کتابخانهها و چهارچوبهایی روبرو هستند که همواره در حال تغییر هستند و تنها راه تسلط بر آنها سرمایهگذاری مداوم در زمینه یادگیری شخصی است. در سال 2021، به احتمال زیاد بحثهای داغی میان جامعه توسعهدهندگان ReactJS فیسبوک و VueJS در جریان خواهد بود.
در حال حاضر ریاکت حدود 159000 هزار ستاره در گیتهاب دارد، در حالی كه تعداد ستارگان Vue در گیتهاب از مرز 175 هزار عدد عبور کرده و آنگولار با 67 هزار و 500 ستاره در مکان سوم قرار دارد. آمارهای ارائه شده توسط موتورهای جستوجو نشان میدهند که رقابت شدیدی میان این چهارچوبها در جریان است. بنابراین در سال 2021، توسعهدهندگان فرانتاندی که تصمیم دارند با چارچوبهای جاوااسکریپتی کار کنند به احتمال زیاد به سراغ ریاکت یا Vue میروند. البته چهارچوبها و کتابخانههای دیگر عملکردی کمتر از چهارچوبهای یاد شده ندارند. البته به عنوان یک قاعده کلی به این نکته دقت کنید که اگر در پروژههای بزرگ سازمانی کار میکنید، آنگولار گزینه شناخت شدهتری است و بیشتر سازمانهای بزرگ آنرا به رسمیت میشناسند. شواهد نشان میدهند که روندهای حاکم بر دنیای توسعه وب تغییرات جالبی خواهند شد و انتظار میرود این تغییرات با نوسان کم یا زیاد به دنیای توسعه وب در ایران وارد شود. بهطور مثال، سایتهای ایجاد شده به شکل ایستا (static-generated site) و برنامههای رندر شده سمت سرور دو روش مدرن در حوزه توسعه وب هستند که با استفاده از چهارچوبهای جاوااسکریپت به نیازهای کسبوکارها پاسخ میدهند. امروزه، بیشتر پروژهها بر مبنای رویکرد SSG پیادهسازی میشوند، حتا اگر به راهحلهای سمت سرور نیازی باشد، زیرا Next.JS یا NuxtJS ویژگیهای کاربردی شاخصی نظیر module bundlers، markdown support و برنامههای آزمایشی یکپارچه را ارائه میکنند. جاوااسکریپت و چهارچوبهای توسعه داده شده برای این زبان به شما اجازه میدهند برنامههای تک صفحهای (SPA)، سایتهای تولید شده به شکل ایستا و برنامههای پردازش شده سمت سرور (SSR) را پیادهسازی کنید.
درست است که برنامههای تک صفحهای با مشکلات مختلفی روبرو هستند که یکی از آنها بهینهسازی موتور جستوجو (SEO) است، اما شرکتها و توسعهدهندگان توانستهاند راهحلهایی برای این مشکلات ارائه کنند. نکته مهمی که به عنوان یک توسعهدهنده وب باید به آن دقت کنید، آشنایی با اصطلاحات و فناوریهای تخصصی این حوزه است. بهطور مثال، اصطلاح تولیدکننده وبسایت ایستا چه معنایی دارد؟
در سادهترین تعریف، اصطلاح فوق به نرمافزاری اشاره دارد که صفحات اچتیامال را از الگوها، مولفهها و یک منبع محتوای مشخص تولید میکند. در روش فوق چند فایل متنی و محتوا به سامانه داده میشود و موتور SSG یک وبسایت کامل در اختیار توسعه دهنده قرار میدهد. به بیان سادهتر، صفحات وبسایت در زمان ساخت ایجاد میشوند و محتوای آنها تغییر نمیکند، مگر آنکه محتوای جدید یا مولفهای به آن اضافه کنید و دومرتبه بازسازی کنید.
علاوه بر این اگر قصد داریم وبسایت با محتوای جدید بهروز شوند، باید وبسایت را دومرتبه ایجاد کنیم. نکته مهم دیگری که به عنوان یک توسعهدهنده باید به آن دقت کنید و متاسفانه برخی توسعهدهندگان اطلاع چندانی در مورد آن ندارند، پردازش سمت سرور است. اصطلاح فوق به فرآیند پردازش صفحات وب در سرور به جای مرورگر و ارائه نتایج برای مرورگر کلاینت اشاره دارد. به عبارت دقیقتر، یک صفحه کاملا رندر شده که شامل کدهای اچتیامال است برای کلاینت ارسال میشود. با اینحال، دنیای توسعه وب، محدود به فرانتاند نیست و بکاند طرف دیگر داستان است. بکاند تمرکزش بر سه مفهوم سرور، برنامه و بانکاطلاعاتی است. به همین دلیل یک توسعهدهنده بکاند باید تسلط کاملی بر زبانهای برنامهنویسی نظیر پایتون، روبی، پیاچپی یا نمونههای مشابه داشته باشد و درباره پروتکلها و مکانیزمهای انتقال بستهها و نحوه واکشی بهینه اطلاعات از بانکهای اطلاعاتی و انتقال آنها به وبسایت تجربه کافی داشته باشد. با توجه به بازار داغ دنیای وب، پرونده این شماره ماهنامه شبکه را به مبحث جذاب توسعه وب اختصاص دادیم.
در پرونده ویژه این شماره به جای آنکه تنها روی روندها و ابزارهای قدرتمند توسعه وب متمرکز شویم، تصمیم گرفتیم محتوایی ترکیبی آماده کنیم که ضمن پرداختن به آینده وب، اطلاعاتی در ارتباط با شرح وظایف توسعهدهندگان فرانتاند، بکاند و فولاستک ارائه کند. علاوه بر این، مقالهای در ارتباط با اشتباهات رایجی که توسعهدهندگان وب مرتکب میشوند آماده کردیم، مهمترین روندهای تاثیرگذار وب در سال 2021 را بررسی کردیم و به واکاوی این موضوع پرداختیم که چرا پیاچپی مهم است، SvelteJs چهارچوب قدرتمندی است و نودجیاس چه نقشی بر دنیای وب دارد.