نوشته‌ها

گوگل تگ منیجر

گوگل تگ منیجر |Google Tag Manager

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال (Rel Canonical) : در این مقاله قصد دارم به آموزش چگونگی ایجاد نگارش کنونیکال URL با استفاده از گوگل تگ منیجر و چگونگی درج آن برای هر صفحه از وب سایت بپردازم . برای آموزش این مبحث ، یک نگارش کنونیکال برای URL های سایت با استفاده از گوگل تگ منیجر ایجاد خواهم کرد .

چرا باید از نگارش کنونیکال استفاده کرد ؟

به طور خلاصه ، عوامل مختلفی ممکن است باعث شوند که گوگل نگارش ناخواسته ای از URL صفحات وب سایت ما را ضمیمه کند ، و اغلب این عوامل خارج از کنترل ما هستند :

•    سایت های دیگر که وب سایت ما را با URL دیگری نمایش می دهند (مانند کش خود گوگل و یا سایر موتورهای جست و جو) . به این ترتیب گوگل با استفاده از نگارش کنونیکال همواره می دانید که URL اصلی کدام است .

•    پارامترهایی که به سئو سایت / محتوا مربوط نمی شوند ، مانند فیلترهایی خاص و order sequences .

با استفاده از نگارش کنونیکال در URL های سایت ، تشخیص محتوای اصلی سایت برای گوگل را آسان تر می کنیم .

چگونه مقدار داینامیک نگارش کنونیکال URL را تولید کنیم ؟

برای تولید نگارش کنونیکال URL به صورت داینامیک باید آن را به تطابق همیشگی با URL تمیز هر صفحه اجبار کنیم .

به طور خلاصه به یاد داشته باشید که متغیرهای URL که توسط GTM (گوگل تگ منیجر) ایجاد می شوند همواره با مؤلفه های زیر تطابق دارند :

 

گوگل تگ منیجر

 

ما قصد داریم که برای هر صفحه یک URL منحصر به فرد ایجاد کنیم ، بدون کوئری و فرگمنت . به یک متغیر clean URL نیاز داریم و به دو دلیل نمی توانیم از متغیر built-in {{Page URL}} استفاده کنیم :

۱٫    اگر چه فرگمنت ها به طور پیش فرض یک بخش از URL ها نیستند ، اما پارامترهای رشته های کوئری چنین هستند .

۲٫    مواجهه با مشکلاتی با پروتوکل و نام هاست سایت ، اگر گزینه های دیگری نیز اعمال شوند (مانند SSL ، www ، …) .

بنابراین ، باید پروتوکل + هاست + مسیر صفحه را در یک متغیر واحد قرار دهیم .

حال قدم به قدم به بررسی چگونگی ایجاد متغیر {{Page URL Canonical}} خواهیم پرداخت .

ساختن {{Page Protocol}} برای کامپایل کردن آن بخش از URL که مشخص می کند پروتوکل سایت http:// یا https:// است

گوگل تگ منیجر

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

ایجاد {{Page Hostname Canonical}}

ما به یک متغیر نیاز داریم که همواره منحصرا  نام هاست را در خود داشته باشد ، چه با www در بروزر وارد شود چه بدون آن . کنونیکال نام هاست همواره باید یکسان باشد ، بدون در نظر داشتن اینکه دارای www می باشد یا نه .

چگونه دامنه کنونیکال را ایجاد کنیم ؟

راهکار اول : تغییر مسیر دامنه دارای www به دامنه بدون www توسط ۳۰۱ Redirect

در اینصورت URL کنونیکال ما بدون www. می باشد . نیاز داریم که {{Page Hostname}} را ایجاد کنیم ، اما باید دقت داشته باشیم که www. اول آن را حذف کنیم :

گوگل تگ منیجر

راهکار دوم : تغییر مسیر دامنه بدون www به دامنه دارای www توسط ۳۰۱ Redirect

در این حالت URL کنونیکال دارای www می باشد . ما باید {{Page Hostname}} را بدون www ایجاد کنیم ، و سپس www را توسط یک متغیر ثابت به اول آن درج کنیم :

 

گوگل تگ منیجر

 

فعال کردن متغیر built-in {{Page Path}}

گوگل تگ منیجر

ایجاد {{Page URL Canonical}}

سه متغیری که ایجاد کردیم را به یک دیگر متصل کنید تا یک متغیر ثابت را تشکیل دهید :

{{Page Protocol}}://{{Page Hostname Canonical}}{{Page Path}}

خلاصه ای از روش تشکیل نگارش کنونیکال URL :

۱٫    پروتوکل : مقدار http یا https بدون :// را برمی گرداند ، به همین دلیل باید آن را به طور دستی می ساختیم .

