کامپایل کردن sass در VS Code

برای اینکه ما بتوانیم در VS Code  از sass  استفاده کنیم و از عملیات تبدیل sass به css بهره ببریم  و همچنین فایل sass  رو به css  کامپایل کنیم کافی هست از یک افزونه در VS Code  به نام Live Sass Compiler استفاده کنیم در ادامه با من همراه باشید تا به راحتی مراحل کامپایل کردن sass/scss  با استفاده از افزونه Live Sass Compiler  رو قدم به قدم آموزش بدم.

برای کامپایل کردن sass / scss  روش های مختلفی وجود داره اما اگه با ویرایشگر  VS Code کار میکنم این روش یعنی استفاده از افزونه Live Sass Compiler بهینه تر خواهد بود.

افزونه Live Sass Compiler

Live Sass Compiler یک افزونه برای VS Code است که وظیفه آن کامپایل کردن فایل های sass / scss به فایل css می باشد در این آموزش به چگونگی کامپایل کردن sass به css و همچنین استفاده کردن از فایل کامپایل شده ازsass در یک سند html می پردازیم.+

 

قدم اول : دانلود VS Code

در قدم اول شما بایستی VS Code را دانلود نمایید اگر که ویرایشگر  VS Code رو سیستم شما نصب نیست .

 

قدم دوم : اجرا کردن VS Code  و نصب افزونه Live Sass Compiler

بعد از دانلود و نصب VS Code این نرم افزار را اجرا کنید و به تب افزونه ها طبق شکل زیر بروید.

در کادر جستجو عبارت Live Sass Compiler یا live sass را وارد نمایید :

و روی گزینه install  کلیک نمایید تا این افزونه برای شما نصب شود ، تا به اینجای کار ما مراحل نصب رو انجام دادیم بریم ببینیم به چه صورت میتونیم حالا از این افزونه برای کامپایل کردن sass به css استفاده کنیم.

 

قدم سوم : کامپایل کردن sass/scss

یک پوشه به نام test  ایجاد نمایید و داخل این پوشه یا دایرکتوری یک سند وب به نام index.html بسازید و همچنین یک پوشه به نام app یا هر نام دلخواهی که داخلش یک فایل sass  به نام app.scss ایجاد کنید .

بعد از ایجاد پوشه ها و فایل های مورد نظر داخل فایل app.scss یک استایل تست برای تگ body  بنویسید مثل تصویر زیر :

حالا به راحتی بعد از استایل دادن تست به تگ body  ، در گوشه پایین سمت راست روی watch sass کلیک نمایید تا فایل شما به app.css کامپایل شود :

بعد از کلیک روی watch sass شما مشاهده خواهید کرد که فایل scss  به css  کامپایل شد و کافی است فایل app.css برای استفاده از فایل کامپایل شده scss  آن را در سند html  خود قرار دهیم همانند تصویر زیر :

و در نهایت خروجی سند html  که فایل css  آن کامپایل شده فایل  scss است رو در مرورگر مشاهده میکنیم :

تا اینجا ما تونستیم استایل هامونو از طریق scss بنویسیم و کامپایل کنیم فایل scss  رو به css .

 

قدم  چهارم : تغییر مسیر فایل های کامپایل شده یا خروجی stylesheet ها

شاید این سوال به ذهنتون برسه که چطور میتونم مسیر خروجی فایل های کامپایل شده به css  روتغییر بدم مثلا یک پوشه در نظر بگیرم با نام css  و فایل هایی که کامپایل میشه رو در این مسیر قرار بدیم .

برای این کار باید در VS Code  به مسیر زیر :

file -> preferences -> settings

بروید ، بعد از اینکه وارد پنجره settings  شدید کافی هست  به ترتیب تب extensions  رو باز کنید و روی Live Sass Compiler کلیک کنید و در نهایت روی گزینه Edit in settings.json  کلیک نماید طبق شکل زیر:

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

سورس کد  json مربوط به live sass :

