مهدی منصوری
برنامه نویسی ، بهینه سازی ، گرافیک و ... به یه مدل دیگه
برگشت به صفحه اصلی وب سایت
شرکت طراحی پرتو
...
۰۷

پلتفرم (Platform) و فریم ورک (Framework)

 پلتفرم (Platform) و فریم ورک (Framework)

پلتفرم (Platform) و فریم ورک (Framework)، دو مفهوم پرکاربرد در دنیای کامپیوتر و برنامه نویسی هستند که بارها نامشان را شنیده و راجب آنها مطالبی خوانده ایم، از آنجایی که این دو عبارت معمولا در کنار هم و یا حتی بعضا و به اشتباه به جای هم استفاده می شوند ممکن است این تصور در ذهنمان شکل گرفته باشد که این دو به یک معنی و مترادف هستند، در حالی که با بررسی دقیق تر خواهیم دید که این تصور صحیح نیست و هر کدام از واژه های مزبور بار معنایی خاصی دارند و معرف مفهوم ویژه ای هستند، برای آشنایی بیشتر در یادداشت پیش رو نگاهی خواهیم داشت به مفهوم پلتفرم و فریم ورک در برنامه نویسی و به طور خاص در برنامه نویسی وب.

پلتفرم (Platform)
پلتفرم در واقع بستری است که برنامه های نرم افزاری نوشته شده برای یک وسیله در آن قابل اجرا و استفاده است، این بستر هم شامل ملزومات سخت افزاری (مانند نوع سیستم و CPU) و هم شامل ملزومات نرم افزاری (مانند سیستم عامل) است، به طور مثال برنامه های کاربردی و بازی هایی که همه روزه با آنها سر و کار داریم بدون وجود دستگاه هایی مانند کامپیوترهای شخصی (PC)، تلفن های همراه، لپ تاپ ها، کنسول های بازی و... عملا قابل استفاده نیستند (سخت افزار) و از طرفی هر برنامه ای در یک سیستم عامل خاص (و یا حتی تحت نسخه خاص) قابل اجرا است (نرم افزار) که در مجموع به آنها پلتفرم می گوییم، مانند پلتفرم ویندوز xp 64 bit، پلتفرم ویندوز 8، پلتفرم ویندوز موبایل، پلتفرم لینوکس، پلتفرم آندروید، پلتفرم جاوا، پلتفرم PC، پلتفرم XBOX و...، یا در حوزه وب در حال حاضر برنامه های نوشته شده به زبان ASP.NET نیاز به سرور با سیستم عامل به فرض ویندوز 2008 دارند (پلتفرم ویندوز سرور 2008)، با دقت در عبارت متوجه می شویم که یک پلتفرم در واقع معرف ملزومات سخت افزاری (سرور) و همچنین ملزومات نرم افزاری (سیستم عامل ویندوز سرور 2008) مورد نیاز برای اجرای یک برنامه کاربردی (ASP.NET) است، همچنین ممکن است به نسخه ویژه یک نرم افزار نیز اشاره شده باشد (نسخه 2008)، یا در مورد PHP می توان به پلتفرم لینوکس سرور یا ویندوز سرور اشاره کرد که در واقع به معنی سروری است که روی آن سیستم عامل لینوکس یا ویندوز نصب و فعال باشد و لذا به طور خلاصه می گوییم PHP با پلتفرم لینوکس سرور یا ویندوز سرور قابل اجرا و سازگار است.

فریم ورک (Framework)

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

درباره من

مهدی منصوری

بنده مهدی منصوری هستم، دانشجوی رشته فناوری اطلاعات، برنامه نویس اندروید، C# Css ، Html و Asp.net WebForm. فعالیت در زمینه فناوری اطلاعات و عرصه کامپیوتر  رو با گرافیک و طراحی داخلی ، طراحی لوگو و کلا کار طراحی و  کار کردن با ابزارهایی مثل Vray , 3Ds Max , ... شروع کردم  ولی به دلیل علاقه زیادی که به برنامه نویسی داشتم خیلی زود مسیر یادگیریم رو به سمت برنامه نویسی تغییر دادم..الانم در حال حاضر بیشتر وقتم رو به تولید اپلیکیشن اندروید اختصاص دادم.

دسته بندی مطالب

آخرین مطالب

وبلاگ دوستان من