۲٫    نام هاست : می توانیم با www و یا بدون www آن را ایجاد کنیم .

۳٫    مسیر : مقدار آن از / شروع می شود . شامل کوئری نمی باشد ، پس بسیار مناسب است . برای ایجاد آن از متغیر built-in {{Page Path}} استفاده می کنیم .

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال URL (Rel Canonical URL)

چطور می توان با استفاده گوگل تگ منیجر ، نگارش کنونیکال را در یک صفحه درج کرد ؟

فرض کنیم URL کنونیکال را توسط GTM به صورت داینامیک تولید کردیم : {{Page URL Canonical}} .

حال باید ببینیم که چگونه می توانیم آن را توسط یک تگ GTM برای صفحات درج کنیم . البته باید تاکید کنم که این راه حل ایده آل نیست و همیشه ترجیح بر این است که لینک ها را در <head> قرار دهیم ، اما تجربه نشان داده است که با درج کردن آن توسط GTM نیز لینک عمل می کند .

اگر می توانستیم مستقیما توسط GTM محتوا را در <head> قرار دهیم ، تنها با اضافه کردن تگ زیر مسئله حل می شد :

</{link href=”{{Page URL Canonical}>

اما ما می دانیم که محتوای درج شده در تگ های HTML همیشه در انتهای <body> خوانده می شوند ، پس بنابراین گوگل تگ لینک ما را نخواهد خواند . در نتیجه می توانیم هنگام طراحی سایت با استفاده از تکه کد جاوااسکریپت زیر ، تگ را تولید کرده و در <head> درج کنیم :

<script>
var c = document.createElement(‘link’)
.c
c.href = {{Page URL Canonical}}
document.head.appendChild(c)
</script>

و در آخر نیز آن را برای تمام صفحات فعال می کنیم :

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال URL (Rel Canonical URL)

چگونه بررسی کنیم که آیا نگارش کنونیکال به درستی عمل می کند یا نه ؟

بسیار ساده است : بررسی کنید که آیا کد مد نظر در صفحه وجود دارد یا نه . کافیست نوار ابزار (Developer Tools) بروزر خود را باز کنید و صفحه را بررسی (Inspect) کنید . برای اینکار ، در بروزر خود :

۱٫    دکمه F12 را فشار دهید .

۲٫    بر روی اولین تب کنسول کلیک کنید (در firefox ، نام آن Inspector است و در Chrome ، Elements) .

گوگل تگ منیجر

۳٫    Ctrl+F را بزنید و عبارت “Canonical” را جست و جو کنید .

۴٫    اگر تگ link کنونیکال را در انتهای <head> مشاهده کردید ، پس کد مد نظر شما به درستی تولید شده است وعمل می کند .

 

گوگل تگ منیجر

به همین راحتی !

ایجاد نویگیشن

ایجاد نویگیشن وب سایت (navigation) با استفاده از تگ nav

ایجاد نویگیشن وب سایت (navigation) با استفاده از تگ <nav> : با آمدن تکنولوژی HTML5 ، در زبان اسکریپتی HTML پیشرفت و بهبود چشمگیری ایجاد شد . یکی از این تغییرات بزرگ که در صنعت طراحی وب همراه با این تکنولوژی حاصل شد ، معناگرا شدن دنیای وب است . در عصر حاضر ، به فضای وبی که در اختیار ما می باشد اصطلاحا نسل سوم وب یا به عبارت بهتر وب معنایی (Semantic Web) اطلاق می شود . از جمله ویژگی های HTML5 این است که تعداد زیادی تگ معنایی به تکنولوژی HTML اضافه کرده است و همچنین تعدادشان در حال افزایش است . از آنجایی گفته شده پس از HTML5 نسخه دیگری از HTML نخواهد آمد و سایر تغییرات و به روز رسانی های آینده این تکنولوژی به صورت جزیی و موردی به آن اضافه می شود ، بهتر است برای طراحی سایت بهینه و به روز ، طراحان سایت در بازه های زمانی مختلف آخرین تغییرات و به روز رسانی های این تکنولوژی را بررسی کنند . لازم به ذکر است که استفاده از ویژگی های به روز تکنولوژی های طراحی سایت بسیار در بهینه سازی سایت برای موتورهای جست و جو یا هما سئو سایت (SEO: SearchEngineOptimization) حائز اهمیت و مفید می باشد و پس از نسخه HTML5 استفاده از تگ های معنایی تبدیل به یک امر واجب در طراحی سایت شده است .

 

ایجاد نویگیشن

 

یکی از تگ های معنایی جدید که در HTML5 معرفی شد و بسیار مورد استفاده قرار می گیرد و از اجزاء اصلی هر وب سایت است ، تگ <nav> می باشد که به شما این امکان را می دهد تا لینک های نویگیشن وب سایت خود را گروه بندی کنید و از نظر ساختاری بسیار به مفهومی تر شدن کدها و قالب سایت کمک می کند . در این مقاله به طور خاص تگ <nav> و مشخصه ها و طرز استفاده آن در ساختار قالب سایت را بررسی خواهیم کرد .

چطور از تگ <nav> استفاده کنیم ؟

در نگاه اول استفاده از آن بسیار ساده به نظر می رسد ، اما نوع استفاده از آن باید با کمی دقت انجام شود و این تصمیم به عهده توسعه دهنده سایت می باشد .
اغلب توسعه دهندگان front-end وب سایت عادت کرده اند که نویگیشن سایت را به این صورت ایجاد کنند :

<div id=”nav”>
<ul>
<li><a…. etc

یا

<ul id=”mainNav”>

حال با استفاده از <nav> میتوانید با کمی تغییر در کد خود ، نویگیشن سایت را به این صورت بنویسید :

<nav>
<ul>
<li><a href=”/index.html”>Home</a></li>
<li><a href=”/about/”>About</a></li>
<li><a href=”/blog/”>Blog</a></li>
</ul>
</nav>

مشخصه های تگ <nav>

در داکیومنت های ارائه شده برای HTML5 ، تگ <nav> به این صورت تعریف شده است :

” المانی در صفحه وب که در تگ <nav> قرار دارد معرف بخشی از صفحه است که حاوی لینک های نویگیشن سایت به داخل همان صفحه یا صفحات دیگر سایت می باشد .باید در نظر داشت که همه لینک های موجود در صفحات یک وب سایت ، نویگیشن سایت محسوب نمی شوند و تنها استفاده از این تگ برای بلاک هایی که دارای تعداد زیادی لینک داخلی هستند مناسب است . به عنوان مثال معمول است که در قسمت پایینی هر وب سایت (footer) ، تعدادی فهرست وجود دارد که بخش های اصلی سایت لینک شده اند ؛ طبیعتا برای این فهرست ها استفاده از تگ <footer> بسیار مناسب تر و معنایی تر از استفاده از <nav> می باشد . به طور کلی از <nav> معمولا برای لینک های موجود در فهرست نویگیشن هدر سایت (header) استفاده می شود . ”

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

<body>
<header>
<h1>Wake up sheeple!</h1>
<p><a href=”/news.html”>News</a> –
<a href=”/blog.html”>Blog</a> –
<a href=”/forums.html”>Forums</a></p>
<p>Last Modified: <time>2009-04-01</time></p>

<nav>
<h1>Navigation</h1>
<ul>
<li><a href=”/articles.html”>Index of all articles</a></li>
<li><a href=”/today.html”>Things sheeple need to wake up for today</a></li>
<li><a href=”/successes.html”>Sheeple we have managed to wake</a></li>
</ul>
</nav>

</header>
<article>
<p>…page content would be here…</p>
</article>
<footer>
<p>Copyright © ۲۰۰۶ The Example Company</p>
<p><a href=”/about.html”>About</a> –
<a href=”/policy.html”>Privacy Policy</a> –
<a href=”/contact.html”>Contact Us</a></p>
</footer>
</body>

در مثال بالا شش لینک در <header> قرار دارد که تنهای سه تای اول آن در <nav> قرار دارد ، در حالی که هر شش لینک به صفحات داخل خود آن وب سایت لینک شده اند . برای این مسئله نمی توان دلیل خاصی ذکر کرد و این به تشخیص خود توسعه دهنده است که کدام فهرست لینک های داخلی سایت را به عنوان نویگیشن در نظر بگیرد . به مثال دوم توجه کنید :

<body>
<h1>The Wiki Center Of Exampland</h1>

<nav>
<ul>
<li><a href=”/”>Home</a></li>
<li><a href=”/events”>Current Events</a></li>
…more…
</ul>
</nav>

<article>
<header>
<h1>Demos in Exampland</h1>

<nav>
<ul>
<li><a href=”#public”>Public demonstrations</a></li>
<li><a href=”#destroy”>Demolitions</a></li>
…more…
</ul>
</nav>

</header>
<section id=”public”>
<h1>Public demonstrations</h1>
<p>…more…</p>
</section>
<section id=”destroy”>
<h1>Demolitions</h1>
<p>…more…</p>
</section>
…more…
<footer>
<p><a href=”/?edit”>Edit</a> | <a href=”/?delete”>Delete</a> | <a href=”/?Rename”>Rename</a></p>
</footer>
</article>
<footer>
<p><small>© copyright 1998 Exampland Emperor</small></p>
</footer>
</body>

در این مثال به طور واضح تری مشخص شده است که بهتر است کدام فهرست لینک های سایت را به نویگیشن اصلی در نظر گرفت و داخل <nav> قرارشان داد .

کجا از تگ <nav> استفاده کنیم ؟

اگر به منبع کد اغلب صفحات وب نگاهی بیندازید ، میبینید که در اکثر آن ها از تگ <nav> در هدر سایت (برای نویگیشن منو اصلی) و در بالای فوتر سایت (برای صفحه بندی یا به اصطلاح پیجینیشن) استفاده شده است .

همچنین با نگاهی بر محتوای وب سایت ها ، جای بحث است که آیا از این تگ برای لینک های فهرست های جانبی و مطالب اخیر سایت نیز استفاده کنیم یا نه . آیا شما اینکار را می کنید ؟ در حقیقت باید گفت که لینک های موجود در فهرست های جانبی صفحات سایت و یا لینک های مطالب اخیر و … را نمی توان به عنوان نویگیشن اصلی سایت در نظر گرفت . اما ممکن است توسعه دهنده ای این فهرست ها را به عنوان نویگیشن اصلی در نظر بگیرید و بنا به تشخیص خودش آن فهرست ها را درون <nav> قرار دهد .

سایر مواردی که می توان از تگ <nav> استفاده کرد

در این قسمت نیز به چند مورد از سایر حالت هایی که می توانیم <nav> را مورد استفاده قرار دهیم اشاره خواهم کرد :

•    جدول محتوا
من قطعا در این بخش از سایت از <nav> استفاده می کنم ! چون این بخش جزء نویگیشن اولیه و اصلی آن صفحه از سایت محسوب می شود .

•    دکمه های قبلی / بعدی (صفحه بندی یا پیجینیشن سایت)
در این مورد هم توصیه می شود از <nav> استفاده کنید چرا که پیجینیشن سایت در     ساختار کلی و سلسله مراتب صفحات آن بسیار موثر و مهم است .

•    فرم جست و جو
یک فرم جست و جو در نویگیشن سایت بسیار مهم است ، به ویژه سایت های بزرگ و     حجیم که وابستگی زیادی به موتور جست و جویشان دارند .

•    نویگیشن ثانویه یا به اصطلاح BreadCrumbs
در مورد این بخش از سایت نیز به طور قطع از <nav> استفاده می کنم ! با اینکه نویگیشن ثانویه یک بخش اختیاری و غیرضروری است ، اما در سایت های بزرگ که تعداد صفحات زیادی دارند ، استفاده از BreadCrumbs می تواند یک بخش مهم برای بهبود نویگیشن سایت برای کاربران محسوب شود .

تفاوت بین تگ های <nav> و <menu>

اگر نمی دانستید ، لازم است بگویم که در HTML5 تگ دیگری مشابه تگ <nav> وجود دارد که کمی باعث سردرگمی می شود – و آن تگ <menu> است . برخی از توسعه دهندگان برای ایجاد نویگیشن سایت از تگ <menu> به جای <nav> استفاده می کنند . بهتر است بگویم که <menu> بیشتر برای فهرستی از دستورات مناسب است و به عنوان یک المان اینتراکتیو به طور ویژه در وب اپلیکیشن ها مورد استفاده قرار می گیرد . سعی میکنم در مقاله ای دیگر به توضیح بیشتر درباره تگ <menu> نیز بپردازم .

و در آخر …

با استفاده از اطلاعاتی که از سوال و جواب های مربوط به HTML5 در فروم های رسمی ، و همچنین با کمک گرفتن از کامیونیتی طراحان وب ، می توانید راه کارها و راهنمایی های بیشتری درباره طرز استفاده از تگ های جدید HTML ، به ویژه درباره تگ <nav> و ایجاد نویگیشن وب سایت که در این مقاله مورد بحث بود ، در طراحی سایت خود دریافت کنید .
به عنوان کلام آخر باید گفت که در صنعت وب همیشه باید سعی کنیم که به روز باشیم و با استفاده از آخرین تکنولوژی های موجود کار خود را پیش ببریم .

آموزش html

آموزش html | طراحی وب سایت

بخش اول :

نگاه کلی

اچ تی ام ال چیست ؟

 

 

آموزش html 

به html  خوش امدید !

Html  مخفف شده ی Hyper Text Markup Language است .

•    Hypertext:بر میگردد به اینکه کدام صفحات وب با هم لینک شده اند و سپس لینک در دسترس در صفحه وب HyperText نامیده می شود .

•    MarkupLanguage: به این معنی که شما از Html استفاده می کنید تا به آسانی محتوای متن را با تگ ها mark up  کنید ( برچسب بزنید ) که به مرورگر وب بگویید چگونه ساختار را نشان دهد .

ساختار وب :

توانایی کدنویسی با Html برای هر علاقه مند به طراحی سایت ضروری است . به دست آوردن این مهارت باید نقطه شروع برای هر کسی باشد که به دنبال آموزش تولید محتوا برای وب است .

ساختار وب مدرن

Html: ساختار

Php or similar: backend

Css: نمایش

cms: مدیریت محتوا

Javascript: رفتار

ساختار ابتدایی Document Html

اگرچه طی سالها ورژن های مختلفی از Html منتشر شده ، اما اصول مبتدی Html  تغییری نکرده است .

یک زبان Markup از تگ استفاده می کند .

برای مثال < p> یک تگ Html است ، برای تعریف یک پاراگراف به کار برده می شود .

تگ ها در اچ تی ام ال ۲  قسمت دارند .

۱) تگ باز یا آغازین         ۲ ) تگ بسته یا پایانی