"liveSassCompile.settings.formats": [
        // This is Default.
        // {
        //     "format": "expanded",
        //     "extensionName": ".css",
        //     "savePath": "~/../css/"
        // },
        //Or you can compress your css
        {
            "format": "compressed",
            "extensionName": ".min.css",
            "savePath": "~/../css/"
        }
    ],

بعد از ذخیره کرده فایل Settings.json وارد پوشه app میشویم و فایل های app.css.map و app.css را حذف میکنیم . و وارد فایل app.scss میشویم و اگر مجدد روی watch sass کلیک نماییم خواهیم دید که یک پوشه به نام css ایجاد شده  و فایل کامپایل شده app.scss در آن قرار گرفته طبق شکل زیر :

و مسیری که از این به بعد در سند html برای استفاده از فایل css کامپایل شده خواهیم داشت میشود:

css/app.min.css

و حالا میتونید از فایل کامپایل scss در پوشه css  استفاده کنیم .

 

توضیح کدهای json  که در  setting.json استفاده شد

به تصویر زیر که شامل کد های  json مربوط به افزونه live sass هست مشاهده بفرمایید :

در این کد json  ما یک آرایه داریم که داخلش دو آبجکت قرار دارد  که  هر یک از این آبجکتها شامل ۳ عنصر هستن به نام های زیر که هر یک را بصورت کامل شرح میدهیم :

fotmat  = فرمت فایل هایی که ذخیره میشود بصورت فشرده (compressed) باشد یا در حالت توسعه (expanded)

extensionName = اگر format  فایل بصورت فشره باشد باید مقدار این key  به صورت “min.css” نوشته شود و اگر هم در حال توسعه باشد format   باید “css” نوشته شود.

savePath = مسیر خروجی فایل های کامپایل شده و نام پوشه خروجی فایل های stylesheet یا css

بلاک ۱ : بصورت پیش فرض اگر کد آبجکت ۱ که در تصویر بالا  مشاهده میکنید  را قرار دهیم میسر خروجی فایل های کامپایل شده ما در مسیر css  و با فرمت .css  کامپایل میشود .

بلاک ۲ : اگر کد آبجکت ۲ که در تصویر بالا مشاهده میکنید  را قرار دهیم میسر خروجی فایل های کامپایل شده ما در مسیر css  و با فرمت  min.css . کامپایل میشود .

منابع : medium.com و hoshcoding.com

آموزش نصب و راه اندازی sass

۲ روش نصب و استفاده از Sass

 

برای اینکه ما sass رو نصب کنیم و استفاده کنیم در پروژه هامون دو روش وجود داره :

 

روش اول : استفاده از نرم افزار برای نصب و راه اندازی sass

روش دوم : استفاده از دستورات خط فرمان برای نصب و راه اندازی sass

 

 

روش اول : استفاده از نرم افزار برای نصب و راه اندازی sass

اگه بخوایم از نرم افزار استفاده کنیم لیستی از نرم افزار ها در زیر قرار گرفته که اگه وارد سایت sass در قسمت install بشید این نرم افزار ها به ترتیب زیر هست :

 

 

CodeKit

Compass.app

Ghostlab

Hammer

Koala

LiveReload

Prepros

Scout-App

 

که در بین این نرم افزار ها و یا اپلیکیشن ها نرم افزار Scout-App رایگان و متن باز هست ، که ما به راحتی میتونیم در پروژه هامون از این نرم افزار قدرتمند کمک بگیرم که قابلیت های ویژه ای داره ، مثل نوتیفیکیشن ها که در زمان مناسب نمایش داده میشه و به راحتی میتونیم فایل های sass رو به css تبدیل یا به اصطلاح کامپایل کنیم.

 

 

روش دوم : استفاده از دستورات خط فرمان برای نصب و راه اندازی sass

 

برای اینکه ما بتونیم پکیج sass رو با استفاده از دستورات خط فرمان نصب کنیم باید یک بسته مدیریت پکیج در سیستممون داشته باشیم  که پیشنهاد سایت sass که در قسمت install هستش node.js  رو گفته که نصب کنیم ، برای اجرای دستورات و نصب پکیج sass  روی سیستم .

