زدن و خوردن
خانه اشغال شده توسط یک مهره، تک نامیده میشود. اگر حریف روی مهره تک بیاید، آن مهره را میزند و جای آن قرار میگیرد و مهره خورده شده روی "بار" قرار میگیرد.
تا زمانی که یک بازیکن یک یا چند مهره بر روی بار دارد، باید نخست آنها را وارد بازی کند. هنگامی که نوبت اوست، با توجه به عدد روی تاسش، مهره بیرون را در خانه بازی از ناحیه خودی حریف قرار میدهد. به عنوان مثال، اگر یک بازیکن یک مهره در بار دارد، و تاسش ۴ و ۶ دارد، میتواند مهره اش را بر روی هر دو خانه چهار یا شش ناحیه خودی حریف قرار دهد به شرطی که آن خانهها باز باشند.

اگر هیچ خانهای باز نباشد، بازیکن نوبت خود را از دست میدهد. ولی باید تا آنجا که میتواند مهرههایش را وارد کند و بقیه را برای نوبت بعدیش بگذارد. پس از آنکه آخرین مهره خورده شده وارد بازی شد، بازیکن به بازی عادی خود ادامه میدهد و اگر از تاسش چیزی باقیمانده باشد، آن را بازی میکند. قانون: در ۶ خانه اخر نمیتوان مهرهٔ حریف را زد و سپس آن را روی مهرههای دیگر خودی قرار داد. ولی همواره میتوان مهره حریف را زد و سپس آن را در دیگر خانههای خالی حرکت داده و یا حتی مهره دیگری از حریف را زد.
خارج کردن
زمانی که تمام مهرهها را در ناحیه خودی (۶خانه سمت راست تخته) جمع کردید، حالا نوبت به آن رسیدهاست که مهرههای خود را از بازی خارج کنید و برای خارج کردن مهره از بازی، شما باید تاسها را بیندازید و به ازای هر شماره تاس، یک مهره از بازی خارج کنید. مثلاً اگر شما ۵و۲ بیاورید، باید یک مهره از خانه شماره ۵ و یک مهره از خانه شماره ۲ خارج کنید و اگر در خانههای ۵و۲ هیچ مهرهای نبود باید با دیگر مهرهها این تاسهای ۵و۲ را بازی کنید مثلاً برای تاس ۵ یک مهره از خانه ۶ به خانه یک ببرید و برای تاس دو یک مهره از خانههای دیگر حرکت دهید.
قانون: اگر تاس انداختید و در خانه مورد نظر هیج مهرهای نبود با شرط اینکه در خانههای قبلش هم هیچ مهرهای نباشد، شما میتوانید این مهره را از نزدیکترین خانه قبل از عدد تاس بردارید. مثلاً تمام مهرههای شما در خانههای ۱،۲،۳ جمع است و شما تاس میاندازید. اگر تاس شما مثلاً ۴و۶ باشد شما میتوانید دو مهره از خانه ۳ خارج کنید اما اگر در خانه ۵ شما مهره باشد شما نمیتوانید با تاس ۴ مهره از بازی خارج کنید و باید این تاس را بازی کنید.
حال اگر تاس جفت بیارید شما میتوانید چهار مهره از خانه عدد تاس خارج کنید. مثلاً اگر جفت ۳ بیارید در صورتی که چهار مهره در خوانه ۳باشد میتوانید هر چهار مهره را خارج کنید. اگر کمتر از چهار مهره در خانه ۳ باشد، میتوانید تعداد تاس ۳ باقیمانده را از خانه ۲ بردارید.
مارس
درصورتیکه قبل از اینکه حریفتان بتواند اولین مهره خود را از بازی خارج کند، تمام مهرههایتان را از بازی خارج کنید، حریف شما مارس شده و امتیازی که بدست میاورید ۲ است. در حالیکه اگر مارس نشود، امتیازی که میگیرید ۱ است.
مارس سیاه
در صورتی که شما بتوانید تمام مهرههای خود را از بازی خارج کنید و حریفتان هنوز هیچ مهرهای را خارج نکرده باشد و حداقل یک مهره در خانهٔ خودی شما داشته باشد اصطلاحاً میگویند حریف مارس اکبر شده و در اینصورت به شخص برنده ۳ امتیاز تعلق میگیرد. معادل مارس شدن در زبان انگلیسی Gammon و معادل مارس اکبر در زبان انگلیسی Backgammon است. ممکن است در جمعهای دوستانه از مارس اکبر با نام سگ مارس نیز یاد شود که البته مودبانه نیست و در مقابل هر حریفی نمیتوان این عبارت را به کار برد.
داو دادن
داو دادن اختیاری است. هر وقت هر کدام از دو بازیکن فکر کنند که برنده هستند، میتوانند از حریف بخواهند که باخت را بپذیرد یا امتیاز نتیجهٔ بازی دو برابر شود. قبل از آن بازیکنان مجبور بودند تا آخر بازی کنند و ممکن بود در این بین شانس دخالت زیادی در بازی توسط بازی میکرد. حال آنکه با داو دادن این شانس کشته میشد و بازیکنی که به واسطهٔ بازی ضعیف عقب بود تسلیم میشود.
کیوب، cube (تاس داو) کیوب یا تاس داو به تاسی میگویند که برای عمل داو دادن به کار میرود و یک مقدار از تاسهای بازی بزرگتر است و بر روی آن شمارههای ۲، ۴، ۸، ۱۶، ۳۲ و ۶۴ درج شدهاست.
در طول بازی هر بازیکن که فکر میکند شایسته پیروزی است میتواند داو دهد و تنها میتواند یکبار و قبل از تاس ریختن این چالش را برای حریفش به وجود بیاورد. بعد از اینکه داو از سوی هر یک از بازیکنها پیشنهاد شد، حریف حق دارد که آن را قبول یا رد کند. اگر داو رد شود یعنی حریف شکست را قبول کرده و ست بعدی بازی شروع میشود. ولی اگر داو را قبول کرد بازی ادامه پیدا میکند و امتیاز بازی در عدد کیوب ضرب میشود و در این هنگام تاس داو طرف بازیکنی میرود که داو را قبول کرده و عدد شماره ۲ کیوب رو قرار میگیرد. همچنین اختیار داو دوباره با اوست. بازیکنی که پیشنهاد داو را داده دیگر با کیوب کاری نخواهد داشت. بازی ادامه پیدا میکند تا زمانی که بازیکنی که داو را قبول کرده احساس کند اینبار او شایستگی پیروز شدن را دارد و بر روی داو حریف داو میدهد و اینبار کیوب روی عدد ۴ میرود. باز هم حریف حق انتخاب دارد که کیوب را بگیرد یا رد کند. اگر رد کند ۲ امتیاز واگذار کرده. واگر قبول کند امتیاز بازی روی عدد ۴ میرود و نتیجه هر ست در عدد کیوب ضرب خواهد شد. یعنی اگر شما مارس شدید و کیوب روی ۴ باشد شما ۸ امتیاز دادید و اگر یک دست معمولی باختید و کیوب روی ۲ باشد ۲ امتیاز به حریف خواهید داد و یا اگر مارس اکبر شده باشید و کیوب روی ۱۶ بوده باشد ۴۸ امتیاز دادهاید.
منچ
منچ یک بازی خانگی آلمانی است و نام منچ در ایران برگرفته از واژه نخست نام آلمانی این بازی (Mensch ärgere Dich nicht) است
تاریخ
بازی منچ به سالهای دور باز میگردد. محل پیدایش این بازی در آلمان بودهاست. این بازی توسط 'یوزف فریدریش' اشمیت (۱۹۰۸/۱۹۰۷) ارائه شدهاست.
نام
نام آلمانی این بازی Mensch ärgere Dich nicht است. بازگردان نام آلمانی این بازی به فارسی، چیزی شبیه"عصبانی نشو مرد" یا "عصبانی نشو، رفیق" است.
قوانین
این بازی میتواند تواسته۲، ۳، یا ۴ بازیکن انجام شود. (یک بازیکن در هر یک از گوشههای صفحهٔ مربوط به بازی). هر بازیکن ۴ مهره خواهد داشت ( تعداده کل مهرهها ۱۶ خواهد بود ), که در ابتدا ۴ مهره در خانههای کناری قرار خواهند گرفت .و بازیکنان باید مهرههای خود را به انتهای بازی، یعنی ستونهای عمودی یا افقی مربوط به خود (هم رنگ) برسانند. و برندهٔ بازی فردیست که زود تر از دیگر بازیکنان موفق به تمام کردنه مهرههای خود بشود . مهرها بترتیب و از بالا به پایین در خانهای انتهای قرار خواهند گرفت و بعد از رساندن مهرهٔ اول نوبت به سه مهرهٔ دیگر خواهد بود و مهری دوم وارده بازی خواهد شد (به ترتیب تا تمام شدن هر چهار مهره) حرکت در این بازی بر مبنای تاس (مکعب) خواهد بود ، تعدادهتاس ۱ عدد میباشد. آوردنه عدد ۶ به معنای شروع بازی ، و در ادامهٔ بازی وارد کردن مهرها خواهد بود ، همچنین بعد از رخ دادن عدد ۶ ، بازیکن میتواند یک بار دیگر تاس ریخته و به همین ترتیب ...
حاشیه
تصورات دیگر
بازی منچ در وسط یک مربع انجام میشود. مربع نماد زمین است چون مردم زمانهای قدیم تصور میکردند زمین مربع شکل است. در وسط این مربع یا همان زمین، علامت + را میبینیم؛ این علامت نشانه و نماد خورشید است که امتداد آن به چهار سوی زمین میرسد. علامت + را میتوان در بناهای تاریخی مانند نقش رستم و فرشهای قدیمی ایران نیز دید. چهار گروه مهره رنگی نماد چهار عنصر اصلی حیات هستند:آبی نماد آب، زرد نماد باد، قرمز نماد آتش و سبز نماد خاک. طبق عقیدهٔ زمین محوری، زمین ثابت است و خورشید به دور آن میچرخد پس هر مهره باید روی علامت + دور زمین بچرخد تا به مرکز، که منطقهای ماورایی و نماد رهایی و آزادی از جهان خاکی است، برسد. اگر تاسی که سمبل سرنوشت است با او یاری نکند، هم چنان باید چرخه را ادامه دهد تا به پیروزی برسد. اگر چهار مهره در مرکز جمع شوند یعنی به اتحاد رسیدهاند. تاس سرنوشت ساز مکعبی است لغزان به شمارههای ۱ تا ۶ . طبق تصور مردم باستان خداوند جهان را در شش روز آفریدهاست؛ روز نخست آسمان روشن، دوم آب، سوم گیاه، چهارم آتش، پنجم حیوان و ششم آدم را.
کرانه
کرانه یا ساحل منطقه تماس بین دریا و خشکی است. اصطلاح ساحل برای مساحت بین حداکثر مد و پایه پرتگاههای ساحلی در سواحل مرتفع و برای نواحی واقع بین حداقل جزر و بالاترین مرز پیشروی امواج طوفان نیز به کار میرود.در مناطقی چون خاور آمریکا عرض سواحل بیشتر و در نواحی دریای مدیترانه، عرض سواحل کم است. عواملی چون رسوبگذاری، فعالیت آتشفشانی، مرجانها و تغییرات سطح آب دریاها در پیدایش انواع سواحل مؤثرند اما عواملی چون موج، جزر و مد، جریان دریایی، یخچال طبیعی و باد نیز پیوسته سواحل را تغییر میدهند. برخی سواحل هموار و پست هستند؛ در حالی که در برخی دیگر صخره وجود دارد.
سوارکاری
سوارکاری از ورزشهایی است که در چند دههٔ اخیر مورد توجه خاصی قرار گرفتهاست، با این وجود سابقهای طولانی داشتهاست و میتوان آن را از کهنترین ورزشها بهشمار آورد. این ورزش امروزه نه تنها به عنوان یک رقابت سالم و مفید، بلکه به عنوان سرگرمی و به منظور گذراندن اوقات فراغت مورد توجه قرار گرفتهاست، و با این که نسبت به بسیاری از ورزشها پرهزینه به نظر میرسد، هر ساله تعداد بیشتری طرفدار به سوی خود جلب میکند.
سوارکاری چیست؟
سوارکاری به معنای نشستن بر پشت یک اسب و کنترل حرکات آن میباشد. ویژگی این ورزش این است که انسان و مرکب (معمولاً اسب) را متحد میسازد، بنابرین موفقیت اسب و سوارکار به ارتباط و اعتماد و احترامی که آن دو برای یک دیگر قائلاند، بستگی دارد. برای شروع به یادگیری سوارکاری نیاز به هیچ دانش و مهارت قبلی ای نیست، با این حال به دلیل قدرت جسمی و ذهنی که کنترل کردن اسب نیاز دارد، به کودکان زیر ۷ سال توصیه نمی شود.
تاریخچه
سوارکاری ورزشی بسیار قدیمی است که از دیرباز به منظور جنگیدن یا پیامرسانی به افراد آموزش داده میشد.تاریخ رام کردن اسب هنوز به درستی شناخته نشدهاست. باستانشناسان با توجه به قدیمیترین آثار بر جای مانده از پیشینیان در رابطه با رام کردن اسبها، معتقدند که اولین اسبهای اهلی به بیش از سه هزار سال قبل از میلاد برمیگردند. قبل از آن اسب به منظور تهیهٔ غذا شکار میشدهاست. البته باستانشناسان در بعضی نقاط از اروپای شرقی دهنههایی پیدا کردهاند که به شش هزار سال قبل از میلاد برمیگردند. این نشان میدهد که انسان از آن زمان سعی داشتهاست که اسب را رام کند و از آن بهره ببرد، ولی به دلیل سرعت آن در فرار موفق نشدهاست. قدیمیترین آثار در اروپای شرقی، شمال قفقاز و آسیای مرکزی یافت شدهاند.
اگرچه اهلی ساختن اسب در مقایسه با حیواناتی چون سگ (نه هزار سال قبل از میلاد) و گوسفند و بز (پنج هزار سال قبل از میلاد) مؤخر بود، با این وجود تحول عظیمی در زندگی انسان بهوجود آورد. انسان نه تنها از گوشت و شیر اسب بهره میبرد، بلکه برای جابهجایی نیز از او استفاده میکرد. نکتهٔ جالب در این باره این است که مورخان عقیده دارند که مردم قبل از یادگیری چگونه سوار شدن بر اسب، از ارابه استفاده میکردند. آنان برای این فرضیه خود دو دلیل عمده ارائه میکنند:
فسیلهای پیدا شده نشان میدهند که اسبهای آن دوره برای حمل انسان بسیار کوچک بوده و قد آنها (بلندی جدوگاه) به بیش از ۱۴۰ سانتیمتر نمیرسید.
قبل از آن که اسب توسط انسان رام شود، مردم از ارابه استفاده میکردند و آنها را به حیواناتی از چون گاو یا الاغ وحشی میبستند. بستن ارابه به اسبهای کوتاه قد خیلی دشوار نبود، در حالی که سوار شدن بر کمر اسب باعث وحشت و رم کردن آن میشد.
مهار و تربیت کردن اسبها در زندگی مردم اوراسیا تحول و تأثیرات فراوانی به دنبال داشت. در حالی که در گذشته طی کردن مسافتهای طولانی غیرممکن به نظر میرسید، انسان توانست به کشف سرزمینهای جدید و کشور گشایی بپردازد. کمکم وسایلی برای هدایت و تسلط بیشتر بر اسب مانند زین و رکاب (که از اختراعات چینیها میباشند) ساخته شدند و در اختیار سوارکاران گرفتند. تربیت و پرورش اسب نیز، به خصوص در خاورمیانه اهمیت بسیاری یافت و صحرانشینان این مناطق به پرورش و نگاهداری اسبهای اصیل عربی پرداختند. سوارکاری تا اواخر قرن پانزدهم، بیشتر در جنگها معمول بود. البته در بعضی از کشورها مانند ایران باستان، بهعنوان ورزش و سرگرمی نیز مورد توجه قرار میگرفت (مانند بازی چوگان)، ولی جنبهٔ هنری آن از اواخر قرن پانزدهم میلادی به بعد اهمیت یافت. سرانجام در اواخر قرن نوزدهم، با پیشرفت صنعت و جایگزین کردن اسبها توسط ماشینآلات، سوارکاری جنبهٔ ورزشی و سرگرمی که امروزه مشاهده میشود را به خود گرفت.
برقراری ارتباط با اسب
اولین گام یادگیری سوارکاری، یادگیری ارتباط برقرار کردن با اسب است. سوارکار باید بتواند خلقوخوی اسبی را که قرار است سوار شود درک کند و با او به خوبی ارتباط برقرار کند، تا اسب فرمانهای او را بهتر درک کند و انجام دهد. اسب با انسان متفاوت است و همین تفاوت است که باعث جذابیت این رابطه می شود. هرچه بهتر بتوانیم طرف مقابلمان را درک کنیم و یادبگیریم که غرایز او را بفهمیم، رابطه ما بهتر می شود. رفتار پر از ترس اسب مغرضانه نیست، بلکه یک واکنش طبیعی برای حفاظت از خودش است. اگر بتوانیم این احساس را در اسب ایجاد کنیم که ما از او حفاظت می کنیم، به ما اعتماد می کند و دیگر از هر فرصتی برای فرار استفاده نمی کند. با این حال حتی وقتی به ما اعتماد می کند، باز هم اسب حیوانی است که به طور طبیعی در گله به سر می برد. در موقعیت های هراس آور نیز همواره به گله می پیوندد.
سوارکار میتواند از روی حرکات و برخی از اعمال اسب متوجه منظور او شود. حرکات گوشهای اسب در این مورد بسیار مؤثر است. به طور مثال، هنگامی که اسب گوشهایش را به سمت جلو میچرخاند و سرش را بالا میگیرد، به این معناست که صدایی او را نگران کردهاست و او بادقت در حال پیدا کردن منبع صداست. و یا هنگامی که اسب گوشهایش را در جهات مختلف میچرخاند و حرکت میدهد، به این معناست که با دقت اطرافش را تحت نظر دارد. گوشهای مایل به سمت پایین در دو طرف سر اسب، نشان دهندهٔ تسلیم شدن و اطاعت اسب هستند. البته این حالت گوشها در صورتی که لبها به سمت پایین افتاده باشند، نشانهٔ خوابآلودگی است. اسبی که گوشهایش را میچرخاند و زبانش را بیرون میآورد، قصد سربهسر گذاشتن و بازی با سوارکار را دارد. اگر اسب گوشهایش را به سمت جلو مایل کند و سرش را کمی خم کند، یعنی به سوارکار (یا هر کس دیگری) اعتماد دارد. اگر گوشهایش را به سم عقب بچرخاند، یعنی چیزی باعث بی اعتمادی یا عصبانیت و ناراحتی او شدهاست. در صورتی که گوشهایش را به سمت عقب بخواباند، یعنی بسیار خشمگین است و یا این که به شدت ترسیدهاست. در این صورت اسب میتواند بسیار خطرناک باشد و حمله کند. حرکت سر و پاهای اسب نیز میتوانند در درک منظور او کمک کنند. اسبی که سرش را کمی پایین میآورد و ناگهان بهشدت تکان میدهد، بدخلقی خود را نشان میدهد. هنگامی که پاهای جلویش را بر زمین میکوبد، عصبانیت یا بیقراری خود را ابراز میکند، در حالی که وقتی اسب پاهای عقبش را بر زمین میکوبد، میخواهد بفهماند که چیزی باعث ناراحتی او شدهاست (مثلاٌ مگس و...).
سبک های سوارکاری
سبک انگلیسی
سبک انگلیسی پیش نیاز و پایه بعضی از رشته های سوارکاری مانند درساژ، پرش با اسب، چوگان و حتی کورس میباشد. این سبک از بعضی از سبک های دیگر اندکی دشوارتر است.
سبک غربی
از سبک غربی بیشتر در رشته هایی از سوارکاری که در تاریخچه یشان از کار در مزرعه سرچشمه گرفته اند و به مرور زمان توسعه یافته اند، مانند استقامت، استفاده میشود.
شاخههای مختلف سوارکاری
سوارکاری شاخههای متعددی دارد که به طور کلی در دو دسته قرار میگیرند:
مسابقات اسبدوانی
این مسابقات از دوران قدیم در بسیاری از تمدنها همچون یونان و روم باستان وجود داشتهاست. مسابقات یورتمه و تاخت از مسابقات رایج اسبدوانی هستند.
مسابقات یورتمه (سوار بر اسب یا ارابه)، که در آنها هدف نفر اول رسیدن به خط پایان است، بدون این که اسب با سرعت گرفتن شروع به تاختن کند. تاختن اسب باعث حذف شدن سوارکار از دور مسابقه میشود.
مسابقات تاخت، که در آنها نیز هدف اول رسیدن به خط پایان است، اما این بار با تاخت. مسافت این مسابقات بین ۲٫۴۰۰ و ۱٫۶۰۰ متر است. نوعی دیگر از مسابقات تاخت، همراه با مانع است و اسب باید از روی آنها بپرد. مسافت این مسابقات با توجه به نوع مانعها متفاوت است.
سایر مسابقات سوارکاری
مسابقات ارابهرانی،
که معمولاً دارای سه مرحله هستند: مرحلهٔ درساژ (که در آن شیوه و جذابیت نمایش و رفتار و حرکات اسب سنجیده میشود.)، مرحلهٔ ماراتون (که امتحانی زمان بندی شدهاست و از قسمتهای مختلفی تشکیل شدهاست و مهمولاً دارای موانعی طبیعی یا مصنوعی است. در آن مهارت، توانایی جسمی و سرعت اسب سنجیده میشود.) و مرحلهٔ آخر که عبارت است از حرکت در راههایی که از اطراف، توسط توپهایی (یا چیزهای دیگری) محدود شدهاست. گذشت وقت مجاز یا افتادن توپ باعث از دست رفتن امتیاز میشود. تعداد اسبهایی که ارابه را میکشند به نوع مسابقه بستگی دارد و به جز در مواردی خاص، بیش از چهار عدد نیستند.درساژ
(حرکات نمایشی اسبهای تربیتشده)، که در آن کیفیت ارتباط میان سوارکار و اسب سنجیده میشود. این مسابقات در زمینهایی مستطیلشکل به طول ۶۰ متر و عرض ۲۰ متر برگزار میشوند، و سوارکاران به ترتیب در زمین حاضر شده و برنامههای خود را اجرا میکنند. این برنامهها میتوانند مشخصشده یا آزاد باشند. داوران بر اساس تکنیک و دقت سوارکار و همچنین اطاعت و حرکات اسب و ارتباط میان آن دو، قضاوت کرده و بین صفر تا ده امتیاز میدهند. سوارکار باید سعی کند حرکاتش برای هدایت اسب تا حد امکان مخفی باشد و دیده نشود، به طوری که احساس شود ارتباط میان آن دو توسط تِلِپاتی انجام میگیرد. این کار ممکن است به نظر تماشاگران بسیار آسان بیاید، در حالی که نتیجهٔ تلاش چندین سال میباشد.
پرش با اسب، که از متداولترین مسابقات سوارکاری در جهان میباشد و مشابه مسابقات درساژ و استقامت است.
مسابقات استقامت، که هدف از آنها طی کردن مسافتی طولانی (بین ۲۰ تا ۱۶۰ کیلومتر) در یک (و گاهی دو) روز است. اسبهای عرب از بهترین نژادها برای این نوع مسابقات هستند، زیرا جثهای کوچک و مقاوم در برابر گرما و تمرینات سخت دارند. اسبهای انگلیسی نیز به دلیل سرعتشان در این زمینه مورد توجه بسیاری قرار میگیرند.
مسابقات وسترن یا آمریکایی، که ریشهٔ آنها به مسابقات گاوچرانی برمیگردد.
رودیئو، که مسابقه با اسبهای وحشی است.
رودئو.
چوگان، که قدیمیترین ورزش گروهی است. این ورزش در ایران باستان رواج و اهمیت زیادی داشتهاست و به بازی شاهان معروف است. امروزه چوگان به دلیل هزینهٔ بالا کمتر مورد توجه عام قرار میگیرد.
تیراندازی
تیراندازی (به انگلیسی: Shooting) به پرتاب یا شلیک کردن تیر به وسیلهٔ کمان یا تفنگ (تفنگ، تپانچه ) گفته میشود.
اسلحه گرم:ورزش تیراندازی (به انگلیسی: Shooting sport) یک ورزش رقابتی براساس دقت و سرعت و تصمیم گیری به موقع است که به وسیله (تفنگ، تپانچه ) انجام میشود. تیراندازی رابطه مستقیمی با قدرت تمرکز نیز دارد به گونه ای که افراد برای بالابردن سطح تمرکز روی به تیراندازی می آورند.
اسلحه سرد:تیراندازی با کمان یا تیر و کمان فعالیتی است که میتواند به عنوان ورزش یا برای شکار و یا برای جنگ استفاده شود.
غارنوردی
غارنوردی ورزش تفریحی نوردیدن و اکتشاف غارهاست.
غارنوردی آماتور
غارنوردان آماتور کسانی هستند که به این فن بیشتر از جنبه ورزشی نگاه میکنند. امروزه تعداد این غارنوردان از غارنوردان حرفهای بیشتر است و اکثر غارهای جدید توسط این افراد کشف میشود. به طور کلی غارنوردی آماتور بیشتر در میان کوهنوردان رایج است. بسیاری از غارنوردان آماتور به خاطر علاقه خاصی که در طی سالها غارنوردی به این فن پیدا میکنند تبدیل به غارنوردان حرفهای میشوند و در بعضی از رشتههای آن تجربههای زیادی کسب میکنند.
از نگاه غارنوردان آماتور غارنوردی ورزش تفریحی نوردیدن و اکتشاف غارهاست.
چالشهای مربوطه به نوع و گونه غاری که نوردیده میشود بستگی دارد ولی معمولاً بهرهگیری از میخ و طناب و گذر از تنگراهها، دهلیزها و چالابها را شامل میشود. در ایران غارنوردی را یکی از گرایشهای کوهنوردی میدانند ولی در برخی کشورها رشتهای جداگانه شمرده میشود. دیگر گرایشهای کوهنوردی در ایران از این قرارند: کوهپیمایی (Hiking)، سنگ نوردی (Rock Climbing)، یخ نوردی (Ice Climbing) و صعودهای ورزشی (Sport Climbing)
مهمترین، پرهیجانترین و سختنوردترین غار ایران غار پراو در استان کرمانشاهان است. استان کرمانشاه بعلت دارا بودن محیطی مناسب و در برگرفتن شمار بسیار زیادی غار از جمله ژرفترین و طولانیترین غارهای ایران و داشتن علاقهمندان بسیار از پیشروترین استانهای غارنوردی ایران بشمار میآید. بسیار بر این باورند تنی چند از غارشناسان کرمانشاه غاری ژرفتر از پراو را کشف نمودهاند اما برای بکر ماندن آن از آشکار نمودن جایگاه آن خودداری میکنند!! از دیکر غارهای ایران که همواره مورد بازدید غارنوردان باشگاههای غارنوردی ایران قرار میگیرند میتوان از غارهای یخ مراد –بورنیک – رود افشان و کهک، قاطرچی و کتلهخور نام برد. از تجهیزات لازم برای غارنوردی میتوان از اینها نام برد: طناب, کارابین (ابزار), شفت, میخ، کوله پشتی، کیسه خواب, رول, یومار، کلاه ایمنی، چراغهای پیشانی با لامپ ال.ای.دی، لباس ضدآب, هشتفرود - لوازم زخم بندی، پانسمان، انواع قرص و کپسول و آمپول جهت موارد گوناگون.
غارنوردی حرفهای
غارنوردان حرفهای کسانی هستند که برای اهداف خاصی بجز جنبه ورزشی آن پا به اعماق غارها می گذارند. این اهداف که جنبه علمی دارند به رشتههای زیر تقسیم میشود: زمین شناسی، دیرین شناسی، باستان شناسی، انسان شناسی، آب شناسی و زیست شناسی.
غواصی
فن شناوری در زیر آب - با یا بدون وسایل تنفس مصنوعی اسکوبا است. غواصی علاوه بر اینکه کاربردهای صنعتی، پژوهشی، و نظامی دارد، برای ورزش و تفریح هم انجام میشود.امروزه ورزش غواصی و غواصی تفریحی به صورتی همگانی درآمده و به شکل گستردهای در بسیاری از کشورهای جهان فعالیتی مفید، مفرح، لذتبخش و نیز منبع درآمد در صنعت اکوتوریسم شدهاست. تنفس زیر آب با استفاده از هوای فشرده تاریخچهای کوتاه دارد. اما غوص در دریا و سفر به عمق دریا از دیرباز توسط بسیاری از ملل جهان انجام میپذیرفتهاست.
انواع غواصی
غواصی آزاد
یکی از روشهای غواصی، غواصی آزاد میباشد که ورزشی بسیار سنگین و فرحبخش میباشد.در این ورزش اولین هنر غواص، استفاده صحیح از ششها در تنفس صحیح و حمل هوای کافی در غواصی میباشد در ابتدا این ورزش برای جستجوی مروارید در سطح دریا مورد استفاده قرار میگرفتهاست ولی بعد پا به عرصه ورزش حرفهای گذاشته باشگاههای ویژهای برای اینکار بهوجود آمدهاند.
تعریف سادهٔ این ورزش چنین است که شخصی به زیر آب شیرجه میرود و تنها هوایی که در اختیار دارد، هوای است که در ششهای خود ذخیره کردهاست. در واقع این ورزش در نوع خود، از قدیمیترین ورزشهای آبی جهان شناخته میشود که مثال بارز آن جستجوی مروارید است که در حدود چهار هزار سال پیش در دریای مدیترانه انجام میشد و اشخاص برای خارج کردن دانههای مروارید و یافتن صدفهای مرواریددار، به اعماق مدیترانه شیرجه میرفتند و دقایقی چند را تنها با تکیه بر هوای ذخیره شده در ششهای خود به جستجو برای مروارید میپرداختند.
اما این پدیده در حقیقت یک پایه و اساس علمی هم دارد، چرا که بدن در زیر آب با شرایط تازهای مواجه میشود که در نتیجه قلب، سیستم گردش خون و عضلات انسان، همگی به گونهای عمل میکنند تا اکسیژن را در بدن ذخیره کنند. غواصی آزاد ورزشی پر رمز و راز است که به خصوص طی پنجاه سال گذشته توجه پژوهشگران و اهل علم را به خود جلب کردهاست.
در دهه پنجا ه میلادی یعنی بین ۱۹۵۰ تا ۱۹۶۰ پزشکان به غواصان آزاد هشدار دادند که در عمق بیشتر از پنجاه متر نگهداشتن نفس مساوی با مرگ است. چرا که فشار آب در چنین عمقی باعث میشود تا قفسهٔ سینه و دندهها مانند کاغذ مچاله شده در دست انسان در هم شکسته شوند اما امروز مشاهده میکنیم که غواصان آزاد به عمق دویست متری هم میروند. جالب است گفته شود که این عمق حتی از عمقی که زیر دریاییها در جنگ جهانی دوم توان رسیدن به آن را داشتند، بیشتر است.
آنچه باعث پیشرفتهای اعجابانگیز در این ورزش و تواناییهای غواصان شده، تحقیقات درخشان فیزیولوژِی است که جمعی از پدیدههای مختلف در رابطه با آب را در بدن کشف کردهاست. تجهیزات مورد نیاز این ورزش یک جفت باله های غواصی(فین)، ماسک غواصی و لوله تنفس بر سطح آب (اسنورکل) میباشد.
غواصی اسکوبا
یکی از دیگر روشهای غواصی، غواصی با تجهیزات تنفسی زیر آب غواصی اسکوبا است. در این روش غواص با همراه داشتن هوای فشرده تنفسی که درون سیلندر غواصی ذخیره شده است به زیر آب رفته و غواصی میکند.
غواصی اسکوبا مدار باز
سیستمهای اسکوبای مدار باز، سیستمهای تنفسی هستند که باز دم غواص را درون آب تخلیه مینمایند.
غواصی اسکوبا مداربسته
سیستمهای مدار بسته تنفسی ، به گونه ای ساخته شده اند تا قابلیت پالایش بازدم غواص را داشته و بازدم او را با حذف دی اکسید کربن و افزودن اکسیژن برای تنفس دوباره آماده نمایند.
غواصی با تغذیه از سطح
در این نوع غواصی که بیشتر در خدمات غواصی صنعتی کاربرد دارد، گازهای تنفس از طریق شلنگی به نام بند ناف، از سطح به غواص انتقال پیدا میکند.تغذیه از سطح اغلب از یک کشتی پشتیبان غواصی، اما گاهی اوقات، به طور غیر مستقیم از طریق یک اتاقک زیرآبی ارائه میگردد.غواصان تغذیه از سطح همیشه نیازمند پوشیدن کلاه و یا ماسکهای غواصی هستند که صورت را کامل پوشش میدهند.
جایگزینی برای غواصی تغذیه از سطح به نام "SNUBA" و یا "hooka" وجود دارد که هوای تنفسی غواص از طریق شلنگ از یک سیلندر کوچک یا کمپرسور از سطح آب تامین میگردد. این روش برای کارهای سبک از جمله تمیز کردن بدنه شناورها بسیار محبوب است و نیز به عنوان فعالیتی توریستی برای کسانی که دارای گواهینامه غواصی نیستند مناسب است.
غواصی اشباع
غواصی اشباع روشی است که اجازه می دهد تا غواصان صنعتی در ارتباط با کار در عمق به مدت چند روز یا چند هفته باقی بمانند.این نوع غواصی اجازه می دهد تا از نظر اقتصادی کار بیشتر انجام شده و ایمنی افزایش یابد.در این نوع غواصی پس از اتمام کار در آب، غواصان در زیستگاه خشک و تحت فشار در زیر آب و یا محفظه های فشار بر روی عرشه یا سکوهای پشتیبانی به استراحت میپردازند یا ممکن است به زنگ غواصی منتقل گردند.در پایان این نوع غواصی برداشت فشار ممکن است روزهای بسیاری طول بکشد.
آموزش غواصی
آموزش غواصی زیر آب را باید نزد مربی غواصی واجد شرایط که در ارتباط و زیر نظر یکی از سازمانهای آموزش غواصی معتبر است آموخت.
آموزش غواصی پایه مستلزم یادگیری مهارت های لازم برای انجام ایمن فعالیت های غواصی در محیط زیر آب است که شامل نکاتی مانند سیستم همراهان ، برنامه ریزی غواصی و روش استفاده از جداول غواصی میگردد.
برخی از مهارت های پایه که یک مبتدی در زیر اب باید فرابگیرد عبارتند از :
برداشت فشار -- تنظیم فشار درونی و بیرونی شیپور استاش گوش به هنگام غواصی و قرار گرفتن در محیطهای پر فشار.
تنفس زیر آب -- آموختن مهارت تنفس از طریق رگلاتور غواصی در زیر آب. کلیه غواصان باید روش تنفس درست را بیاموزند.
پاکسازی ماسک -- شامل تخلیه آب ماسک در زیر آب.
به اشتراک گذاری هوا -- آموختن روش درست و ایمنی که غواصان برای به اشتراک گذاری یک منبع هوا به کار میگیرند.
صعود اضطراری -- چگونگی بازگشت به سطح به شکلی ایمن بدون آسیب زدن به خود در صورت قطع هوای تنفسی.
شنا و شناوری -- رانش و حرکت زیر آب با تجهیزات غواصی و تنظیم شناوری با استفاده از هوای موجود در ریه ها به صورتیکه هوای در ریه ها باعث شناوری بیشتر شده در حالی که تخلیه هوای ریه ها باعث شناوری کمتر گردد.
علامت های غواصی -- علامت های غواصی که هدف از آنها برقراری ارتباط با غواصان دیگر در زیر آب است.
خطرات غواصی
اگرچه غواصی در رده ایمن ترین فعالیتهای تفریحی و ورزشی جهان به شمار میرود اما مبادرت به آن بدون دانش لازم و در صورت عدم رعایت استانداردهای غواصی میتواند کاری بسیار خطر ناک به شمار آید.
عدم رعایت استانداردهای غواصی و عدم بکار گیری صحیح جدولهای غواصی مانند برنامه ریز غواصی تفریحی میتواند باعث بروز بیماریهائی از جمله بیماریهای زیر گردد:
بیماری تراکم زدائی
نیتروژن نارکوسیس
مسمومیت با اکسیژن
مسمومیت با منواکسید کربن
آمبولی ریه
باراتروما
شلو واتر بلک اوت
خفگی
غرق شدگی
سازمانهای آموزش دهنده
از آنجائیکه غواصی رشته ورزشی و تفریحی بسیار خاصی بوده است و به دور از خشکی در محیطی پر خطر(دریا)انجام میگردد، سازمانهای معدودی که دارای استانداردهای خاص آموزشی میباشند فقط مجاز به آموزش این رشته ورزشی و تفریحی در سطح جهان گردیده اند. سازمانهای آموزش دهنده می بایست با استانداردهای سازمان جهانی استاندارد منطبق و زیر پوشش نهادهائی بین المللی مانند شورای جهانی آموزش غواصی تفریحی و فدراسیون زیر آبی اروپا فعالیت نمایند.
قدمت غواصی در ایران
گویند که ژرفروی و غواصی که در جنوب ایران آن را صیف و صیافی مینامند به قرنها قبل از میلاد برمیگردد. در دوران خشایارشا، ایرانیان از غواصان برای بیرون کشیدن صندوقچههای طلا و جواهرات کشتیهای غرق شده استفاده مینمودهاند.
آثار حاصل از حفاریهای باستانشناسی نشان میدهد که قرنها قبل از میلاد، ساحلنشینان دریای پارس از این فن برای تحصیل مروارید استفاده مینمودهاند.
دکتر تاکر ابوات در کتاب کینگدوم اف سی شل بدین طریق اشاره نمودهاست و ایرانیان را در زمره پیشگامان پایهگذاری صید و پرورش مروارید قلمداد نمودهاست.
در سندی دیگر، آپولونیوس فیلسوف یونانی ساکن رودز اشاره دارد که غواصان دریای پارس در حالی که ظرف کوچکی حاوی گیاهی خوشبو و تهییج کننده در دست داشتند به سمت صدف رفته و باعث میشدند تا صدف لب از لب بگشاید، سپس شاخهای میان تهی را به میان آن فرو برده و مایه موجود را به بیرون میکشیدند و آن را به سطح آب آورده و در ظروفی آهنین قرار میدادند، البته آنان هیچگاه موفق به پرورش مرواریدهایی اینچنینی نشدند اما شیوهای را بدین طریق بنیان نهادند. اما در اشارت به ابزار غواصی آن دوران پر واضح است که در آن دوران به اتکای هوای محبوس شده در ششهای خود به عمق فرو رفته و باز میآمدند، روشی که هم اکنون نیز در پارهای از جزایر دریای پارس چون لاوان و کیش و قشم کماکان پا بر جاست.
کوهنوردی
کوهنوردی یکی از ورزشها یا از جمله تفریحات است. برای برخی نیز کوهنوردی به عنوان شغل اصلی یا بخش الزامی شغل اصلی است.
به بالا رفتن یا پایین آمدن به صورت پیاده از ارتفاعات طبیعی کوهنوردی گفته میشود. کوهنوردی میتواند به صورت راهپیمایی، کوهروی، کوهپیمایی و صعود به قلل مختلف و یا صخرهنوردی انجام گیرد. کوه: به ارتفاعات بیش از ۶۰۰ متر از زمینهای اطراف هر منطقه کوه گفته میشود. قله: بلندترین قسمت هر کوه را قله میگویند. یک کوه میتواند یک یا چند قله داشته باشد که در یک خط الراس قرار گرفته اند. معمولاً به بلندترین قله، قلهٔ اصلی گفته میشود و سایر قلل در یک خط الراس را قلههای فرعی مینامند. در کوهنوردی شرط سنی وجود ندارد. در ضمن این رشته ورزشی سن بازنشستگی هم ندارد. هر کسی با هر توانایی میتواند به عنوان تفریح یا انجام کار حرفه ایی به کوه برود.
ابزار کوهنوردی
برای صعود مؤثر به کوهها نیاز به ابزارهای متفاوتی است. البته در هر صعود بسته به نوع صعود، منطقه مورد نظر، زمان و فصل اجرای برنامه ممکن است ابزار و تجهیزات متفاوتی مورد استفاده قرار گیرد. برخی از این وسایل کوهنوردی عبارتاند از:
کفش مخصوص کوه
کاپشن گورتکس
کاپشن پلار
کوله پشتی
باتوم کوهنوردی
دستکش
کلاه مناسب فصل
بادگیر
جوراب کلفت
کیسه خواب
فلاسک چای
بطری آب
وسایل شخصی مانند قاشق و چنگال چاقو
چراغ قوه
وسایل کمک خوراکی مانند: فندک، نمک، چاقو،
کیف کمری برای نگهداری وسایل حفظ حیات:وسایلی که همیشه و در هر موقعیت لازم است همراه کوهنورد باشدزیرا ممکن است کوهنورد به دلیلی ناچار به ترک کوله پشتی اش شود: نقشه- موبایل جی پی اس دار-خوراکی(نان وکشمش و ...)- برنده(چاقو)- دوزنده(سوزن و نخ)- سوزنده(کبریت یا فندک)-باند کشی و باند استریل
عموماً برای کوهنوردی یا فتح قلهای به راهنما نیاز است.
تاریخچه
اتزی مرد یخی ۵۳۰۰ سال پیش ۳۰۰۰ متر در کوههای آلپ بالا رفته بود. بقایای او در این ارتفاع یافت شده است.
در تاریخ سنتی ایران آمده است که آرش کمانگیر از قله کوه دماوند بالارفت تا با پرتاب تیر، مرز ایران و توران را مشخص سازد.
نخستین کوهنوردی ثبت شده در تاریخ مربوط به صعود سرداران ایرانی آرتاخه و بوبراندا بر فراز کوه آتوس در زمان خشایارشا، جهت ثبت نقشه برداری برای ساخت دالانه یا کانال آبی است که کشتیهای نیروی دریایی ایران از آن گذر کنند. (منبع تاریخ علم جورج سارتون)
پادشاه رومی هادریان کوه اتنا (۳۳۵۰ متر) را بالا رفت تا طلوع خورشید را ببیند.
آثار به جامانده، خبر از نشانههایی از کوهنوردی پیشرفته در ایران در پایان قرن پنجم هجری (دوران سلجوقیان و اسماعیلیان) دارد. در کتاب «خداوند الموت» چنین آمدهاست:
کوهپیمایان بعد از گردش اطراف کوه گفتند اگر بالای این کوه کسی نباشد و سنگ بر سرمان نبارد ما میتوانیم از دامنه جنوبی بالا برویم و خود را به قله برسانیم و هنگام بالا رفتن، طنابی با خود میبریم که وسیلهٔ ارتباط ما با پایین کوه باشد و بوسیلهٔ آن طناب میتوانیم چیزهای ضروری را برای نصب یک چرخ بالا ببریم و بعد از اینکه چرخ نصب شد، میتوان از زمین چیزهایی دیگر را بالا برد تا اینکه چندین چرخ بالای کوه نصب گردد و از آن پس بین پای کوه و قله آن، رابطهٔ بیشتری برقرار خواهد گردید و میتوان سربازان را بوسیلهٔ چرخ بالا کشید... کوهپیمایان گفتند ما با خود میلههای آهنی چون پله میبریم و آنها را در دامنهٔ کوه نصب مینماییم و صعود میکنیم تا اینکه به قله ٔ کوه برسیم.
پیتر سوم در قرن سیزدهم از کوه کانیگو در پیرنه صعود کرد.
کوه اورست (۸۸۴۸ متر) برای اولین بار در ۲۹ می سال ۱۹۵۳ توسط ادموند هیلاری و تنسینگ نورگی از سمت جنوبی آن در نپال فتح گردید.
هواشناسی کوهنوردی
هواشناسی کوهنوردی مبحثی است که به آموزش تأثیر پدیدههای هواشناسی بر کوهنوردان میپردازد. (منبع: سایت انجمن کوهنوردان ایران)
گروه کوهنوردی
یک گروه کوهنوردی سازمانی (معمولا مردمنهاد (سمن)) است که با اهداف ورزشی و معمولاً تحت مجوز و نظارت فدراسیون کوهنوردی کشور و هیاتهای کوهنوردی در استانها فعالیت میکنند. یک گروه کوهنوردی ممکن است با مجوز موقت از هیات استان فعالیت محدود نماید ولی گروههای کوهنوردی فاقد مجوز و نیز فاقد نظارت به هیچ وجه قابل اطمینان نبوده و در صورت بروز مشکلات - عدیدهای که در برنامههای کوهنوردی بعید نیست - پیگیری موضوع بسیار دشوار خواهد بود. هر گروه باید دارای یک کادر اجرایی مسئول در زمینههای فنی، امدادی، مالی و... باشد که در حیطه کاری خود دارای مهارت و تجربه و نیز تعهد باشند. معمولا گروههای کوهنوردی برنامههای آتی خود را در تقویمهایی ششماهه و یا یکساله تدوین نموده و در دسترس علاقهمندان قرار میدهند.
ماهیگیری
ماهیگیری یا ماهیگیری به شکار ماهی از آب با قلاب، تور یا هر ابزار دیگری میگویند. به کسی که ماهی میگیرد ماهیگیر یا ماهیگیر میگویند.
انواع ماهی گیری
ماهی گیری به دو دسته کلی ماهی گیری تجاری و ماهی گیری تفریحی تقسیم می شود.
ماهی گیری تجاری به دو صورت سنتی (غیرصنعتی) و صنعتی انجام می شود .
ماهی گیری تفریحی به دو روش ماهی گیری ورزشی و ماهی گیری غیرورزشی(سنتی) انجام می شود.
ماهی گیری تجاری
ماهی گیری ای که به منظور تامین درآمد از طریق فروش مستقیم ماهی، تولید فرآورده های دریایی یا تامین مواد اولیه صنایع مرتبط انجام می شود ماهیگیری تجاری نام دارد. در این روش ماهی گیری در مقیاس وسیع اما با توجه به محدودیت های روش و قوانین انجام می گیرد.
ماهیگیری سنتی
در روش سنتی معمولا از تور برای صید ماهی استفاده می شود . یکی از این روش ها نصب تورهای عمودی به صورت ثابت در طول خط ساحلی است که با استفاده از جزر و مد آب دریا باعث گیرافتادن ماهی در تور می شود.
روش دیگر استفاده از تورهای بزرگ در سطح یا کف دریاست . این تورها ممکن است در یک ناحیه دریا پهن شده یا توسط کشتی در مسیر مشخصی کشیده شود.
ماهی گیری صنعتی
ماهی گیری صنعتی به وسیله روش های نوین مانند استفاده از رادار، سونار، تصاویر ماهواره ای و تجیهیزات پیشرفته مکانیکی مانند تورهای هدایت شونده، جرثقیل های بزرگ و دستگاه های مکش انجام می گیرد.
بسیاری بر این غقیده اند که این روش ماهی گیری برای محیط زیست و تنوع موجودات آبزی بسیاز زیان بار است . اما در مقابل عده ای معتقدند که این روش یکی از راه های جلوگیری از کمبود غذا در بسیاری از کشورهای فقیر و در حال توسعه و همچنین مناسبترین روش برای جایگزینی محصولات دریایی بجای گوشت قرمز در رژیم غذایی انسان هاست .
ماهی گیری تفریحی
ماهی گیری تفریحی به منظور سرگرمی، ورزش، کسب لذت، زندگی در طبیعت و ... انجام می گیرد.
ماهی گیری ورزشی
در این روش که طی دهه های گذشته در اکثر نقاط دنیا توسط ماهیگیران شناخته شده است، بر خلاف ماهی گیری تفریحی سنتی دیگر ماهی گیری بر مبنای نصب نوع خاصی از طعمه و انتظار نیست. بلکه از روش های واکنشی ماهی به طعمه یا شکار در حالت طبیعی استفاده می شود . از نمونه های این روش می توان به صید با لانسه، پشه، لور، قاشقک ، ماهی گیری با نیزه و طعمه زنده اشاره کرد.
روش های ماهیگیری آسیب رسان به محیط زیست
ماهی گیری با برق
ماهی گیری با انفجار
ماهی گیری با سم یا مواد شیمیایی
ماهی گیری با تور های عرضی روخانه ای
خانه اشغال شده توسط یک مهره، تک نامیده میشود. اگر حریف روی مهره تک بیاید، آن مهره را میزند و جای آن قرار میگیرد و مهره خورده شده روی "بار" قرار میگیرد.
تا زمانی که یک بازیکن یک یا چند مهره بر روی بار دارد، باید نخست آنها را وارد بازی کند. هنگامی که نوبت اوست، با توجه به عدد روی تاسش، مهره بیرون را در خانه بازی از ناحیه خودی حریف قرار میدهد. به عنوان مثال، اگر یک بازیکن یک مهره در بار دارد، و تاسش ۴ و ۶ دارد، میتواند مهره اش را بر روی هر دو خانه چهار یا شش ناحیه خودی حریف قرار دهد به شرطی که آن خانهها باز باشند.

