اقسام کی فہرست ایسی زبانوں میں سے ایک ہے جو استعمال کرتے ہیں جاوا اسکرپٹ پھانسی کے ماحول کے طور پر رن ٹائم: .میں فائلوں پر مشتمل فائلوں کو عام جاوا اسکرپٹ میں مرتب کیا جاتا ہے، جو اس کے بعد براؤزر کی طرف سے چل سکتا ہے.
جیریمی اشکن نے سب سے پہلے اس تصور کو اس کے تابوپ سکرپٹ زبان کے ساتھ مقبول بنا دیا، لیکن افسوس سے، اس کے نسبتا نسبتا نحویکس سی # یا بصری بیس سے واقف ہونے والے ڈویلپرز کے لئے سیکھنے کے لئے مشکل تھا.
جیسا کہ مائیکروسافٹ ویب 2.0 ٹیکنالوجیز میں توسیع کی گئی ہے، اس نے جیریمی اشکن سے حوصلہ افزائی کی. بصری سٹوڈیو کی صلاحیتوں کی وجہ سے، مختلف زبان کی توسیع سے فائدہ اٹھانے کے دوران ڈویلپرز کو آسانی سے ہیک کر سکتے ہیں.
اقسام جامد ٹائپنگ تک محدود نہیں ہے: یہ بھی اعلی درجے کی خصوصیات کی ایک قسم کے ساتھ آتا ہے جو آپ کو ویب پر اعتراض پر مبنی پروگرامنگ پیراگراف کو ضم کرنے کی اجازت دیتا ہے. یہ مختصر گائیڈ آپ کو اپنی کلیدی خصوصیات میں سے کچھ لے جائے گا. اگر زبان آپ کی درخواست کرتا ہے تو، مکھی پر مزید معلومات سیکھی جا سکتی ہیں.
اگرچہ قسمیں لکھنا بھی لینکس یا میکوس پر استعمال کیا جا سکتا ہے، ہم مائیکروسافٹ کے سرکاری IDE پر رہیں گے. بصری سٹوڈیو 2017 کے مفت کمیونٹی ایڈیشن ڈاؤن لوڈ کریں مائیکروسافٹ، یہاں ، اور تعیناتی کے دوران ASP.NET پے لوڈ کو نشان زد کرنے کے لئے اس بات کو یقینی بنائیں.
اقسام کی تیز رفتار رہائی کی وجہ سے، بصری سٹوڈیو کو SDK ماڈیول کے ساتھ وسیع کرنے کی ضرورت ہے، جو سے ڈاؤن لوڈ کیا جا سکتا ہے مائیکروسافٹ سائٹ یہاں . بس انسٹالر کو چلائیں جیسے یہ معیاری ونڈوز کی درخواست تھی.
اگر یہ ایرر برقرار رہے تو ہمارے ہیلپ ڈیسک سے رابطہ کریں. اس ویڈیو پر غلط استعمال کی اطلاع دیتے ہوئے ایرر آ گیا ہے. براہ مہربانی دوبارہ کوشش کریں. اگر یہ ایرر برقرار رہے تو ہمارے ہیلپ ڈیسک سے رابطہ کریں. غلط استعمال کی اطلاع دیتے ہوئے ایرر آ گیا ہے. براہ مہربانی دوبارہ کوشش کریں. اگر یہ ایرر برقرار رہے تو ہمارے ہیلپ ڈیسک سے رابطہ کریں. غلط استعمال کی اطلاع دیتے ہوئے ایرر آ گیا ہے. براہ مہربانی دوبارہ کوشش کریں. اگر یہ ایرر برقرار رہے تو ہمارے ہیلپ ڈیسک سے رابطہ کریں. غلط استعمال کی اطلاع دیتے ہوئے ایرر آ گیا ہے. یہ مسئلہ کمانڈ لائن پر NODE.JS کے NPM پیکیج مینیجر کا استعمال کرتے ہوئے یہ مسئلہ حل کیا گیا ہے.
پی ایس سی: \ صارفین \ tamha \ ڈاؤن لوڈز اور GT؛ این پی ایم انسٹال انسٹال کریں
C: \ صارفین \ tamha \ appdata \ roaming \ npm \ tsc - & gt؛ C: \ صارفین \ tamha \ appdata \ roaming \ npm \ node_modules \ اقسام کی قسم \ bin \ tsc
C: \ صارفین \ tamha \ appdata \ roaming \ npm \ tsserver - & gt؛ C: \ صارفین \ tamha \ appdata \ roaming \ npm \ node_modules \ اقسام \ bin \ tsserver
C: \ صارفین \ tamha \ appdata \ roaming \ npm
`- قسم کیپٹ2.4.2.
بصری سٹوڈیو ایک حل کے مرکز میں کام کرنے کی توقع رکھتا ہے: دلچسپ ہے، یہ ہماری ضروریات کے لئے مثالی سے کم ہے. اس کے بجائے، کارکن کے نام سے ایک فائل بنائیں اور آپ کے فائل کے نظام میں آسان جگہ میں رکھیں. اسے بصری سٹوڈیو میں گھسیٹنے سے اسے کھولیں، اور اسے ٹول بار کے اندر سب سے اوپر کے اندر چھوڑ دیں. اگلا، مندرجہ ذیل کوڈ شامل کرنے کے لئے اس کے مواد کو ترمیم کریں:
فنکشن Sayoi () {
انتباہ ("oi!")؛
}
Sayoi ()؛
جیسا کہ تعارف میں ذکر کیا گیا ہے، ایک .TS فائل اس پر زیادہ نہیں کر سکتا. اس کی وجہ سے، انڈیکس. html نامی فائل بنانے کے لئے آگے بڑھنا، جو اسی فولڈر میں واقع ہونا ضروری ہے. اگلا، اس مرحلے کے ساتھ دکھایا گیا کنکال کوڈ شامل کریں. یہ کمپائلر کی پیداوار کو لوڈ کرتا ہے، اور اس کے ساتھ چلتا ہے جیسے کہ یہ جاوا اسکرپٹ کا دوسرا تھوڑا سا تھا.
& lt؛ ایچ ٹی ایم ایل اور جی ٹی؛
& lt؛ سر اور جی ٹی؛
& lt؛ سکرپٹ SRC = "worker.js" & gt؛ & lt؛ / script & gt؛
& lt؛ / سر اور جی ٹی؛
& lt؛ جسم اور جی ٹی؛ & lt؛ / جسم اور جی ٹی؛
& lt؛ / ایچ ٹی ایم ایل اور جی ٹی؛
اگلے مرحلے میں .ts فائل کی دستی ریپولیشن شامل ہے. پاور سیسیل کھولیں، اور ان پٹ فائل کے نام کے بعد TSC کمانڈ درج کریں. پہلے سے طے شدہ طور پر، آؤٹ پٹ فائل بیس بیس نام کا اشتراک کرے گا، لیکن اس کے بجائے .js کے بجائے. آخر میں، پیغام باکس کی ظاہری شکل کو ثابت کرنے کے لئے انتخاب کے براؤزر میں index.html فائل کھولیں.
پی ایس سی: \ صارفین \ tamha \ ڈاؤن لوڈز اور GT؛ ٹی ایس سی. \ worker.ts
اب تک، اقسام نے زیادہ پیچیدہ جاوا اسکرپٹ ماحول کے طور پر کام سے زیادہ تھوڑا سا کام کیا ہے. اگلے مرحلے میں جامد ٹائپنگ کے لئے حمایت کو چالو کرنے میں شامل ہے: یہ کمپائلر کو پیرامیٹرز کے جامد تجزیہ انجام دینے کے قابل بناتا ہے، جو غلط اقدار کو برقرار رکھتا ہے. اس کے لئے، ایک قسم کی اقسام کی ضرورت ہوتی ہے - بنیادی اقسام مندرجہ بالا میز میں درج ہیں، جبکہ کلاس بعد میں تبادلہ خیال کریں گے.
قسم کی قسم متغیر قسم کی تفویض متغیر نام کے بعد رکھی گئی 'A:' کے ذریعے جگہ لے لیتے ہیں. ہمیں ایک بڑی تعداد میں لے جانے کے لئے ہمارے اوی فنکشن میں ترمیم کریں، اور اس کے بجائے ہمیں ایک تار میں منتقل کرنے دیں. آخر میں، TSC Compiler ایک بار پھر آپ کی آنکھوں کو مدعو کرنے کے لئے ایک بار پھر اسکرین شاٹ میں دکھایا گیا غلطی کے پیغام پر فخر کرنے کے لئے - بصری سٹوڈیو، تصادم، واضح طور پر، سوال میں لائن کو بھی اجاگر کرے گا.
فنکشن Sayoi (Whattosay: نمبر) {
انتباہ (Whatsay)؛
}
Sayoi ("ہیلو")؛
جاوا اسکرپٹ پروٹوٹائپ کے ذریعہ آبجیکٹ واقفیت کو لاگو کرتا ہے: کوڈ کا ایک انداز جو نیٹ اور سی / سی ++ دنیا میں غیر معمولی ہے. اقسام کی کلاسوں کی تخلیق کی اجازت دینے کی طرف سے اس مسئلے کو حل کرنے کی اجازت دیتا ہے - اس مرحلے کے ساتھ نمونے میں دکھایا گیا ایک عمل.
کلاس تصور کریں {
عوامی myresult: نمبر؛
عوامی میا: نمبر؛
عوامی myb: نمبر؛
تعمیر (_a: نمبر، _B: نمبر)
{
یہ myresult = _a + _b؛
یہ.mya = _a؛
}
}
عام طور پر، عوامی خصوصیت کا اعلان کیا جاتا ہے کہ ایک پروگرام کا ایک عنصر باہر سے قابل رسائی ہے. جب ایک تعمیراتی پیرامیٹر کے طور پر استعمال کیا جاتا ہے، تو اس کے بجائے اسی طرح کے ناموں کے ساتھ مقامی شعبوں کو تخلیق کرنے کے لئے اقسام کے مطابق کمپائلر ہدایت دیتا ہے.
کلاس تصور کریں {
عوامی myresult: نمبر؛
// پبلک میا: نمبر؛
تعمیر (پبلک میا: نمبر، پبلک _b: نمبر)
{
یہ myresult = mya + _b؛
یہ Mya = MYA؛
}
}
ہم اپنے مثال کے طبقے کو اس طرح سے فراہم کرتے ہوئے ایک طریقہ کے ساتھ فراہم کرتے ہیں جو Myresult اور Mya میں ذخیرہ کردہ اقدار تک رسائی حاصل کرتے ہیں، اور اسکرین پر ان کی پیداوار کرتے ہیں. آخر میں، نئے پیرامیٹر کلاس کی ایک مثال بنانے کے لئے استعمال کیا جاتا ہے - یہ طریقہ کار کو مدعو کرنے کے لئے استعمال کیا جاتا ہے.
کلاس تصور کریں {
عوامی myresult: نمبر؛
. . .
پبلک کا کہنا ہے کہ (): باطل {
انتباہ (یہ. Myresult)؛
}
}
MyMagine چلو: تصور کریں = نیا تصور (2، 2)؛
myimagine.saysome کچھ ()؛
اقسام کی قسم کی زبان کا ڈیزائن ڈویلپرز کو ممکنہ حد تک ممکنہ کوششوں کو بچانے کا ارادہ رکھتا ہے. ایک اچھی خصوصیت شارٹ کٹ کا استعمال کرتے ہوئے تخلیق کردہ پیرامیٹرز کی آٹو آبادی ہے.
کلاس تصور کریں {
عوامی myresult: نمبر؛
تعمیر (پبلک میا: نمبر، پبلک MYB: نمبر)
{
یہ myresult = mya + myb؛
}
پبلک کا کہنا ہے کہ (): باطل {
انتباہ (یہ.ma + "" + it.myb)؛
}
}
آبجیکٹ پر مبنی پروگرامنگ کے بنیادی اصولوں میں سے ایک میں ایک دوسرے کے سب سے اوپر کی کلاسوں میں شامل ہے. اس کے بعد حاصل کردہ کلاسیں ان کی بیس کلاس کے مواد کو اوور کر سکتے ہیں، لچکدار طور پر سایڈست طبقے کی درجہ بندی کی وجہ سے.
کلاس کا مستقبل تصور کرتا ہے
{
پبلک کا کہنا ہے کہ (): باطل {
کنسول. log (یہ.mya)؛
}
}
اوپر سے کوڈ کا ٹکڑا تصوراتی طبقے کو ایک ذیلی عنصر کے ساتھ مستقبل میں پیش کیا. مستقبل اس تصور سے مختلف ہے کہ اس کا کہنا ہے کہ اس کا کہنا ہے کہ، زیادہ تیار کیا جا رہا ہے، براؤزر کی کمانڈ لائن میں ایک پیغام کو کم کرتا ہے.
مماثلت کی اجازت دیں: تصور کریں = نیا مستقبل (2، 2)؛
myimagine.saysomething کچھ ()؛
چلو MyFuture: مستقبل = نیا مستقبل (9، 9)؛
myfuture.saysome کچھ ()؛
اس کے ساتھ، اصل کوڈ کا تجربہ کیا جا سکتا ہے. چلتے وقت، براؤزر کنسول میں مستقبل کے دو انوائسز شامل ہوں گے - اعلی درجے کی کلاس اس کی خصوصیات کو بھی رکھتا ہے یہاں تک کہ جب ایک تصوراتی اعتراض کے طور پر دعوت دی جاتی ہے.
عوامی ترمیم کے ساتھ اراکین متغیر کو بے نقاب غیر معمولی ہے: یہ، سب کے بعد، صارفین کو متغیر کے مواد کے ساتھ کیا کرنا ہے. اقسام کے آلات آپ کو روایتی OOP کی طرح ایک فیشن میں اس مسئلہ کے ارد گرد کام کرنے کی اجازت دیتا ہے. آگاہ رہو کہ پڑھنے والے ارکان کو بھی حمایت کی جاتی ہے، لیکن اس خصوصیت کا استعمال ECMASCOCT5 کی حمایت کی چالو کرنے کی ضرورت ہے.
عوامی _mycache: سٹرنگ؛
Fullcache حاصل کریں (): سٹرنگ {
اسے واپس لو.
}
Fullcache مقرر کریں (NEWX: سٹرنگ) {
اگر (NEWX == "ہیلو") {
یہ._mycache = newx؛
}
اور {
کنسول .log ("غلط ڈیٹا!")؛
}
}
پیچیدہ وراثت کے حیات پیدا کرنے کی صلاحیت ڈویلپرز کو خلاصہ کلاسوں میں اپنی قسمت کی کوشش کرنے کے لئے حوصلہ افزائی کرے گی. اقسام میں آپ نے اس سلسلے میں بھی احاطہ کیا ہے - اس مرحلے کے ساتھ مثال ایک خلاصہ اور ایک حقیقی رکن کے ساتھ ایک کلاس بناتا ہے. خلاصہ طبقے کو فوری طور پر ایک کمپائلر کی غلطی کی طرف اشارہ کرنے کی کوشش کر رہا ہے.
خلاصہ کلاس تصور کریں {
عوامی myresult: نمبر؛
خلاصہ Sayname (): باطل؛
تعمیر (پبلک میا: نمبر، پبلک MYB: نمبر) {
یہ myresult = mya + myb؛
}
پبلک کا کہنا ہے کہ (): باطل {
انتباہ (یہ.ma + "" + it.myb)؛
}
}
کلاس کا مستقبل تصور کرتا ہے {
. . .
پبلک sayname () {
کنسول .log ("ہیلو")؛
}
}
جیسا کہ آبجیکٹ ڈھانچے زیادہ پیچیدہ ہو جاتے ہیں، ڈویلپرز اکثر خود کو ایسے حالات کا سامنا کرتے ہیں جہاں ایک کلاس منطق کے ایک سے زیادہ بٹس کو لاگو کرتی ہے. اس صورت میں، ایک انٹرفیس ایک اچھا ورکشاپ کے لئے بنا دیتا ہے - مثال کے طور پر ظاہر ہوتا ہے کہ کیا امید ہے.
انٹرفیس Datainterface {
فیلڈ: نمبر؛
ورکشاپت (): باطل؛
}
جیسا کہ اوپر کلاس کے معاملے میں، ایک انٹرفیس ہمیں اچھا نہیں ہے اگر ہم اسے استعمال نہیں کرسکتے. خوش قسمتی سے، لاگو کرنے کے لئے یہ خاص طور پر مشکل نہیں ہے: آگاہ رہیں کہ انٹرفیس مصنفین کو مزید، ان کی تخلیق کے حصوں کا اعلان اختیاری ہونا چاہئے.
کلاس کارکن datainterface کو لاگو کرتا ہے {
فیلڈ: نمبر؛
ورکرمتھتھڈڈ (): باطل {
نئی غلطی پھینک دیں ("طریقہ کار لاگو نہیں.")؛
}
}
اقسام کے مطابق کمپائلر سخت متغیر کی توثیق کی جانچ پڑتال کرتا ہے. اسٹوریج کلاس پر کام کرتے وقت، جنریشن آپ کو اختتامی صارف کو سنبھالنے کی قسم کا تعین کرنے کی اجازت دیتا ہے. اس کے علاوہ، اقسام میں دیگر عام عناصر جیسے افعال کی اجازت دیتا ہے، جیسا کہ دستاویزات سے لے لیا جاتا ہے (ٹوتولوجیولوجی) کے ٹکڑوں میں دکھایا جاتا ہے.
// عام تقریب
فنکشن شناخت (Arg: نمبر): نمبر {
واپس rar
}
// عام کلاس
کلاس GenericNumber اور LT؛ T & GT؛ {
زرولیو: ٹی؛
شامل کریں: (x: t، y: t) = & gt؛ ٹی }
ریاستی مشینیں اور اسی طرح کے عناصر کو کچھ اچھی طرح سے بیان کردہ ریاستوں کو ذخیرہ کرنے کے لئے متغیر کو محدود کرنے کا راستہ رکھنے سے بہت فائدہ ہوتا ہے. یہ ENM ڈیٹا کی قسم کا استعمال کرتے ہوئے پورا کیا جا سکتا ہے:
ENUM Parserstate {
بیکار = 1،
Read0،
READ1.
}
کلاس تصور {
عوامی میتھیٹ: پیرس اسٹیٹ؛
تعمیر (پبلک میا: نمبر، پبلک MYB: نمبر)
{
یہ mystate = parserstate.idle؛
ایک ہی مضمون میں قسم کی قسم کے طور پر پیچیدہ طور پر ایک زبان کو ڈھکانا تقریبا ناممکن ہے. کی طرف دیکھو اقسام کی سائٹ کی مثالیں زبان بینڈنگ کے بارے میں مزید جاننے کے لئے.
یہ مضمون اصل میں مسئلہ 266 میں شائع کیا گیا تھا ویب ڈیزائنر ، تخلیقی ویب ڈیزائن میگزین - ماہر ٹیوٹوریل کی پیشکش، جدید رجحانات اور مفت وسائل. یہاں مسئلہ 266 خریدیں یا یہاں ویب ڈیزائنر کو سبسکرائب کریں .
خصوصی کرسمس کی پیشکش: ویب ڈیزائنر کے لئے رکنیت پر 49٪ تک محفوظ کریں آپ کے لئے یا کرسمس کے لئے دوست. یہ ایک محدود پیشکش ہے، لہذا جلدی منتقل کریں ...
متعلقہ مضامین:
ایک پرندوں کو اپنی طرف متوجہ کرنے کے بارے میں سیکھنا ایک شاندار پیدل ہوسکتا ہے. اگر آپ ..
نقشہ کی مثال گزشتہ چند سالوں میں ایک حقیقی ریگولیشن ہے. خشک گوگل نقشہ کے لئے ایک دلچسپ متبادل، واضح طور پر ..
انفینٹی ڈیزائنر میک، ونڈوز اور میک کے لئے ایک مقبول ویکٹر ایڈیشن کا آلہ..
زیادہ تر لوگ روزانہ صارف انٹرفیس دیکھتے ہیں، چاہے یہ ایک موبائل ایپ کے �..
صفحہ 1 کا 2: سنیما 4 ڈی کے ساتھ شروع کرنا سن..
ایڈوب نے آپ کی فوٹوشاپ لینے میں مدد کرنے کے لئے دو نئے ویڈیو سبق جاری کی�..
کارلوس Ortega Elizalde اور Lois Van Baarle کے تصوراتی، بہترین کردار آرٹ کی طرف سے حوص�..
آرٹ صرف تخلیق کرنے کے بارے میں نہیں ہے، یہ بھی اشتراک کرنے کے بارے میں ہے. ایک بار جب آپ نے ایک خوبصورت کام �..