بعد از اینکه node.js  رو دانلود کردید و مراحل نصبش تموم شد باید مطمئن بشید که npm به همراه node.js نصب شده یا نه ، برای این کار وارد cmd یا محیط خط فرمان بشید و تایپ کنید npm -v و اینتر رو بزنید .
اگه npm نصب شده باشه باید ورژن مربوط به node رو نمایش بده که مشخص میشه node و npm به درستی روی سیستمون نصب شده و میتونید هر پکیجی رو که مد نظرتون بود رو با استفاده از npm نصب کنید .
بعد اطمینان از، نصب npm نوبت میرسه به نصب پکیج sass ، کافی هست دستور npm install -g sass رو وارد کنید و اینتر رو بزنید تا پکیج مربوط به sass نصب بشه.

 

و برای اینکه اطمینان حاصل بشه که sass یا پکیج sass نصب شده روی سیستممون ، باید دستور sass –version رو در خط فرمان اجرا کنیم که اگه ورژن مربوط به Sass رو برای ما نمایش بده ، به این معنی هست که پکیج sass برای ما به درستی نصب شده و حالا میتونیم در پروژه هامون از sass استفاده کنید .

 

کامپایل کردن sass در VS Code

 

 

اگه قصد دارید در Vscode نصب کنید sass رو این مقاله رو هم حتما ببینید ، ” کامپایل کردن sass در VS Code “.

 

پیشنهاد ویژه 

 

اگه علاقه مند به ایجاد اسلایدر های مختلف هم هستید حتما در دوره رایگان و جامع کتابخانه Slick اسلایدر بصورت پروژه محور شرکت کنید که این دوره فوق العادس.

 

 

صفر تا صد یادگیری طراحی سایت (قسمت اول)

 

چطور طراحی سایت رو شروع کنم ؟!!

 

کلیدی ترین و مهم ترین سوالاتی که اول راه برای شروع یادگیری طراحی سایت ممکنه براتون پیش اومده باشه اینکه ، از کجا باید شروع به طراحی سایت کنم ، مسیر طراح سایت شدن چی هست ، آیا مسیر اصولی برای طراح سایت یا طراح رابط کاربری (UI) شدن وجود داره و برنامه نویسی وب رو چطور شروع کنم اصلن مراحل یادگیری طراحی سایت  چطور متوجه بشم.

 

راهکار اصولی 

 

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

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

 

قدم اول در یادگیری طراحی سایت

 

در اولین قدم شما باید html  و رو به همراه css یادبگیرید .

[text_tip]نکته : پس از آشنایی و مقدمات html و css فقط به صورت پروژه محور روند یادگیریتونو  ادامه بدید. [/text_tip]

 

 

 

یکی از مواردی که به شدت به شما کمک میکنه در حین یادگیری html و css  باز طراحی کردن بخش های مختلف یک سایت دلخواه هستش .

[text_quote]مفهوم باز طراحی به طور کلی مجددا کدنویسی کردن یک بخش که کدنویسی شده.[/text_quote]

برای مثال شما وارد یک سایتی میشید و مشاهده میکنید که دکمه ی ارسال نظرات این سایت زیبا هست و طراحی خوبی داره ، سریعا برای خودتون پروژه تعریف  کنید و همین دکمرو طراحی کنید با استفاده از کدهای این بخش. 

 

فعال شدن سیستم رأس در طراحی  سایت و افزایش دقت

 

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

 

پروژه حتما نباید بزرگ باشه !

 

 در فرایند یاد گیری ، گاها یک بخش ساده از سایت میتونه حاوی نکاتی باشه که تاثیر زیادی در رشد و پیشرفت شما در این حوزه میزاره.

 

 

معرفی سایت codepen 

 

