<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های امین اکرمی</title><link>https://virgool.ir/feed/@amin.akrami</link><description>توسعه دهنده وب _ برنامه نویس و طراح وب سایت _ تولید محتوا</description><language>fa</language><pubDate>2026-11-11 04:59:27</pubDate><image><url>https://files.virgool.ir/upload/users/182900/avatar/zNhr4C.png</url><title>امین اکرمی</title><link>https://virgool.ir/@amin.akrami</link></image><item><title>هاست خوب چه ویژگی هایی دارد؟!</title><link>https://virgool.ir/@amin.akrami/هاست-خوب-چه-ویژگی-هایی-دارد-gkhhcctvexbb</link><description>اگر میخواهید در دنیای اینترنت به فعالیت بپردازید و تصمیم خود را برای راه اندازی یک وب سایت گرفته اید، در روند انجام کارهای خود قطعا به موضوع انتخاب هاست برمیخورید. در این مقاله  قصد داریم یک راهنمای انتخاب هاست مناسب برای سایت در اختیار شما قرار دهیم تا بتوانید با دید بازتری نسبت به خرید هاست اقدام کرده و سرمایه مالی و زمان خود را به صورت اصولی و روی موارد مهم متمرکز کنید. البته قبل از اینکه سراغ نحوه خرید هاست برویم بهتر است برای شما توضیح دهیم که host چیست تا درک بهتری از ادامه مطلب داشته باشید.هاست چیست؟بگذارید تا این قسمت را با تعریف سرور شروع کنیم: &#34;سرور مانند یک ابر کامپیوتر همیشه متصل به اینترنت می‌باشد که امکاناتی مانند پردازنده، فضای ذخیره سازی و RAM را در اختیار کاربران اینترنت قرار میدهد.&#34;از نظر لغوی کلمه hostبه معنی میزبان و بخشی از سرور شماست، به عبارت دیگر هر سرور به چندین قسمت تقسیم می‌شود که به هر کدام از آنها یک هاست میگویند. با گرفتن یک هاست برای وب سایت شما همه اطلاعات مورد نظر خود را روی یک host ذخیره سازی می کنید و همچنین این هاست منابعی مانند حافظه RAM، پردازنده و… را در اختیار شما قرار میدهد تا کاربران شما بتوانند از خدمات روی سایت شما استفاده کنند.نکات مهم قبل از انتخاب هاست:نکات مهم در انتخاب هاست پارامترهای هستند که باید قبل از از اینکه اقدام به خرید هاست کنید آن‌ها را به یاد داشته باشید و در زمان تصمیم‌گیری به صورت ویژه به آن‌ها توجه کنید. شاید قبل از انتخاب هاست از افراد زیادی بشنوید که هاست خوب چه ویژگی‌هایی دارد و پارامترهای زیادی به عنوان ویژگی‌های هاست خوب در اختیار شما قرار بگیرد. اما قبل از اینکه این پارامترها را در تصمیم گیری خود دخیل کنید، باید این مورد را به یاد داشته باشید که بسته به شرایط و وضعیت شما ممکن است ویژگی‌های خاصی که برای شما مناسب است نیز متفاوت باشد. در ادامه نکات مهم قبل انتخاب هاست را در اختیار شما قرار میدهیم.نیاز سنجی کنید!در مرحله اول باید مشخص کنید که نیازهای شما چیست تا هاستی انتخاب کنید که پاسخگوی نیاز‌تان باشد. برای اینکه بتوانید این مرحله را با خیال راحت پشت سر بگذارید باید به سوالات زیر پاسخ دهید.میزان بازدید از سایت شما چقدر است؟آیا ورژن PHP خاصی میخواهید؟نیازهای خاص شما که در زمان طراحی سایت باید در نظر داشته باشید چیست؟زبان برنامه نویسی سایت شما چیست؟ زبان برنامه نویسی سایت شما تعیین کننده نوع هاست شما خواهد بود، بهتر است که از قبل این موضوع را با شرکت ارائه دهنده خدمات هاستینگ خود در میان بگذارید و از آنها بخواهید در این زمینه شما را راهنمایی کنند.تخمین بزنید که حجم فایل‌ها و اطلاعات موجود بر روی سایت شما چقدر است. معمولاً شرکت‌های ارائه دهنده خدمات هاستینگ بسته‌های پیشنهادی مختلفی را پیش روی شما می‌گذارند که با توجه به نیازهایتان باید یکی از آنها را انتخاب کنید و زمانی که بدانید دقیقا به دنبال چه چیزی می‌گردید بی شک انتخاب دقیق‌تر و بهتری خواهید داشت. فقط در این زمینه باید به یاد داشته باشید که برای انتخاب بهتر شما نیاز به کمی آینده‌نگری خواهید داشت.هاست خوب چه ویژگی هایی دارد؟قبل از انتخاب دقت کنید که آیا host مورد نظر شما ویژگی های یک هاست خوب را دارد یا خیر؟ما در ادامه نکاتی را آورده ایم که می تواند در این تصمیم گیری به شما کمک کند.به uptime هاست دقت کنید!uptime یا پایداری هاست شما باید بالا باشد. زمان خرید هاست به یاد داشته باشید که استاندارد جهانی در زمینه آپ تایم, 99 درصد است. این یعنی در کل یک سال شما 362 روز سرویس هاستینگ با کیفیتی دارید و از طرفی احتمال قطع شدن مجموعا 72 ساعت در یک سال وجود دارد. این مورد را به یاد داشت باشید که هیچ هاستی 100 درصد پایداری ندارد و در صورتی این عدد را دیدید بدانید که صرفاً تبلیغات است.پشتیبانی از چند دامنهبهتر است هاست شما بتواند از چند دامنه پشتیبانی کند، به خصوص در صورتی که شما احتمال می‌دهید در آینده نیاز به راه اندازی دامنه‌های مختلف با محتوای متفاوت داشته باشید. در چنین حالتی گفته می‌شود که بهتر است هاست مورد نظر شما از &#34;ادان دامین&#34; پشتیبانی کند.قیمت هاست ملاک نیست!در زمان خرید به قیمت هاست توجه کنید. بی شک همه برای انتخاب هاست ابتدا به سراغ شرکت‌هایی می‌روند که قیمت کمتری را برای خدمات خود در نظر گرفته اند، اما نکته بسیار مهمی که در این قسمت باید به یاد داشته باشید این است که وقتی شما یک هاست یک ساله با قیمتی کمتر از 30 هزار تومان خریداری می‌کنید، هزینه های خدماتی مانند ارسال ایمیل یادآوری‌های مهم، پشتیبانی مشکلات، ارسال پیامک، پرداخت مالیات و پشتیبانی شیفت شب را در نظر نگرفته‌اند و نبود همین موارد باعث میشود که شما نه تنها با خرید این هاست سود نکنید، بلکه هزینه و زمان خود را هدر داده باشید. این مورد مهم را به یاد داشته باشید که قیمت پایین همیشه خوب نیست.ضمانت و پشتیبانیحتماً در زمان خرید این موضوع را به یاد داشته باشید که شرکت هاستینگ مورد نظر شما باید پشتیبانی 24 ساعته داشته باشد. همچنین در زمان خرید حتما در خصوص این که اگر در زمان کار کردن با هاست به مشکل برخوردید باید چطور آن را پیگیری کنید سوال بپرسید و از امکانات پشتیبانی شرکت مورد نظر خود با خبر شوید. بهتر است host را از شرکت‌هایی بخرید که حداقل تا 7 روز امکان بازگشت وجه را داشته باشید.به بحث Backup توجه کنید!بهتر است قبل از خرید از شرکت هاستینگ موردنظر خود بپرسید که از هاست شما بکاپ گیری به صورت منظم و طبق زمان بندی انجام میشود یا خیر. بکاپ گیری‌های انجام شده توسط شرکت هاستینگ می‌تواند در شرایطی که شما به دلیل نوشتن یک خط اشتباه از کد سایت خود به مشکل برخورده‌اید کمکتان کند. در ضمن بهتر است از جزئیات مربوط به بکاپ گیری شرکت هاستینگ خود با خبر شوید.محدودیت ها را بشناسید!قبل از خرید حتما از مسئول مربوطه در شرکت ارائه خدمات هاستینگ بپرسید که چه محدودیت‌هایی برای سرویس شما در نظر گرفته شده و در چه صورتی هاست شما بسته میشود. دانستن محدودیت‌های مربوط به سرویس بی شک به شما کمک میکند که بتوانید با آگاهی بیشتری کارهای خود را انجام دهید. در ضمن پرسیدن این سوال به شما کمک میکند که بفهمید شرکت مورد نظرتان تا چه حدی صادقانه و شفاف عمل میکند. اگر قصد خرید یک سرویس طولانی مدت دارید باید حتما بیشتر تحقیق کنید و با سخت گیری بیشتری انتخاب خود را انجام دهید.cPanel بهترین انتخاب قبل از خرید در مورد اینکه کنترل پنل هاست شما چیست پرس و جو کنید. کنترل پنل های زیادی مثل cpanel ،directAdmin ،Plesk و... وجود دارد اما بهتر است هاستی که انتخاب می‌کنید به سی پنل مجهز باشد تا بتوانید با آزادی بیشتری از آن استفاده کنید. استفاده از این کنترل پنل تا حد زیادی راحت است و از طرفی اگر در زمان کار کردن با آن به مشکلی برخوردید، منابع اطلاعاتی برای رفع عیب و برطرف کردن مشکلات به راحتی در اختیار شما خواهد بود.البته این نکته رو هم مدنظر قرار دهید که اگر نیاز دارید سایتتان را در ایران نگهداری و بر روی سرور های ایرانی میزبانی کنید نمی توانید به علت تحریم ها از این کنترل پنل استفاده کنید پس بهترین حالت استفاده از DirectAdmin به حساب می آید.همچنین قبل از خرید هاست از این موضوع اطمینان حاصل کنید که به راحتی می توانید روی هاست مورد نظر خود سیستم‌های مدیریت محتوا مانند وردپرس و جوملا را نصب کرده و از آنها استفاده کنید.سرعت لود مناسبیکی از تاثیرات مستقیمی که هاست روی وبسایتتان دارد، بحث سرعت لود سایت شماست.حتما از هاستی استفاده کنید که سرعت لود مناسبی داشته باشد و منابع مناسبی رو در اختیار وب سایت شما قرار دهد، فرض کنید یک شرکت هاستینگ بر روی یک سرور 500 سایت را نگهداری میکند، قطعا سرعت لود این وب سایت ها به نسبت سایت هایی که روی یک سرور دیگر با همان منابع که تنها 50 تا سایت را میزبانی میکند پایین تر خواهد بود.امنیت سرور هایکی از مسائل مهم دیگر این است که سایت شما حتما روی یک سرور امن باشد، چون اگر سایت شما روی سرور های نا امن نگهداری شود هر زمان احتمال دارد هک شود و اعتبار شما را زیر سوال ببرد . پس حتما بررسی کنید شرکتی که میخواهید هاست از آن تهیه کنید حتما از فایروال های خوبی استفاده کرده و موارد امنیتی را در حد مطلوبی در نظر گرفته باشد.قیمت هاست ها چقدر است؟به طوری کلی دو عامل اصلی تعیین قیمت یک هاست برای شما عبارتند از:سیاست‌هایی که شرکت مورد نظرتان در خصوص فروش در نظر دارد و قیمت تمام شده هاست.سیاست های شرکت ارائه دهنده خدمات هاستینگاولین موردی که در ارتباط با سیاست‌های شرکت هاست با قیمت نهایی یک هاست باید بدانید این است که شرکت‌های مختلف در بازه‌های زمانی مختلف ممکن است طرح های تخفیف مختلفی بگذارند و یا نحوه برخورد آنها با مشتریان وفادار خود متفاوت باشد.قیمت تمام شده هاستعوامل مختلفی مانند نوع سیستم عامل سرور، نوع سخت افزار سرور، نوع دیتابیس، نوع پنل مدیریتی هاست، سطح پشتیبانی، هزینه‌های مربوط به شرکت هاستینگ مورد نظر شما و... قیمت تمام شده سرویس هاست را تعیین می‌کنند.</description><category>امین اکرمی</category><author>امین اکرمی</author><pubDate>Wed, 13 May 2020 12:23:42 +0430</pubDate></item><item><title>معماری وب سایت</title><link>https://virgool.ir/@amin.akrami/معماری-وب-سایت-su6bsowj7nck</link><description>معماری وب سایتمعماری وب سایت:زمانی که کلمه‌ی معماری را می‌شنوید یا در مطلبی این کلمه را می‌خوانید اولین تصویری که در ذهن‌تان مجسم می‌کنید چیست؟اغلب زمانی که به این کلمه بر می‌خوریم یک ساختمان با یک اسکلت‌بندی را در ذهن مجسم می‌کنیم که در ادامه‌ی کار تبدیل به یک بنای زیبا با کاربردی خاص خود خواهد شد. باید بگوییم نه تنها ساختمان‌ها بلکه تمامی ابزار ها، وسایل و حتی وب سایت‌ها و وب اپلیکیشن‌ها نیز دارای یک معماری و ساختار هستند. در این مقاله قصد داریم به تشریح معماری وب سایت بپردازیم.فهرست محتوای این مقالهوب سایت‌ها و وب اپلیکیشن هاساختار یک وب سایت چگونه است؟در پشت پرده‌ی ارسال تا اجرای یک درخواست چه      اتفاقاتی می‌افتد؟وب سایت‌ها و وب اپلیکیشن ها:در این مقاله به دفعات از واژگان وب سایت و وب اپلیکیشن استفاده می‌کنیم. پس لازم دانستیم تا مختصری درباره‌ی این دو موضوع، مطالبی را ارائه دهیم:وب اپلیکیشن یا برنامه‌ی تحت وب، نرم افزاری است که با استفاده از مرورگر وب و از طریق شبکه‌های محلی یا اینترنت مورد استفاده قرار می‌گیرد. برای مثال، سرویس جیمیل یک وب اپلیکیشن است. وب اپلیکیشن‌ها برنامه‌هایی هستند که تنها از طریق وب قابل استفاده‌ هستند. در وب اپلیکیشن‌ها بیشتر به بحث عملکرد و کارکرد، توجه می‌شود و محتوایشان چندان اهمیت ندارد و معمولا پر محتوا نیستند. اما یک وب سایت فضایی از اینترنت است که یک یا چندین صفحه را در بر می‌گیرد. به بیانی دیگر مجموعه‌ای از صفحات وب متصل به هم که دارای یک صفحه‌ی اصلی هستند و بر روی یک سرور قرار دارند را وب سایت می‌گویند. وب سایت‌ها با هدف ارائه‌ی اطلاعات کاملی از یک شخص، سازمان، شرکت، کسب و کار و... به کاربران وب، طراحی می‌شوند و به طور ویژه بر محتوا تمرکز دارند.ساختار یک وب سایت چگونه است؟شاید تا به حال از خود پرسیده باشید که در پشت پرده‌ی یک وب سایت چه خبر است‌. اگر یک وب سایت را به طور کلی به دو بخش Client (کاربر) و Server (سرویس دهنده) تقسیم‌بندی کنیم، در این تقسیم‌بندی منظور از client، کاربری است که یک موضوع برای مثال GraphQL چیست؟ را در اینترنت جستجو می‌کند. برای پاسخ به این درخواست اینترنت تعدادی وب سایت را که حاوی محتوای مربوط به این درخواست هستند، برای مثال وب سایت www.virgool.io را در لیست نتایج جستجو به کاربر نشان می‌دهد.محتوای مقاله‌ی فوق یک داده است و در دنیای کامپیوتر برای ذخیره‌ی هر داده‌ای به یک فضا نیاز است به بیان دیگر هر وب سایت در اینترنت روی یک فضا ذخیره شده است که به این فضا هاست گفته می‌شود. و در اینجا سرور به کامپیوتری می‌گویند که تحت شبکه‌ی اینترنت، اطلاعات موجود در هاست را برای کاربر ارسال می‌کند. در نتیجه زمانی که ما روی لینک مقاله‌ای که در یک وب سایت قرار دارد کلیک می‌کنیم‌، در اصل ما از سرور آن وب سایت درخواست کرده‌ایم که مطلب را به ما نشان دهد و سرور نیز با ساز و کاری خاص، نتیجه را به ما نشان می‌دهد.در پشت پرده‌ی ارسال تا اجرای یک درخواست چه اتفاقاتی می‌افتد؟درباره‌ی ساز و کار خاص سرور صحبت کردیم و اما این ساز و کار چگونه است؟ فرض کنید ما موضوع چگونه رزومه ای بنویسیم که کارفرما نتواند نادیده بگیرد را در اینترنت سرچ می‌کنیم. درخواست ما واحدهای زیر را طی می‌کند. در ادامه به تشریح این واحدها می‌پردازیم:واحد اول  DNSمخفف Domain Name Server  DNS است. DNS سرور به یک پایگاه داده‌ی بزرگ می‌گویند که شامل مجموعه‌ای از دامنه‌ها و IPهای مرتبط است. زمانی که روی یک لینک از یک وب سایت کلیک می‌کنیم، نام آن وب سایت برای مثال www.virgool.io به یک آدرسIP مثلا 185.122.44.32در سمت سرور تبدیل می‌شود. DNS برای اینترنت مانند یک دفترچه تلفن است و همان‌طور که از روی نام یک شخص شماره‌ی تلفن همراه یا ثابت او را در دفترچه تلفن می‌یابیم، اینترنت نیز با استفاده از نام دامنه که همان نام وب سایت است، آدرسIP یا شماره‌ی متناظر با آن را می‌یابد.در معماری وب سایت وظیفه‌ی DNS‌ها چیست؟یکی از اصلی‌ترین کامپوننت‌ها در معماری وب سایتDNS  است. کامپوننت‌ها ابزار هایی هستندکه وظیفه‌ی ارسال و دریافت اطلاعات به اینترنت را به عهده دارند. در نتیجه اطلاعات، که در اینجا در قالب لینک مورد جستجو می‌باشد، توسط DNS به اینترنت ارسال می‌گردد.واحد دوم Load Balancerبه معنای متعادل کننده‌ی بار ترافیکی است. برای درک کار این سرویس، لازم است پیش نیاز‌هایی را به صورت خلاصه بیان کنیم:زمانی که یک وب اپلیکیشن یا وب سایت را روی هاست بارگذاری می‌کنیم، سایت ما آماده‌ی بازدید کاربران و بازدیدکنندگان است. با افزایش تعداد بازدیدکنندگان و کاربران، اصطلاحا ترافیک سایت ما افزایش می‌باید. هر هاست قادر به مدیریت کردن مقدار معینی ترافیک سایت است و اگر ترافیک سایت ما بیشتر از توان هاست ما باشد، وب سایت یا وب اپلیکیشن ما اصطلاحا Down می‌شود به این معنی که سرور ما قادر به سرویس دهی نیست. (البته لازم به ذکر است یک وب سایت امکان دارد بنا به دلایل مختلفی Down شود.)به توانایی یک سیستم یا اپلیکیشن برای مدیریت افزایش ترافیک بازدید کنندگان مقیاس پذیری گفته می‌شود .دو نوع مقیاس پذیری داریم، مقیاس پذیری افقی و مقیاس پذیری عمودی که با پرداختن به یکی از آن‌ها از down شدن وب سایت یا وب اپلیکیشن می‌توان جلوگیری کرد.مقیاس پذیری عمودی:در این روش با خرید یک هاست با سروری قوی‌تر به سادگی مشکل را حل می‌کنیم .مقیاس پذیری افقی:در این روش ما چندین سرور را خریداری می‌کنیم و به جای تمرکز کردن بر روی یک سرور، حجم داده و ترافیک را روی این سرور‌ها توزیع می‌کنیم. با این‌کار چون هر سرور وظیفه‌ی خاص خود را انجام می‌دهد، در نتیجه ترافیک بین این سرورها توزیع شده، توان مدیریت بالا می‌رود و وب سایت یا وب اپلیکیشن down نمی‌شود.در معماری وب سایت از بین دو روش فوق، از مقیاس پذیری افقی به دلیل مزیت هایی که دارد استفاده می‌شود. از Load Balancer در مقیاس پذیری افقی استفاده می‌شود که وظیفه دارد، در زمان ارسال درخواست توسط کاربر، تصمیم بگیرد از کدام سرور، نتیجه‌ی درخواست بارگذاری شود.واحد سوم Web Application Serversوب سرور‌ها نرم افزار هایی هستند که با برقراری ارتباط با مجموعه‌ای از زیر ساخت‌های موجود در سمت سرور مانند پایگاه داده، سرویس ذخیره سازی کش، صف مربوط به اصطلاحا Job ها، سرویس‌های جست و جو، میکرو سرویس‌ها و صف‌های داده یا داده‌های کاربران، اطلاعات درخواستی کاربران را پیدا کرده و به صورت صفحه‌های HTML به سمت مرورگر کاربران ارسال می‌کند.واحد چهارم Data Baseپیش‌تر درباره‌ی هاست صحبت کردیم و گفتیم فضایی است که وب سایت روی آن بارگذاری می‌شود. حال می‌خواهیم کمی تخصصی‌تر در این باره صحبت کنیم. در اصل وب سایت‌ها و وب اپلیکیشن‌ها در سمت سرور روی Data Base یا پایگاه داده ذخیره می‌شوند. این پایگاه داده، امکاناتی مانند: تعریف ساختار داده، وارد کردن داده‌ی جدید، جستجو در حجم زیادی از داده‌ها و پیدا کردن داده‌ی مد نظر، بروزرسانی و یا حذف داده‌ی موجود، انجام محاسبات روی کل داده‌ها و ... را برای برنامه نویس‌ها فراهم می‌کند.واحد پنجم Caching Serviceدر دنیای کامپیوتر Cache به حافظه‌ای گفته می‌شود که اطلاعات برای دسترسی سریع پردازشگر(CPU) در آن قرار می‌گیرند. در دنیای وب نیز وب سایت‌ها یا وب اپلیکیشن‌ها برای صرفه جویی در زمان بارگذاری  یک صفحه‌ی وب و همچنین صرفه جویی در مصرف پهنای باند از سرویسی به نام Cache استفاده می‌کنند که دارای دو تکنولوژی گسترده به نام‌های Redis و Memcache است.زمانی که برای اولین بار درخواست بارگذاری صفحه‌ای از یک وب سایت را به سمت سرور آن وب سایت ارسال می‌کنیم، وب سایت صفحه را برای ما از پایگاه داده، در قالب صفحه‌ی HTML بارگذاری می‌کند و در حافظه‌ی Cache خود ذخیره می‌کند‌. حال وقتی یک بار دیگر درخواست بارگذاری همان صفحه را از وب سایت داشته باشیم آن صفحه از حافظه‌ی Cache  وب سایت بارگذاری می‌شود.در ادامه برای درک بهتر این موضوع چند مثال را ذکر می‌کنیم:- گوگل نتایج جستجو از درخواست‌هایی مانند « کتاب اثر مرکب دارن هاردی »  یا «زندگی‌نامهٔ سعدی » را در حافظۀ کَش خود ذخیره می‌کند تا در هر بار درخواست کاربر، دوباره آن‌ها را جستجو نکند.- اینستاگرام بسیاری از اطلاعاتی را که یک کاربر در هنگام ورود به سیستم می‌بیند، مانند دیتای مربوط به یک پُست، صفحه‌ی پروفایل دوستان و غیره، را در حافظۀ کَش خود ذخیره می‌کند.- سون لرن  صفحه‌ی HTML مربوط به پایگاه دانش را در حافظۀ کَش خود ذخیره می‌کند تا در صورت نیاز برای بارگذاری  مجدد، صفحه‌ی مد نظر با سرعت بیشتری بارگذاری شود.واحد ششم Job Queue &amp; Serversدر اکثر وب اپلیکیشن‌ها باید Jobهایی به صورت غیر هم‌زمان و در پشت‌ صحنه انجام شوند و این جاب‌ها به طور مستقیم به پاسخ متناظر با درخواست کاربر مرتبط نیستند.وب اپلیکیشن‌ها برای انجام وظایف(job) ‌های خود به صورت غیر هم زمان از معماری‌های مختلفی استفاده می‌کنند که یکی از محبوب‌ترین آن‌ها اصطلاحاً Job Queue نامیده می‌شود که از دو کامپوننت تشکیل شده که یکی از کامپوننت‌ها صَفی است که وظایفی  را شامل می‌شود که باید اجرا شوند و کامپوننت دوم یک یا چند سرور هست که باید تَسک‌های موجود در صف را اجرا کنند که اصطلاحاً Worker نامیده می‌شوند.در ادامه، جاب سرورها هر یک از این وظیفه‌ها را پردازش کرده و Queue (صَف) مربوط به Job (تَسک یا عملیات مربوطه) را بررسی می‌کنند که اگر تَسکی موجود بود، آن را از صف خارج کرده و انجام دهند.واحد هفتم Full-Text Search Serviceاگر دقت کرده باشید زمانی که در گوگل، برای مثال عنوان انواع پایگاه داده را جستجو می‌کنیم، گوگل لیستی از مطالبی که یک یا چند کلمه در عنوان درخواست شده مشترک باشد را به ما نشان می‌دهد. به عکس زیر دقت کنید:در مثال فوق و در نتایجی که داریم عبارت پایگاه داده در تمامی موارد لیست مشترک است. سرویسی که چنین قابلیتی را در اختیار وب سایت‌ها یا وب اپلیکیشن هایی همچون گوگل قرار می‌دهد، Full-Text Search Service نام دارد. این سرویس از روشی به نام Inverted Index برای این‌کار، استفاده می‌کند.واحد هشتم Servicesهنگامی که یک وب سایت یا وب اپلیکیشن به اندازه‌ای مشخص رشد می‌کند و دارای تعداد قابل توجهی کاربر می‌شود، برای افزایش رضایت و همچنین کارایی سایت یا اپلیکیشن خود، احتیاج به سرویس‌های خاص خواهد داشت. نمونه‌ای از این سرویس‌ها به شرح زیر است :Account Serviceاین سرویس اطلاعات مربوط به یک کاربر برای مثال نام کاربری ، عکس پروفایل و ... را در تمامی کامپوننت‌های موجود در وب سایت در قالب یک بخش ذخیره می‌کند که با این‌کار ، مدیران وب سایت می‌توانند با بررسی رفتار کاربران در سایت، محتوای مورد علاقه‌ی آن‌ها را برایشان فراهم کنند، که باعث ایجاد یک تجربه‌ی کاربری بهتر با کاربران می‌شود.Payment Serviceاین سرویس در وب سایت‌های فروشگاهی کاربرد دارد که امکان پرداخت آنلاین را فراهم می‌کنند که این‌کار با برقراری ارتباط آنلاین با درگاه بانک‌ها صورت می‌گیرد.HTML → PDF Serviceبا استفاده از این سرویس امکانی فراهم می‌شود که بتوان از فایل‌های HTML خروجی PDF تهیه کرد که نمونه‌ی این سرویس در رزومه‌ساز‌های آنلاین دیده می‌شود.واحد نهم Dataدر دنیای امروز داده‌ها و اطلاعات نقش بسیار مهمی را در حیات یا مرگ شرکت‌ها و استارتاپ‌ها بازی می‌کنند. به همین دلیل زمانی که یک وب اپلیکیشین به اندازه‌ی مشخصی توسعه پیدا کرد، توسعه دهندگان آن وب اپلیکیشن، یک خط لوله داده (Pipeline) را اعمال می‌کنند تا با جمع آوری، تجزیه و تحلیل داده‌ها آن اپلیکیشن را توسعه دهند.یک خط لوله داده معمولی دارای سه مرحله ی زیر است:مرحله‌ی اول: اپلیکیشن، داده‌های مربوط به تعامل کاربر را به بخش Fire hose ارسال می‌کند. این داده‌ها در  Fire hose پردازش می‌شوند. در نتیجه‌ی این پردازش، داده‌ها یا به یک نوع داده‌ی دیگر تبدیل می‌شوند یا همان داده‌ی قبلی باقی می‌ماند که با یکسری اطلاعات حاصل پردازش، اندازه‌ی بزرگ‌تری دارند. پردازش این داده‌ها با دو تکنولوژی رایج AWS Kinesis و Kafka انجام می‌شود.مرحله‌ی دوم: داده‌های پردازش شده در یک حافظه‌ی ابری ذخیره می‌شوند. تکنولوژی AWS Kinesis دارای ابزار هایی است که پیکر بندی این داده‌های خام را در حافظه ی ابری (S3) بسیار ساده می‌کند.مرحله‌ی سوم: در نهایت این داده‌های پردازش شده را می‌توان در یک انبار داده‌ی بزرگ، اصطلاحا Warehouse بارگذاری کرد تا  تحلیلگران داده، داده‌ها را در آن، مورد بررسی و آنالیز قرار دهند. برای تجزیه و تحلیل داده اغلب شرکت‌ها و استارتاپ‌های بزرگ از فناوری به نام oracle استفاده می‌کنند. البته اگر مجموعه‌ی داده‌ها خیلی زیاد باشد، از یک تکنولوژی شبیه به NoSQL MapReduce Hadoop برای آنالیز داده‌ها استفاده می‌کنند.قدم دیگری که در نمودار معماری وب سایت دیده نمی‌شود بارگیری داده‌ها از پایگاه داده‌های عملیاتی برنامه و سرویس ها، در انبار داده است. به عنوان مثال در Storyblocks هر شب فیلم‌های VideoBlocks،AudioBlocks،Storyblocks، خدمات حساب و پایگاه‌های داده‌ی پورتال به Redshift بارگذاری می‌شود این امر با تعیین محل داده‌های اصلی تجارت در کنار داده‌های رویداد تعامل کاربر، به تحلیلگران، یک مجموعه داده‌ی جامع ارائه می‌دهد.واحد دهم Cloud Storageبه معنای فضای ذخیره سازی ابری می‌باشد. ذخیره‌سازی اطلاعات در سرورهای مبتنی بر ذخیره‌سازی ابری یک روش ساده و مقیاس‌پذیر برای ذخیره، دسترسی و به اشتراک‌گذاری اطلاعات در اینترنت است. با استفاده از سیستم ذخیره‌سازی ابری می‌توانیم هر آنچه که در سیستم محلی خود ذخیره کرده بودیم را در اختیار کاربران خود قرار دهیم.واحد یازدهم CDNمخففContent Delivery Network  می‌باشد که به معنای شبکه‌ی توزیع محتوا است. در واقع CDN بیانگر شبکه‌ی عظیمی از سرور هایی می‌باشد که در نقاط مختلف دنیا وجود دارد واین سرور‌ها در بخش‌های مختلف جغرافیایی پخش شده اند.محتوای وبسایت‌ها با به‌کارگیری شبکه‌ی توزیع محتوا و با توجه به موقعیت جغرافیایی کاربران از طریق نزدیک‌ترین شبکه به کاربران ارائه داده می‌شود. این شبکه‌ها در سرعت بخشیدن به تحویل محتوا و پهنای باند در وب سایت‌های بزرگ و جهانی مثل یاهو، گوگل، فیس بوک و… تاثیر بسزایی دارند.به عنوان مثال فرض کنید که سرور اصلی وب سایت سون لرن در مشهد قرار دارد و یک سرور میانی در تهران قراردارد و ما از زنجان قصد داریم تا محتوای وب سایت سون لرن را مشاهده کنیم، در اینجا اطلاعات سایت از سرور میانی واقع در تهران به دلیل اینکه از لحاظ جغرافیایی نزدیک‌تر از مشهد می‌باشد، بارگذاری می‌شود.جمع بندی:زمانی که ما یک وب سایت را در گوگل جستجو می‌کنیم گوگل با استفاده از یک روش Full-Text Search Service وب سایت هایی که دارای محتوای مورد نظر ما هستند را برای ما لیست می‌کند. پس از انتخاب وب سایت مورد نظر، آدرس دامنه‌ی سایت به یک آدرس IP متناظر می‌شود. در این مرحله، در سمت سرور، Load Balencer تصمیم گیری می‌کند که کدام سرور سایت، اطلاعات درخواستی را ارسال کند. پس از تعیین، سرور حافظه‌ی cash service را چک می‌کند. اگر اطلاعات درخواستی در این حافظه موجود بود، ارسال درخواست وارد مرحله‌ی بعد می‌شود و اگر موجود نبود اطلاعات را از پایگاه داده بارگذاری می‌کند و سپس بعد از طی یکسری مراحل اطلاعات به Fire hose برای پردازش ارسال می‌شود. در مرحله‌ی بعد داده‌ها برای آنالیز به Data warehouse منتقل شده و یک کپی از داده‌ها نیز به فضای ذخیره سازی ابری یا همان  Cloud storage فرستاده می‌شود. در نهایت داده به شبکه‌ی CDN جهت توزیع فرستاده می‌شود و داده از طریق این شبکه به مرورگر کاربر به صورت صفحه‌ی HTML ارسال شده و مرورگر این کد‌ها را رندر کرده به کاربر نشان می‌دهد.دراین مقاله به معماری وب سایت در سمت سرور پرداختیم و مراحل ارسال یک در خواست تا دریافت آن را تشریح کردیم. برای درک بیشتر مفاهیم معماری وب در سمت سرور باید با ساز و کار شبکه‌های کامپیوتری آشنایی داشته باشیم. در این مقاله تلاش ما بر این بوده است که مفاهیم را به گونه‌‌ای بیان کنیم که برای کسانی که با شبکه آشنایی ندارند نیز قابل درک باشد. مراحل فوق برای کاربر قابل مشاهده نیست. به این بخش سایت که کاربر قادر به مشاهده ی آن نیست، در برنامه نویسی اصطلاحا Back-end می‌گویند و به بخشی که برای کاربر قابل مشاهده است، در برنامه نویسی اصطلاحا Front-end می‌گویند.</description><category>امین اکرمی</category><author>امین اکرمی</author><pubDate>Fri, 08 May 2020 18:44:01 +0430</pubDate></item><item><title>5 گام استاندارد در طراحی وب سایت</title><link>https://virgool.ir/@amin.akrami/5-گام-استاندارد-در-طراحی-وب-سایت-zangiiyhdehv</link><description>بسیاری از افراد که تازه کار طراحی سایت رو شروع کردند یا میخوان شروع کنن از خودشون سوال می‌کنند که برای طراحی سایت از کجا باید شروع کنم، مراحل یادگیری طراحی سایت چیست؟ و چطور باید در این مسیر قدم بگذارم؟ در واقع دغدغه اصلی کسانی که می‌خواهند طراحی سایت را شروع کنند نداشتن نقشه راه و ندانستن مسیر است. خیلی از طراحان وب در شروع کار، راهشان را با آزمون و خطا پیدا می‌کنند که این مورد باعث می‌شود زمان زیادی را از دست دهند و در طول مسیر سردرگم شوند. ما در این مقاله بررسی می‌کنیم که یک طراح سایت باید چه چیزهایی را یاد بگیرد و از چه ابزارهایی استفاده کند تا به یک متخصص در این زمینه تبدیل شود.مراحل طراحی وب سایتهمون طور که میدونی هر کاری یک سری مراحل انجام داره یعنی یکسری کارها رو باید پله به پله انجام بدی تا به نتیجه برسی. مثلا اول نمیتونی بری سراغ کد نویسی سرورساید بری  باید اول کار قالب رو انجام بدی. حالا بریم سراغ پله هایی که یکی یکی باید اونها رو انجام بدی.1. طرح دستیخوب این مرحله از اهمیت بسیار بسیار بالایی برخورداره چرا که مشخص میکنه چیدمان سایتت باید چه شکلی باشه. مثلا menu  کجا قرار بگیره . لیست اخبار یا مطالب یا محصولات و ... و نهایتا چیدمان سایت رو میتونی مشخص کنی . خوب 2 راه برای اسکچ دستی هست.راه اول: اینکه همونجا زمان عقد قراردادت یک کاغذ برداری و اسکچ رو بکشی و همونجا به نتیجه برسی. خوب این یک مقدار کلاس کارت رو ممکنه پایین بیاره چون یا وقت زیادی رو ازت میگیره یا اینکه طرح نهایی خیلی جذاب و زیبا نخواهد شد.راه دوم: اینه که با یکی از نرم افزار ها مثل  Photoshop یا وب سایت هایی مثل wireframe یا ... زمانی که فرصت داری بشینی و مثلا  20 تا 30 طرح بزنی و کارفرما رو مجاب کنی که یکی از اونها رو انتخاب کنه.این مرحله واقعا مهمه و لطفا اگر میخوای مشکلی واست پیش نیاد حتما این مرحله رو انجام بده.برای این کار میتونید از یکی از این ابزار ها استفاده کنید:pidoco.comgomockingbird.combalsamiq.comlairbuilder.comiplotz.comهرچند تمام طراح های وب سایت این تجربه رو دارن که کارفرما ها حتی نظری رو که تایید کردن و امضا هم کردن باز تغییر میدن و باعث میشن یه طراح سایت کارش عقب بیفته و کلی تغییر مجدد اعمال کنه ، حالا شما فرض کن این مرحله رو حذف کنیم و انتظار داشته باشیم وب سایتی که در نهایت ایجاد میشه همون چیزی باشه که کارفرما اونو میخواد ! به نظر شما چند درصد به نتیجه میرسه و شما میتونید ذهن کارفرما رو بخونید و دقیقا همون وب سایتی که میخواد رو بهش بدید ؟2. طرح گرافیکیدر مراحل طراحی سایت، مرحله لذت بخش همین مرحلس. خوب نیازه که اون طرح دستی خودتو تبدیل کنی به قالب گرافیکی با یکی از نرم افزار های Photoshop یا fireworks لازمه توی این طرح خودت خیلی حساس باشی و رنگ ها و المان رو با حس گرافیکی خوبی در کنار هم بچینی چون این طرح اولین برخورد کارفرما با  وب سایتش خواهد بود. لازمه خیلی جذاب و زیبا باشه.بهت پیشنهاد میکنم توی این کار یا خیلی تمرین کنی یا اینکه حتما با یه گرافیست خوب همکاری کنی که طرح گرافیکی وب سایت خوب از آب در بیاد.مهمه که همه ابعاد و ... دقیق بشه. در انتهای این بخش یعنی بعد از نهایی شدن طرح گرافیکی صفحه اصلی سایت لازمه با کارفرما جلسه بذاری  و این قالب رو بهش نشون بدی تا اینکه اگر هم ویرایشی داره انجام بدی و نهایتا از کارفرما امضا بگیری که فایل نهایی کاملا این شکلی خواهد شد.مرحله بعدی که در واقع زیر مجموعه همین مرحله هست اینه که برای بخش های اصلی دیگه هم فایل گرافیکی تهیه کنی حالا بعضی از دوستان اون فایل رو به مشتری نشون میدن و بعضی ها برای راحتی  کار خودشون psd  رو میزنن.البته توی این مرحله لازمه که خیلی طرح ببینید و برای همین کار میتونید از وب سایت هایی مثل :themeforest.nettemplatemonster.comfree-css.comwix.comdreamtemplate.comاستفاده کنید تا بتونید طرحی که ایجاد می کنید علاوه بر اینکه مورد پسند کارفرما شما هست وب سایتی به روز و زیبا باشه، ضمنا لازمه توی این مرحله کار طراحی قالب وب سایت با فتوشاپ رو هم خوب بلد باشید و بتونید یه طرح درجه یک با فتوشاپ بزنید.3. کد نویسی قالب کلاینت سایددر مراحل طراحی سایت این مرحله نیاز به یک متخصص دارد توی این مرحله وظیفه شما به عنوان یک طراح سایت اینه که با استفاده از JavaScript ، CSS ، HTML و Jquery به طور کامل قالب سایت رو بر اساس طرح گرافیکی تائید شده کارفرما پیاده کنی و هیچ تفاوتی با طرح گرافیکی از لحاظ  ابعاد و رنگ و افکت و ... نداشته باشه.باز هم میتونی توی این مرحله قالب رو به کارفرما نشون بدی یا اینکه کارت رو ادامه بدی اما حتما بعد از پیاده سازی کامل قالب جلسه ای با کارفرما بذار و تائیدیه قالب سایت رو ازش بگیر. لازمه توی این مرحله اصول سئو قالب رو رعایت کنی. خوب از لحاظ کاری هم بهتره که توی این بخش خیلی ماهر باشید و وب سایتی کاملا استاندارد و زیبا با استفاده از آخرین تکنولوژی ها ایجاد کنید تا نمونه کارهای خوبی داشته باشید و بعد از گذشت یه مدت خود این کارهای خوب و زیبا برای شما جذب مشتری بکنه و کمتر نیاز باشه برای گرفتن کار جدید هزینه های تبلیغات و ... بدید . به نظر من هر کار خوب میتونه واسه شما حکم یک بازاریاب خوب رو داشته باشه .4. برنامه نویسی سرور سایدپیاده سازی بخش سرور ساید سایت هست که باید با یکی از زبانهای سرور ساید مثل php , Asp  یا ... انجام بشه این مرحله هم درسته که توسط کاربر قابل دیدن نیست و فقط صحت عملکرد اون هست که برای کاربران مهمه اما اصل کار شماست و حتما باید توی این مرحله کار رو خیلی دقیق و بدون نقص انجام بدی و همه جوانب کار رو در نظر بگیری؛ در واقع مهمترین مرحله در 5 مرحله طراحی سایت همینه. توی این بخش لازمه واقعا مهارت داشته باشی و کاملا به روز باشید و کارتون حرفه ای باشه . مثلا حتما برنامه نویسی رو با مدل MVC و ترجیحا یک فریم ورک مناسب کاملا حرفه ای یاد بگیر چرا که سهولت کار و امنیت وب سایت و... به همین بخش بستگی داره .البته میتونید توی این مرحله از سیستم های مدیریت محتوا رایگان مثل وردپرس و جوملا و ... استفاده کنید تا کار سریعتر پیش بره البته حتما به این نکته توجه داشته باشید که اصولا نمیتونه خیلی گرون باشه مگر در شرایط خاص و مزایا و معایب خودش رو داره .5. کنترل کیفیتبالاخره آخرین مرحله در طراحی سایت که یکی از مهمترین مرحله های طراحی سایت همین مرحله کنترل کیفیت هست که باید خودت رو در جای کارفرما و مشتری قرار بدی و همه بخش های سایت رو تست کن و اگر ایراد یا باگی توی کارت وجود داره خودت اونو پیدا کنی . این مرحله خیلی خیلی در نظر کارفرما نسبت به شما تاثیر داره. حتما انجامش بده و حتی از تعدادی از دوستات هم بخواه که این کار رو انجام بدن و مراحل کار رو به عنوان یک مشتری و user تست کنن.نتیجه گیریخوب در پایان بدون سختی زیاد شما یک وب سایت ایجاد کردی که توی این پروسه نه خودت خیلی اذیت شدی و نه کارفرما.می خوام بهت تضمین بدم که هر راهی به جز این مسیر هم برای خودش به عنوان طراح سایت هم برای کارفرما این مسیر خیلی اذیت کننده و مخرب خواهد شد.</description><category>امین اکرمی</category><author>امین اکرمی</author><pubDate>Thu, 30 Apr 2020 10:25:45 +0430</pubDate></item><item><title>فرانت اند کار کیست و چه کار هایی باید انجام دهد؟</title><link>https://virgool.ir/@amin.akrami/فرانت-اند-کار-کیست-و-چه-کار-هایی-باید-انجام-دهد-e8txytq5cyml</link><description>فرانت اند یک عبارت در دنیای برنامه نویسی وب می باشد و اکثر افراد متخصص و برنامه نویسی که قرار است با یکدیگر کار کنند زمانی که همدیگر را ملاقات می کنند از هم می‌پرسند که شما یک فرانت اند کار هستید و یا بک اند کار؟ ما در این مقاله قصد داریم به موضوع fron-end و معرفی ویژگی های آن بپردازیم پس در صورتی که می خواهید اطلاعات مناسبی در این زمینه کسب کنید با ما در ادامه مقاله همراه باشید:معنی و مفهوم فرانت اند:فرانت اند به قسمت نرم افزاری قسمتی که در یک وب سایت توسط کاربران و بازدیدکنندگان قابل مشاهده می باشد گفته می شود. در واقع با استفاده از کد هایی که برای کاربران و بازدیدکنندگان حالت غیر قابل فهم و درک دارند به یک سری طراحی و در قالب بسیار جذاب گرافیکی و چشم‌نواز تبدیل شده و به این طریق به نمایش در می آیند در نتیجه کاربران می توانند به راحتی از قسمتهای مختلف یک سایت نهایت استفاده و لذت را ببرند.در حالت کلی تمامی پارامترها مانند صداها، فایل های تصویری و ویدیویی، عکس‌ها، داده‌ها و غیره که توسط کاربر قابل تماشا می باشند در قسمت فرانت اند به دوقسمت اصلی طبقه بندی می گردد که اولین آنها در زمینه طراحی وب و دیگری توسعه رابطه کاربری می باشد.در قسمت طراحی وب یک فرانت اند کار با استفاده از نرم افزارهای پیشرفته در زمینه گرافیک مانند فتوشاپ یا دیگر نرم افزارها ظاهر کلی سایت را طراحی می‌کند. در عین حال در قسمت توسعه رابطه کاربری فرانت اند کار در هر سایت را با استفاده از زبان نشانه گذاری CSS , HTML و زبان برنامه نویسی جاوا اسکریپت و غیره به صورت تمام و کمال پیاده‌سازی می نماید. معمولاً زبان برنامه نویسی که یک فرانت اند کار از آن بهره می‌برد زبان برنامه نویسی Client Sideمی باشد.با توجه به این موضوع کدهایی که در برنامه نویسی فرانت اند توسط فرانت اند کار نوشته می‌شود در مرورگر کاربر و بازدید کنندگان به صورت تمام و کمال پردازش و در نهایت اجرا می گردد یعنی کاربر به تمامی کدها دسترسی داشته و این امکان را دارد تا آنها را مشاهده نماید. همچنین باید بگویم این موضوع با تجربه کاربری رابطه مستقیم داشته و بر روی آن تاثیر بسیار زیادی می‌گذارد و همچنین با این موضوع نیز دارای رابطه تنگاتنگی می باشد.مهم ترین مهارت های یک فرانت اند کاردر حالت کلی برای آن که یک فرانت اند کار بتواند به عنوان یک فرانت اند کار با تجربه و حرفه ای فعالیت نماید باید یکسری مهارت‌ها و ویژگی ها را داشته باشیم که در ادامه به آن‌ها خواهیم پرداخت. یک فرانت اند کار حرفه‌ای باید به خوبی با زبان‌های برنامه‌نویسی مختلف از جمله زبان برنامه نویسی جی کوئری و جاوا اسکریپت و زبان نشانه گذاری css  و html آشنایی کامل داشته باشد و بتواند با آنها به بهترین نحو ممکن کار کند. این شخص باید به خوبی با کتابخانه های css مثل فریمورک بوت استرپ آشنایی داشته باشد و در مورد آن ها اطلاعات مناسبی داشته باشد در صورت لزوم بتواند از آنها نهایت استفاده را ببرد.دیگر مهارت هایی که این شخص باید داشته باشد این موضوع می باشد که به خوبی با زبان زبان نشانه گذاری css کار کرده و با آن آشنایی داشته باشد و بتواند نسبت به طراحی وب سایت رسپانسیو و واکنش گرا اقدام نموده و از پس طراحی چنین سایت‌هایی به خوبی برآید و با نرم افزارهای گرافیکی نظیر فتوشاپ و ایلیستریتور به خوبی آشنایی داشته باشد و همچنین توانایی را داشته باشد که در حین کار به خوبی تست و آزمون انجام داده و در نتیجه خطای احتمالی را به بهترین نحو ممکن را در کمترین زمان برطرف نمایند.برنامه نویس فرانت اند با برنامه نویس رابط کاربری uiچه تفاوتی دارد؟اگر بخواهیم به موضوع برنامه نویسی برای یک سایت به صورت دقیق و اصولی نگاه کنیم با دو موضوع مختلف موجب می شود که یکی از آنها فرانت اند کار بوده و دیگری طراح رابط کاربری می باشد. کار فرانت اند کار و همچنین طراح رابط کاربری کاملا از یکدیگر متفاوت بوده طراح رابط کاربری شناخته می شود به هیچ وجه برنامه نویسی و کد نویسی انجام نداده و خودش را در این زمینه دخالت می دهد بلکه در عین حال بیشتر در زمینه طراحی گرافیکی سایت به کارگران ابزار فتوشاپ و ایلاستریتور فعال بوده سعی می‌کند تا بتواند شکل ظاهری و رابط کاربری سایت را به بهترین نحو ممکن طراحی نموده و بعد از آن که این کار را انجام داد، فایل نهایی طراحی سایت را در اختیار برنامه نویس فرانت اند قرار داده و کار را به او بسپارد.در حالت کلی می توان اینطور بیان کرد که طراح رابط کاربری به عنوان توسعه‌دهنده فرانت اند شناخته می‌شود. در نهایت می توان اینطور بیان کرد که یک برنامه نویس فرانت اند وظیفه دارد تا کدنویسی صفحات مختلف یک سایت را طراحی کرده و در عین حال طراحی رابط کاربری با استفاده از نرم افزارهای گرافیکی و بدون احتیاج به کد ها قالب کلی سایت را طراحی کرده و در اختیار برنامه نویس فرانت اند قرار می دهد.وظایف طراح فرانت اند:طراح front-end باید بسیار خلاق و مبتکر و موقعیت سنج باشد و در زمینه کاری خود طرح های کاربر پسند و چشم نواز و جذابی را ارائه نمایند تا در نتیجه بتوان یک سایت و اپلیکیشن را به بهترین نحو ممکن طراحی بنماید یک طراح فرانت اند موفق کسی است که بتواند با سرعت استانداردهای ظاهری و همچنین با توجه به رابط کاربری و تجربه کاربری مناسب یک سایت بسیار چشم‌نواز و کاربر پسند را ایجاد نماید.همچنین یک طراح باید به خوبی بتواند نیازهای کاربران و بازدیدکنندگان سایت و همچنین درخواست های مدیر سایت را آنالیز و تجزیه و تحلیل کرده تا در نتیجه رابط کاربری یک سایت و یا اپلیکیشن را به گونه‌ای طراحی نماید که زمانی که کاربر با آن سایت و اپلیکیشن روبرو شده و از آن استفاده می نماید تجربه ای بسیار مناسب و منحصر به فرد را داشته و در نتیجه استفاده از آن سایت و اپلیکیشن را به افراد دیگر پیشنهاد نماید.همچنین یک روش کار با استفاده از دانش برنامه نویسی خود باید طراحی سایت را بدون هیچ مشکلی انجام داده و در صورتی که مشکلی در زمینه برنامه نویسی و کدنویسی وجود آمد این دانش را داشته باشد که در کمترین زمان ممکن مشکل به وجود آمده را برطرف نماید.</description><category>امین اکرمی</category><author>امین اکرمی</author><pubDate>Wed, 29 Apr 2020 12:33:50 +0430</pubDate></item><item><title>برنامه‌نویسی را با این 11 سایت، مجانی یاد بگیرید!!!</title><link>https://virgool.ir/coderlife/برنامهنویسی-را-با-این-11-سایت-مجانی-یاد-بگیرید-oepjezk6eyyb</link><description>معرفی بهترین سایت های آموزش رایگانهدف ما جمع آوری و معرفی سایت های معروف برنامه نویسی وبهترین سایت های آموزشی فارسی زبان به صورت رایگان برای شما عزیزان است.بعد از انتخاب زبان برنامه نویسی مورد علاقه خود و مشخص شدن راه برنامه نویسی، یکی دیگر از کارها، برنامه ریزی دقیق و پرس وجو برای سایت ها ویا مراکز آموزشی معتبر است.اغلب به دنبال مراکز و یا سایت هایی هستیم که فهم مبحث به صورت واضح وقابل درک باشد ما تلاش کرده ایم که با تحقیقات خود از سایت های آموزش برنامه نویسی معتبر از جمله سایت های ایرانی وخارجی، این سایت ها رابه  شما دوستان معرفی کنیم تاباتوجه به نیازتان از آموزش آنها بهره ببرید.آکادمی آنلاین درسمن:این سایت باهدف جمع آوری تمام دروس و همچنین برگزاری دوره های کاربردی برای ورود به بازارکار شکل گرفت. آموزش‌های ویژوال استودیو، مایکروسافت آژور، مایکروسافت آفیس و تمام دوره هایی که توسط شرکت مایکروسافت ارائه و پشتیبانی میشوند.جهت‌گیری با این استاندارد‌ها باعث می‌شود که تمامی آموزش‌ها با نگرش مایکروسافت صورت گیرد و درنتیجه، دانشجوی دوره‌های درسمن میتواند برای دریافت گواهینامه‌های بین المللی مایکروسافت در زمینه‌های مختلف مانند MCSA، MCSE و… آمادگی‌های لازم را کسب کند.تمامی پیش‌نیاز‌ها و هر آنچه که در این مسیر لازم خواهد بود، از صفر تا صد در درسمن ارائه خواهد شد.www.darsman.comسکان آکادمی:سکان آکادمی در 20 شهریورماه سال 1392 کارخود را باهدف ارائه اخبار مرتبط در زمینه های برنامه نویسی ، طراحی سایت، اپن سورس ولینوکس، سئو، هوش مصنوعی،استارتاپ و.... برای یادگیری ازبچه ها گرفته تابزرگسالان، دانشجویان رشته های مرتبط وغیر مرتبط برنامه نویسی ایجاد کرده ، و خدمات این سایت به صورت رایگان دراختیار علاقه مندان قرار گرفته است. دراین آکادمی آموزش آنلاین برنامه نویسی علاوه برآموزش های مرتبط با برنامه نویسی و طراحی سایت خدمات مرتبط با برنامه نویسی نیز ارائه کرده که میتوان به سرویس جابز که فضایی برای کارفرمایان و فریلنسرهای حوزه فناوری است اشاره کرد.این سایت بخشی ازسایت پربازدید خود را به آموزش زبان های برنامه نویسی جاوا و آموزش انروید قرار داده است.www.sokanacademy.comفرادرس:این سایت در سال 1387 با ارائه آموزش های مرتبط با هوش مصنوعی و برنامه نویسی درحوزه سایت های آموزش برنامه نویسی ایجاد شد. پس ازمدتی درسال1390 این سایت به عنوان بهترین پروژه آنلاین آموزشی ایران به انتخاب کاربران درچهارمین جشنواره وب ایران معرفی شد ورفته رفته به بزرگترین سایت دانشگاه آنلاین در حوزه دروس دانشگاهی تبدیل شد. دراین وب سایت بخشی از آموزش ها به صورت رایگان در اختیار کاربران قرارداده میشود، اما برای دریافت کامل آموزش ها باید آموزش خریداری شود.www.faradars.orgروکسواین سایت در ابتدا با انتشار مطالب آموزشی در حوزه‌های برنامه‌نویسی و طراحی گرافیک به عنوان یک سایت آموزش آنلاین در ایران باهدف توسعه منابع فارسی و ارتقاء سطح دانش ایرانیان شروع به کار کرد. آموزش این وب سایت این گونه است که با پرسش و پاسخ، به نیاز کاربران خود پاسخ میدهد به این دلیل این وب سایت به بزرگترین مرجع پرسش و پاسخ برنامه نویسان وگرافیست های ایرانی تبدیل شد. دراین وب سایت همگان میتوانند سوال بپرسند ویا میتوانند به سوالات پرسیده شده پاسخ دهند و ازمیان پاسخ ها، بهترین و دقیق ترین پاسخ، توسط پرسشگرمشخص میشود ودر صدر جواب ها نمایش داده میشود.www.roxo.irراکت:سایت راکت در بهارسال 1394 با این باور که کاربران لایق بهترین ها هستند و باید بهترین و به روزترین فیلم های آموزشی ومقالات دراختیار آنها قرار بگیرد تا بتوانند به سرعت پیشرفت کنند و جزء بهترین هادرصنعت طراحی و برنامه نویسی وب شوند، به سایت های آموزش برنامه نویسی پیوست. به همین دلیل این سایت تلاش کرده تایک مرجع آموزش آنلاین برای زبان ها و ابزارهای برنامه نویسی مربوط به موبایل شود.www.roocket.irسون لرن:این سایت توسط لقمان آوند دانشجوی دکترای تخصصی نرم افزاردرسال 1387 به خاطر علاقه ی شدید او به دنیای وب ، وبلاگ نویسی، ومخصوصا طراحی وب وبرنامه نویسی فعالیتش را درحوزه زبان های برنامه نویسی چون اچ تی ام ال و سی اس اس گرفته تا زبان های برنامه نویسی بک اند مانند: پی اچ پی، سی شارپ وغیره آغاز کرد.www.7learn.comکلیک سایت:کلیک سایت که یکی از سایت های آموزش برنامه نویسی متنی است در زمینه آموزش های انلاین و تولید برترین محتوای آموزشی،در زمینه ها و رشته های مختلف،توانسته است یکی از برترین آموزشگاه های مجازی باشد. کلیک سایت در زمینه های مختلفی نظیر:  - برنامه نویسی وب  - برنامه نویسی اندروید  - برنامه نویسی ویندوز  - برنامه نویسی ios  فعالیت دارد.www.clicksite.orgبلدشو:این سایت ازسال 1395 کارخود را آغاز کرده وازابتدای کار تاکنون بانیاز سنجی دقیق مشتریان وتمرکز بر روی کیفیت ارائه دوره ها به زبان فارسی توانسته تاثیر خوبی بر دانش و یادگیری کاربران بگذارد. محتوای موجود در دوره های آموزشی بلدشو مطابق با استاندارد جهانی است و پس از ترجمه توسط مترجمین متخصص، با زیرنویس یا با دوبله‌ی حرفه ای بر روی سایت قرار می‌گیرند .هر دوره یک روند منطقی و برنامه ریزی شده دارد. این دوره ها با پوشش مباحث از سطوح پایه تا حرفه‌ای، و با آموزش گام به گام، شما را تا مرز یادگیری کامل تخصص مورد نظر پیش می‌برند. .محور های آموزشی این سایت عبارت اند از:زمینه های عکاسی،انیمیشین سازی، شبکه، طراحی مهندسی، برنامه نویسی، درسی، بازاریابی، امنیت و ...www.baladshow.comمکتب خونه:سایت مکتب خونه نیز یکی دیگر از سایت های آموزش برنامه نویسی است که با هدف  در دسترس قرار دادن آموزش با کیفیت بالا برای همه‌ی فارسی زبانان ارائه شد. این سایت در رشته ها وعلومی چون: رشته ریاضی ، مهندسی برق ، مهندسی مکانیک ، مهندسی کامپیوتر، مهندسی کامپیوتر با گرایش نرم‌افزار، مهندسی نفت، رشته آمار ریاضی ، رشته معماری، مهندسی صنایع ، مهندسی شیمی ،مهندسی عمران فعالیت دارد.www.maktabkhooneh.org نکته: در این راستا خدمات مکتب‌خونه به دو گروه اصلی دوره‌های مکتب‌پلاس و دروس دانشگاهی تقسیم مي‌شود.دوره مکتب پلاس:مکتب پلاس نسل جدید آموزش مجازی در ایران است که توسط مکتب‌خونه برای اولین بار در ایران ارائه شده است. دوره‌های مکتب‌پلاس، دوره‌های کوتاه‌مدت کاربردی هستند که با همکاری دانشگاه‌های برتر کشور تهیه مي‌شوند و به صورت تعاملی ارائه مي‌شوند. هدف از این دوره‌ها تربیت نیروی کار مورد نیاز برای ورود به بازار کار است به صورتی که افراد با کسب مهارت مورد نیاز و گذراندن دوره، می‌توانند در شرکت‌ها یا به صورت فردی مشغول به کار شوند و کسب درآمد کنند.مکتب‌خونه با ضبط و ارائه دروس اساتید برتر از دانشگاه‌های برتر و تراز اول کشور و ارائه رایگان آن‌ها مجموعه‌ای بي‌نظیر از بیش از 300 درس و 8،000 ویدئو آموزشی با کیفیت و رایگان در حوزه های مختلف ایجاد کرده است. در سال گذشته بیش از 600 ترابایت از ویدئوهای آموزشی این بخش توسط دانشجویان اقصی نقاط کشور و جهان دانلود شده است.دوره دروس دانشگاهی:هدف از دروس دانشگاهی مکتب‌خونه و ارائه رایگان آن‌ها این است که همه افراد بتوانند به صورت رایگان از محتوای آموزشی با کیفیت دانشگاه‌های برتر استفاده کنند تا به دلیل محدودیت‌های مالی هیچ فردی از لذت آموزش محروم نباشد.مکتب‌خونه در هر ترم تحصیلی، تعداد مشخصی درس از دانشگاه‌های برتر کشور را با هماهنگی استاد درس شروع به فیلم‌برداری مي‌کند. سپس در طول ترم با ضبط جلسات درس، جلسات به صورت منظم و به مرور زمان با کم‌ترین فاصله از برگزاری آن کلاس در دانشگاه، بر روی وب‌سایت قرار مي‌گیرند.اصلی‌ترین دانشگاه‌های همکار مکتب‌خونه: دانشگاه صنعتی شریف ،دانشگاه تهران، دانشگاه صنعتی امیرکبیر، دانشگاه علوم پزشکی تهران میباشد.فرانش:این سایت از سال 1386 با هدف ترویج دانش متن باز آغاز به کار نمود و در این راه با همیاری و همکاری افراد علاقمند به حوزه ی آموزش به موفقیت هایی دست یافت. در این سایت کاربرانی که توانایی و دانش کاربردی در زمینه های مشخصی همچون برنامه نویسی دارند،‌ در فرایند تولید همراهی شده، و تیم تولید و تدوینی در کنار آن ها قرار گرفته تا بتوانند دانش خود را با دیگران به اشتراک بگذارند. صرف نظر از اهداف تجاری یا غیر تجاری تولیدکنندگان محتوا در فرانش، دغدغه های پلتفرم پرداخت، پلتفرم نمایش، هزینه پهنای باند، مارکتینگ، دریافت بازخورد و ... برای تولید کنندگان برطرف شده تا بتوانند با تمرکز روی محتوا، ویدئوی آموزشی خود را تولید و منتشر کنند بهترین دور های این سایت درحوزه: کسب‌وکار،انیمیشن و سه‌بعدی ،فیلم و صدا ، وب ،برنامه‌نویسی ،شبکه و امنیت، زبان‌های خارجی وسبک زندگی است.www.faranesh.comلرن سورس:این سایت از سال ۱۳۹۶ فعالیت خود را درباره آموزش برنامه نویسی و طراحی وب سایت شروع کرده است. با توجه به اینکه در وب فارسی کمتر میتوان وبسایتی را یافت که آموزش برنامه نویسی و وب را به صورت دوره محور منتشر کند و اکثر سایت ها مطالبشان را به صورت پراکنده منتشر میکنند ، این سایت تصمیم گرفت تاباطراحی وب سایتی این نیاز را برطرف کند.لرن سورس یک پلتفرم شاخص و متفاوت در زمینه یادگیری و آموزش بوده و به شما کمک میکندتا نیازهای آموزشی خود را در زمینه کد نویسی رفع نمایید.متد آموزشی در لرن سورس به صورتی تعریف شده است که آموزش ها به صورت جامع و کاربردی باشند. به همین دلیل ما آموزش ها را در لرن سورس به دو قسمت دوره های آموزشی و دوره های ویژه تقسیم کرده ایم. دوره های آموزشی به صورت مطالب جامع منتشر خواهد شد و اما دوره های ویژه که به صورت ویدیو منتشر میشود، ضمندارا بودن مطالب پایه ، کاربردی و پروژه محور نیز خواهد بود.www.learnsource.netدر آخر اگر شما هم منبعی می‌شناسید که از لیست افتاده، حتما در کامنت معرفی کنید.</description><category>امین اکرمی</category><author>امین اکرمی</author><pubDate>Wed, 29 Apr 2020 12:10:53 +0430</pubDate></item></channel></rss>