رفتن به مطلب
سروش

شروع به کار بخش برنامه نویسی - درس اول - تاریخچه

پست های پیشنهاد شده

با سلام به همه ی دوستان عزیز در انجمن جومینا

با صحبت هایی که با آقایان شمسی و تهرانی داشتم قرار بر این شد که این بخش ایجاد بشه و به کمک دوستان شروع به آموزش برنامه نویسی PHP کنیم

این آموزش ها رو از 0 شروع میکنم و امیدوارم با استقبال دوستان جومینایی مواجه بشه.در هر پست من مطلبی ناقص بود از دوستان خواهش میکنم آن را کامل کنند و در صورتی که سوالی داشتند در مورد ان مطالب در همان تاپیک سوال خود رو مطرح کنند

-------------------------

پیروز باشید

سروش طیبی

21/11/1390

------------------------------------------------------------------------------------------------------------------------------------------------------------

وب جهانی (www-World Wide Web)

به نقل از ویکیپدیا :‌

ایده اولیه در مورد وب جهانی به سال 1980 برمی‌گردد. زمانی که در شهر سرن سوئیس، تیم برنرز لی شبکه ENQUIRE را ساخت (که به "Enquire Within Upon Everqthing CSS" اشاره داشت و همنام کتابی بود که وی از جوانی خود به یاد داشت. اگرچه آنچه وی ساخت با وب امروزی تفاوت‌های زیادی دارد اما ایده اصلی در آن گنجانده شده است (و حتی برخی از این ایده‌ها در پروژه بعدی برنرزلی پس از WWW یعنی وب معنایی به کار گرفته شد).

در مارس 1989، برنرزلی یک پیشنهاد را نوشت که به ENQUIRE اشاره داشت و یک سیستم اطلاعاتی پیشرفته را توصیف می‌کرد. وی با کمک رابرت کایلا، پیشنهاد طراحی تور جهان گستر را در 12 نوامبر 1990 ارائه كرد. اولین مرور وب جهان توسط برنرزلی با عنوانNEXTcube مورد استفاده قرار گرفت و وی اولین مرورگر وب و تور جهان گستر را در سال 1990 طراحی کرد.

در کریسمس 1990، برنرز لی همه ابزارهای لازم برای کار با وب را فراهم کرد.

نمونه ی اولیه وب به صورت متنی بود . در دسامبر ۱۹۹۱ نمایش عمومی آن به صورت hypertext (ابر متن) در کنفرانسی ارائه شد.این موضوع پژوهشگران دیگر را به سوی خود جلب کرد و موجب شد مارک آندرسن اولین مرورگر گرافیکی رو به نام Mosaic ایجاد کند که در سال ۱۹۹۳ انتشار یافت.Mosaic جوری شهرت پیدا کرد که موجب شد آندرسن دانشگاه رو ترک کند و شرکتی به نام NetScape رو تاسیس نماید که هدفش توسعه نرم افزارهایی مربوط به وب بود.وقتی این شرکت در سال ۱۹۹۵ مشهور شد سرمایه داران فکر کردند به زودی این شرکت در حد ماکروسافت خواهد بود و سهامش را به بیش از ۱.۵ بیلیون دلار خریدند.این مطلب خیلی عجیب بود.چون این شرکت وضعیت خوبی نداشت و فقط یک محصول داشت و انتظار نمیرفت در آینده ای نزدیک به سوددهی بیفتد.سه سال بعد NetScape و IE( Internet Explorer) شرکت مایکروسافت به عنوان مرورگر وب معرفی شدند و هر کدام سعی کردند نسبت به دیگری خواص بیشتری ارائه دهند.در سال ۱۹۹۸ شرکا AO یا American Online شرکت NetScape را با ۴.۲ بیلیون دلار خرید و عمر این شرکت به عنوان یک شرکت مستقل پایان یافت

------------------------------------------------------------------------------------------------------------------------------------------------------------

سرویس دهنده - مشتری

سرویس دهنده (Server) سیستم کامپوتری قدرتمندی است که سرویس ها و اطلاعات را در اختیار دارد

مشتری (Client) سیستم کامپیوتری دیگری است که سرویس ها و اطلاعات را از سرویس دهنده درخواست می کنند.

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

------------------------------------------------------------------------------------------------------------------------------------------------------------

انواع اسناد وب

به طور کلی صفحات یا اسناد وب را می توان به ۳ دسته تقسیم کرد :‌

۱.اسناد ایستای وب(static)

۲.اسناد پویای وب(dynamic)

۳.اسناد فعال وب (active)

این دسته بندی براساس زمان تعیین محتویات سند انجام میگیرد

------------------------------------------------------------------------------------------------------------------------------------------------------------

ادامه ی توضیحات تاریخچه در همین تاپیک و پست های بعدی انجام میگیرد

----------------

پیروز باشید

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

اسناد ایستای وب (Static)

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

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

توجه داشته باشید که وب سایت های ایستا جذابیت خاصی ندارند ، زیرا هر بار که به آن ها مراجعه می شود، دارای یک شکل هستند و مطالب آن ها تکراری است .

صفحات ایستای وب معمولا با HTML ساخته می شوند

اسناد پویای وب (Dynamic)

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

برخی از ویژگی های پویایی که مخاطبین وب به آن ها علاقه مند هستند به شرح زیر است :

حساسیت نسبت به زمان به جای محتویات دایرة المعارف

تغییر محتویات و سبک طراحی

سازگاری با نسل جدید سخت افزار ، نرم افزار‌، و استانداردهای تحویل اطلاعات

پشتیبانی از ارتباط با مخاطبین سایت

مدیریت موثر برای افزایش کیفیت اطلاعات

برای اینکه وب سایت های پویا جذاب باشند ، ویژگی های زیر مطلوب است :‌

هر بار که به آن ها مراجعه می شود اطلاعات جدیدی داشته باشند

واسط ها و برنامه نویسی منعکس کننده گرایش های جدید در سبک نرم افزار باشند

پاسخ به تغییر در ترافک سروی دهنده و بیننده از طریق عدم نیاز به کاربران با تجربه

عدم وجود گرافیک های نامفهوم و واسط های ناقص

کنترل شخصی سازی و سفارشی سازی محتویات صفحات وب

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

اسناد فعال (Active)

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

----------------

پیروز باشید


فناوری CGI

به نقل از سایت ireshop.net که خود این سایت هم عینا متن کتاب آقای قمی رو تایپ کردند (و البته گفتند خودشون نوشتن!!) ‌:

فناوری CGI برای ایجاد و اداره کردن صفحات پویا به کار می رود. CGI مجموعه ای از استانداردها است که مشخص می کند اسناد پویا چگونه نوشته شوند، داده ها چگونه وارد برنامه شوند و خروجی برنامه چگونه استفاده شود.

CGI یک زبان جدید نیست، بلکه به برنامه نویسان اجازه می دهد از زبان های مختلفی مثل Perl، ++C، C و غیره استفاده کنند. CGI فقط مجموعه ای از قوانین و واژه ها را تعریف می کند که برنامه نویس باید از آن ها پیروی کند.

واژه ی Common در فناوری CGI نشان می دهد که این استاندارد، مجموعه ای از قوانین را تعریف می کند که بین زبان ها و محیط های کاری مشترک است. واژه gateway در این فناوری به معنای این است که برنامه CGI می تواند به منابعی مثل بانک اطلاعاتی، بسته های گرافیکی و غیره دستیابی داشته باشد. واژه ی interface در این فناوری به معنای این است که مجموعه ای از واژه ها، متغیرها، فراخوانی ها و غیره وجود دارند که از قبل تعریف شده اند و در برنامه های CGI قابل استفاده اند. شکل ساده ای از برنامه CGI، کدی است که به یکی از زبان هایی که CGI پشتیبانی می کند، نوشته شده است. هر برنامه نویسی که می تواند دنباله ای از تفکرات را به صورت یک برنامه درآورد و با یکی از زبان های مذکور آشنایی داشته باشد، می تواند برنامه CGI را بنویسد.

ورودی: در برنامه نویسی معمولی(سنتی)، وقتی برنامه ای اجرا می شود، پارامترها می تواندد به برنامه ارسال شوند. ارسال پارامتر به برنامه نویس اجازه میدهد تا برنامه های کلی بنویسد که در وضعیت های مختلفی مورد استفاده قرار می گیرد. به عنوان مثال، می توان یک برنامه کلی نوشت که فایلی را کپی کند. کاربر با استفاده از این برنامه می تواند فایلی را به نام x را تحت نام y کپی کند. برای این منظور باید فایل های x و y را به عنوان پارامتر دریافت نماید.

ورودی از مرورگر به سرویس دهنده، از طریق فرم انجام می گیرد. اگر اطلاعات موجود در فرم کم باشد (مثل یک کلمه)، می توان آن را در URL به همراه یک علامت ? قرار داد. به عنوان مثال، برای ارسال مقدار 23 به یک برنامه در سرویس دهنده، می توان به صورت زیر عمل کرد:

http://www.abcd/cgi-bin/prog.pl?23

وقتی سرویس دهنده این URL را دریاف می کند، با استفاده از بخش قبل از علامت ? در URL، به برنامه ای که باید اجرا شود دستیابی دارد و بخش بعد از علامت ? را به عنوان ورودی مشتری در نظر می گیرد. وقتی برنامه CGI اجرا می شود، می تواند به این مقدار دستیابی داشته باشد.

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

خروجی: ایده کلی CGI، اجرای برنامه CGI در سمت سرویس دهنده و ارسال خروجی به مشتری (مرورگر) است. خروجی معمولا" متن ساده یا متنی با ساختارهای HTML است. به هر حال، خروجی می تواند هر نوع اطلاعاتی باشد: گرافیک یا داده های دودویی، کد وضعیت، دستور به مرورگر برای ذخیره نتایج، یا دستور به سرویس دهنده برای ارسال سند موجود به جای خروجی واقعی.

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

------------------------------------------------------------------------------------------------------------------------------------------------------------

فناوری های اسکریپت برای اسناد پویای وب

مشکل فناوری CGI این است که اگر بخشی از سند پویای که باید ایجاد شود ثابت باشد و نباید از درخواستی به درخواست دیگر تغییر کند ، کارآیی آن پایین است.راه حل برای این موضوع این است که فایلی ایجاد شود که حاوی بخش ثابت اسناد (HTML) سپس در اسکریپت (Script) قرار داده شود.اسکریپت می تواند توسط سرویس دهنده اجرا شود و اطلاعات لازم را در اختیار قرار دهد

فناوری های زیادی برای ایجاد اسناد پویا به کمک اسکریپت ها وجود دارند. متداول ترین آن ها عبارتند از :‌

PHP یا HyperText PreProcessor که از زبان Perl استفاده می کند

JSP یا Java Server Page که از زبان جاوا استفاده می کند

ASP یا Active Server Page که محصول شرکت مایکروسافت است و از زبان ویژوال بیسیک استفاده می کند

ASP.Net که از زبان های .Net استفاده می کند

ColdFusion که تقاضاهای بانک اطلاعتی SQL را در HTML قرار می دهد

----------------

پیروز باشید

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

تاریخچه PHP

اولين بار زبان php توسط در اوايل سال 1994 توسط Rasmus Lerdorf براي كار هاي شخصي خودش طراحي نمود كه بصورت يك CGI در زبان Perl نوشته شده بود بعد از مدتي بدليل مشكلات بر روي سرور، php را با زبان ‍C نوشت، سپس با گذشت زمان با اعمال تغييرات توسط او و علاقه مندان اين زبان اولين نسخه php همراه با راهنما، Mailing-List و FAQ طراحي گرديد.

در اوايل آنها نام آنرا Personal Home Pages گذاشتند (كه مخفف آن PHP مي باشد) و به دليل گسترش قابليتها و موارد استفاده از اين زبان بعد از مدتي عنوان آن تغيير پيدا كرد و به Hypertext Processor تبديل شد كه در اصل به معني " پردازش داده قبل از تبديل به HTML مي باشد

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

برخی از ویژگی های PHP نسبت به رقیبان خود :

1) کارایی بالا.