و یک سایت که شاید باهاش آشنا باشبن codepen.io هست که در این سایت پروژه های زیادی توسط طراحان و برنامه نویسان مختلف قرار میگیره و میتونید از این سایت هم برای مشاهده طراحی مختلف یک بخش از سایت استفاده کنید . و همچنین کدهای بکار رفته برای این  بخش هم داخل صفحه مربوطه قرار میگیره . 

 

 

مزایای باز طراحی کردن و تعریف پروژه های ساده 

 

شما با این کار با طراحی های مختلفی رو به رو میشد و اگر بخشی از یک سایت طراحیش براتون نامفهوم بود سریعا کلیک راست کنید روی  صفحه و inspect رو بزنید و کدهای اون بخش رو مشاهده کنید و اگه خواستید فقط همین بخش رو یک سند html به همراه سند css ایجاد کنید طبق نیازتون یا میتونید از ویرایشگر های کد آنلاین هم استفاده کنید برای مثال سایت codesandbox.io همچین در سایت codepen.io هم میتونید پروژه جدید تعریف کنید   و بخش مورد نظر رو با نگاه کردن به کدهاش بصورت دستی برای خودتون ایجاد کنید چرا که همین کار باعث خلاقیت میشه .

 

سخن پایانی 

 

در اولین قسمت این مقاله صرفا پرداختم به  قدم اول برای یادگیری طراحی سایت و اینکه تجربیات خودم رو  و مورادی که کمک زیادی به من کرده در قالب راهکار  بیان کردم .

امیدوارم این مقاله براتون مفید بوده باشه در صورت تمایل در قسمت دیدگاه ها پیشنهادات ، سوالات یا دیدگاه خودتون رو  برای ما ارسال کنید .

 

پیشنهاد ویژه :

[text_tip]اگه علاقه مند هستید بصورت حرفه ای HTML و CSS رو یادبگیرید در دوره رایگان html5 به همراه css3 شرکت کنید.[/text_tip]

 

مفهوم ابر متن یا Hypertext چیست ؟

ساختار وب مبتنی بر ابر متن هستش و زبان نشانه گذاری ابر متن یا html براساس این ساختار شکل گرفته . اما در این مقاله قصد دارم بپردازم به مفهوم ابر متن ، و اینکه ابر متن چی هست ،  با یک مثال توضیح میدم این مفهومو .

به عکس  زیر دقت کنید .

ساختار یک سند وب

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

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

در واقع همه بخش ها با جزئیاتشون  مفهوم ابر متن رو میرسونن و تصاویر و ویدیو های داخل صفحه مورد نظر هم جز مجموعه ابر متن محسوب میشن .

و اینکه تصویر و صوت و ویدیو هم شامل ابر متن میشه در واقع شکل توسعه یافته از ابر متن هست البته این شکل توسعه  یافته رو به اصطلاح ابر رسانه یا Hypermedia  نیز می نامند.

یک مورد دیگه هم در مورد مفهوم ابرمتن خدمت شما  عرض کنم ، به شکل زیر دقت کنید .

 

 

تگ ها یا نشانه ها 

یک صفحه سایت که شما مشاهده میکنید در واقع ساختار html اون یک مجموعه ای از متن ها  هست ، اگه داخل یک صفحه سایت کلید ترکیبی Ctrl + U رو بزنید شما کدهای اچ تی ام ال رو مشاهده میکنید که در واقع این کد ها ابر متن هستند یعنی مجموعه از متن ها مختلف ،  حالا مرورگر با شناسایی تگ های یک صفحه از سایت ،  این تگ ها رو به عنوان یک نشانه برای نمایش عنصری مرتبط با اون تگ برای کاربر نمایش میده .

 

مفهوم زبان نشانه گذاری یا Markup Language

میدونید که html مخفف hyper text markup language در این مقاله میخوام در مورد  زبان نشانه گذاری صحبت کنم و بفهمیم که زبان نشانه گذاری واقعا چی هست ؟

تعریف  ساده و  کلی در مورد زبان نشانه گذاری :

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

 

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

مثالی در این مورد :

ما یک تگ h1 در سند اچ تی ام الیمون قرار میدیم که داخل آن عنوان زیر هست :

