قرارداد ها، شروع کدنویسی حساب شده و مفاهیم پایه در جاوا اسکریپت

دسته بندی: جاوا اسکریپت
زمان مطالعه: ۲ دقیقه
۱۹ اردیبهشت ۱۳۹۴

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

مطالب مطرح شده در این جلسه عبارتند از :

  • آشنایی با ویرایشگرهای نوتپد++ و phpStorm
  • آشنایی با انکودینگ فایل ها و انتخاب انکودینگ مناسب برای زبان فارسی
  • توضیح قابلیت های phpStorm و افزونه LiveEdit
  • معرفی افزونه ای کاربردی برای مرورگرهای کروم و فایرفاکس
  • نمایش تغیرات کدها بدون نیاز به رفرش کردن مرورگر و صفحه وب
  • پوشه common و فایل های درون آن
  • تابع رندم و تولید اعداد تصادفی
  • تگ script در html و استفاده از کدهای جاوااسکریپت
  • دو روش بکارگیری جاوااسکریپت در صفحات وب و نکات آن
  • فرمت فایل های جاوااسکریپت و نحوه لود آن ها در صفحات وب
  • نکاتی در مورد محل لود فایل های جاوااسکریت در صفحات وب
  • توضیح در مورد تگ noscript
  • کدنویسی استاندارد و قراردادهای این دوره ی آموزشی
  • استاندارد تعین نام ها
  • استاندارد تعین فرمت ها
  • رعایت نظم و فرورفتگی ها (Indentation) در کدنویسی
  • استفاده از سمی کالن ; در پایان دستورات
  • کامنت ها در زبان جاوااسکریپت
:: توجه

این مطلب یک جلسه از آموزش javascript می باشد و برای مشاهده آن باید در دوره ثبت نام کنید.

ثبت نام در آموزش javascript

نویسنده
بیش از 15 سال هست که برنامه نویسی می کنم و از بین همه زبون هایی که کار کردم جاوا، اسمبلی و php رو دوست دارم. دانشجوی دکترای نرم افزارم و توی دانشگاه روی پردازش بیگ دیتا و پردازش موازی کار کردم و عاشق چالش از هر نوعیش هستم! سون لرن مثل بچه منه که 12 سال براش وقت گذاشتم، اینجا همه تلاش می کنیم از شروع یادگیری تا ورود به بازر کار حوزه برنامه نویسی و IT همراهتون باشیم.

جلسات دوره

نظرات کاربران

ایمان مودی

تا اینجا عالی بود.
ممنون جناب استاد.

Esmail Muhmmadzade

سلام آقای دکتر آوند
امیدوارم که حالتون خوب باشد.
سوالی در مورد محل قرارگیری هسته jQuery نسبت به فایل های مربوط به پلاگین های jQuery دارم:
من توی این آموزش خوب شما متوجه شدم که محل لود فایل های جاوا اسکریپت بسته به خود فایل و هدفی که داریم داره و نمیشه جای مشخصی را تعیین کرد اما سوالی که دارم در مورد محل لود هسته jQuery نسبت به فایل های مربوط به پلاگین ها می باشد و نظر خودم بر این اساسه که طبق منطق و رعایت هم نیاز و پیشنیاز باید ابتدا هسته jQuery را لود کرد و بعد به سراغ لود فایل های مربوط به پلاگین های jQuery رفت پس نتیجه میگرم که من ابتدا باید به سراغ لود هسته jQuery برم و بعد به سراغ فایل های پلاگین ها.
ممنون میشم اگه بگید آیا این نظر درسته یا فرقی نمیکنه که هسته jQuery را بعد از لود فایل های مربوط به پلاگین های jQuery لود کرد.

وحید صالحی

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

امین

سلام وقت بخیر
این ویژگی async رو از جایی میشه در سرور فعال و غیر فعال کرد که مثلا روی فایلای جاوا اسکریپت اعمال بشه یا نشه یا بصورت پیشفرض مال خود جاوا اسکریپته و ربطی به سرور نداره؟ چون یه بار تست کردم ولی بازم اول فایل js لود شد بعد سایر کدها
ممنون

لقمان آوند

خیر ربطی به سرور نداره.
تصمیم گیریش با مرورگره در واقع

سید محمد جواد رضوی

سلام
من JetBrains PhpStorm 2016.2.2 رو نصب کردم ولی با ctrl+scroll موس سایز فونت تغییر نمیکنه لطفا راهنمایی کنید.ممنون

لقمان آوند

به این شکل فعالش کنید این قابلیت رو.

Pouriya Ariyafar

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

 defer="defer"
async="async"

ولی تو سایت w3sch خالی اورده و کافیه فقط کلمه های async یا defer رو درج کنیم، علت چی هست؟ نحوه نشدن فرق کرده؟

استاد یک سوال دیگه در آدرس http://www.w3schools.com/js/js_syntax.asp یک قسمت داره با عنوان JavaScript and Camel Case و درباره Hyphens و Underscore و Camel Case صحبت کرده، میشه بگید این برای چی هست؟ من خوندم ولی متوجه نشدم
چه فرقی با استانداردهای Underscores و PascalCase و Camel Case داره
ممنون