اگر هیچ خانهای باز نباشد، بازیکن نوبت خود را از دست میدهد. ولی باید تا آنجا که میتواند مهرههایش را وارد کند و بقیه را برای نوبت بعدیش بگذارد. پس از آنکه آخرین مهره خورده شده وارد بازی شد، بازیکن به بازی عادی خود ادامه میدهد و اگر از تاسش چیزی باقیمانده باشد، آن را بازی میکند. قانون: در ۶ خانه اخر نمیتوان مهرهٔ حریف را زد و سپس آن را روی مهرههای دیگر خودی قرار داد. ولی همواره میتوان مهره حریف را زد و سپس آن را در دیگر خانههای خالی حرکت داده و یا حتی مهره دیگری از حریف را زد.
خارج کردن
زمانی که تمام مهرهها را در ناحیه خودی (۶خانه سمت راست تخته) جمع کردید، حالا نوبت به آن رسیدهاست که مهرههای خود را از بازی خارج کنید و برای خارج کردن مهره از بازی، شما باید تاسها را بیندازید و به ازای هر شماره تاس، یک مهره از بازی خارج کنید. مثلاً اگر شما ۵و۲ بیاورید، باید یک مهره از خانه شماره ۵ و یک مهره از خانه شماره ۲ خارج کنید و اگر در خانههای ۵و۲ هیچ مهرهای نبود باید با دیگر مهرهها این تاسهای ۵و۲ را بازی کنید مثلاً برای تاس ۵ یک مهره از خانه ۶ به خانه یک ببرید و برای تاس دو یک مهره از خانههای دیگر حرکت دهید.
قانون: اگر تاس انداختید و در خانه مورد نظر هیج مهرهای نبود با شرط اینکه در خانههای قبلش هم هیچ مهرهای نباشد، شما میتوانید این مهره را از نزدیکترین خانه قبل از عدد تاس بردارید. مثلاً تمام مهرههای شما در خانههای ۱،۲،۳ جمع است و شما تاس میاندازید. اگر تاس شما مثلاً ۴و۶ باشد شما میتوانید دو مهره از خانه ۳ خارج کنید اما اگر در خانه ۵ شما مهره باشد شما نمیتوانید با تاس ۴ مهره از بازی خارج کنید و باید این تاس را بازی کنید.
حال اگر تاس جفت بیارید شما میتوانید چهار مهره از خانه عدد تاس خارج کنید. مثلاً اگر جفت ۳ بیارید در صورتی که چهار مهره در خوانه ۳باشد میتوانید هر چهار مهره را خارج کنید. اگر کمتر از چهار مهره در خانه ۳ باشد، میتوانید تعداد تاس ۳ باقیمانده را از خانه ۲ بردارید.
مارس
درصورتیکه قبل از اینکه حریفتان بتواند اولین مهره خود را از بازی خارج کند، تمام مهرههایتان را از بازی خارج کنید، حریف شما مارس شده و امتیازی که بدست میاورید ۲ است. در حالیکه اگر مارس نشود، امتیازی که میگیرید ۱ است.
مارس سیاه
در صورتی که شما بتوانید تمام مهرههای خود را از بازی خارج کنید و حریفتان هنوز هیچ مهرهای را خارج نکرده باشد و حداقل یک مهره در خانهٔ خودی شما داشته باشد اصطلاحاً میگویند حریف مارس اکبر شده و در اینصورت به شخص برنده ۳ امتیاز تعلق میگیرد. معادل مارس شدن در زبان انگلیسی Gammon و معادل مارس اکبر در زبان انگلیسی Backgammon است. ممکن است در جمعهای دوستانه از مارس اکبر با نام سگ مارس نیز یاد شود که البته مودبانه نیست و در مقابل هر حریفی نمیتوان این عبارت را به کار برد.
داو دادن
داو دادن اختیاری است. هر وقت هر کدام از دو بازیکن فکر کنند که برنده هستند، میتوانند از حریف بخواهند که باخت را بپذیرد یا امتیاز نتیجهٔ بازی دو برابر شود. قبل از آن بازیکنان مجبور بودند تا آخر بازی کنند و ممکن بود در این بین شانس دخالت زیادی در بازی توسط بازی میکرد. حال آنکه با داو دادن این شانس کشته میشد و بازیکنی که به واسطهٔ بازی ضعیف عقب بود تسلیم میشود.
کیوب، cube (تاس داو) کیوب یا تاس داو به تاسی میگویند که برای عمل داو دادن به کار میرود و یک مقدار از تاسهای بازی بزرگتر است و بر روی آن شمارههای ۲، ۴، ۸، ۱۶، ۳۲ و ۶۴ درج شدهاست.
در طول بازی هر بازیکن که فکر میکند شایسته پیروزی است میتواند داو دهد و تنها میتواند یکبار و قبل از تاس ریختن این چالش را برای حریفش به وجود بیاورد. بعد از اینکه داو از سوی هر یک از بازیکنها پیشنهاد شد، حریف حق دارد که آن را قبول یا رد کند. اگر داو رد شود یعنی حریف شکست را قبول کرده و ست بعدی بازی شروع میشود. ولی اگر داو را قبول کرد بازی ادامه پیدا میکند و امتیاز بازی در عدد کیوب ضرب میشود و در این هنگام تاس داو طرف بازیکنی میرود که داو را قبول کرده و عدد شماره ۲ کیوب رو قرار میگیرد. همچنین اختیار داو دوباره با اوست. بازیکنی که پیشنهاد داو را داده دیگر با کیوب کاری نخواهد داشت. بازی ادامه پیدا میکند تا زمانی که بازیکنی که داو را قبول کرده احساس کند اینبار او شایستگی پیروز شدن را دارد و بر روی داو حریف داو میدهد و اینبار کیوب روی عدد ۴ میرود. باز هم حریف حق انتخاب دارد که کیوب را بگیرد یا رد کند. اگر رد کند ۲ امتیاز واگذار کرده. واگر قبول کند امتیاز بازی روی عدد ۴ میرود و نتیجه هر ست در عدد کیوب ضرب خواهد شد. یعنی اگر شما مارس شدید و کیوب روی ۴ باشد شما ۸ امتیاز دادید و اگر یک دست معمولی باختید و کیوب روی ۲ باشد ۲ امتیاز به حریف خواهید داد و یا اگر مارس اکبر شده باشید و کیوب روی ۱۶ بوده باشد ۴۸ امتیاز دادهاید.
منچ
منچ یک بازی خانگی آلمانی است و نام منچ در ایران برگرفته از واژه نخست نام آلمانی این بازی (Mensch ärgere Dich nicht) است
تاریخ
بازی منچ به سالهای دور باز میگردد. محل پیدایش این بازی در آلمان بودهاست. این بازی توسط 'یوزف فریدریش' اشمیت (۱۹۰۸/۱۹۰۷) ارائه شدهاست.
نام
نام آلمانی این بازی Mensch ärgere Dich nicht است. بازگردان نام آلمانی این بازی به فارسی، چیزی شبیه"عصبانی نشو مرد" یا "عصبانی نشو، رفیق" است.
قوانین
این بازی میتواند تواسته۲، ۳، یا ۴ بازیکن انجام شود. (یک بازیکن در هر یک از گوشههای صفحهٔ مربوط به بازی). هر بازیکن ۴ مهره خواهد داشت ( تعداده کل مهرهها ۱۶ خواهد بود ), که در ابتدا ۴ مهره در خانههای کناری قرار خواهند گرفت .و بازیکنان باید مهرههای خود را به انتهای بازی، یعنی ستونهای عمودی یا افقی مربوط به خود (هم رنگ) برسانند. و برندهٔ بازی فردیست که زود تر از دیگر بازیکنان موفق به تمام کردنه مهرههای خود بشود . مهرها بترتیب و از بالا به پایین در خانهای انتهای قرار خواهند گرفت و بعد از رساندن مهرهٔ اول نوبت به سه مهرهٔ دیگر خواهد بود و مهری دوم وارده بازی خواهد شد (به ترتیب تا تمام شدن هر چهار مهره) حرکت در این بازی بر مبنای تاس (مکعب) خواهد بود ، تعدادهتاس ۱ عدد میباشد. آوردنه عدد ۶ به معنای شروع بازی ، و در ادامهٔ بازی وارد کردن مهرها خواهد بود ، همچنین بعد از رخ دادن عدد ۶ ، بازیکن میتواند یک بار دیگر تاس ریخته و به همین ترتیب ...
حاشیه
تصورات دیگر
بازی منچ در وسط یک مربع انجام میشود. مربع نماد زمین است چون مردم زمانهای قدیم تصور میکردند زمین مربع شکل است. در وسط این مربع یا همان زمین، علامت + را میبینیم؛ این علامت نشانه و نماد خورشید است که امتداد آن به چهار سوی زمین میرسد. علامت + را میتوان در بناهای تاریخی مانند نقش رستم و فرشهای قدیمی ایران نیز دید. چهار گروه مهره رنگی نماد چهار عنصر اصلی حیات هستند:آبی نماد آب، زرد نماد باد، قرمز نماد آتش و سبز نماد خاک. طبق عقیدهٔ زمین محوری، زمین ثابت است و خورشید به دور آن میچرخد پس هر مهره باید روی علامت + دور زمین بچرخد تا به مرکز، که منطقهای ماورایی و نماد رهایی و آزادی از جهان خاکی است، برسد. اگر تاسی که سمبل سرنوشت است با او یاری نکند، هم چنان باید چرخه را ادامه دهد تا به پیروزی برسد. اگر چهار مهره در مرکز جمع شوند یعنی به اتحاد رسیدهاند. تاس سرنوشت ساز مکعبی است لغزان به شمارههای ۱ تا ۶ . طبق تصور مردم باستان خداوند جهان را در شش روز آفریدهاست؛ روز نخست آسمان روشن، دوم آب، سوم گیاه، چهارم آتش، پنجم حیوان و ششم آدم را.
کرانه
کرانه یا ساحل منطقه تماس بین دریا و خشکی است. اصطلاح ساحل برای مساحت بین حداکثر مد و پایه پرتگاههای ساحلی در سواحل مرتفع و برای نواحی واقع بین حداقل جزر و بالاترین مرز پیشروی امواج طوفان نیز به کار میرود.در مناطقی چون خاور آمریکا عرض سواحل بیشتر و در نواحی دریای مدیترانه، عرض سواحل کم است. عواملی چون رسوبگذاری، فعالیت آتشفشانی، مرجانها و تغییرات سطح آب دریاها در پیدایش انواع سواحل مؤثرند اما عواملی چون موج، جزر و مد، جریان دریایی، یخچال طبیعی و باد نیز پیوسته سواحل را تغییر میدهند. برخی سواحل هموار و پست هستند؛ در حالی که در برخی دیگر صخره وجود دارد.
سوارکاری
سوارکاری از ورزشهایی است که در چند دههٔ اخیر مورد توجه خاصی قرار گرفتهاست، با این وجود سابقهای طولانی داشتهاست و میتوان آن را از کهنترین ورزشها بهشمار آورد. این ورزش امروزه نه تنها به عنوان یک رقابت سالم و مفید، بلکه به عنوان سرگرمی و به منظور گذراندن اوقات فراغت مورد توجه قرار گرفتهاست، و با این که نسبت به بسیاری از ورزشها پرهزینه به نظر میرسد، هر ساله تعداد بیشتری طرفدار به سوی خود جلب میکند.
سوارکاری چیست؟
سوارکاری به معنای نشستن بر پشت یک اسب و کنترل حرکات آن میباشد. ویژگی این ورزش این است که انسان و مرکب (معمولاً اسب) را متحد میسازد، بنابرین موفقیت اسب و سوارکار به ارتباط و اعتماد و احترامی که آن دو برای یک دیگر قائلاند، بستگی دارد. برای شروع به یادگیری سوارکاری نیاز به هیچ دانش و مهارت قبلی ای نیست، با این حال به دلیل قدرت جسمی و ذهنی که کنترل کردن اسب نیاز دارد، به کودکان زیر ۷ سال توصیه نمی شود.
تاریخچه
سوارکاری ورزشی بسیار قدیمی است که از دیرباز به منظور جنگیدن یا پیامرسانی به افراد آموزش داده میشد.تاریخ رام کردن اسب هنوز به درستی شناخته نشدهاست. باستانشناسان با توجه به قدیمیترین آثار بر جای مانده از پیشینیان در رابطه با رام کردن اسبها، معتقدند که اولین اسبهای اهلی به بیش از سه هزار سال قبل از میلاد برمیگردند. قبل از آن اسب به منظور تهیهٔ غذا شکار میشدهاست. البته باستانشناسان در بعضی نقاط از اروپای شرقی دهنههایی پیدا کردهاند که به شش هزار سال قبل از میلاد برمیگردند. این نشان میدهد که انسان از آن زمان سعی داشتهاست که اسب را رام کند و از آن بهره ببرد، ولی به دلیل سرعت آن در فرار موفق نشدهاست. قدیمیترین آثار در اروپای شرقی، شمال قفقاز و آسیای مرکزی یافت شدهاند.
اگرچه اهلی ساختن اسب در مقایسه با حیواناتی چون سگ (نه هزار سال قبل از میلاد) و گوسفند و بز (پنج هزار سال قبل از میلاد) مؤخر بود، با این وجود تحول عظیمی در زندگی انسان بهوجود آورد. انسان نه تنها از گوشت و شیر اسب بهره میبرد، بلکه برای جابهجایی نیز از او استفاده میکرد. نکتهٔ جالب در این باره این است که مورخان عقیده دارند که مردم قبل از یادگیری چگونه سوار شدن بر اسب، از ارابه استفاده میکردند. آنان برای این فرضیه خود دو دلیل عمده ارائه میکنند:
فسیلهای پیدا شده نشان میدهند که اسبهای آن دوره برای حمل انسان بسیار کوچک بوده و قد آنها (بلندی جدوگاه) به بیش از ۱۴۰ سانتیمتر نمیرسید.
قبل از آن که اسب توسط انسان رام شود، مردم از ارابه استفاده میکردند و آنها را به حیواناتی از چون گاو یا الاغ وحشی میبستند. بستن ارابه به اسبهای کوتاه قد خیلی دشوار نبود، در حالی که سوار شدن بر کمر اسب باعث وحشت و رم کردن آن میشد.
مهار و تربیت کردن اسبها در زندگی مردم اوراسیا تحول و تأثیرات فراوانی به دنبال داشت. در حالی که در گذشته طی کردن مسافتهای طولانی غیرممکن به نظر میرسید، انسان توانست به کشف سرزمینهای جدید و کشور گشایی بپردازد. کمکم وسایلی برای هدایت و تسلط بیشتر بر اسب مانند زین و رکاب (که از اختراعات چینیها میباشند) ساخته شدند و در اختیار سوارکاران گرفتند. تربیت و پرورش اسب نیز، به خصوص در خاورمیانه اهمیت بسیاری یافت و صحرانشینان این مناطق به پرورش و نگاهداری اسبهای اصیل عربی پرداختند. سوارکاری تا اواخر قرن پانزدهم، بیشتر در جنگها معمول بود. البته در بعضی از کشورها مانند ایران باستان، بهعنوان ورزش و سرگرمی نیز مورد توجه قرار میگرفت (مانند بازی چوگان)، ولی جنبهٔ هنری آن از اواخر قرن پانزدهم میلادی به بعد اهمیت یافت. سرانجام در اواخر قرن نوزدهم، با پیشرفت صنعت و جایگزین کردن اسبها توسط ماشینآلات، سوارکاری جنبهٔ ورزشی و سرگرمی که امروزه مشاهده میشود را به خود گرفت.
برقراری ارتباط با اسب
اولین گام یادگیری سوارکاری، یادگیری ارتباط برقرار کردن با اسب است. سوارکار باید بتواند خلقوخوی اسبی را که قرار است سوار شود درک کند و با او به خوبی ارتباط برقرار کند، تا اسب فرمانهای او را بهتر درک کند و انجام دهد. اسب با انسان متفاوت است و همین تفاوت است که باعث جذابیت این رابطه می شود. هرچه بهتر بتوانیم طرف مقابلمان را درک کنیم و یادبگیریم که غرایز او را بفهمیم، رابطه ما بهتر می شود. رفتار پر از ترس اسب مغرضانه نیست، بلکه یک واکنش طبیعی برای حفاظت از خودش است. اگر بتوانیم این احساس را در اسب ایجاد کنیم که ما از او حفاظت می کنیم، به ما اعتماد می کند و دیگر از هر فرصتی برای فرار استفاده نمی کند. با این حال حتی وقتی به ما اعتماد می کند، باز هم اسب حیوانی است که به طور طبیعی در گله به سر می برد. در موقعیت های هراس آور نیز همواره به گله می پیوندد.
سوارکار میتواند از روی حرکات و برخی از اعمال اسب متوجه منظور او شود. حرکات گوشهای اسب در این مورد بسیار مؤثر است. به طور مثال، هنگامی که اسب گوشهایش را به سمت جلو میچرخاند و سرش را بالا میگیرد، به این معناست که صدایی او را نگران کردهاست و او بادقت در حال پیدا کردن منبع صداست. و یا هنگامی که اسب گوشهایش را در جهات مختلف میچرخاند و حرکت میدهد، به این معناست که با دقت اطرافش را تحت نظر دارد. گوشهای مایل به سمت پایین در دو طرف سر اسب، نشان دهندهٔ تسلیم شدن و اطاعت اسب هستند. البته این حالت گوشها در صورتی که لبها به سمت پایین افتاده باشند، نشانهٔ خوابآلودگی است. اسبی که گوشهایش را میچرخاند و زبانش را بیرون میآورد، قصد سربهسر گذاشتن و بازی با سوارکار را دارد. اگر اسب گوشهایش را به سمت جلو مایل کند و سرش را کمی خم کند، یعنی به سوارکار (یا هر کس دیگری) اعتماد دارد. اگر گوشهایش را به سم عقب بچرخاند، یعنی چیزی باعث بی اعتمادی یا عصبانیت و ناراحتی او شدهاست. در صورتی که گوشهایش را به سمت عقب بخواباند، یعنی بسیار خشمگین است و یا این که به شدت ترسیدهاست. در این صورت اسب میتواند بسیار خطرناک باشد و حمله کند. حرکت سر و پاهای اسب نیز میتوانند در درک منظور او کمک کنند. اسبی که سرش را کمی پایین میآورد و ناگهان بهشدت تکان میدهد، بدخلقی خود را نشان میدهد. هنگامی که پاهای جلویش را بر زمین میکوبد، عصبانیت یا بیقراری خود را ابراز میکند، در حالی که وقتی اسب پاهای عقبش را بر زمین میکوبد، میخواهد بفهماند که چیزی باعث ناراحتی او شدهاست (مثلاٌ مگس و...).
سبک های سوارکاری
سبک انگلیسی
سبک انگلیسی پیش نیاز و پایه بعضی از رشته های سوارکاری مانند درساژ، پرش با اسب، چوگان و حتی کورس میباشد. این سبک از بعضی از سبک های دیگر اندکی دشوارتر است.
سبک غربی
از سبک غربی بیشتر در رشته هایی از سوارکاری که در تاریخچه یشان از کار در مزرعه سرچشمه گرفته اند و به مرور زمان توسعه یافته اند، مانند استقامت، استفاده میشود.
شاخههای مختلف سوارکاری
سوارکاری شاخههای متعددی دارد که به طور کلی در دو دسته قرار میگیرند:
مسابقات اسبدوانی
این مسابقات از دوران قدیم در بسیاری از تمدنها همچون یونان و روم باستان وجود داشتهاست. مسابقات یورتمه و تاخت از مسابقات رایج اسبدوانی هستند.
مسابقات یورتمه (سوار بر اسب یا ارابه)، که در آنها هدف نفر اول رسیدن به خط پایان است، بدون این که اسب با سرعت گرفتن شروع به تاختن کند. تاختن اسب باعث حذف شدن سوارکار از دور مسابقه میشود.
مسابقات تاخت، که در آنها نیز هدف اول رسیدن به خط پایان است، اما این بار با تاخت. مسافت این مسابقات بین ۲٫۴۰۰ و ۱٫۶۰۰ متر است. نوعی دیگر از مسابقات تاخت، همراه با مانع است و اسب باید از روی آنها بپرد. مسافت این مسابقات با توجه به نوع مانعها متفاوت است.
سایر مسابقات سوارکاری
مسابقات ارابهرانی،
که معمولاً دارای سه مرحله هستند: مرحلهٔ درساژ (که در آن شیوه و جذابیت نمایش و رفتار و حرکات اسب سنجیده میشود.)، مرحلهٔ ماراتون (که امتحانی زمان بندی شدهاست و از قسمتهای مختلفی تشکیل شدهاست و مهمولاً دارای موانعی طبیعی یا مصنوعی است. در آن مهارت، توانایی جسمی و سرعت اسب سنجیده میشود.) و مرحلهٔ آخر که عبارت است از حرکت در راههایی که از اطراف، توسط توپهایی (یا چیزهای دیگری) محدود شدهاست. گذشت وقت مجاز یا افتادن توپ باعث از دست رفتن امتیاز میشود. تعداد اسبهایی که ارابه را میکشند به نوع مسابقه بستگی دارد و به جز در مواردی خاص، بیش از چهار عدد نیستند.درساژ
(حرکات نمایشی اسبهای تربیتشده)، که در آن کیفیت ارتباط میان سوارکار و اسب سنجیده میشود. این مسابقات در زمینهایی مستطیلشکل به طول ۶۰ متر و عرض ۲۰ متر برگزار میشوند، و سوارکاران به ترتیب در زمین حاضر شده و برنامههای خود را اجرا میکنند. این برنامهها میتوانند مشخصشده یا آزاد باشند. داوران بر اساس تکنیک و دقت سوارکار و همچنین اطاعت و حرکات اسب و ارتباط میان آن دو، قضاوت کرده و بین صفر تا ده امتیاز میدهند. سوارکار باید سعی کند حرکاتش برای هدایت اسب تا حد امکان مخفی باشد و دیده نشود، به طوری که احساس شود ارتباط میان آن دو توسط تِلِپاتی انجام میگیرد. این کار ممکن است به نظر تماشاگران بسیار آسان بیاید، در حالی که نتیجهٔ تلاش چندین سال میباشد.
پرش با اسب، که از متداولترین مسابقات سوارکاری در جهان میباشد و مشابه مسابقات درساژ و استقامت است.
مسابقات استقامت، که هدف از آنها طی کردن مسافتی طولانی (بین ۲۰ تا ۱۶۰ کیلومتر) در یک (و گاهی دو) روز است. اسبهای عرب از بهترین نژادها برای این نوع مسابقات هستند، زیرا جثهای کوچک و مقاوم در برابر گرما و تمرینات سخت دارند. اسبهای انگلیسی نیز به دلیل سرعتشان در این زمینه مورد توجه بسیاری قرار میگیرند.
مسابقات وسترن یا آمریکایی، که ریشهٔ آنها به مسابقات گاوچرانی برمیگردد.
رودیئو، که مسابقه با اسبهای وحشی است.
رودئو.
چوگان، که قدیمیترین ورزش گروهی است. این ورزش در ایران باستان رواج و اهمیت زیادی داشتهاست و به بازی شاهان معروف است. امروزه چوگان به دلیل هزینهٔ بالا کمتر مورد توجه عام قرار میگیرد.
تیراندازی
تیراندازی (به انگلیسی: Shooting) به پرتاب یا شلیک کردن تیر به وسیلهٔ کمان یا تفنگ (تفنگ، تپانچه ) گفته میشود.
اسلحه گرم:ورزش تیراندازی (به انگلیسی: Shooting sport) یک ورزش رقابتی براساس دقت و سرعت و تصمیم گیری به موقع است که به وسیله (تفنگ، تپانچه ) انجام میشود. تیراندازی رابطه مستقیمی با قدرت تمرکز نیز دارد به گونه ای که افراد برای بالابردن سطح تمرکز روی به تیراندازی می آورند.
اسلحه سرد:تیراندازی با کمان یا تیر و کمان فعالیتی است که میتواند به عنوان ورزش یا برای شکار و یا برای جنگ استفاده شود.
غارنوردی
غارنوردی ورزش تفریحی نوردیدن و اکتشاف غارهاست.
غارنوردی آماتور
غارنوردان آماتور کسانی هستند که به این فن بیشتر از جنبه ورزشی نگاه میکنند. امروزه تعداد این غارنوردان از غارنوردان حرفهای بیشتر است و اکثر غارهای جدید توسط این افراد کشف میشود. به طور کلی غارنوردی آماتور بیشتر در میان کوهنوردان رایج است. بسیاری از غارنوردان آماتور به خاطر علاقه خاصی که در طی سالها غارنوردی به این فن پیدا میکنند تبدیل به غارنوردان حرفهای میشوند و در بعضی از رشتههای آن تجربههای زیادی کسب میکنند.
از نگاه غارنوردان آماتور غارنوردی ورزش تفریحی نوردیدن و اکتشاف غارهاست.
چالشهای مربوطه به نوع و گونه غاری که نوردیده میشود بستگی دارد ولی معمولاً بهرهگیری از میخ و طناب و گذر از تنگراهها، دهلیزها و چالابها را شامل میشود. در ایران غارنوردی را یکی از گرایشهای کوهنوردی میدانند ولی در برخی کشورها رشتهای جداگانه شمرده میشود. دیگر گرایشهای کوهنوردی در ایران از این قرارند: کوهپیمایی (Hiking)، سنگ نوردی (Rock Climbing)، یخ نوردی (Ice Climbing) و صعودهای ورزشی (Sport Climbing)
مهمترین، پرهیجانترین و سختنوردترین غار ایران غار پراو در استان کرمانشاهان است. استان کرمانشاه بعلت دارا بودن محیطی مناسب و در برگرفتن شمار بسیار زیادی غار از جمله ژرفترین و طولانیترین غارهای ایران و داشتن علاقهمندان بسیار از پیشروترین استانهای غارنوردی ایران بشمار میآید. بسیار بر این باورند تنی چند از غارشناسان کرمانشاه غاری ژرفتر از پراو را کشف نمودهاند اما برای بکر ماندن آن از آشکار نمودن جایگاه آن خودداری میکنند!! از دیکر غارهای ایران که همواره مورد بازدید غارنوردان باشگاههای غارنوردی ایران قرار میگیرند میتوان از غارهای یخ مراد –بورنیک – رود افشان و کهک، قاطرچی و کتلهخور نام برد. از تجهیزات لازم برای غارنوردی میتوان از اینها نام برد: طناب, کارابین (ابزار), شفت, میخ، کوله پشتی، کیسه خواب, رول, یومار، کلاه ایمنی، چراغهای پیشانی با لامپ ال.ای.دی، لباس ضدآب, هشتفرود - لوازم زخم بندی، پانسمان، انواع قرص و کپسول و آمپول جهت موارد گوناگون.
غارنوردی حرفهای
غارنوردان حرفهای کسانی هستند که برای اهداف خاصی بجز جنبه ورزشی آن پا به اعماق غارها می گذارند. این اهداف که جنبه علمی دارند به رشتههای زیر تقسیم میشود: زمین شناسی، دیرین شناسی، باستان شناسی، انسان شناسی، آب شناسی و زیست شناسی.
غواصی
فن شناوری در زیر آب - با یا بدون وسایل تنفس مصنوعی اسکوبا است. غواصی علاوه بر اینکه کاربردهای صنعتی، پژوهشی، و نظامی دارد، برای ورزش و تفریح هم انجام میشود.امروزه ورزش غواصی و غواصی تفریحی به صورتی همگانی درآمده و به شکل گستردهای در بسیاری از کشورهای جهان فعالیتی مفید، مفرح، لذتبخش و نیز منبع درآمد در صنعت اکوتوریسم شدهاست. تنفس زیر آب با استفاده از هوای فشرده تاریخچهای کوتاه دارد. اما غوص در دریا و سفر به عمق دریا از دیرباز توسط بسیاری از ملل جهان انجام میپذیرفتهاست.
انواع غواصی
غواصی آزاد
یکی از روشهای غواصی، غواصی آزاد میباشد که ورزشی بسیار سنگین و فرحبخش میباشد.در این ورزش اولین هنر غواص، استفاده صحیح از ششها در تنفس صحیح و حمل هوای کافی در غواصی میباشد در ابتدا این ورزش برای جستجوی مروارید در سطح دریا مورد استفاده قرار میگرفتهاست ولی بعد پا به عرصه ورزش حرفهای گذاشته باشگاههای ویژهای برای اینکار بهوجود آمدهاند.
تعریف سادهٔ این ورزش چنین است که شخصی به زیر آب شیرجه میرود و تنها هوایی که در اختیار دارد، هوای است که در ششهای خود ذخیره کردهاست. در واقع این ورزش در نوع خود، از قدیمیترین ورزشهای آبی جهان شناخته میشود که مثال بارز آن جستجوی مروارید است که در حدود چهار هزار سال پیش در دریای مدیترانه انجام میشد و اشخاص برای خارج کردن دانههای مروارید و یافتن صدفهای مرواریددار، به اعماق مدیترانه شیرجه میرفتند و دقایقی چند را تنها با تکیه بر هوای ذخیره شده در ششهای خود به جستجو برای مروارید میپرداختند.
اما این پدیده در حقیقت یک پایه و اساس علمی هم دارد، چرا که بدن در زیر آب با شرایط تازهای مواجه میشود که در نتیجه قلب، سیستم گردش خون و عضلات انسان، همگی به گونهای عمل میکنند تا اکسیژن را در بدن ذخیره کنند. غواصی آزاد ورزشی پر رمز و راز است که به خصوص طی پنجاه سال گذشته توجه پژوهشگران و اهل علم را به خود جلب کردهاست.
در دهه پنجا ه میلادی یعنی بین ۱۹۵۰ تا ۱۹۶۰ پزشکان به غواصان آزاد هشدار دادند که در عمق بیشتر از پنجاه متر نگهداشتن نفس مساوی با مرگ است. چرا که فشار آب در چنین عمقی باعث میشود تا قفسهٔ سینه و دندهها مانند کاغذ مچاله شده در دست انسان در هم شکسته شوند اما امروز مشاهده میکنیم که غواصان آزاد به عمق دویست متری هم میروند. جالب است گفته شود که این عمق حتی از عمقی که زیر دریاییها در جنگ جهانی دوم توان رسیدن به آن را داشتند، بیشتر است.
آنچه باعث پیشرفتهای اعجابانگیز در این ورزش و تواناییهای غواصان شده، تحقیقات درخشان فیزیولوژِی است که جمعی از پدیدههای مختلف در رابطه با آب را در بدن کشف کردهاست. تجهیزات مورد نیاز این ورزش یک جفت باله های غواصی(فین)، ماسک غواصی و لوله تنفس بر سطح آب (اسنورکل) میباشد.
غواصی اسکوبا
یکی از دیگر روشهای غواصی، غواصی با تجهیزات تنفسی زیر آب غواصی اسکوبا است. در این روش غواص با همراه داشتن هوای فشرده تنفسی که درون سیلندر غواصی ذخیره شده است به زیر آب رفته و غواصی میکند.
غواصی اسکوبا مدار باز
سیستمهای اسکوبای مدار باز، سیستمهای تنفسی هستند که باز دم غواص را درون آب تخلیه مینمایند.
غواصی اسکوبا مداربسته
سیستمهای مدار بسته تنفسی ، به گونه ای ساخته شده اند تا قابلیت پالایش بازدم غواص را داشته و بازدم او را با حذف دی اکسید کربن و افزودن اکسیژن برای تنفس دوباره آماده نمایند.
غواصی با تغذیه از سطح
در این نوع غواصی که بیشتر در خدمات غواصی صنعتی کاربرد دارد، گازهای تنفس از طریق شلنگی به نام بند ناف، از سطح به غواص انتقال پیدا میکند.تغذیه از سطح اغلب از یک کشتی پشتیبان غواصی، اما گاهی اوقات، به طور غیر مستقیم از طریق یک اتاقک زیرآبی ارائه میگردد.غواصان تغذیه از سطح همیشه نیازمند پوشیدن کلاه و یا ماسکهای غواصی هستند که صورت را کامل پوشش میدهند.
جایگزینی برای غواصی تغذیه از سطح به نام "SNUBA" و یا "hooka" وجود دارد که هوای تنفسی غواص از طریق شلنگ از یک سیلندر کوچک یا کمپرسور از سطح آب تامین میگردد. این روش برای کارهای سبک از جمله تمیز کردن بدنه شناورها بسیار محبوب است و نیز به عنوان فعالیتی توریستی برای کسانی که دارای گواهینامه غواصی نیستند مناسب است.
غواصی اشباع
غواصی اشباع روشی است که اجازه می دهد تا غواصان صنعتی در ارتباط با کار در عمق به مدت چند روز یا چند هفته باقی بمانند.این نوع غواصی اجازه می دهد تا از نظر اقتصادی کار بیشتر انجام شده و ایمنی افزایش یابد.در این نوع غواصی پس از اتمام کار در آب، غواصان در زیستگاه خشک و تحت فشار در زیر آب و یا محفظه های فشار بر روی عرشه یا سکوهای پشتیبانی به استراحت میپردازند یا ممکن است به زنگ غواصی منتقل گردند.در پایان این نوع غواصی برداشت فشار ممکن است روزهای بسیاری طول بکشد.
آموزش غواصی
آموزش غواصی زیر آب را باید نزد مربی غواصی واجد شرایط که در ارتباط و زیر نظر یکی از سازمانهای آموزش غواصی معتبر است آموخت.
آموزش غواصی پایه مستلزم یادگیری مهارت های لازم برای انجام ایمن فعالیت های غواصی در محیط زیر آب است که شامل نکاتی مانند سیستم همراهان ، برنامه ریزی غواصی و روش استفاده از جداول غواصی میگردد.
برخی از مهارت های پایه که یک مبتدی در زیر اب باید فرابگیرد عبارتند از :
برداشت فشار -- تنظیم فشار درونی و بیرونی شیپور استاش گوش به هنگام غواصی و قرار گرفتن در محیطهای پر فشار.
تنفس زیر آب -- آموختن مهارت تنفس از طریق رگلاتور غواصی در زیر آب. کلیه غواصان باید روش تنفس درست را بیاموزند.
پاکسازی ماسک -- شامل تخلیه آب ماسک در زیر آب.
به اشتراک گذاری هوا -- آموختن روش درست و ایمنی که غواصان برای به اشتراک گذاری یک منبع هوا به کار میگیرند.
صعود اضطراری -- چگونگی بازگشت به سطح به شکلی ایمن بدون آسیب زدن به خود در صورت قطع هوای تنفسی.
شنا و شناوری -- رانش و حرکت زیر آب با تجهیزات غواصی و تنظیم شناوری با استفاده از هوای موجود در ریه ها به صورتیکه هوای در ریه ها باعث شناوری بیشتر شده در حالی که تخلیه هوای ریه ها باعث شناوری کمتر گردد.
علامت های غواصی -- علامت های غواصی که هدف از آنها برقراری ارتباط با غواصان دیگر در زیر آب است.
خطرات غواصی
اگرچه غواصی در رده ایمن ترین فعالیتهای تفریحی و ورزشی جهان به شمار میرود اما مبادرت به آن بدون دانش لازم و در صورت عدم رعایت استانداردهای غواصی میتواند کاری بسیار خطر ناک به شمار آید.
عدم رعایت استانداردهای غواصی و عدم بکار گیری صحیح جدولهای غواصی مانند برنامه ریز غواصی تفریحی میتواند باعث بروز بیماریهائی از جمله بیماریهای زیر گردد:
بیماری تراکم زدائی
نیتروژن نارکوسیس
مسمومیت با اکسیژن
مسمومیت با منواکسید کربن
آمبولی ریه
باراتروما
شلو واتر بلک اوت
خفگی
غرق شدگی
سازمانهای آموزش دهنده
از آنجائیکه غواصی رشته ورزشی و تفریحی بسیار خاصی بوده است و به دور از خشکی در محیطی پر خطر(دریا)انجام میگردد، سازمانهای معدودی که دارای استانداردهای خاص آموزشی میباشند فقط مجاز به آموزش این رشته ورزشی و تفریحی در سطح جهان گردیده اند. سازمانهای آموزش دهنده می بایست با استانداردهای سازمان جهانی استاندارد منطبق و زیر پوشش نهادهائی بین المللی مانند شورای جهانی آموزش غواصی تفریحی و فدراسیون زیر آبی اروپا فعالیت نمایند.
قدمت غواصی در ایران
گویند که ژرفروی و غواصی که در جنوب ایران آن را صیف و صیافی مینامند به قرنها قبل از میلاد برمیگردد. در دوران خشایارشا، ایرانیان از غواصان برای بیرون کشیدن صندوقچههای طلا و جواهرات کشتیهای غرق شده استفاده مینمودهاند.
آثار حاصل از حفاریهای باستانشناسی نشان میدهد که قرنها قبل از میلاد، ساحلنشینان دریای پارس از این فن برای تحصیل مروارید استفاده مینمودهاند.
دکتر تاکر ابوات در کتاب کینگدوم اف سی شل بدین طریق اشاره نمودهاست و ایرانیان را در زمره پیشگامان پایهگذاری صید و پرورش مروارید قلمداد نمودهاست.
در سندی دیگر، آپولونیوس فیلسوف یونانی ساکن رودز اشاره دارد که غواصان دریای پارس در حالی که ظرف کوچکی حاوی گیاهی خوشبو و تهییج کننده در دست داشتند به سمت صدف رفته و باعث میشدند تا صدف لب از لب بگشاید، سپس شاخهای میان تهی را به میان آن فرو برده و مایه موجود را به بیرون میکشیدند و آن را به سطح آب آورده و در ظروفی آهنین قرار میدادند، البته آنان هیچگاه موفق به پرورش مرواریدهایی اینچنینی نشدند اما شیوهای را بدین طریق بنیان نهادند. اما در اشارت به ابزار غواصی آن دوران پر واضح است که در آن دوران به اتکای هوای محبوس شده در ششهای خود به عمق فرو رفته و باز میآمدند، روشی که هم اکنون نیز در پارهای از جزایر دریای پارس چون لاوان و کیش و قشم کماکان پا بر جاست.
کوهنوردی
کوهنوردی یکی از ورزشها یا از جمله تفریحات است. برای برخی نیز کوهنوردی به عنوان شغل اصلی یا بخش الزامی شغل اصلی است.
به بالا رفتن یا پایین آمدن به صورت پیاده از ارتفاعات طبیعی کوهنوردی گفته میشود. کوهنوردی میتواند به صورت راهپیمایی، کوهروی، کوهپیمایی و صعود به قلل مختلف و یا صخرهنوردی انجام گیرد. کوه: به ارتفاعات بیش از ۶۰۰ متر از زمینهای اطراف هر منطقه کوه گفته میشود. قله: بلندترین قسمت هر کوه را قله میگویند. یک کوه میتواند یک یا چند قله داشته باشد که در یک خط الراس قرار گرفته اند. معمولاً به بلندترین قله، قلهٔ اصلی گفته میشود و سایر قلل در یک خط الراس را قلههای فرعی مینامند. در کوهنوردی شرط سنی وجود ندارد. در ضمن این رشته ورزشی سن بازنشستگی هم ندارد. هر کسی با هر توانایی میتواند به عنوان تفریح یا انجام کار حرفه ایی به کوه برود.
ابزار کوهنوردی
برای صعود مؤثر به کوهها نیاز به ابزارهای متفاوتی است. البته در هر صعود بسته به نوع صعود، منطقه مورد نظر، زمان و فصل اجرای برنامه ممکن است ابزار و تجهیزات متفاوتی مورد استفاده قرار گیرد. برخی از این وسایل کوهنوردی عبارتاند از:
کفش مخصوص کوه
کاپشن گورتکس
کاپشن پلار
کوله پشتی
باتوم کوهنوردی
دستکش
کلاه مناسب فصل
بادگیر
جوراب کلفت
کیسه خواب
فلاسک چای
بطری آب
وسایل شخصی مانند قاشق و چنگال چاقو
چراغ قوه
وسایل کمک خوراکی مانند: فندک، نمک، چاقو،
کیف کمری برای نگهداری وسایل حفظ حیات:وسایلی که همیشه و در هر موقعیت لازم است همراه کوهنورد باشدزیرا ممکن است کوهنورد به دلیلی ناچار به ترک کوله پشتی اش شود: نقشه- موبایل جی پی اس دار-خوراکی(نان وکشمش و ...)- برنده(چاقو)- دوزنده(سوزن و نخ)- سوزنده(کبریت یا فندک)-باند کشی و باند استریل
عموماً برای کوهنوردی یا فتح قلهای به راهنما نیاز است.
تاریخچه
اتزی مرد یخی ۵۳۰۰ سال پیش ۳۰۰۰ متر در کوههای آلپ بالا رفته بود. بقایای او در این ارتفاع یافت شده است.
در تاریخ سنتی ایران آمده است که آرش کمانگیر از قله کوه دماوند بالارفت تا با پرتاب تیر، مرز ایران و توران را مشخص سازد.
نخستین کوهنوردی ثبت شده در تاریخ مربوط به صعود سرداران ایرانی آرتاخه و بوبراندا بر فراز کوه آتوس در زمان خشایارشا، جهت ثبت نقشه برداری برای ساخت دالانه یا کانال آبی است که کشتیهای نیروی دریایی ایران از آن گذر کنند. (منبع تاریخ علم جورج سارتون)
پادشاه رومی هادریان کوه اتنا (۳۳۵۰ متر) را بالا رفت تا طلوع خورشید را ببیند.
آثار به جامانده، خبر از نشانههایی از کوهنوردی پیشرفته در ایران در پایان قرن پنجم هجری (دوران سلجوقیان و اسماعیلیان) دارد. در کتاب «خداوند الموت» چنین آمدهاست:
کوهپیمایان بعد از گردش اطراف کوه گفتند اگر بالای این کوه کسی نباشد و سنگ بر سرمان نبارد ما میتوانیم از دامنه جنوبی بالا برویم و خود را به قله برسانیم و هنگام بالا رفتن، طنابی با خود میبریم که وسیلهٔ ارتباط ما با پایین کوه باشد و بوسیلهٔ آن طناب میتوانیم چیزهای ضروری را برای نصب یک چرخ بالا ببریم و بعد از اینکه چرخ نصب شد، میتوان از زمین چیزهایی دیگر را بالا برد تا اینکه چندین چرخ بالای کوه نصب گردد و از آن پس بین پای کوه و قله آن، رابطهٔ بیشتری برقرار خواهد گردید و میتوان سربازان را بوسیلهٔ چرخ بالا کشید... کوهپیمایان گفتند ما با خود میلههای آهنی چون پله میبریم و آنها را در دامنهٔ کوه نصب مینماییم و صعود میکنیم تا اینکه به قله ٔ کوه برسیم.
پیتر سوم در قرن سیزدهم از کوه کانیگو در پیرنه صعود کرد.
کوه اورست (۸۸۴۸ متر) برای اولین بار در ۲۹ می سال ۱۹۵۳ توسط ادموند هیلاری و تنسینگ نورگی از سمت جنوبی آن در نپال فتح گردید.
هواشناسی کوهنوردی
هواشناسی کوهنوردی مبحثی است که به آموزش تأثیر پدیدههای هواشناسی بر کوهنوردان میپردازد. (منبع: سایت انجمن کوهنوردان ایران)
گروه کوهنوردی
یک گروه کوهنوردی سازمانی (معمولا مردمنهاد (سمن)) است که با اهداف ورزشی و معمولاً تحت مجوز و نظارت فدراسیون کوهنوردی کشور و هیاتهای کوهنوردی در استانها فعالیت میکنند. یک گروه کوهنوردی ممکن است با مجوز موقت از هیات استان فعالیت محدود نماید ولی گروههای کوهنوردی فاقد مجوز و نیز فاقد نظارت به هیچ وجه قابل اطمینان نبوده و در صورت بروز مشکلات - عدیدهای که در برنامههای کوهنوردی بعید نیست - پیگیری موضوع بسیار دشوار خواهد بود. هر گروه باید دارای یک کادر اجرایی مسئول در زمینههای فنی، امدادی، مالی و... باشد که در حیطه کاری خود دارای مهارت و تجربه و نیز تعهد باشند. معمولا گروههای کوهنوردی برنامههای آتی خود را در تقویمهایی ششماهه و یا یکساله تدوین نموده و در دسترس علاقهمندان قرار میدهند.
ماهیگیری
ماهیگیری یا ماهیگیری به شکار ماهی از آب با قلاب، تور یا هر ابزار دیگری میگویند. به کسی که ماهی میگیرد ماهیگیر یا ماهیگیر میگویند.
انواع ماهی گیری
ماهی گیری به دو دسته کلی ماهی گیری تجاری و ماهی گیری تفریحی تقسیم می شود.
ماهی گیری تجاری به دو صورت سنتی (غیرصنعتی) و صنعتی انجام می شود .
ماهی گیری تفریحی به دو روش ماهی گیری ورزشی و ماهی گیری غیرورزشی(سنتی) انجام می شود.
ماهی گیری تجاری
ماهی گیری ای که به منظور تامین درآمد از طریق فروش مستقیم ماهی، تولید فرآورده های دریایی یا تامین مواد اولیه صنایع مرتبط انجام می شود ماهیگیری تجاری نام دارد. در این روش ماهی گیری در مقیاس وسیع اما با توجه به محدودیت های روش و قوانین انجام می گیرد.
ماهیگیری سنتی
در روش سنتی معمولا از تور برای صید ماهی استفاده می شود . یکی از این روش ها نصب تورهای عمودی به صورت ثابت در طول خط ساحلی است که با استفاده از جزر و مد آب دریا باعث گیرافتادن ماهی در تور می شود.
روش دیگر استفاده از تورهای بزرگ در سطح یا کف دریاست . این تورها ممکن است در یک ناحیه دریا پهن شده یا توسط کشتی در مسیر مشخصی کشیده شود.
ماهی گیری صنعتی
ماهی گیری صنعتی به وسیله روش های نوین مانند استفاده از رادار، سونار، تصاویر ماهواره ای و تجیهیزات پیشرفته مکانیکی مانند تورهای هدایت شونده، جرثقیل های بزرگ و دستگاه های مکش انجام می گیرد.
بسیاری بر این غقیده اند که این روش ماهی گیری برای محیط زیست و تنوع موجودات آبزی بسیاز زیان بار است . اما در مقابل عده ای معتقدند که این روش یکی از راه های جلوگیری از کمبود غذا در بسیاری از کشورهای فقیر و در حال توسعه و همچنین مناسبترین روش برای جایگزینی محصولات دریایی بجای گوشت قرمز در رژیم غذایی انسان هاست .
ماهی گیری تفریحی
ماهی گیری تفریحی به منظور سرگرمی، ورزش، کسب لذت، زندگی در طبیعت و ... انجام می گیرد.
ماهی گیری ورزشی
در این روش که طی دهه های گذشته در اکثر نقاط دنیا توسط ماهیگیران شناخته شده است، بر خلاف ماهی گیری تفریحی سنتی دیگر ماهی گیری بر مبنای نصب نوع خاصی از طعمه و انتظار نیست. بلکه از روش های واکنشی ماهی به طعمه یا شکار در حالت طبیعی استفاده می شود . از نمونه های این روش می توان به صید با لانسه، پشه، لور، قاشقک ، ماهی گیری با نیزه و طعمه زنده اشاره کرد.
روش های ماهیگیری آسیب رسان به محیط زیست
ماهی گیری با برق
ماهی گیری با انفجار
ماهی گیری با سم یا مواد شیمیایی
ماهی گیری با تور های عرضی روخانه ای
9:48 pm
کاربرد برنامه نویسی
زبان برنامه نویسی یک مکانیزم ساخت یافته برای تعریف دادهها، و عملیات یا تبدیلهایی که ممکن است بطور اتوماتیک روی آن داده انجام شوند، فراهم میکند. یک برنامه نویس از انتزاعات آماده در زبان استفاده میکند تا مفاهیم به کار رفته در محاسبات را بیان کند. این مفاهیم به عنوان یک مجموعه از سادهترین عناصر موجود بیان میشوند(مفاهیم ابتدایی نامیده میشوند).