Example 1

<p> I am a paragraph </p>

در مثال بالا <p> تگ باز است و p>/> تگ بسته .

تگ <Html>  هر برنامه ای که با زبان Html  نوشته می شود با تگ <Html> شروع و با تگ <Html/> پایان می یابد .

Example 2)
<html> …. </html>

تگ <head> بلافاصله پس از < html> با تگ <head> مواجه می شویم . این تگ تمام عناصری که نادیدنی هستند و به ساخت صفحه کمک می کنند را شامل می شوند .

Example3

<html>
<head>
</head>
</html>

تگbody>> در ادامه ی تگ <head> می آید . تمام عناصر قابل رویت از جمله سر تیترها ، پاراگراف ها ، لیست ها ، متن ها ، عکس ها و … فقط بخش کوچکی از عناصری هستند که در این تگ قرار می گیرند .

Example 4

<html>
<head>
</head>
<body>
<p> I am a paragraph </p>
</body>
</html>
تگ <title>  در نوار شرح ، نمایان کنید .
عنصر < title> در بدنه ی تگ < head>  قرار می گیرد .
Example 5)
<html>
<head>
<title>
Professorweb example
</title>
</head>
<body>
<p> I am a paragraph </p>
</body>
</html>

اولین صفحه html خود را بسازید
فایل های Html فایل های متنی هستند ، بنابراین شما از هر texteditor  یا برنامه ی ویرایش متنی میتوانید متنی میتوانید برای نوشتن اولین صفحه ی وب خود استفاده کنید .
برنامه های ویرایش متن متنوعی وجود دارند ، ما برای آغاز Notepad پیشنهاد می کنیم .