لقمان آوند

سلام
نه فرقی نداره و به هر دو روش می تونید استفاده کنید.
اونها فقط نوع نامگذاری هستند که در همین دوره و در بخش قرارداد های نامگذاری در موردش صحبت کردیم.
در underscore : کلمات با _ جدا میشن. مثل : variable_name
در PascalCase به هم میچسبن و حرف اول هر کلمه بزرگه : VariableName
در camelCase مثل پاسکالکیس هست فقط حرف اول کلمه اول کوچیکه .

امیرحسین اروجلو

سلام جناب آوند
یک سوال در مورد اتریبوت defer داشتم ، شما گفتید یکی از معایت async اینه که ممکنه html ما وابسته باشه به فایل js برای همین صفحه با مشکل مواجه بشه ، اما در مورد defer به عیبی اشاره نکردید ، من توی کارم تمامی فایل های js رو در آخر صفحه قرار میدم تا لود بشه اگر از defer استفاده کنم به مشکل میخورم؟ این اتریبوت عیبی داره یا نه؟
بعد داشتم سایت w3 رو میدیدم دیدم این اتریبویت رو به صورت زیر قرار داده :


اما شما اینطور :


میخواستم ببینم فرقی دارن این ها ؟
با تشکر
ارادت

لقمان آوند

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

امیرحسین اروجلو

سلام مجدد متشکر و ممنون
یک سوال هم در مورد ادیتوری که باهاش کار میکنیم داشتم ، برای اجرای روان و خوب جت برین به چه سیستمی نیاز هست ؟ من با دو گیگ رم و دو هسته سی پی یو کمی اذیت میشم واسه اجرای این نرم افزار ، بعد سوال دیگه هم که داشتم میخواستم بدونم چطور باید فایل های php رو داخلش اجرا کنیم که مثل یه وب سرور عمل کنه برای ما ؟
با تشکر

لقمان آوند

سلام
4 گیگ رم رو ما توصیه می کنیم. مدل cpu تون رو دقیقا نگفتید که در موردش اظهار نظر کنیم. در عین حال یه گزینه به نام power save mode توی منوی فایل هست که اگه بزنید برنامه سبکتر اجرا میشه و کمتر اذیت می کنه .
شما برای اجرای php باید یه وب سرور لولال مثل ومپ رو نصب و استفاده کنید .

افشین زندی

سلام استاد آوند.خسته نباشید.
استاد ببخشید راجب به اینکه فایل های js رو کجای صفحه بزارید یه سوال دارم.
به نظرتون این قضیه بیشتر مربوط به قالب و طرح ما نمیشه؟؟
مثلا فرض کنید من قالبی دارم که تو نمای اول یه اسلایدر جی کوئری رو داره و بقیه اسکریپت ها و پلاگین ها با توجه به عمل کاربر اجرا میشن.(کلیک، هاور و …)
الان ذهنیتم اینه که اگه تو head صفحه jquery و پلاگین اسلایدر رو لود کنم. و تو انتهای صفحه بقیه پلاگینها رو بهترین نتیجه رو دارن. نمیدونم چقدرش درسته.
ممنون میشم یه توضیح کوتاه بدین

لقمان آوند

توضیحات کامل رو تقریبا توی این جلسه گفتم .
جاوااسکریپت یه مفهوم به نام function hosting داره که خودش توابع رو میبره بالا که هر جا لود کرده باشید در بقیه صفحه قابل دسترسی باشه.
موردی هم که گفتی مثل همونایی هست که توی این جلسه گفتم و اگر کد جی کوئری رو درون رویداد ready تعریف کرده باشید مهم نیست کجا لودش کنید . بعدا بهش می رسیم.

سید قاسم بهشتی

سلام استاد من جلسه اول دوم هست که دارم میبینم و برای تمرین کردن با بروزر مشکل دارم تاprint(); رو مینویسم بروزر برام پرینت میکنه داخل خود بروزر نشون نمیده چیکار کنم که مشکلم حل بشه با تشکر

لقمان آوند

سلام
ربع ساعت اول جلسه 7 دوره رو ببینید. مشکل رو رفع کردیم اونجا.

shahriar rad

با سلام و درود
آقای آوند عزیز

آقای آوند من متوجه نشدم آخر سر که :
برای وارد کردن یک فایل جاوا در کل باید توی header نوشت یا ته body ، یعنی نرسیده به بسته تگ body

——
سوال دیگه ام اینه که مثلا برای وارد کردن کتابخانه جاوا باید کجا وارد کرد header یا Body

—–
ممنون بابت زحماتتان با تشکر

لقمان آوند

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

لقمان آوند

سلام
خود اون پنجره رو که نه نمی تونید . چون مربوط به مرورگر هست و نه سند html که قابل شخصی سازی باشه .
ولی میشه به کدهای جاوااسکریپت و html و css مشابهش رو ایجاد کرد . کتابخانه sweetAlert رو ببینید …

پایان زمان پشتیبانی

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

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

نیاز به لاگین

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