زبانهای برنامه نویسی با غالب زبانهای انسانی تفاوتی دارد و آن این است که نیاز به بیان دقیق تر و کامل تری دارد. هنگام استفاده از زبانهای طبیعی برای ارتباط با دیگر انسانها، نویسندگان و گویندگان میتوانند مبهم باشند و اشتباهات کوچک داشته باشند، و همچنان انتظار داشته باشند که مخاطب آنها متوجه شده باشد. اگرچه، مجازا، رایانهها "دقیقاً آنچه که به آنها گفته شده را انجام میدهند." و نمیتوانند "بفهمند" که نویسنده دقیقاً چه کدی مد نظر نویسنده بودهاست] البته امروزه برنامههایی برای انجام این کار تولید شدهاند و تلاشهای بسیاری در این زمینه انجام شده ولی هنوز به نتیجهٔ رضایت بخشی نرسیده است[. ترکیب تعریف زبان، یک برنامه، و ورودی برنامه بطور کامل رفتار خروجی را به هنگام اجرای برنامه (در محدوده کنترل آن برنامه) مشخص میکند. برنامههای یک رایانه ممکن است در یک فرایند ناپیوسته بدون دخالت انسان اجرا شوند، یا یک کاربر ممکن است دستورات را در یک مرحله فعل و انفعال مفسر تایپ کند.در این حالت "دستور"ها همان برنامهها هستند، که اجرای آنها زنجیروار به هم مرتبطند.به زبانی که برای دستور دادن به برنامهای استفاده میشود، زبان اسکریپت میگویند. بسیاری از زبانها کنار گذاشته شدهاند، برای رفع نیازهای جدید جایگزین شدهاند، با برنامههای دیگر ترکیب شدهاند و در نهایت استعمال آنها متوقف شدهاست. با وجود اینکه تلاشهایی برای طراحی یک زبان رایانه" کامل" شدهاست که تمام اهداف را تحت پوشش قرار دهد، هیچ یک نتوانستند بطور کلی این جایگاه را پر کنند. نیاز به زبانهای رایانهای گسترده از گستردگی زمینههایی که زبانها استفاده میشوند، ناشی میشود:
محدوده برنامهها از متون بسیار کوچک نوشته شده توسط افراد عادی تا سیستمهای بسیار بزرگ نوشته شده توسط صدها برنامه نویس است
توانایی برنامه نویسها: از تازه کارهایی که بیش از هر چیز به سادگی نیاز دارند تا حرفهایهایی که با پیچیدگی قابل توجهی کنار میآیند.
برنامهها باید سرعت، اندازه و سادگی را بسته به سیستمها از ریزپردازندها تا ابر رایانهها متناسب نگه دارند.
برنامهها ممکن است یک بار نوشته شوند و تا نسلها تغییر نکنند، و یا ممکن است پیوسته اصلاح شوند.
در نهایت، برنامه نویسها ممکن است در علایق متفاوت باشند: آنها ممکن است به بیان مسائل با زبانی خاص خو گرفته باشند.
یک سیر رایج در گسترش زبانهای برنامه نویسی این است که قابلیت حل مسائلی با درجات انتزاعی بالاتری را اضافه کنند. زبانهای برنامه نویسی اولیه به سختافزار رایانه گره خورده بودند. همانطور که زبانهای برنامه نویسی جدید گسترش پیدا کردهاند، ویژگیهایی به برنامهها افزوده شده که به برنامه نویس اجازه دهد که ایدههایی که از ترجمه ساده به دستورات سختافزار دورتر هستند نیز استفاده کند. چون برنامه نویسها کمتر به پیچیدگی رایانه محدود شدهاند، برنامههای آنها میتواند محاسبات بیشتری با تلاش کمتر از سوی برنامه نویس انجام دهند. این به آنها این امکان را میدهد که کارایی بیشتردر واحد زمان داشته باشند. "پردازندههای زبان طبیعی" به عنوان راهی برای ازبین بردن نیاز به زبانهای اختصاصی برنامه نویسی پیشنهاد شدهاند. هرچند، این هدف دور است و فواید آن قابل بحث است. "ادسگر دیجسترا" موافق بود که استفاده از یک زبان رسمی برای جلوگیری از مقدمه سازی ساختارهای بی معنی واجب است، و زبان برنامه نویسی طبیعی را با عنوان "احمقانه" رد کرد، "آلن پرلیس" نیز مشابها این ایده را رد کرد. مطابق با متدولوژی نامتجانس استفاده شده توسط langpop.com در سال ۲۰۰۸، ۱۲ زبان پرکاربرد عبارتند از: C, C++, C#, Java, JavaScript, Perl, PHP, Python, Ruby, Shell, SQL, and Visual Basic.
المانها
تمام زبانهای بزنامه نویسی تعدادی بلوکهای ابتدایی برای توضیح داده و پردازش یا تبدیل آنها(مانند جمع کردن دو عدد با انتخاب یک عضو از یک مجموعه)دارند. این " عناصرابتدایی" بوسیله قوانین معناشناسی و دستوری تعریف میشوند که ساختار و معنای مربوطه را توضیح میدهند.
دستور(
syntax)
فرم سطحی یک زبان برنامه نویسی دستور آن نامیده میشود. غالب زبانهای برنامه نویسی کاملاً متنی اند؛ و از دنبالهٔ متون شامل کلمات، اعداد، نشانگذاری، بسیار شبیه زبان نوشتاری طبیعی استفاده میکنند. از طرف دیگر، برنامههایی نیز وجود دارند که بیشتر گرافیکی اند، و از روابط بصری بین سمبلها برای مشخص کردن برنامه استفاده میکنند. دستور یک زبان ترکیبات ممکن سمبلها برای ایجاد یک برنامهٔ درست را از نظر دستوری مشخص میکند. معنایی که به یک ترکیب سمبلها داده میشود با معناشناسی اداره میشود(قراردادی یا نوشته شده در پیاده سازی منبع). از آنجا که اغلب زبانها متنی هستند، این مقاله دستور متنی را مورد بحث قرار میدهد.
دستور زبان برنامه نویسی معمولاً بوسیله ترکیب عبارات معین(برای ساختار لغوی) و فرم توضیح اعمال(برای ساختار گرامری) تعریف میشوند. متن زیر یک گرامر ساده، به زبان lisp است: expression ::= atom | list atom ::= number | symbol number ::= [+-]?['۰'-'۹']+ symbol ::= ['A'-'Za'-'z'].* list ::= '(' expression* ')' این گرامر موارد ذیل را مشخص میکند:
یک عبارت یا atom است و یا یک لیست
یک atom یا یک عدد است و یا یک سمبل
یک عدد دنباله ناشکستهای از یک یا تعداد بیشتری اعداد دهدهی است، که یک علامت مثبت و یا منفی میتواند پیش از آن بیاید.
یک سمبل حرفی است که بعد از هیچ یا تعدادی کاراکتر (جز فاصله) میآید.
یک لیست تعدادی پرانتز است که میتواند صفر یا چند عبارت در خود داشته باشد.
"۱۲۳۴۵"، "()"، "(a b c۲۳۲ (۱))" مثالهایی هستند از دنبالههای خوش فرم در این گرامر.
همه برنامههایی که از لحاظ دستوری درست هستند، از نظر معنا درست نیستند. بسیاری از برنامههای درست دستوری، بد فرم اند، با توجه به قوانین زبان؛ و ممکن است (بسته به خصوصیات زبان و درست بودن پیاده سازی) به خطای ترجمه و یا استثنا(exception) منتج شود. در برخی موارد، چنین برنامههایی ممکن است رفتار نامشخصی از خود نشان دهند. حتی اگر یک برنامه در یک زبان به خوبی بیان شده باشد، ممکن است دقیقاً مطلوب نویسنده آن نبوده باشد.
به عنوان مثال در زبان طبیعی، ممکن نیست به برخی از جملات درست از لحاظ گرامری، معنای خاصی اطلاق کرد و یا ممکن است جمله نادرست باشد:
"ایدههای بی رنگ سبز با خشم میخوابند."از نظر دستوری خوش فرم است ولی معنای مورد قبولی ندارد.
"جان یک مجرد متاهل است." از نظر دستوری درست است، ولی معنایی را بیان میکند که نمیتواند درست باشد.
این قسمت از زبان C از نظر دستوری درست است، اما دستوری را انجام میدهد که از نظرمعنایی تعریف نشده است(چون p یک اشاره گر خالی است، عمل p->real,p->im معنای خاصی ندارد.) complex *p = NULL; complex abs_p = sqrt (p->real * p->real + p->im * p->im);
گرامر مورد نیاز برای مشخص کردن یک زبان برنامه نویسی میتواند با جایگاهش در "سلسله مراتب چامسکی" طبقه بندی شود. دستور اغلب زبانهای برنامه نویسی میتواند بوسیله یک گرامر نوع ۲ مشخص گردد، برای مثال، گرامرهای مستقل از متن.
معناشناسی ایستا
معناشناسی ایستا محدودیتهایی بر روی ساختار مجاز متنها تعیین میکند که بیان آنها در فرمول دستوری استاندارد مشکل و یا غیر ممکن است. مهمترین این محدودیتها به وسیله سیستم نوع گذاری انجام میشود.
سیستم نوع گذاری
یک سیستم نوع گذاری مشخص میکند که یک زبان برنامه نویسی چگونه مقادیر و عبارات را در نوع(type) دسته بندی میکند، چگونه میتواند آن نوعها را تغییر دهد و رفتار متقابل آنها چگونهاست. این کارعموما توضیح داده ساختارهایی که میتوانند در آن زبان ایجاد شوند را شامل میشود. طراحی و مطالعه سیستمهای نوع گذاری بوسیله ریاضیات قراردادی را تئوری نوع گذاری گویند.
زبانهای نوع گذاری شده و بدون نوع گذاری
یک زبان نوع گذاری شدهاست اگر مشخصات هر عملیات، نوع دادههای قابل اجرا توسط آن را با نشان دادن نوعهایی که برای آنها قابل اجرا نیست، تعیین کند. برای مثال، "این متن درون گیومه قرار دارد" یک رشتهاست. در غالب زبانهای برنامه نویسی، تقسیم یک رشته با یک عدد معنایی ندارد. در نتیجه غالب زبانهای برنامه نویسی مدرن ممکن است اجرای این عملیات را توسط برنامهها رد کنند. در برخی زبانها، عبارات بی معنی ممکن است هنگام ترجمه(compile) پیدا شود(چک کننده نوع ایستا)، و توسط کامپایلر رد شود، در حالی که در سایر برنامهها، هنگام اجرا پیدا شود.(چک کننده نوع دینامیک) که به استثنای در حال اجرا منتج شود(runtime exception). حالت خاص زبانهای نوع دار زبانهای تک نوعند. این زبانها غالباً اسکریپتی و یا مارک آپ هستند، مانند rexx وSGML و فقط یک داده گونه دارند—غالباً رشتههای کاراکتری که هم برای دادههای عددی و هم برای دادههای سمبلی کاربرد دارند. در مقابل، یک زبان بدون نوع گذاری، مثل اکثر زبانهای اسمبلی، این امکان را میدهد که هر عملیاتی روی هر دادهای انجام شود، که معمولاً دنبالهای از بیتها با طولهای متفاوت در نظر گرفته میشوند. زبانهای سطح بالا که بی نوع هستند شامل زبانهای ساده رایانهای و برخی از انواع زبانهای نسل چهارم.
در عمل، در حالیکه تعداد بسیار کمی از دیدگاه نظریه نوع، نوع گذاری شده تلقی میشوند(چک کردن یا رد کردن تمام عملیاتها)، غالب زبانهای امروزی درجهای از نوع گذاری را فراهم میکنند. بسیاری از زبانهای تولیدکننده راهی را برای گذشتن یا موقوف کردن سیستم نوع فراهم میکنند.
نوع گذاری ایستا و متحرک
در نوع گذاری ایستا تمام عبارات نوعهای خود را قبل از اجرای برنامه تعیین میکنند(معمولاً در زمان کامپایل). برای مثال، ۱ و (۲+۲) عبارات عددی هستند؛ آنها نمیتوانند به تابعی که نیاز به یک رشته دارد داده شوند، یا در متغیری که تعریف شده تا تاریخ را نگه دارد، ذخیره شوند.
زبانهای نوع گذاری شده ایستا میتوانند با مانیفست نوع گذاری شوند یا با استفاده از نوع استنباط شوند. در حالت اول، برنامه نویس بیشتر صریحاً نوعها را در جایگاههای منتنی مشخص مینویسد(برای مثال، در تعریف متغیرها). در حالت دوم، کامپایلر نوع عبارات و تعریفها را بر اساس متن استنباط میکند. غالب زبانهای مسیر اصلی(mainstream) ایستا نوع گذاری شده، مانند C#,C++ و Java، با مانیفست نوع گذاری میشوند
نوع گذاری قوی و ضعیف
نوع گذاری ضعیف این امکان را ایجاد میکند که با متغیری به جای متغیری دیگر برخورد شود، برای مثال رفتار با یک رشته به عنوان یک عدد. این ویژگی بعضی اوقات ممکن است مفید باشد، اما ممکن است باعث ایجاد برخی مشکلات برنامه شود که موقع کامپایل و حتی اجرا پنهان بمانند.
نوع گذاری قوی مانع رخ دادن مشکل فوق میشود. تلاش برای انجام عملیات روی نوع نادرست متغیر منجر به رخ دادن خطا میشود. زبانهایی که نوع گذاری قوی دارند غالباً با نام "نوع-امن" و یا امن شناخته میشوند. تمام تعاریف جایگزین برای "ضعیف نوع گذاری شده" به زبانها اشاره میکند، مثل perl, JavaScript, C++، که اجازه تعداد زیادی تبدیل نوع داخلی را میدهند. در جاوااسکریپت، برای مثال، عبارت ۲*x به صورت ضمنی x را به عدد تبدیل میکند، و این تبدیل موفقیت آمیز خواهد بود حتی اگر x خالی، تعریف نشده، یک آرایه، و یا رشتهای از حروف باشد. چنین تبدیلات ضمنی غالباً مفیدند، اما خطاهای برنامه نویسی را پنهان میکنند.
قوی و ایستا در حال حاضر عموماً دو مفهوم متعامد فرض میشوند، اما استفاده در ادبیات تفاوت دارد، برخی عبارت "قوی نوع گذاری شده" را به کار میبرند و منظورشان قوی، ایستایی نوع گذاری شدهاست، و یا، حتی گیچ کننده تر، منظورشان همان ایستایی نوع گذاری شدهاست. بنابراین C هم قوی نوع گذاری شده و هم ضعیف و ایستایی نوع گذاری شده نامیده میشود.
معناشناسی اجرا
وقتی که داده مشخص شد، ماشین باید هدایت شود تا عملیاتها را روی داده انجام دهد. معناشناسی اجرا ی یک زبان تعیین میکند که چگونه و چه زمانی ساختارهای گوناگون یک زبان باید رفتار برنامه را ایجاد کنند.
برای مثال، معناشناسی ممکن است استراتژی را که بویسله آن عبارات ارزیابی میشوند را تعریف کند و یا حالتی را که ساختارهای کنترلی تحت شرایطی دستورها را اجرا میکنند.
کتابخانه هسته
اغلب زبانهای برنامه نویسی یک کتابخانه هسته مرتبط دارند(گاهی اوقات "کتابخانه استاندارد" نامیده میشوند، مخصوصا وقتی که به عنوان قسمتی از یک زبان استاندارد ارائه شده باشد)، که به طور قراردادی توسط تمام پیاده سازیهای زبان در دسترس قرار گرفته باشند. کتابخانه هسته معمولاً تعریف الگوریتمها، داده ساختارها و مکانیزمهای ورودی و خروجی پرکاربرد را در خود دارد. کاربران یک زبان، غالباً با کتابخانه هسته به عنوان قسمتی از آن رفتار میکنند، اگرچه طراحان ممکن است با آن به صورت یک مفهوم مجزا رفتار کرده باشند. بسیاری از خصوصیات زبان هستهای را مشخص میکنند که باید در تمام پیاده سازیها موجود باشند، و در زبانهای استاندارد شده این کتابخانه هسته ممکن است نیاز باشد. بنابراین خط بین زبان و کتابخانه هسته آن از زبانی به زبان دیگر متفاوت است. درواقع، برخی زبانها به گونهای تعریف شدهاند که برخی از ساختارهای دستوری بدون اشاره به کتابخانه هسته قابل استفاده نیستند. برای مثالف در جاوا، یک رشته به عنوان نمونهای از کلاس “java.lang.String” تعریف شده است؛ مشابها، در سمال تاک(smalltalk) یک تابع بی نام(یک "بلاک") نمونهای از کلاس BlockContext کتابخانه میسازد. بطور معکوس، Scheme دارای چندین زیرمجموعه مرتبط برای ایجاد سایر ماکروهای زبان میباشد، و در نتیجه طراحان زبان حتی این زحمت را نیز تحمل نمیکنند که بگویند کدام قسمت زبان به عنوان ساختارهای زبان باید پیاده سازی شوند، و کدام یک به عنوان بخشی ازکتابخانه.
عمل
طراحان زبان و کاربران باید مصنوعاتی ایجاد کنند تا برنامه نویسی را در عمل ممکن سازند و کنترل کنند. مهمترین این مصنوعات خصوصیات و پیاده سازیهای زبان هستند.
خصوصیات
یک زبان برنامه نویسی باید تعریفی فراهم کند که کاربران و پیاده کنندههای زبان میتوانند از آن استفاده کنند تا مشخص کنند که رفتار یک برنامه درست است. با داشتن کد منبع: خصوصیات یک زبان برنامه نویسی چندین قالب میتواند بگیرد، مانند مثالهای زیر:
تعریف صریح دستور، معناشناسی ایستا، ومعناشناسی اجرای زبان. درحالیکه دستور معمولاً با یک معناشناسی قراردادی مشخص میشود، تعاریف معناشناسی ممکن است در زبان طبیعی نوشته شده باشند (مثل زبان C)، یا معناشناسی قراردادی(مثل StandardML ,Scheme)
توضیح رفتار یک مترجم برای زبان(مثل C,fortran). دستور و معناشناسی یک زبان باید از این توضیح استنتاج شوند، که ممکن است به زبان طبیعی یا قراردادی نوشته شود.
پیاده سازی منبع یا مدل. گاهی اوقات در زبانهای مشخص شده(مثل: prolog,ANSI REXX).دستور و معناشناسی صریحاً در رفتار پیاده سازی مدل موجودند.
پیاده سازی
پیاده سازی یک زبان برنامه نویسی امکان اجرای آن برنامه را روی پیکربندی مشخصی از سختافزار و نرمافزار را فراهم میکند. بطور وسیع، دو راه رسیدن به پیاده سازی زبان برنامه نویسی وجود دارد. کامپایل کردن و تفسیر کردن. بطور کلی با هر بک از ابن دو روش میتوان یک زبان را پیاده سازی کرد.
خروجی یک کامپایلر ممکن است با سختافزار و یا برنامهای به نام مفسر اجرا شود. در برخی پیاده سازیها که از مفسر استفاده میشود، مرز مشخصی بین کامپایل و تفسیر وجود ندارد. برای مثال، برخی پیاده سازیهای زبان برنامه نویسی بیسیک کامپایل میکنند و سپس کد را خط به خط اجرا میکنند.
برنامههایی که مستقیماً روی سختافزار اجرا میشوند چندین برابر سریعتر از برنامههایی که با کمک نرمافزار اجرا میشوند، انجام میشوند.
یک تکنیک برای بهبود عملکرد برنامههای تفسیر شده کامپایل در لحظه آن است. در این روش ماشین مجازی، دقیقاً قبل از اجرا، بلوکهای کدهای بایتی که قرار است استفاده شوند را برای اجرای مستقیم روی سختافزار ترجمه میکند.
تاریخچه
پیشرفتهای اولیه
اولین زبان برنامه نویسی به قبل از رایانههای مدرن باز میگردد. قرن ۱۹ دستگاههای نساجی و متون نوازنده پیانو قابل برنامه نویسی داشت که امروزه به عنوان مثالهایی از زبانهای برنامه نویسی با حوزه مشخص شناخته میشوند. با شروع قرن بیستم، پانچ کارتها داده را کد گذاری کردند و پردازش مکانیکی را هدایت کردند. در دهه ۱۹۳۰ و ۱۹۴۰، صورت گرایی حساب لاندای آلونزو چرچ و ماشین تورینگ آلن تورینگ مفاهیم ریاضی بیان الگوریتمها را فراهم کردند؛ حساب لاندا همچنان در طراحی زبان موثر است.
در دهه ۴۰، اولین رایانههای دیجیتال که توسط برق تغذیه میشدند ایجاد شدند. اولین زبان برنامه نویسی سطح بالا طراحی شده برای کامپیوتر پلانکالکول بود، که بین سالهای ۱۹۴۵ و ۱۹۴۳ توسط کنراد زوس برای ز۳ آلمان طراحی شد.
کامپیوترهای اوایل ۱۹۵۰، بطور خاص ÜNIVAC ۱ و IBM ۷۰۱ از برنامههای زبان ماشین استفاده میکردند. برنامه نویسی زبان ماشین نسل اول توسط نسل دومی که زبان اسمبلی نامیده میشوند جایگزین شد. در سالهای بعد دهه ۵۰، زبان برنامه نویسی اسمبلی، که برای استفاده از دستورات ماکرو تکامل یافته بود، توسط سه زبان برنامه نویسی سطح بالا دیگر: FORTRAN,LISP , COBOL مورد استفاده قرار گرفت. نسخههای به روز شده این برنامهها همچنان مورد استفاده قرار میگیرند، و هر کدام قویا توسعه زبانهای بعد را تحت تاثیر قرار دادند. در پایان دهه ۵۰ زبان algol ۶۰ معرفی شد، و بسیاری از زبانهای برنامه نویسی بعد، با ملاحظه بسیار، از نسل algol هستند. قالب و استفاده از زبانهای برنامه نویسی به شدت متاثر از محدودیتهای رابط بودند.
پالایش
دوره دهه ۶۰ تا اواخر دهه ۷۰ گسترش مثالهای عمده زبان پرکاربرد امروز را به همراه داشت. با این حال بسیاری از جنبههای آن بهینه سازی ایدههای اولیه نسل سوم زبان برنامه نویسی بود:
APL برنامه نویسی آرایهای را معرفی کرد و برنامه نویسی کاربردی را تحت تاثیر قرار داد.
PL/i(NPL) دراوایل دهه ۶۰ طراحی شده بود تا ایدههای خوب فورترن و کوبول را بهم پیوند دهد.
در دهه ۶۰، Simula اولین زبانی بود که برنامه نویسی شئ گرا را پشتیبانی میکرد، در اواسط دهه۷۰. Smalltalk به دنبال آن به
عنوان اولین زبان کاملاً شئ گرا معرفی شد.
C بین سالهای ۱۹۶۹ تا ۱۹۷۳ به عنوان زبان برنامه نویسی سیستمی طراحی شد و همچنان محبوب است.
Prolog، طراحی شده در ۱۹۷۲، اولین زبان برنامه نویسی منطقی بود.
در ۱۹۷۸ ML سیستم نوع چند ریخت روی لیسپ ایجاد کرد، و در زبانهای برنامه نویسی کاربردی ایستا نوع گذاری شده پیشگام شد.
هر یک از این زبانها یک خانواده بزرگ از وارثین از خود به جای گذاشت، و مدرنترین زبانها از تبار حداقل یکی از زبانهای فوق به شمار میآیند.
دهههای ۶۰ و ۷۰ مناقشات بسیاری روی برنامه نویسی ساخت یافته به خود دیدند، و اینکه آیا زبانهای برنامه نویسی باید طوری طراحی شوند که آنها را پشتیبانی کنند.
"ادسگر دیکسترا" در نامهای معروف در ۱۹۶۸ که در ارتباطات ACM منتشر شد، استدلال کرد که دستورgoto باید از تمام زبانهای سطح بالا حذف شود.
در دهههای ۶۰ و ۷۰ توسعهٔ تکنیکهایی صورت گرفت که اثر یک برنامه را کاهش میداد و در عین حال بهره وری برنامه نویس و کاربر را بهبود بخشید. دسته کارت برای ۴GL اولیه بسیار کوچکتر از برنامهٔ هم سطح بود که با ۳GL deck نوشته شده بود.
یکپارچگی و رشد
دهه ۸۰ سالهای یکپارچگی نسبی بود. C++ برنامه نویسی شئ گرا و برنامه نویسی سیستمی را ترکیب کرده بود. ایالات متحده ایدا(زبان برنامه نویسی سیستمی که بیشتر برای استفاده توسط پیمان کاران دفاعی بود) را استاندارد سازی کرد. در ژاپن و جاهای دیگر، هزینههای گزافی صرف تحقیق در مورد زبان نسل پنجم میشد که دارای ساختارهای برنامه نویسی منطقی بود. انجمن زبان کاربردی به سمت استانداردسازی ML و Lisp حرکت کرد. به جای ایجاد مثالهای جدید، تمام این تلاشها ایدههایی که در دهههای قبل حلق شده بودند را بهتر کرد.
یک گرایش مهم در طراحی زبان در دهه ۸۰ تمرکز بیشتر روی برنامه نویسی برای سیستمهای بزرگ از طریق مدولها، و یا واحدهای کدهای سازمانی بزرگ مقیاس بود. مدول-۲، ایدا. و ML همگی سیستمهای مدولی برجستهای را در دهه ۸۰ توسعه دادند. با وجود اینکه زبانهای دیگر، مثل PL/i، پشتیبانی بسیار خوبی برای برنامه نویسی مدولی داشتند. سیستمهای مدولی غالباً با ساختارهای برنامه نویسی عام همراه شدهاند.
رشد سریع اینترنت در میانه دهه ۹۰ فرصتهای ایجاد زبانهای جدید را فراهم کرد. Perl، در اصل یک ابزار نوشتن یونیکس بود که اولین بار در سال ۱۹۸۷ منتشر شد، در وبگاههای دینامیک متداول شد. جاوا برای برنامه نویسی جنب سروری مورد استفاده قرار گرفت. این توسعهها اساساً نو نبودند، بلکه بیشتر بهینه سازی شده زبان و مثالهای موجود بودند، و بیشتر بر اساس خانواده زبان برنامه نویسی C بودند. پیشرفت زبان برنامه نویسی همچنان ادامه پیدا میکند، هم در تحقیقات و هم در صنعت. جهتهای فعلی شامل امنیت و وارسی قابلیت اعتماد است، گونههای جدید مدولی(mixin، نمایندهها، جنبهها) و تجمع پایگاه داده.
۴GLها نمونهای از زبانهایی هستند که محدوده استفاده آنها مشخص است، مثل SQL. که به جای اینکه دادههای اسکالر را برگردانند، مجموعههایی را تغییر داده و بر میگردانند که برای اکثر زبانها متعارفند. Perl برای مثال، با "مدرک اینجا" خود میتواند چندین برنامه ۴GL را نگه دارد، مانند چند برنامه جاوا سکریبت، در قسمتی از کد پرل خود و برای پشتیبانی از چندین زبان برنامه نویسی با تناسب متغیر در "مدرک اینجا" استفاده کند.
سنجش استفاده از زبان
مشکل است که مشخص کنیم کدام زبان برنامه نویسی بیشتر مورد استفادهاست، و اینکه کاربرد چه معنی میدهد با توجه به زمینه تغییر میکند. یک زبان ممکن است زمان بیشتری از برنامه نویس بگیرد، زبان دیگر ممکن است خطوط بیشتری داشته باشد، و دیگری ممکن است زمان بیشتری از پردازنده را مصرف کند. برخی زبانها برای کاربردهای خاص بسیار محبوبند. برای مثال: کوبول همچنان در مراکزداده متحد، غالباً روی کامپیوترهای بزرگ توانا است؛ fortran در مهندسی برنامههای کاربردی، C در برنامههای تعبیه شده و سیستمهای عامل؛ و بقیه برنامهها معمولاً برای نوشتن انواع دیگر برنامهها کاربرد دارند. روشهای مختلفی برای سنجش محبوبیت زبانها، هر یک متناسب یا یک ویژگی محوری متفاوت پیشنهاد شدهاست:
شمارش تعداد تبلیغات شغلی که از آن زبان نام میبرند.
تعداد کتابهای آموزشی و شرح دهندهٔ آن زبان که فروش رفتهاست.
تخمین تعداد خطوطی که در آن زبان نوشته شده اند- که ممکن است زبانهایی را که در جستجوها کمتر پیدا میشوند دست کم گرفته شوند.
شمارش ارجاعهای زبان(برای مثال، به اسم زبان) در موتورهای جستجوهای اینترنت.
طبقه بندیها هیچ برنامه غالبی برای دسته بندی زبانهای برنامه نویسی وجود ندارد. یک زبان مشخص معمولاً یک زبان اجدادی ندارد. زبانها معمولاً با ترکیب المانهای چند زبان پیشینه بوجود میآیند که هربار ایدههای جدید درگردشند. ایدههایی که در یک زبان ایجاد میشوند در یک خانواده از زبانهای مرتبط پخش میشوند، و سپس از بین خلاهای بین خانوادهها منتقل شده و در خانوادههای دیگر ظاهر میشوند.
این حقیقت که این دسته بندی ممکن است در راستای محورهای مختلف انجام شوند، این وظیفه را پیچیده تر میکند؛ برای مثال، جاوا هم یک زبان شیءگرا(چون به برنامه نویسی شیءگرا تشویق میکند) و زبان همزمان(چون ساختارهای داخلی برای اجرای چندین جریان موازی دارد) است. پایتون یک زبان اسکریپتی شیءگراست.
در نگاه کلی، زبانهای برنامه نویسی به مثالهای برنامه نویسی و یک دسته بندی بر اساس محدوده استفاده تقسیم میشوند. مثالها شامل برنامه نویسی رویهای، برنامه نویسی شیءگرا، برنامه نویسی کاربردی، وبرنامه نویسی منطقی؛ برخی زبانها ترکیب چند مثالند. یک زبان اسمبلی مثالی از یک مدل مستقیم متضمن معماری ماشین نیست. با توجه به هدف، زبانهای برنامه نویسی ممکن است همه منظوره باشند، زبانهای برنامه نویسی سیستمی، زبانهای اسکریپتی، زبانهای محدوده مشخص، زبانهای همزمان/ گسترده(و یا ترکیب اینها). برخی زبانهای همه منظوره تا حد زیادی برای اهداف آموزشی طراحی شدهاند.
یک زبان برنامه نویسی ممکن است با فاکتورهای غیر مرتبط به مثالهای برنامه نویسی دسته بندی شود. برای مثال، غالب زبانهای برنامه نویسی کلمات کلیدی زبان انگلیسی را استفاده میکنند، در حالیکه تعداد کمی این کار را نمیکنند. سایر زبانها ممکن است براساس داخلی بودن یا نبودن دسته بندی شوند.
زبان برنامه نویسی یک مکانیزم ساخت یافته برای تعریف دادهها، و عملیات یا تبدیلهایی که ممکن است بطور اتوماتیک روی آن داده انجام شوند، فراهم میکند. یک برنامه نویس از انتزاعات آماده در زبان استفاده میکند تا مفاهیم به کار رفته در محاسبات را بیان کند. این مفاهیم به عنوان یک مجموعه از سادهترین عناصر موجود بیان میشوند(مفاهیم ابتدایی نامیده میشوند).

زبانهای برنامه نویسی با غالب زبانهای انسانی تفاوتی دارد و آن این است که نیاز به بیان دقیق تر و کامل تری دارد. هنگام استفاده از زبانهای طبیعی برای ارتباط با دیگر انسانها، نویسندگان و گویندگان میتوانند مبهم باشند و اشتباهات کوچک داشته باشند، و همچنان انتظار داشته باشند که مخاطب آنها متوجه شده باشد. اگرچه، مجازا، رایانهها "دقیقاً آنچه که به آنها گفته شده را انجام میدهند." و نمیتوانند "بفهمند" که نویسنده دقیقاً چه کدی مد نظر نویسنده بودهاست] البته امروزه برنامههایی برای انجام این کار تولید شدهاند و تلاشهای بسیاری در این زمینه انجام شده ولی هنوز به نتیجهٔ رضایت بخشی نرسیده است[. ترکیب تعریف زبان، یک برنامه، و ورودی برنامه بطور کامل رفتار خروجی را به هنگام اجرای برنامه (در محدوده کنترل آن برنامه) مشخص میکند. برنامههای یک رایانه ممکن است در یک فرایند ناپیوسته بدون دخالت انسان اجرا شوند، یا یک کاربر ممکن است دستورات را در یک مرحله فعل و انفعال مفسر تایپ کند.در این حالت "دستور"ها همان برنامهها هستند، که اجرای آنها زنجیروار به هم مرتبطند.به زبانی که برای دستور دادن به برنامهای استفاده میشود، زبان اسکریپت میگویند. بسیاری از زبانها کنار گذاشته شدهاند، برای رفع نیازهای جدید جایگزین شدهاند، با برنامههای دیگر ترکیب شدهاند و در نهایت استعمال آنها متوقف شدهاست. با وجود اینکه تلاشهایی برای طراحی یک زبان رایانه" کامل" شدهاست که تمام اهداف را تحت پوشش قرار دهد، هیچ یک نتوانستند بطور کلی این جایگاه را پر کنند. نیاز به زبانهای رایانهای گسترده از گستردگی زمینههایی که زبانها استفاده میشوند، ناشی میشود:
محدوده برنامهها از متون بسیار کوچک نوشته شده توسط افراد عادی تا سیستمهای بسیار بزرگ نوشته شده توسط صدها برنامه نویس است
توانایی برنامه نویسها: از تازه کارهایی که بیش از هر چیز به سادگی نیاز دارند تا حرفهایهایی که با پیچیدگی قابل توجهی کنار میآیند.
برنامهها باید سرعت، اندازه و سادگی را بسته به سیستمها از ریزپردازندها تا ابر رایانهها متناسب نگه دارند.
برنامهها ممکن است یک بار نوشته شوند و تا نسلها تغییر نکنند، و یا ممکن است پیوسته اصلاح شوند.
در نهایت، برنامه نویسها ممکن است در علایق متفاوت باشند: آنها ممکن است به بیان مسائل با زبانی خاص خو گرفته باشند.
یک سیر رایج در گسترش زبانهای برنامه نویسی این است که قابلیت حل مسائلی با درجات انتزاعی بالاتری را اضافه کنند. زبانهای برنامه نویسی اولیه به سختافزار رایانه گره خورده بودند. همانطور که زبانهای برنامه نویسی جدید گسترش پیدا کردهاند، ویژگیهایی به برنامهها افزوده شده که به برنامه نویس اجازه دهد که ایدههایی که از ترجمه ساده به دستورات سختافزار دورتر هستند نیز استفاده کند. چون برنامه نویسها کمتر به پیچیدگی رایانه محدود شدهاند، برنامههای آنها میتواند محاسبات بیشتری با تلاش کمتر از سوی برنامه نویس انجام دهند. این به آنها این امکان را میدهد که کارایی بیشتردر واحد زمان داشته باشند. "پردازندههای زبان طبیعی" به عنوان راهی برای ازبین بردن نیاز به زبانهای اختصاصی برنامه نویسی پیشنهاد شدهاند. هرچند، این هدف دور است و فواید آن قابل بحث است. "ادسگر دیجسترا" موافق بود که استفاده از یک زبان رسمی برای جلوگیری از مقدمه سازی ساختارهای بی معنی واجب است، و زبان برنامه نویسی طبیعی را با عنوان "احمقانه" رد کرد، "آلن پرلیس" نیز مشابها این ایده را رد کرد. مطابق با متدولوژی نامتجانس استفاده شده توسط langpop.com در سال ۲۰۰۸، ۱۲ زبان پرکاربرد عبارتند از: C, C++, C#, Java, JavaScript, Perl, PHP, Python, Ruby, Shell, SQL, and Visual Basic.
المانها
تمام زبانهای بزنامه نویسی تعدادی بلوکهای ابتدایی برای توضیح داده و پردازش یا تبدیل آنها(مانند جمع کردن دو عدد با انتخاب یک عضو از یک مجموعه)دارند. این " عناصرابتدایی" بوسیله قوانین معناشناسی و دستوری تعریف میشوند که ساختار و معنای مربوطه را توضیح میدهند.
دستور(
syntax)
فرم سطحی یک زبان برنامه نویسی دستور آن نامیده میشود. غالب زبانهای برنامه نویسی کاملاً متنی اند؛ و از دنبالهٔ متون شامل کلمات، اعداد، نشانگذاری، بسیار شبیه زبان نوشتاری طبیعی استفاده میکنند. از طرف دیگر، برنامههایی نیز وجود دارند که بیشتر گرافیکی اند، و از روابط بصری بین سمبلها برای مشخص کردن برنامه استفاده میکنند. دستور یک زبان ترکیبات ممکن سمبلها برای ایجاد یک برنامهٔ درست را از نظر دستوری مشخص میکند. معنایی که به یک ترکیب سمبلها داده میشود با معناشناسی اداره میشود(قراردادی یا نوشته شده در پیاده سازی منبع). از آنجا که اغلب زبانها متنی هستند، این مقاله دستور متنی را مورد بحث قرار میدهد.
دستور زبان برنامه نویسی معمولاً بوسیله ترکیب عبارات معین(برای ساختار لغوی) و فرم توضیح اعمال(برای ساختار گرامری) تعریف میشوند. متن زیر یک گرامر ساده، به زبان lisp است: expression ::= atom | list atom ::= number | symbol number ::= [+-]?['۰'-'۹']+ symbol ::= ['A'-'Za'-'z'].* list ::= '(' expression* ')' این گرامر موارد ذیل را مشخص میکند:
یک عبارت یا atom است و یا یک لیست
یک atom یا یک عدد است و یا یک سمبل
یک عدد دنباله ناشکستهای از یک یا تعداد بیشتری اعداد دهدهی است، که یک علامت مثبت و یا منفی میتواند پیش از آن بیاید.
یک سمبل حرفی است که بعد از هیچ یا تعدادی کاراکتر (جز فاصله) میآید.
یک لیست تعدادی پرانتز است که میتواند صفر یا چند عبارت در خود داشته باشد.
"۱۲۳۴۵"، "()"، "(a b c۲۳۲ (۱))" مثالهایی هستند از دنبالههای خوش فرم در این گرامر.
همه برنامههایی که از لحاظ دستوری درست هستند، از نظر معنا درست نیستند. بسیاری از برنامههای درست دستوری، بد فرم اند، با توجه به قوانین زبان؛ و ممکن است (بسته به خصوصیات زبان و درست بودن پیاده سازی) به خطای ترجمه و یا استثنا(exception) منتج شود. در برخی موارد، چنین برنامههایی ممکن است رفتار نامشخصی از خود نشان دهند. حتی اگر یک برنامه در یک زبان به خوبی بیان شده باشد، ممکن است دقیقاً مطلوب نویسنده آن نبوده باشد.
به عنوان مثال در زبان طبیعی، ممکن نیست به برخی از جملات درست از لحاظ گرامری، معنای خاصی اطلاق کرد و یا ممکن است جمله نادرست باشد:
"ایدههای بی رنگ سبز با خشم میخوابند."از نظر دستوری خوش فرم است ولی معنای مورد قبولی ندارد.
"جان یک مجرد متاهل است." از نظر دستوری درست است، ولی معنایی را بیان میکند که نمیتواند درست باشد.
این قسمت از زبان C از نظر دستوری درست است، اما دستوری را انجام میدهد که از نظرمعنایی تعریف نشده است(چون p یک اشاره گر خالی است، عمل p->real,p->im معنای خاصی ندارد.) complex *p = NULL; complex abs_p = sqrt (p->real * p->real + p->im * p->im);
گرامر مورد نیاز برای مشخص کردن یک زبان برنامه نویسی میتواند با جایگاهش در "سلسله مراتب چامسکی" طبقه بندی شود. دستور اغلب زبانهای برنامه نویسی میتواند بوسیله یک گرامر نوع ۲ مشخص گردد، برای مثال، گرامرهای مستقل از متن.
معناشناسی ایستا
معناشناسی ایستا محدودیتهایی بر روی ساختار مجاز متنها تعیین میکند که بیان آنها در فرمول دستوری استاندارد مشکل و یا غیر ممکن است. مهمترین این محدودیتها به وسیله سیستم نوع گذاری انجام میشود.
سیستم نوع گذاری
یک سیستم نوع گذاری مشخص میکند که یک زبان برنامه نویسی چگونه مقادیر و عبارات را در نوع(type) دسته بندی میکند، چگونه میتواند آن نوعها را تغییر دهد و رفتار متقابل آنها چگونهاست. این کارعموما توضیح داده ساختارهایی که میتوانند در آن زبان ایجاد شوند را شامل میشود. طراحی و مطالعه سیستمهای نوع گذاری بوسیله ریاضیات قراردادی را تئوری نوع گذاری گویند.
زبانهای نوع گذاری شده و بدون نوع گذاری
یک زبان نوع گذاری شدهاست اگر مشخصات هر عملیات، نوع دادههای قابل اجرا توسط آن را با نشان دادن نوعهایی که برای آنها قابل اجرا نیست، تعیین کند. برای مثال، "این متن درون گیومه قرار دارد" یک رشتهاست. در غالب زبانهای برنامه نویسی، تقسیم یک رشته با یک عدد معنایی ندارد. در نتیجه غالب زبانهای برنامه نویسی مدرن ممکن است اجرای این عملیات را توسط برنامهها رد کنند. در برخی زبانها، عبارات بی معنی ممکن است هنگام ترجمه(compile) پیدا شود(چک کننده نوع ایستا)، و توسط کامپایلر رد شود، در حالی که در سایر برنامهها، هنگام اجرا پیدا شود.(چک کننده نوع دینامیک) که به استثنای در حال اجرا منتج شود(runtime exception). حالت خاص زبانهای نوع دار زبانهای تک نوعند. این زبانها غالباً اسکریپتی و یا مارک آپ هستند، مانند rexx وSGML و فقط یک داده گونه دارند—غالباً رشتههای کاراکتری که هم برای دادههای عددی و هم برای دادههای سمبلی کاربرد دارند. در مقابل، یک زبان بدون نوع گذاری، مثل اکثر زبانهای اسمبلی، این امکان را میدهد که هر عملیاتی روی هر دادهای انجام شود، که معمولاً دنبالهای از بیتها با طولهای متفاوت در نظر گرفته میشوند. زبانهای سطح بالا که بی نوع هستند شامل زبانهای ساده رایانهای و برخی از انواع زبانهای نسل چهارم.
در عمل، در حالیکه تعداد بسیار کمی از دیدگاه نظریه نوع، نوع گذاری شده تلقی میشوند(چک کردن یا رد کردن تمام عملیاتها)، غالب زبانهای امروزی درجهای از نوع گذاری را فراهم میکنند. بسیاری از زبانهای تولیدکننده راهی را برای گذشتن یا موقوف کردن سیستم نوع فراهم میکنند.
نوع گذاری ایستا و متحرک
در نوع گذاری ایستا تمام عبارات نوعهای خود را قبل از اجرای برنامه تعیین میکنند(معمولاً در زمان کامپایل). برای مثال، ۱ و (۲+۲) عبارات عددی هستند؛ آنها نمیتوانند به تابعی که نیاز به یک رشته دارد داده شوند، یا در متغیری که تعریف شده تا تاریخ را نگه دارد، ذخیره شوند.
زبانهای نوع گذاری شده ایستا میتوانند با مانیفست نوع گذاری شوند یا با استفاده از نوع استنباط شوند. در حالت اول، برنامه نویس بیشتر صریحاً نوعها را در جایگاههای منتنی مشخص مینویسد(برای مثال، در تعریف متغیرها). در حالت دوم، کامپایلر نوع عبارات و تعریفها را بر اساس متن استنباط میکند. غالب زبانهای مسیر اصلی(mainstream) ایستا نوع گذاری شده، مانند C#,C++ و Java، با مانیفست نوع گذاری میشوند
نوع گذاری قوی و ضعیف
نوع گذاری ضعیف این امکان را ایجاد میکند که با متغیری به جای متغیری دیگر برخورد شود، برای مثال رفتار با یک رشته به عنوان یک عدد. این ویژگی بعضی اوقات ممکن است مفید باشد، اما ممکن است باعث ایجاد برخی مشکلات برنامه شود که موقع کامپایل و حتی اجرا پنهان بمانند.
نوع گذاری قوی مانع رخ دادن مشکل فوق میشود. تلاش برای انجام عملیات روی نوع نادرست متغیر منجر به رخ دادن خطا میشود. زبانهایی که نوع گذاری قوی دارند غالباً با نام "نوع-امن" و یا امن شناخته میشوند. تمام تعاریف جایگزین برای "ضعیف نوع گذاری شده" به زبانها اشاره میکند، مثل perl, JavaScript, C++، که اجازه تعداد زیادی تبدیل نوع داخلی را میدهند. در جاوااسکریپت، برای مثال، عبارت ۲*x به صورت ضمنی x را به عدد تبدیل میکند، و این تبدیل موفقیت آمیز خواهد بود حتی اگر x خالی، تعریف نشده، یک آرایه، و یا رشتهای از حروف باشد. چنین تبدیلات ضمنی غالباً مفیدند، اما خطاهای برنامه نویسی را پنهان میکنند.
قوی و ایستا در حال حاضر عموماً دو مفهوم متعامد فرض میشوند، اما استفاده در ادبیات تفاوت دارد، برخی عبارت "قوی نوع گذاری شده" را به کار میبرند و منظورشان قوی، ایستایی نوع گذاری شدهاست، و یا، حتی گیچ کننده تر، منظورشان همان ایستایی نوع گذاری شدهاست. بنابراین C هم قوی نوع گذاری شده و هم ضعیف و ایستایی نوع گذاری شده نامیده میشود.
معناشناسی اجرا
وقتی که داده مشخص شد، ماشین باید هدایت شود تا عملیاتها را روی داده انجام دهد. معناشناسی اجرا ی یک زبان تعیین میکند که چگونه و چه زمانی ساختارهای گوناگون یک زبان باید رفتار برنامه را ایجاد کنند.
برای مثال، معناشناسی ممکن است استراتژی را که بویسله آن عبارات ارزیابی میشوند را تعریف کند و یا حالتی را که ساختارهای کنترلی تحت شرایطی دستورها را اجرا میکنند.
کتابخانه هسته
اغلب زبانهای برنامه نویسی یک کتابخانه هسته مرتبط دارند(گاهی اوقات "کتابخانه استاندارد" نامیده میشوند، مخصوصا وقتی که به عنوان قسمتی از یک زبان استاندارد ارائه شده باشد)، که به طور قراردادی توسط تمام پیاده سازیهای زبان در دسترس قرار گرفته باشند. کتابخانه هسته معمولاً تعریف الگوریتمها، داده ساختارها و مکانیزمهای ورودی و خروجی پرکاربرد را در خود دارد. کاربران یک زبان، غالباً با کتابخانه هسته به عنوان قسمتی از آن رفتار میکنند، اگرچه طراحان ممکن است با آن به صورت یک مفهوم مجزا رفتار کرده باشند. بسیاری از خصوصیات زبان هستهای را مشخص میکنند که باید در تمام پیاده سازیها موجود باشند، و در زبانهای استاندارد شده این کتابخانه هسته ممکن است نیاز باشد. بنابراین خط بین زبان و کتابخانه هسته آن از زبانی به زبان دیگر متفاوت است. درواقع، برخی زبانها به گونهای تعریف شدهاند که برخی از ساختارهای دستوری بدون اشاره به کتابخانه هسته قابل استفاده نیستند. برای مثالف در جاوا، یک رشته به عنوان نمونهای از کلاس “java.lang.String” تعریف شده است؛ مشابها، در سمال تاک(smalltalk) یک تابع بی نام(یک "بلاک") نمونهای از کلاس BlockContext کتابخانه میسازد. بطور معکوس، Scheme دارای چندین زیرمجموعه مرتبط برای ایجاد سایر ماکروهای زبان میباشد، و در نتیجه طراحان زبان حتی این زحمت را نیز تحمل نمیکنند که بگویند کدام قسمت زبان به عنوان ساختارهای زبان باید پیاده سازی شوند، و کدام یک به عنوان بخشی ازکتابخانه.
عمل
طراحان زبان و کاربران باید مصنوعاتی ایجاد کنند تا برنامه نویسی را در عمل ممکن سازند و کنترل کنند. مهمترین این مصنوعات خصوصیات و پیاده سازیهای زبان هستند.
خصوصیات
یک زبان برنامه نویسی باید تعریفی فراهم کند که کاربران و پیاده کنندههای زبان میتوانند از آن استفاده کنند تا مشخص کنند که رفتار یک برنامه درست است. با داشتن کد منبع: خصوصیات یک زبان برنامه نویسی چندین قالب میتواند بگیرد، مانند مثالهای زیر:
تعریف صریح دستور، معناشناسی ایستا، ومعناشناسی اجرای زبان. درحالیکه دستور معمولاً با یک معناشناسی قراردادی مشخص میشود، تعاریف معناشناسی ممکن است در زبان طبیعی نوشته شده باشند (مثل زبان C)، یا معناشناسی قراردادی(مثل StandardML ,Scheme)
توضیح رفتار یک مترجم برای زبان(مثل C,fortran). دستور و معناشناسی یک زبان باید از این توضیح استنتاج شوند، که ممکن است به زبان طبیعی یا قراردادی نوشته شود.
پیاده سازی منبع یا مدل. گاهی اوقات در زبانهای مشخص شده(مثل: prolog,ANSI REXX).دستور و معناشناسی صریحاً در رفتار پیاده سازی مدل موجودند.
پیاده سازی
پیاده سازی یک زبان برنامه نویسی امکان اجرای آن برنامه را روی پیکربندی مشخصی از سختافزار و نرمافزار را فراهم میکند. بطور وسیع، دو راه رسیدن به پیاده سازی زبان برنامه نویسی وجود دارد. کامپایل کردن و تفسیر کردن. بطور کلی با هر بک از ابن دو روش میتوان یک زبان را پیاده سازی کرد.
خروجی یک کامپایلر ممکن است با سختافزار و یا برنامهای به نام مفسر اجرا شود. در برخی پیاده سازیها که از مفسر استفاده میشود، مرز مشخصی بین کامپایل و تفسیر وجود ندارد. برای مثال، برخی پیاده سازیهای زبان برنامه نویسی بیسیک کامپایل میکنند و سپس کد را خط به خط اجرا میکنند.
برنامههایی که مستقیماً روی سختافزار اجرا میشوند چندین برابر سریعتر از برنامههایی که با کمک نرمافزار اجرا میشوند، انجام میشوند.
یک تکنیک برای بهبود عملکرد برنامههای تفسیر شده کامپایل در لحظه آن است. در این روش ماشین مجازی، دقیقاً قبل از اجرا، بلوکهای کدهای بایتی که قرار است استفاده شوند را برای اجرای مستقیم روی سختافزار ترجمه میکند.
تاریخچه
پیشرفتهای اولیه
اولین زبان برنامه نویسی به قبل از رایانههای مدرن باز میگردد. قرن ۱۹ دستگاههای نساجی و متون نوازنده پیانو قابل برنامه نویسی داشت که امروزه به عنوان مثالهایی از زبانهای برنامه نویسی با حوزه مشخص شناخته میشوند. با شروع قرن بیستم، پانچ کارتها داده را کد گذاری کردند و پردازش مکانیکی را هدایت کردند. در دهه ۱۹۳۰ و ۱۹۴۰، صورت گرایی حساب لاندای آلونزو چرچ و ماشین تورینگ آلن تورینگ مفاهیم ریاضی بیان الگوریتمها را فراهم کردند؛ حساب لاندا همچنان در طراحی زبان موثر است.
در دهه ۴۰، اولین رایانههای دیجیتال که توسط برق تغذیه میشدند ایجاد شدند. اولین زبان برنامه نویسی سطح بالا طراحی شده برای کامپیوتر پلانکالکول بود، که بین سالهای ۱۹۴۵ و ۱۹۴۳ توسط کنراد زوس برای ز۳ آلمان طراحی شد.
کامپیوترهای اوایل ۱۹۵۰، بطور خاص ÜNIVAC ۱ و IBM ۷۰۱ از برنامههای زبان ماشین استفاده میکردند. برنامه نویسی زبان ماشین نسل اول توسط نسل دومی که زبان اسمبلی نامیده میشوند جایگزین شد. در سالهای بعد دهه ۵۰، زبان برنامه نویسی اسمبلی، که برای استفاده از دستورات ماکرو تکامل یافته بود، توسط سه زبان برنامه نویسی سطح بالا دیگر: FORTRAN,LISP , COBOL مورد استفاده قرار گرفت. نسخههای به روز شده این برنامهها همچنان مورد استفاده قرار میگیرند، و هر کدام قویا توسعه زبانهای بعد را تحت تاثیر قرار دادند. در پایان دهه ۵۰ زبان algol ۶۰ معرفی شد، و بسیاری از زبانهای برنامه نویسی بعد، با ملاحظه بسیار، از نسل algol هستند. قالب و استفاده از زبانهای برنامه نویسی به شدت متاثر از محدودیتهای رابط بودند.
پالایش
دوره دهه ۶۰ تا اواخر دهه ۷۰ گسترش مثالهای عمده زبان پرکاربرد امروز را به همراه داشت. با این حال بسیاری از جنبههای آن بهینه سازی ایدههای اولیه نسل سوم زبان برنامه نویسی بود:
APL برنامه نویسی آرایهای را معرفی کرد و برنامه نویسی کاربردی را تحت تاثیر قرار داد.
PL/i(NPL) دراوایل دهه ۶۰ طراحی شده بود تا ایدههای خوب فورترن و کوبول را بهم پیوند دهد.
در دهه ۶۰، Simula اولین زبانی بود که برنامه نویسی شئ گرا را پشتیبانی میکرد، در اواسط دهه۷۰. Smalltalk به دنبال آن به
عنوان اولین زبان کاملاً شئ گرا معرفی شد.
C بین سالهای ۱۹۶۹ تا ۱۹۷۳ به عنوان زبان برنامه نویسی سیستمی طراحی شد و همچنان محبوب است.
Prolog، طراحی شده در ۱۹۷۲، اولین زبان برنامه نویسی منطقی بود.
در ۱۹۷۸ ML سیستم نوع چند ریخت روی لیسپ ایجاد کرد، و در زبانهای برنامه نویسی کاربردی ایستا نوع گذاری شده پیشگام شد.
هر یک از این زبانها یک خانواده بزرگ از وارثین از خود به جای گذاشت، و مدرنترین زبانها از تبار حداقل یکی از زبانهای فوق به شمار میآیند.
دهههای ۶۰ و ۷۰ مناقشات بسیاری روی برنامه نویسی ساخت یافته به خود دیدند، و اینکه آیا زبانهای برنامه نویسی باید طوری طراحی شوند که آنها را پشتیبانی کنند.
"ادسگر دیکسترا" در نامهای معروف در ۱۹۶۸ که در ارتباطات ACM منتشر شد، استدلال کرد که دستورgoto باید از تمام زبانهای سطح بالا حذف شود.
در دهههای ۶۰ و ۷۰ توسعهٔ تکنیکهایی صورت گرفت که اثر یک برنامه را کاهش میداد و در عین حال بهره وری برنامه نویس و کاربر را بهبود بخشید. دسته کارت برای ۴GL اولیه بسیار کوچکتر از برنامهٔ هم سطح بود که با ۳GL deck نوشته شده بود.
یکپارچگی و رشد
دهه ۸۰ سالهای یکپارچگی نسبی بود. C++ برنامه نویسی شئ گرا و برنامه نویسی سیستمی را ترکیب کرده بود. ایالات متحده ایدا(زبان برنامه نویسی سیستمی که بیشتر برای استفاده توسط پیمان کاران دفاعی بود) را استاندارد سازی کرد. در ژاپن و جاهای دیگر، هزینههای گزافی صرف تحقیق در مورد زبان نسل پنجم میشد که دارای ساختارهای برنامه نویسی منطقی بود. انجمن زبان کاربردی به سمت استانداردسازی ML و Lisp حرکت کرد. به جای ایجاد مثالهای جدید، تمام این تلاشها ایدههایی که در دهههای قبل حلق شده بودند را بهتر کرد.
یک گرایش مهم در طراحی زبان در دهه ۸۰ تمرکز بیشتر روی برنامه نویسی برای سیستمهای بزرگ از طریق مدولها، و یا واحدهای کدهای سازمانی بزرگ مقیاس بود. مدول-۲، ایدا. و ML همگی سیستمهای مدولی برجستهای را در دهه ۸۰ توسعه دادند. با وجود اینکه زبانهای دیگر، مثل PL/i، پشتیبانی بسیار خوبی برای برنامه نویسی مدولی داشتند. سیستمهای مدولی غالباً با ساختارهای برنامه نویسی عام همراه شدهاند.
رشد سریع اینترنت در میانه دهه ۹۰ فرصتهای ایجاد زبانهای جدید را فراهم کرد. Perl، در اصل یک ابزار نوشتن یونیکس بود که اولین بار در سال ۱۹۸۷ منتشر شد، در وبگاههای دینامیک متداول شد. جاوا برای برنامه نویسی جنب سروری مورد استفاده قرار گرفت. این توسعهها اساساً نو نبودند، بلکه بیشتر بهینه سازی شده زبان و مثالهای موجود بودند، و بیشتر بر اساس خانواده زبان برنامه نویسی C بودند. پیشرفت زبان برنامه نویسی همچنان ادامه پیدا میکند، هم در تحقیقات و هم در صنعت. جهتهای فعلی شامل امنیت و وارسی قابلیت اعتماد است، گونههای جدید مدولی(mixin، نمایندهها، جنبهها) و تجمع پایگاه داده.
۴GLها نمونهای از زبانهایی هستند که محدوده استفاده آنها مشخص است، مثل SQL. که به جای اینکه دادههای اسکالر را برگردانند، مجموعههایی را تغییر داده و بر میگردانند که برای اکثر زبانها متعارفند. Perl برای مثال، با "مدرک اینجا" خود میتواند چندین برنامه ۴GL را نگه دارد، مانند چند برنامه جاوا سکریبت، در قسمتی از کد پرل خود و برای پشتیبانی از چندین زبان برنامه نویسی با تناسب متغیر در "مدرک اینجا" استفاده کند.
سنجش استفاده از زبان
مشکل است که مشخص کنیم کدام زبان برنامه نویسی بیشتر مورد استفادهاست، و اینکه کاربرد چه معنی میدهد با توجه به زمینه تغییر میکند. یک زبان ممکن است زمان بیشتری از برنامه نویس بگیرد، زبان دیگر ممکن است خطوط بیشتری داشته باشد، و دیگری ممکن است زمان بیشتری از پردازنده را مصرف کند. برخی زبانها برای کاربردهای خاص بسیار محبوبند. برای مثال: کوبول همچنان در مراکزداده متحد، غالباً روی کامپیوترهای بزرگ توانا است؛ fortran در مهندسی برنامههای کاربردی، C در برنامههای تعبیه شده و سیستمهای عامل؛ و بقیه برنامهها معمولاً برای نوشتن انواع دیگر برنامهها کاربرد دارند. روشهای مختلفی برای سنجش محبوبیت زبانها، هر یک متناسب یا یک ویژگی محوری متفاوت پیشنهاد شدهاست:
شمارش تعداد تبلیغات شغلی که از آن زبان نام میبرند.
تعداد کتابهای آموزشی و شرح دهندهٔ آن زبان که فروش رفتهاست.
تخمین تعداد خطوطی که در آن زبان نوشته شده اند- که ممکن است زبانهایی را که در جستجوها کمتر پیدا میشوند دست کم گرفته شوند.
شمارش ارجاعهای زبان(برای مثال، به اسم زبان) در موتورهای جستجوهای اینترنت.
طبقه بندیها هیچ برنامه غالبی برای دسته بندی زبانهای برنامه نویسی وجود ندارد. یک زبان مشخص معمولاً یک زبان اجدادی ندارد. زبانها معمولاً با ترکیب المانهای چند زبان پیشینه بوجود میآیند که هربار ایدههای جدید درگردشند. ایدههایی که در یک زبان ایجاد میشوند در یک خانواده از زبانهای مرتبط پخش میشوند، و سپس از بین خلاهای بین خانوادهها منتقل شده و در خانوادههای دیگر ظاهر میشوند.
این حقیقت که این دسته بندی ممکن است در راستای محورهای مختلف انجام شوند، این وظیفه را پیچیده تر میکند؛ برای مثال، جاوا هم یک زبان شیءگرا(چون به برنامه نویسی شیءگرا تشویق میکند) و زبان همزمان(چون ساختارهای داخلی برای اجرای چندین جریان موازی دارد) است. پایتون یک زبان اسکریپتی شیءگراست.
در نگاه کلی، زبانهای برنامه نویسی به مثالهای برنامه نویسی و یک دسته بندی بر اساس محدوده استفاده تقسیم میشوند. مثالها شامل برنامه نویسی رویهای، برنامه نویسی شیءگرا، برنامه نویسی کاربردی، وبرنامه نویسی منطقی؛ برخی زبانها ترکیب چند مثالند. یک زبان اسمبلی مثالی از یک مدل مستقیم متضمن معماری ماشین نیست. با توجه به هدف، زبانهای برنامه نویسی ممکن است همه منظوره باشند، زبانهای برنامه نویسی سیستمی، زبانهای اسکریپتی، زبانهای محدوده مشخص، زبانهای همزمان/ گسترده(و یا ترکیب اینها). برخی زبانهای همه منظوره تا حد زیادی برای اهداف آموزشی طراحی شدهاند.
یک زبان برنامه نویسی ممکن است با فاکتورهای غیر مرتبط به مثالهای برنامه نویسی دسته بندی شود. برای مثال، غالب زبانهای برنامه نویسی کلمات کلیدی زبان انگلیسی را استفاده میکنند، در حالیکه تعداد کمی این کار را نمیکنند. سایر زبانها ممکن است براساس داخلی بودن یا نبودن دسته بندی شوند.
ساعت : 9:48 pm | نویسنده : admin
|
گرافیکسولوژی |
مطلب قبلی