Example 5

<html>
<head>
<title>
My first example
</title>
</head>
<body>
<p> this is my first html code.</p>
</body>
</html>

کد بالا را در notepad وارد می کنیم .
فایلمان را با پسوند htm. یا .html ذخیره میکنیم ، برای مثال ما فایلمان را با نام first.html ذخیره میکنیم . حال می توانیم نتیجه را در مرورگر ببینیم .

اولین بخش html تموم شد
باتشکر از نگاه گرمتان  با ما همراه باشید .  فعلا …


بخش دوم :

اصول ابتدایی Html

تگ <br/>
با قرار دادن تگ <br/> در یک پاراگراف میتوانیم ادامه ی مطلب را به خط بعدی منتقل کنیم .

Example 6

<html>
<head>
<title>
My first example
</title>
</head>
<body>
<p> this is my first code with html tutorial ifeel that<br/> ilove be a programmer.</p>
</body>
</html>

نتیجه ی کد بالا :

تفاوت <br/> با پاراگراف های جداگانه :

Example 7

<html>
<head>
<title>
My first example
</title>
</head>
<body>
<p> this is a paragraph.</p>
<p>this is another paragraph.</p>
<p>this is<br/> a line break.</p>
</body>
</html>

همانطور که مشاهده می کنید تگ < br/> فقط ادامه ی مطلب را به خط بعد منتقل میکند در صورتی که تعریف پاراگراف جدید با تگ <p>  یک خط فاصله قبل و بعد از پاراگراف ایجاد میکند .