<h1>یک متن مورد نظر<h1>

و بعد از اینکه ما سند اچ تی ام الیمونو با یک  مرورگر باز کردیم چیزی که برای ما نمایش داده میشه فقط متن “یک متن مورد نظر ” هستش  و نشانه ای که باعث شد مرورگر متوجه این ساختار بشه تگ h1 بود . و اینکه فرمت سند ما html هست که در نتیجه خروجی مورد نظر ما نمایش داده میشه .

و نکته و مورد آخر اینکه اگه ما یک تگ پاراگراف <p> همه اضافه کنیم به این سند مرورگر این دو تگ رو متفاوت از هم در نظر میگیره و منحصر بفرد هستش هر تگ در html.

عروس بوت استرپ ، سیستم آرگون (۲۰۱۸)

 

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

 

فرم ها :

 

 

 modal ها :

 

 

navbar ها :

 

 

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

یه مورد دیگه که استایلش جالبه برای Pagination ها هستش:

 

 

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

اما این سیستم از چه فریم ورک ها یا کتابخونه هایی استفاده میکنه :

[list_group]

Bootstrap 4

jQuery

noUISlider

Open Sans Font

Stripe Elements

Popper.js

WebGradients

[/list_group]

[text_title]راهنمای نصب :[/text_title]

اما اینکه نصب این سیستم به چه صورته :

کافی به قسمت دانلود سایت برید و فایل سیستم آرگون رو از گیت هاب دانلود کنید .

فایل های css مورد نیاز و قرار دادن اون در تگ head

 

<!-- Fonts -->
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700" rel="stylesheet">

<!-- Icons -->
<link href="/assets/vendor/nucleo/css/nucleo.css" rel="stylesheet">
<link href="/assets/vendor/font-awesome/css/font-awesome.min.css" rel="stylesheet">

<!-- Theme CSS -->
<link type="text/css" href="/assets/css/argon.min.css" rel="stylesheet">

 

فایل nucleo.css و argon.min.css در اسکریپتی که از خود سایت آرگون دانلود کردید قرار دارد .وهمین طور فایل argon.min.js

و بعد قرار دادن فایل های js :

 

<!-- Core -->
<script src="/assets/vendor/jquery/jquery.min.js"></script>
<script src="/assets/vendor/popper/popper.min.js"></script>
<script src="/assets/vendor/bootstrap/bootstrap.min.js"></script>

<!-- Theme JS -->
<script src="/assets/js/argon.min.js"></script>

 

[text_tip]نکته : شما فایل bootstrap.css رو قرار ندادید داخل تگ head اما با این وجود این سیستم یعنی سیستم آرگون از بوت استرپ هم پشتیبانی میکنه و داخل فایل سی اس اسی که اشاره کردیم کدهای مربوط به بوت استرپ هم وجود داره و شما با خیال راحت همه مواردی که با بوت استرپ انجام می دادید رو در این سیستم هم پیاده کنید .[/text_tip]

فقط تفاوتش استایل هایی هست که به کامپوننت ها داده شده در مقایسه با بوت استرپ.

لینک : وب سایت آرگون 

معرفی Ajax

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

معرفی Ajax

 

