انجمن عمومی گسترش فناوری آگو
آشنایی با ساختار پلتفرم - نسخه‌ی قابل چاپ

+- انجمن عمومی گسترش فناوری آگو (http://forums.ago.ir)
+-- انجمن: انجمن های عمومی گسترش فناوری آگو (/forumdisplay.php?fid=1)
+--- انجمن: برنامه نویسی (/forumdisplay.php?fid=13)
+--- موضوع: آشنایی با ساختار پلتفرم (/showthread.php?tid=2184)



آشنایی با ساختار پلتفرم - agotd - 11-11-2013 02:58 PM

پلتفرم در يك تعريف غيرعلمي و كاربردي، عبارت است از مجموعه مؤلفه‌هاي پايه سخت‌افزاري و نرم‌افزاري كه با كنار هم قرارگرفتن زيربناي تهيه يك نرم‌افزار را فراهم مي‌كنند.


بيش از نود درصد از برنامه‌هاي بازار در زمينه نگهداري و مديريت داده‌هاي مالي يا سازماني طراحي شده‌اند. از جمله اين برنامه‌ها مي‌توان به برنامه‌هاي حسابداري، انبارداري، CRM، بانكي و برنامه‌هاي اتوماسيون اداري‌ اشاره کرد.

اين نوع برنامه‌ها معمولاً، شامل تركيبي از يك سرور مركزي و پايگاه‌داده نصب شده روي آن است كه محيط لازم را براي درج، اصلاح و گزارش‌گيري از اطلاعات فراهم مي‌كنند. معمولاً در سمت ديگر، برنامه‌هاي كلاينت قرار دارند. اين برنامه‌ها بايد توسط يك زبان برنامه‌نويسي مناسب توليد شوند. در حالت جايگزين ممكن است به جاي برنامه‌هاي سمت كلاينت از برنامه‌هاي تحت وب استفاده شود.

البته، با افزوده شدن به رسانه‌هاي ارتباطي، حالت‌ها و معماري‌هاي ديگري نيز قابل تصور است، به‌عنوان مثال، استفاده از PDA به جاي سيستم كلاينت يا استفاده از ابزارهاي ارتباطي ساده‌تر نظير گوشي تلفن كه اصولاً نياز به سيستم‌عامل سمت كاربر را منتفي مي‌كند يا گوشي تلفن همراه كه با توجه به امكان SMS گستره ارتباطي شما را افزايش مي‌دهد، اما معمولاً در مقايسه با ساير موارد امكانات محدودي در اختيار شما قرار مي‌دهد.

حال با دانستن اين موارد به سراغ پلتفرم‌‌هاي نرم‌افزاري بازارپسند مي‌رويم. در بازار ايران يكي از پرطرفدارترين موارد، سيستم‌عامل‌هاي سرور ويندوز است كه پايگاه‌داده SQL Server روي آن نصب شده‌است. در اين پلتفرم و در سمت كلاينت از سيستم‌عامل ويندوز XP استفاده مي‌شود كه برنامه‌اي نوشته‌شده با زبان‌هاي خانواده NET. روي آن نصب است.
پس اولين انتخاب بيشتر برنامه‌نويسان آشنايي با پايگاه‌داده SQL Server و يكي از زبان‌هاي خانواده NET. است. به‌عنوان يک برنامه‌نويس اولويت را به پياده‌سازي مي‌دهم نه مديريت پايگاده داده SQL Server 2005 و درباره زبان برنامه‌نويسي نيز به دلايل مختلف اولويت با زبان #C است. زبان برنامه‌نويسي #C در مقايسه با ساير زبان‌هاي خانواده، نظير vb.net، زبان‌جديدتري است و از آنجا که در کنار Java جزء معدود زبان‌هاي شيء‌گرايي است كه توانسته استاندارد IEEE را كسب کند نشان‌دهنده برتري اين زبان است.

با در نظر گرفتن دو مورد فوق به سراغ رقبا مي‌رويم. در زمينه پايگاه‌داده، رقيب قدرتمندي به نام اوراكل وجود دارد كه با وجود قابليت‌هاي بسيار بالا، از حيث ميزان محبوبيت در رتبه‌ پايين‌تري قرار دارد. MySQL نيز پايگاه داده ديگري است كه مشتريان خاص خود را دارد.

در زمينه زبان‌هاي برنامه‌نويسي، زبان قدرتمند جاوا در مواردي كه خانواده NET. پاسخ‌گوي نياز نباشند، مطرح مي‌شود، اما سهم اين زبان در توليد سيستم‌هاي جديد چندان قابل‌توجه نيست. PHP يكي از زبان‌هاي توليد صفحات وب است و برخلاف زبان‌هاي ديگر كه براي توليد برنامه در محيط كلاينت، وب و حتي PDA كاربرد دارند،‌ كاربرد اين زبان به دنياي وب محدود است.

تركيب PHP و MySQL روي سرورهاي لينوكس يكي از پلتفرم‌هاي مطرح را ايجاد کرده‌است. اين زبان و پايگاه‌داده براي توليد صفحات وب تقريباً هميشه با هم استفاده مي‌شوند. باقي پايگاه‌هاي داده و زبان‌هاي مورد اشاره حتي بدون در نظرگرفتن سيستم‌عامل سرور و كلاينت، چندين حالت را ايجاد مي‌كنند كه در اينجا اين موارد را بيان مي‌كنيم. تركيبي از اوراكل و زبان‌هاي NET. روي سرورهاي ويندوز يكي از حالات ممكن است.

شايد بتوان از اين مورد به عنوان دومين پلتفرم بازار نام برد البته، با فاصله زياد از مورد اول. پلتفرم بعدي همين تركيب است با اين تفاوت كه پايگاه‌داده اوراكل روي رورهاي لينوكسي نصب مي‌شود و مي‌‌توان از آن به عنوان تركيب مناسبي براي توليد سريع و ارزان سيستم و در عين حال ذخيره داده در محيطي امن و با كارايي بالا استفاده‌كرد. جاوا نيز به طور معمول با اوراكل استفاده مي‌شود. البته، با در نظر گرفتن موارد قبل عكس اين مورد صدق نمي‌کند، يعني تركيب اوراكل به جز جاوا با ساير زبان‌ها نيز محبوبيت زيادي دارد. تركيب جاوا و اوراكل كاربردهاي محدودي دارد، يعني به واسطه هزينه بالا تنها زماني از اين تركيب استفاده مي‌شود كه ساير تركيب‌ها نتوانند پاسخ‌گوي نياز نرم‌افزاري باشند.

با در نظر گرفتن اين موارد كاملاً واضح است كه اولين انتخاب براي يك دانشجو علاقه‌مند به برنامه‌نويسي،‌ يادگيري #C و زبان TSQL (زبان پايگاه‌داده SQL Server) است. اگر بخواهيد مانند بعضي‌ها با محصولات غير مايكروسافتي نيز آشنا شويد، در اين صورت آشنايي با اوراكل را به عنوان اولين اولويت در نظر بگيريد، زيرا اين پايگاه داده بسيار قدرتمند بوده و گرايش به آن نيز به ويژه در توليد سيستم‌هايي با حساسيت بالا در سمت پايگاه‌داده زياد است.

مورد ديگري كه بايد در نظر بگيريد، توجه به فناوري‌هاي جديد است. به‌عنوان مثال، برنامه‌نويسي با PDA به دليل جذابيت‌هاي خاص و در عين حال رقباي كم، به عنوان يكي از زمينه‌هاي مناسب و درآمدزا مطرح است.