استفاده از تگ <h1><h2><h3><h4><h5><h6>  در طراحی سایت

این تگ برای عنوان گذاری به کار میرود ۶ سایز مختلف دارد . تگ <h1> بزرگترین و <h6> کوچکترین است . این تگ نیز یک سطر فاصله قبل و بعد از پاراگراف ایجاد میکند .

Example8
<html>
<head>
<title>
My first example
</title>
</head>
<body>
<h1>this is my first html code.</h1>
<h2>this is my first html code.</h2>
<h3>this is my first html code.</h3>
<h4>this is my first html code.</h4>
<h5>this is my first html code.</h5>
<h6>this is my first html code.</h6>
</body>
</html>

نتیجه کد بالا :

قالب بندی متنها  در آموزش Html:

عناصر قالب بندی :

در html عناصری مخصوص به قلم نوشته وجود دارند که با مثال آنها را معرفی میکنیم :

Example9

<html>
<head>
<title>
My first example
</title>
</head>
<body>
</p>
این یک متن معمولی است. <p>
</b></p>
این یک متن bold شده است. <p><b>
</big></p>
این یک متن بزرگ شده است. <p><big>
</i></p>
این یک متن به سبک ایتالیک است. <p><i>
</small></p>
این یک متن کوچک شده است. <p><small>
Strong text </strong></p> <p><strong>
<p><sub>  subscripted text</sub></p>
<p><sup> supscripted text <sup></p>
<p><ins>inserted text</ins></p>
<p><del> deleted text</del></p>
</body>
</html>
خط افقی <hr/>
Example10)
<html>
<head>
<title>
My first example
</title>
</head>
<body>
<p>this is my first html code.</p>
<hr />
<p> this is a paragraph</p>
</body>
</html>