فرض می کنیم که شما قبلا با jquery و javascript آشنایی داشته باشید، بنابراین شاید هنگامی که کدهای Ajax را ببینید، یک ابهام در ذهن شما به وجود بیاید که اصلا تفاوت Ajax و jquery و javascript در چیست، زیرا احساس می کنید که در حال استفاده از jquery و javascript هستید، نه یک چیز جدید. بنابراین بد نیست که تفاوت این سه را در همین ابتدای معرفی Ajax ، بیان کنیم.  jquery یک کتابخانه (چارچوب – framework) برای javascript است که به ما امکان می دهد که با نوشتن مقدار کمتری کد، عملیات های بیشتر و سطح بالاتری را اجرا کنیم. اما Ajax یک روش جدید برای ارتباط بین صفحه در حال اجرا در مرورگر اینترنت و یک صفحه پویا (با قابلیت تعامل با سرور و پایگاه داده سایت) می باشد. در واقع، Ajax یک تکنیک (technique) است، نه یک زبان جدید یا هر مورد دیگری که ممکن است به ذهن شما برسد. برای اجرای کدهای Ajax ، به پیش نیاز خاصی احتیاج ندارید. یعنی آن را می توان با کدهای javascript به تنهایی اجرا کرد. در واقع، کدهای Ajax ، همان کدهای javascript می باشد و تنها برای این تکنیک و روش ها و کدهای مربوط به آن، لغت Ajax به کار می رود. دقت شود که اگر در کدهای javascript نوشته شده در یک صفحه، روش های کتابخانه jquery هم به کار رفته باشد، باید به فایل کتابخانه jquery ارجاع داده شود (این مورد را به صورت کلی بیان کردیم، نه برای تکنیک Ajax . زیرا گاهی کدهای javascript ، شامل روش های تکنیک Ajax و همچنین روش های کتابخانه jquery می باشد و کاربر وقتی ارجاع به فایل کتابخانه jquery را حذف می کند و مشاهده می کند که کدها به درستی اجرا نمی شوند، آنگاه تصور می کند که تکنیک Ajax به فایل کتابخانه jquery نیاز داشته است).

پیش نیاز اجرای ajax

 

 

 

حال که تفاوت بین Ajax و jquery و javascript بیان شد (که حداقل پیش نیاز اجرای آن را بدانید و ابهامی در مورد شروع یادگیری یک زبان جدید نداشته باشید)، بیان می کنیم که اصلا Ajax چه قابلیتی را در اختیار ما قرار می دهد که تاکنون از آن محروم بوده ایم. فرض کنید وب سایت ما با یک زبان پویا (داینامیک) مثل PHP برنامه نویسی شده باشد. وقتی کاربر یک صفحه PHP (با پسوند php) از سایت را در مرورگر اینترنت خود اجرا می کند، کدهای PHP در سرور سایت اجرا شده و نتیجه آن، به صورت کد HTML (که استاتیک است) به کامپیوتر کاربر ارسال شده و در مرورگر اینترنت وی، کدهای HTML اجرا می شوند و کاربر نتیجه را در خروجی مرورگر اینترنت مشاهده می کند. پس مرحله اجرای کد PHP ، در سرور و مرحله اجرای کد HTML ، در کامپیوتر کاربر است. پس صفحه PHP نمی تواند انتخاب های کاربر در صفحه را ببیند، در واقع انتخاب هایی که کاربران در صفحه HTML انجام می دهند (مثل تغییر اطلاعات یک فرم و انتخاب های آن)، تنها با همان کد HTML موجود در صفحه است و تا زمانی که یک درخواست دیگر به سرور نفرستند، صفحات سرور از انتخاب های کاربر با خبر نخواهند بود.

 

تعامل هایی بین کامپیوتر کاربر و صفحات پویا در سرور با استفاده از تکنیک ajax

 

بنابراین چنانچه ما بخواهیم بر اساس انتخاب های کاربر در صفحه (و البته بدون اجرای یک صفحه دیگر و تنها با ایجاد تغییراتی در همین صفحه)، اطلاعاتی را به سرور بفرستیم یا اطلاعاتی را از سرور دریافت کنیم، نیاز به یک تکنیک جدید داریم که همان Ajax است. پس Ajax به ما این قابلیت را می دهد که بدون استفاده از روش های معمول برای تبادل اطلاعات با سرور، در پس زمینه همین صفحه فعلی، تبادل اطلاعات با سرور (صفحات داینامیک یا سرور) داشته باشیم (ایجاد یک سری تعامل ها بین کامپیوتر کاربر و صفحات پویا در سرور، بدون استفاده از روش های رایج مثل اجرای صفحه جدید یا درخواست هایی از جنس روش های GET و POST). دقت شود که اگرچه می گوییم تعامل با صفحات داینامیک سرور، ولی در واقع این تعامل می تواند هم با صفحات داینامیک و هم با صفحات استاتیک موجود در سرور صورت گیرد (در کل، صفحه ای غیر از صفحه فعلی که در مرورگر اینترنت کاربر نمایش داده شده است).