2) واسطه های مختلف برای سیستم پایگاه های اطلاعاتی مختلف.

3) کتابخانه داخلی برای انجام امور متداول.

4) هزینه پایین،

5) امنیت بالا و ...

6) سادگی استفاده از پی‌اچ‌پی و شباهت آن به زبان سی و پرل (و از نسخه ۵ آن به جاوا) باعث شده که اغلب برنامه نویسان با تجربه در کوتاه‌ترین زمان ممکن برنامه‌های کاملی را ایجاد کنند.

7) پی‌اچ‌پی تنها یک زبان پردازه‌نویسی نیست و با استفاده از PHP-GTK می‌توان برای طراحی برنامه‌های با ظاهر گرافیکی (GUI) و همچنین طراحی برنامه‌های خط فرمان شبیه پرل یا پایتون (Python) از آن استفاده کرد.

8) پی‌اچ‌پی امکان استفاده از انواع مختلفی از پایگاه‌های داده را از جمله MySQL، اوراکل، IBM DB۲ ،Microsoft SQL Server ،PostgreSQL و SQLite با دستورهایی ساده فراهم می‌سازد.

9) پی‌اچ‌پی روی بیشتر سیستم‌عامل‌های معروف از جمله لینوکس، یونیکس، ویندوز و Mac OSX و با اغلب کارگزارهای وب (Web Server) معروف، قابل اجراست.

----------------

پیروز باشید

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

به گفتگو بپیوندید

هم اکنون می توانید ارسال داشته باشید و بعد ثبت نام خود را در سایت کامل نمایید. اگر حساب کاربری در سایت دارید، جهت ارسال با حساب کاربری خود هم اکنون وارد سایت شوید

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.


×
×
  • افزودن...