دومین بخش آموزش html به پایان رسید .

با تشکر از نگاه گرمتان با آموزش html با ما همراه باشید . فعلا .


 

وضعیت فعلی و آینده صنعت بازی سازی با تکنولوژی های HTML5 / JavaScript

وضعیت فعلی و آینده صنعت بازی سازی با تکنولوژی های HTML5 / JavaScript :   بازی های بروزری به طور عمده توسط تکنولوژی فلش (Flash) توسعه یافته اند . به هر حال ، محصولات ساخته شده با اسکریپت HTML5 نیز به طور روز افزون در حال افزایش هستند . چه دلیلی پشت این محبوبیت رو به رشد این تکنولوژی است و چرا بیشتر بازی سازها در کار خود تکنولوژی HTML5 را جایگزین Flash می کنند ؟

پیش از دادن پاسخ به این سوال ، لازم است یک توضیح مختصری ارائه کنم :

HTML5 یک زبان برنامه نویسی نیست (علارغم به کار بردن عبارت ” اپلیکیشن های HTML5 ” ، بازی ها با زبان برنامه نویسی جاوااسکریپت ساخته می شوند) ، اما این زبان اسکریپتی دارای APIهای جدیدی مانند Canvas , WebGL , WebAudio , … می باشد که این ها باعث می شوند تا بازی به خوبی در بروزر اجرا شود .

اساس بازی Canvas است که ما با استفاده از آن نقاشی می کنیم ، این عنصر ویژه استفاده از گرافیک های برنامه نویسی در نمایشگرها را امکان پذیر می سازد . به علاوه ، با کمک WebGL ، Canvas برنامه نویس را قادر می سازد تا گرافیک هایی که توسط سخت افزار GPU اجرا می شوند را رسم و پیاده سازی کنیم . علاوه بر این ها ، WebGL که بر اساس OpenGL ES 2.0 ایجاد شده ، واسط های گرافیکی دو و سه بعدی نیز ارائه می کند . با توجه به تمام این امکانات ، بازی های HTML5 می توانند بسیار کارآمد ، لذت بخش و سرگرم کننده و در عین حال بسیار فراگیر شوند .

 

طراحی سایت

چرا تکنولوژی فلش (Flash) در حال جایگزینی با HTML5 در طراحی سایت است ؟

ممکن است بگویید که امکانات ارائه شده توسط HTML5 ، توسط فلش نیز ارائه می شود . در این صورت ، چرا با HTML5 بازی بسازیم ؟ با مطالعه نقاط قوت و ضعف هر دو تکنولوژی که در ادامه مقاله برای شما لیست کرده ام ، می تواند پاسخ این سوال را مشخص کند .

نقاط قوت و مزایای HTML5 :

  1. به طور مستقیم و بدون نیاز به هیچ پلاگین و افزونه اضافی ، بر روی بروزر کار می کند .
  2. یک منبع کد اجازه اجرای بازی بر روی تمام دستگاه هایی که از HTML5 پشتیبانی می کنند را می دهد .
  3. اجازه ساخت بازی برای هر دو پلتفرم موبایل ها و رایانه ها را می دهد .
  4. دارای جامعه ای گسترده ، رو به رشد و پویا .
  5. نیازی به نصب بازی بر روی دستگاه نیست .
  6. ارائه دهنده امکاناتی برای ساخت بازی های چند نفره (Multiplayer) با استفاده از ، مثلا تکنولوژی وب سوکت ها (WebSockets) برای ارتباطات Client-Server .