Ajax از روش XMLHttpRequest برای ارتباط با سرور (صفحات سرور) استفاده می کند. لغت Ajax ، مخفف Asynchronous Javascript And XML می باشد (در واقع به این نکته اشاره دارد که در آن از کدهای javascript برای ایجاد XMLHttpRequest استفاده می شود).

 

کاربردهای فن آوری Ajax

 

اگر شما میخواهید یک برنامه نویس خوب وب باشید، تسلط بر فن آوری های پیشرفته ای همچون Ajax از ضروریات کارتان خواهد بود. با توجه به توضیحاتی که ارائه کرده ایم، قطعاً نمیتوان فهرست مشخصی از کاربردهای Ajax ارائه کرد چون این فن آوری میتواند در بخشهای مختلف کاربرد داشته باشد اما در اینجا برخی کارکردهای رایج و مهم Ajax را بطور مختصر بررسی می کنیم:
۱ – بررسی وجود کاربر مشابه در هنگام ثبت نام کاربران: یکی از کاربردهای نسبتاً ساده ولی در عین حال مفید Ajax، بررسی دیتابیس سایت در هنگام ثبت نام کاربران جدید میباشد. فرض کنید کاربری قبلاً در سایت شما با یک نام کاربری خاص ثبت نام کرده است، اکنون کاربر دیگری میخواهد با همین نام کاربری ثبت نام کند و احتمالاً شما نمیخواهید دو کاربر با یک نام کاربری یکسان ثبت نام کنند. در حالت معمول شما میتوانید پس از فشردن دکمه ثبت نام توسط کاربر و در کد مربوط به دکمه ثبت نام، دیتابیس را بررسی کرده و در صورت وجود نام کاربری یکسان، عملیات ثبت کاربر جدید را متوقف کنید یا به کاربر پیام بدهید. در هر صورت به این ترتیب یک postback کامل خواهید داشت که شاید چندان خوشایند کاربر نباشد. اما به کمک Ajax میتوانید عملیات postback را حذف کرده و سرعت کار را افزایش دهید. کافیست یک تابع استاتیک (WebMethod) در کد سرور بنویسید که دیتابیس را چک کرده و در صورت وجود نام کاربری مشابه یک مقدار مشخص بازگشت دهد. سپس میتوانید در تابع client مربوط به خروج از کادر متنی نام کاربری یا در تابع client مربوط به کلیک دکمه ثبت نام، از طریق JQuery این تابع را فراخوانی نمایید و در صورت وجود نام کاربری یکسان در دیتابیس پیامی به کاربر بدهید و البته اجازه اجرای کد سرور را نیز ندهید. به این ترتیب احتیاجی به رفرش صفحه نخواهد بود، همین تکنیک را میتوانید به صورتهای دیگری نیز استفاده کنید.

 

۲- احتمالاً نحوه نمایش commentها در سایت facebook یا نمایش تصاویر در بخش جستجوی تصاویر google توجه شما را جلب کرده است. هر دو سایت رویکرد مشابهی دارند، در ابتدا بخش کوچکی از اطلاعات را نمایش میدهند تا صفحه خیلی سریع بارگذاری شود، سپس در صورت لزوم اطلاعات بیشتر را آرام آرام بارگذاری می کنند. شما نیز میتوانید به کمک Ajax این تکنیک زیبا را شبیه سازی کنید. به این منظور باید یک تابع سرور برای ایجاد اطلاعات صفحات جدید در قالب html بسازید، و این تابع را در رویداد scroll down صفحه فراخوانی کنید. در این صورت وقتی کاربر صفحه را scroll کرده و به انتهای صفحه برسد تابع استاتیک مربوطه از JQuery Ajax اجرا شده و محتوای صفحه جدید به مرورگر ارسال میشود. سپس شما این محتوای جدید را در صفحه نمایش میدهید. البته از آنجاییکه مرورگر چیزی جز html نمیفهمد شما هم باید صرفاً محتوای html ارسال کنید، یعنی تابع استاتیک سرور باید اطلاعات را به فرمت html تولید کرده و به صورت رشته ارسال کند. حتی شما میتوانید در زمان اجرای پشت صحنه تابع سرور دریافت صفحات (که ممکن یکی دو ثانیه طول بکشد) یک فایل gif animated را در صفحه پخش کنید تا کاربر متوجه شود که صفحات جدید به زودی نمایش داده میشوند.

