Bootstrapچیست؟

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

دلیل نامگذاری بوت استرپ

چکمه‌ها (بوت) معمولاً یک حلقه (استرپ) یا دستگیره در بخش فوقانی خود دارند که به نام بوت‌استرپ نامیده می‌شود و به فرد اجازه می‌دهد که با استفاده از انگشت یا وسیله دیگری بوت‌ها را از زمین بردارد. اصطلاحی در قرن نوزدهم به خصوص در ایالات‌متحده رواج داشت که «کسی را به وسیله بوت‌استرپ از روی زمین برداریم» و اشاره به کاری ناشدنی داشت. 

توانایی های Bootstrap 

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

Bootstrap قصد دارد که خلاء میان طراحی و کدنویسی را از میان برداشته و کدنویسان را ترغیب به استفاده از طراحی های پیش فرض و استاندارد نماید. به همین منظور دستورات CSS و توابع jQuery مورد نیاز را برای شما فراهم کرده است.

کاربردهای Bootstran

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

بوت‌استرپ در زمینه علوم محاسبات

بوت‌استرپ در علوم رایانه در بخش‌های بوت شدن رایانه، در زمینه توسعه نرم‌افزار، در کامپایلرها، نصاب‌ها، شبکه‌های همپوشان، پیش‌بینی رویداد‌های گسسته و هوش مصنوعی/یادگیری ماشین کاربرد دارد

بوت شدن رایانه

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

توسعه نرم‌افزار

بوت‌استرپ می‌تواند به توسعه محیط‌های متوالیاً پیچیده‌تر و سریع‌تر برنامه‌نویسی نیز اشاره کند. ساده‌ترین محیط احتمالاً یک ویرایشگر متنی بسیار ساده و یک برنامه اسمبلر خواهد بود. با استفاده از این ابزارها فرد می‌تواند ویرایشگر متنی پیچیده‌تر و یک کامپایلر ساده برای زبان سطح بالاتر بنویسد و این فرایند همین طور ادامه می‌یابد تا این که می‌توان یک IDE گرافیکی و زبان برنامه‌نویسی کاملاً سطح بالا ایجاد کرد.

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

کامپایلرها

توسعه کامپایلرها برای زبان‌های جدید برنامه‌نویسی نخستین بار در یک زبان موجود توسعه یافت؛ اما پس از آن در یک زبان جدید نوشته شد و توسط خودش کامپایل شد که نماد دیگری از بوت‌استرپ محسوب می‌شود. استفاده از یک زبان موجود برای بوت‌استرپ کردن یک زبان جدید روشی برای حل پارادوکس علیت، «اول مرغ بود یا تخم‌مرغ؟» است. در بخش انتهای این نوشته، فرایند تاریخی بوت‌استرپ در کامپایلرها به تفصیل مورد بحث و بررسی قرار گرفته است.

نصاب‌ها

در طی نصب برنامه‌های کامپایلر برخی اوقات لازم است که برنامه نصب کننده یا نرم‌افزار مدیریت بسته‌ها خودش به‌روزرسانی شود. الگوی رایج برای انجام این کار استفاده از یک فایل بوت‌استرپ کوچک (مثلاً setup.exe) است که نصاب را به‌روزرسانی می‌کند و فرایند نصب واقعی را پس از به‌روزرسانی آغاز می‌کند. برخی اوقات فایل بوت‌استرپ کننده، خود پیش‌نیازهای دیگری که برای نرم‌افزار لازم است را در طی فرایند بوت‌استرپ کردن نصب می‌کند.

شبکه‌های همپوشان

یک گره بوت‌استرپ که به نام میزبان تلاقی (rendezvous host) نیز نامیده می‌شود گرهی در یک شبکه همپوشان است که اطلاعات پیکربندی اولیه را به گره‌های اخیراً ملحق شده ارسال می‌کند به طوری که بتوانند به طور موفقیت‌آمیزی به شبکه همپوشان ملحق شوند.

شبیه‌سازی رویدادهای گسسته

نوعی از شبیه‌سازی رایانه‌ای به نام «شبیه‌سازی رویداد گسسته» (discrete event simulation) وجود دارد که عملیات‌های یک سیستم را به صورت یک توالی زمانی از رویدادها نشان می‌دهد. مدل شبیه‌سازی از تکنیکی که بوت‌استرپینگ نامیده می‌شود، استفاده کرده و نقاط داده‌ای اولیه را با استفاده از تولید کننده عدد شبه تصادفی برای زمان‌بندی مجموعه اولیه رویدادهای در انتظار بوت‌استرپ می‌کند. 

هوش مصنوعی و یادگیری ماشین

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

مزایا استفاده از Bootstrap 

1- دارای مجموعه ی بیشماری از ابزارهای رایگان برای طراحی وب است. 

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

2- موجب صرفه جویی در زمان می شود. 

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

3- استفاده از بوت استرپ آسان و ساده است. 

استفاده از بوت استرپ بسیار آسان می باشد و هر کس با داشتن کمترین دانش در زمینه وب و آشنایی مختصر با html و css می تواند از آن برای رسیدن به اهداف خود استفاده کند.

4- بوت استرپ با انواع مرورگرهای وب سازگار است. 

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

5- منابع بوت استرپ قابل دسترس هستند.

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

معایب استفاده از Bootstrap

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

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

تاریخچه بوت‌استرپ کردن کامپایلرها

اسمبلرها نخستین ابزارهای زبانی بودند که خودشان را بوت‌استرپ می‌کردند. نخستین زبان سطح بالای برنامه‌نویسی که چنین بوت‌استرپی را ارائه می‌داد ENLIAC در سال 1958 بود. نخستین زبان‌هایی که به طور گسترده از این روش استفاده کردند، زبان Algol از شرکت Burroughs B5000 در سال 1961 و زبان LISP در سال 1962 بودند.

هارت و لوین یک کامپایلر لیسپ را در دانشگاه MIT در سال 1962 نوشتند و آن را درون یک مفسر موجود لیسپ تست کردند. زمانی که آن‌ها کامپایلر را تا نقطه‌ای بهبود دادند که بتواند کد خود را کامپایل کند، تبدیل به یک کامپایلر بوت‌استرپ شد.