معایب و نقاط ضعف HTML5 :

  1. کمبود و نقص در پشتیبانی از WebGL بر روی دستگاه های موبایل .
  2. هنوز برخی از مشخصه های آن دارای نواقصی هستند .
  3. نقص کاربری در موبایل ها ، در صورتی که بازی بهینه سازی نشده باشد .

مزایای تکنولوژی فلش – Flash/AS3 :

  1. تکنولوژی با قدمت و دارای قدرت بالا در نمایش گرافیک ها .
  2. دارای تعداد زیادی ابزار پشتیبانی ساخت اپلیکیشن .
  3. پلاگین Flash Player که اجازه اجرای بازی در هر دستگاهی را می دهد .
  4. تکنولوژی AIR که اپلیکیشن ها را به اپلیکیشن های نیتیو (native) برای موبایل ها و رایانه ها رپ (wrap) می کند .

معایب تکنولوژی فلش در طراحی سایت :

  1. پلاگین آن پشتیبانی ضعیفی در موبایل ها می شود . سیستم iOS به کلی از آن پشتیبانی نمی کند .
  2. ضعف کارکرد تکنولوژی AIR در موبایل ها .

پس تکنولوژی فلش در مقایسه با HTML5 خیلی هم ضعیف نیست !؟

فلش برای بازی سازی در محیط بروزر بسیار مناسب است ، اما کاربری آن تنها در رایانه های شخصی تضمین شده است . همچنین این تکنولوژی امکانی علاوه بر امکاناتی که HTML5 در اختیار بازی ساز می گذارد ارائه نمی کند و برای بهره وری از آن حتما باید پلاگینش را بر روی بروزر نصب کرده باشیم .
علی رغم توسعه و سیر تکاملی بازی سازی ، به نظر می رسد که فلش دیگر برای ساخت بازی روی بروزرها و موبایل ها ، تکنولوژی پیشتاز نیست .

اما چرا HTML5  را باید بیشتر در طراحی سایت مورد استفاده قرار بدیم؟

طی کنفرانس فناوری GDC 2014 Unity ، شرکت ارائه دهنده موتورهای بازی سازی و گرافیک ۳D و ۲D ، نسخه جدید این سرویس خود را رونمایی کرد .
در Unity 5 ، پلاگین Unity Player که اجازه اجرا بازی ها در بروزر را می دهد و در آن موتور بازی سازی توسعه یافته بود با HTML5 exporter که با WebGL ایجاد شده است ، جایگزین شد .

 

طراحی سایت با استفاده از html5
علاوه بر آن ، شرکت Epic Games بر روی موتور بازی سازی خود یعنی Unreal نیز کار کرده است تا در زمانی نزدیک آن هم از تکنولوژی HTML5 بهره ببرد . در آخرین نسخه این موتور بازی سازی – Unreal Engine 4 – پشتیبانی از HTML5 ارائه شده است .
از این موتورهای بازی سازی نیز بگذریم ، بسیاری فریم ورک و ابزار پیشرفته نیز برای توسعه بازی با استفاده از HTML5 و JavaScript توسط توسعه دهندگان حرفه ای ارائه شده است . تعدادی از این ابزار معروف و رایج :

Pixi.js – Phaser – Construct 2 – ImpactJS – Babylon – Turbulenz – …

 

طراحی سایت با استفاده از html5

بازی های بیشتری به طور روز افزون وارد بازار می شوند و سازندگان آن ها تلاش می کنند تا حتی المقدور برای اکثر دستگاه ها و پلتفرم ها ، بازی هایشان را بهینه سازی کنند . امروزه بازی های HTML5 نه تنها در رایانه های شخصی و سیستم عامل های Mac و iOS و اندروید ، بلکه در سیستم عامل Firefox ، Tizen و تمام سیستم هایی که از استانداردهای HTML5 پشتیبانی می کنند ، قابل اجرا و کاربری هستند .

خلاصه ای از مطالب مذکور درباره بازی سازی با تکنولوژی های HTML5 و JavaScript

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

Html5gamedevs.com
Html5gameengine.com
Gamedevelopment.tutsplus.com
Casualarena.com

منبع: سئو سایت و پشتیبانی سایت طراحی سایت وب نوش

html6

آیا در آینده HTML6 نیز خواهیم داشت ؟

آیا در آینده HTML6 نیز خواهیم داشت ؟ : دنیای طراحی وب دائما در حال پیشرفت و ارتقاء است . مثلا حدود ۱۰ سال پیش ، راه و روش هایی چون طراحی سایت ریسپانسیو ، یا تصاویر SVG (SVG Images) ، و یا حتی وب فونت ها (Web Fonts) ، … جزئی از فهرست مهارت های ضروری یک طراح وب سایت نبودند ، اما امروزه اینطور نیست و تمام این مهارت ها ضروری هستند و نقش مهمی در در ساخت یک وب سایت ایفا می کنند .