۳- یکی از کاربردهای مفید Ajax در توسعه وب، انجام فعالیتهای دیتابیسی در پشت صحنه میباشد. از آنجا که عملیات مربوط به دیتابیس همواره سنگین و زمان بر بوده و میتواند موجب کندی اجرای صفحات وب شود، شما میتوانید برخی از عملیاتهای مربوط به دیتابیس از جمله و خواندن و نوشتن و یا حذف از دیتابیس را توسط Ajax انجام دهید. به این ترتیب احتیاجی به رفرش صفحه نخواهد بود و در نتیجه سرعت اجرای سایت شما افزایش خواهد یافت. البته بخاطر داشته باشید که ممکن است به دلایل مختلف (از جمله عدم پشتیبانی مرورگر یا غیر فعال کردن جاوا اسکریپت توسط کاربر) امکان استفاده از Ajax وجود نداشته باشد، و در این شرایط شما باید سناریوی دیگری را به منظور مدیریت فعالیتهای دیتابیس به پیش ببرید.

 

چرا باید از Ajax استفاده کنیم؟

برنامه های تحت وبی که از Ajax بهره میبرند خصوصیات زیر را دارا هستند:

[list_group]

مولفه های آشنا و تعاملی رابط کاربری مانند نشان دهنده پیشرفت (progress bar)، tooltipها، و همچنین پنجره های pop-up

کارایی بهتر برای برنامه های وب فرم، زیرا بیشتر بخشهای پردازشی صفحه وب میتواند در مرورگر انجام شود

به روز رسانی مقطعی صفحه (partial update) که تنها بخش تغییر یافته صفحه را refresh میکند

یکپارچه سازی بخشهای client-side برنامه با خدمات برنامه سرور، بخصوص در فرآیند تایید اعتبار، تعیین نقش کاربران و پروفایل کاربران

توانایی سفارشی سازی کنترلهای سرور به منظور استفاده از ظرفیتهای client

پشتیبانی از بیشتر مرورگرهای معروف، از جمله IE، فایرفاکس، کروم و سافاری

اما مایکروسافت بعنوان بزرگترین سازنده ابزارهای توسعه ای و ارائه دهنده سیستم قدرتمند ASP.NET، نسخه ای از Ajax را با نام Microsoft Ajax عرضه می کند که عمدتاً مبتنی بر ASP.NET است. اما معماری Microsoft Ajax چیست؟ مولفه های مختلف موجود در این سیستم چطور با هم کار می کنند؟ در واقع یک برنامه وب Microsoft Ajax از یک پروژه صرفاً client-side و یا ترکیبی از یک client و server تشکیل شده است. یک پروژه صرفاً client از کتابخانه Microsoft Ajax بهره میبرد ولی از کنترلهای سرور استفاده نمیکند. مثلاً یک صفحه HTML میتواند حاوی مولفه های script باشد که از فایلهای کتابخانه Ajax استفاده می کنند. از سوی دیگر کتابخانه Ajax مایکروسافت نیز به برنامه های Ajax امکان میدهد کلیه پردازشها را در سمت client صورت دهند. یک پروژه ترکیبی client و server نیز از کتابخانه Ajax مایکروسافت و کنترلهای سرور ASP.NET بهره میبرد.

[/list_group]

 

 

بازنشانی رمز عبور
عضویت
خروج از نسخه موبایل