html6

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

یکی از پیشرفت های اخیر صنعت طراحی وب که تاثیر چشمگیری بر کار طراحی سایت داشته ، معرفی HTML5 است . این نسخه جدید از زبان نشانه گذاری ابر متن (HyperText Markup Language) عناصر ساختاریافته جدیدی از جمله ورودی فرم های جدید و تعدادی ویژگی پیشرفته دیگر که مناسب برای ساختن وب اپلیکیشن ها است ، مانند دخیره سازی لوکال ، drag and drop ، … را در اختیار طراحان وب سایت قرار داده است .

در سال های اخیر پس از آمدن HTML5 ، به ندرت طراحی را می یابید که از این نسخه جدید HTML استفاده نکند . حال پرسشی که مطرح است این است که ” آیا در آینده HTML6 نیز خواهیم داشت ؟ ” پاسخ این سوال هم بله و هم خیر است . در ادامه این مطلب به توضیح بیشتر درباره این موضوع خواهیم پرداخت .

حالت و مشخصات ساختار HTML

در سال های اخیر ، طراحان وب سایت HTML را با استفاده از امکاناتی که نسخه های جدید آن در اختیارشان قرار داده ، توسعه داده اند ( مانند HTML4 , HTML5 , …) . بنابراین ، وقتی نسخه جدیدی منتشر می شود که دارای ویژگی ها و امکانات پیشرفته و مورد نیاز طراحان وب نیست ، باید منتظر انتشار نسخه بعدی بمانند که این امر موجب به ثمر نرسیدن طرح مطلوب آن ها می شود .

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

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

پس تکلیف HTML6   در طراحی سایت چه می شود ؟

برگردیم به موضوع مقاله ، آیا HTML6 منتشر خواهد شد ؟ . علت اینکه در مقدمه مطلب گفتم جواب این سوال هم بله و هم خیر است ، این است که دیگر نسخه های بعدی این زبان به طور رسمی و شماره بندی شده منتشر نخواهند شد و امکانات جدید این زبان در آینده به طور آنی به آن اضافه و قابل استفاده خواهند شد . پس نبودن نسخه بعدی ، یعنی HTML6 ، به معنی توقف پیشرفت این تکنولوژی و نسخه HTML5 نیست .

در حقیقت ، تعدادی پیشرفت و تغییر اساسی در تکنولوژی HTML پس از آمدن HTML5 در سال های اخیر رخ داده است . این علت ” بله ” بودن آن پرسش است ، چرا که به طور حتمی پیشرفت های تازه زبان HTML همچنان جای بهبود و پیشرفت بیشتر پیدا کردن را دارد ، تنها دیگر برچسب شماره بندی شده (مثلا HTML6) بر روی پیشرفت های آتی این تکنولوژی نخواهد بود .

زبان HTML که در حال حاضر مورد استفاده قرار گرفته است ، در واقع دیگر HTML5 نیست ، اما چون این عبارت در بین طراحان وب سایت رایج و مصطلح شده است ، همچنان این واژه را برای بیان اینکه از به روزترین امکانات تکنولوژی HTML استفاده می کنند ، به کار می برند . بنا به همین دلیل ، هنوز در آگهی های اعلام فرصت های شغلی می بینید که برای استخدام یک توسعه دهنده قالب وب سایت (front-end developer) از عبارت ” مسلط به HTML5 ” استفاده می کنند و این مهارت را ضروری می دانند ؛ در صورتی که با توجه به مطالبی که تا اینجا درباره HTML گفته شد و همینطور در نظر گرفتن مدل فعلی توسعه آن پس از HTML5 که به مدل توسعه آنی تغییر یافته است ، ضروری دانستن داشتن مهارت به کار بگیری صحیح تکنولوژی HTML در طراحی و توسعه وب سایت بیانی صحیح و مناسب به ویژه در آگهی های استخدام و فرصت های شغلی است .

مطالعه بیشتر در زمینه تکنولوژی HTML در طراحی سایت

برای عزیزان علاقه مند به کار در زمینه وب و طراحی سایت ، برای شروع کار و یادگیری مهارت های پایه ای در این تخصص ابتدا فراگیری تکنولوژی HTML توصیه می شود . برای مطالعه درباره این زبان ، وب سایت رسمی و جهانی استانداردهای وب به آدرس www.w3.org توصیه می شود و جهت یادگیری اسکریپت های آن می توانید از وب سایت های آموزشی موجود در فضای وب ، مانند w3schools.com , beyamooz.com , codeacademy.com , … وسایر منابع آموزشی موجود به طور رایگان استفاده کنید .