فناوری
پروتکل‌ها

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





مسئولیت طراحی معماری سامانه‌های نرم‌افزاری اینترنت بر عهده گروه ویژه مهندسی اینترنت(IETF) گذارده شده‌است. IETF گروههای کاری استانداردگذاری را در ارتباط باجنبه‌های مختلف معماری اینترنت مدیریت می‌کند که به روی هر فردی باز هستند. بحثهای حاصل و استانداردهای نهایی در قالب اسنادی به نام درخواست توضیح(RFC) (به انگلیسی: Request for Comments) منتشر می‌شوند که به رایگان در وبگاه IETF فابل دسترسی هستند. روشهای اصلی شبکه بندی که اینترنت را راه می‌اندازند درRFCهایی می‌آیند که به طور ویژه‌ای متمایز شده اندواستانداردهای اینترنت را تشکیل می‌دهند. سایر اسناد ضعیف تر اسناد اطلاع رسانی، آزمایشی و تاریخی هستند و یا اسنادی اند که بهترین شیوه‌های رایج در پیاده‌سازی فناوریهای اینترنت را بیان می‌کنند.

استانداردهای اینترنت چارچوبی را مشخص می‌کنند که به نام بسته پروتکل اینترنت شناخته می‌شود. این بسته یک مدل معماری است که روشهارا به سامانه لایه بندی شده‌ای از پروتکلها تقسیم می‌کند.(RFC 1122, RFC 1123) هرلایه با محیطی متناظر است که سرویسهایی که ارائه می‌دهد در آن محیط یا حوزه عمل می‌کنند. بالاترین لایه، لایه کاربرد (به انگلیسی: Application Layer)، فضایی است برای شیوه‌های شبکه بندی مخصوص برنامه‌های کاربردی که مورد استفاده نرم‌افزارهای کاربردی قرار می‌گیرد، به عنوان مثال یک مرورگروب. در زیر این لایه لایه انتقال (به انگلیسی: Transport Layer) قرار دارد که برنامه‌های کاربردی را در " میزبان‌های متفاوت" از طریق شبکه با شیوه‌های مناسب مبادله داده به یکدیگر مرتبط می‌سازد (به عنوان مثال مدل کارخواه-کارساز). در زیر این لایه‌ها فناوریهای شبکه بندی اساسی در قالب دو لایه قراردارند. لایه اینترنت از طریق نشانی پروتکل اینترنت(آدرس IP) این قابلیت را به رایانه‌ها می‌دهد که یکدیگر را شناسایی کنند و مکان یکدیگر را بیایند و به آنها اجازه می‌دهد که از طریق شبکه‌های ترانزیت میانی به هم متصل شوند. درآخر زیر همه لایه‌ها یک لایه نرم‌افزاری به نام لایه پیوند قرارمی گیرد که اتصال بین میزبانهایی که در یک شبکه محلی قرار دارند ویا از طریق اتصال شماره گیری(Dial-up Connection) را بوجود می‌آورد. این مدل که به نام مجموعه پروتکل اینترنت خوانده می‌شود به گونه‌ای طراحی شده‌است که از سخت‌افزاری که بر روی آن کار می‌کند مستقل باشد و به جزئیات سخت‌افزاری نمی‌پردازد. مدل‌های دیگری نیز علاوه بر این مدل بوجود آمدند (مثل مدل مرجع OSI) که اگرچه شباهتهای زیادی با هم دارند، اما نه از لحاظ جزئیات توصیفی و نه از نظر پیاده‌سازی با هم سازگار نیستند.

برجسته‌ترین جزء مدل اینترنت پروتکل اینترنت(IP) است که یک سیستم آدرس دهی (آدرس‌های IP) برای رایانه‌های متصل به اینترنت را فراهم می‌آورد. IP نسخه ۴، نسخه ابتدایی آن بود که در نسل اول اینترنت امروزی بکار گرفته شد و هنوز هم کاربرد عمده دارد. این نسخه به گونه‌ای طراحی شده بود که ۴٫۳~ میلیارد (۱۰۹) میزبان اینترنت را آدرس دهی کند. اما رشد انفجاری ایترنت منجر به اتمام آدرسهای IP شد و گمان می‌رود که تقریباً در ۲۰۱۱ به مرحله پایانی اش برسد. در اواسط دهه ۹۰ نسخه جدید این پروتکل، ipv6 با قابلیت آدرس دهی بسیار بیشتر و مسیر یابی کارآمد تر ترافیک اینترنت بوجود آمد. این نسخه هم اکنون در مرحله بکارگیری تجاری در سراسر دنیا به سر می‌برد و دفاتر ثبت منطقه‌ای اینترنت (RIR) (به انگلیسی: Regional Internet Registry) به تمام مدیران منابع اصرار می‌کنند که برای پذیرش نسخه جدید و تغییر، برنامه ریزی کنند.

IPv۶ با IPv۴ هم‌کنش‌پذیر (Interoperable) نیست و در واقع نسخه‌ای موازی از اینترنت ایجاد می‌کند که در دسترس نرم‌افزارهای سازگار با IPv۴ نمی‌باشد. این بدین معنی است که ارتقای نرم‌افزار و یا استفاده از امکانات ترجمه برای همه دستگاه‌های شبکه که بخواهند بر روی اینترنت IPv۶ ارتباط برقرار کنند، امری ضروری است. اکثر سیستم عامل‌های مدرن امروزی به گونه‌ای تغییر داده شده‌اند که از هر دو نسخه IP پشتیبانی کنند، اما زیرساختهای شبکه هنوز از این قافله عقب هستند.






ساختار

ساختار اینترنت و خصوصیات کاربرد آن به گستردگی مورد مطالعه قرارگرفته‌است. این مشخص شده‌است که ساختار مسیردهی پروتکل اینترنت(IP) و پیوندهای ابرمتن وب جهان گستر، هردو شبکه‌های مقیاس-آزاد هستند. شبیه به شیوه ارائه دهندگان تجاری اینترنت(ISP) که از طریق نقاط تبادل اینترنت(IXP) (به انگلیسی: Internet Exchange Point) به هم وصل می‌شوند، شبکه‌های پژوهشی نیز تمایل دارند که در شکل زیرشبکه‌های بزرگی مانند GEANT، گلوریاد، Internet۲ و JANET (شبکه آکادمی علوم و تحقیقات بریتانیا)، به هم متصل شوند. این زیر شبکه‌ها به نوبه خود پیرامون شبکه‌های کوچکتری پدید آمده‌اند.

بسیاری از دانشمندان علوم رایانه اینترنت را نمونه برجسته‌ای از یک سیستم بزرگ بسیار مهندسی شده و هنوز بسیار پیچیده توصیف می‌کنند. اینترنت به شدت ناهمگن است. مثلاً نرخ‌های انتفال داده و ویژگیهای فیزیکی اتصالات بسیار تغییر می‌کند. اصول مسیریابی و آدرس دهی ترافیک در اینترنت به خاستگاه آن در سال ۱۹۶۰ بر می‌گردد که اتدازه و محبوبیت آینده اینترنت قابل پیش بینی نبود، از این رو امکان ایجاد ساختارهای دیگر در دست بررسی است.






حاکمیت

اینترنت یک شبکه جهانی توزیع شده‌است که شبکه‌های خودمختار به انتخاب خود به آن پیوسته‌اند و بدون هیچ بدنهٔ مرکزی فرماندهی کار می‌کند. اما برای حفظ هم‌کنش‌پذیری آن جنبه‌های فنی و سیاستهای زیر ساخت پایهٔ آن و همچنین فضاهای نام اصلی آن توسط بنگاه اینترنتی نامها و شماره‌های تخصیص داده شده(به انگلیسی: Internet Corporation for Assigned Names and Numbers) (ICANN) اداره می‌شوند که مقر اصلی آن درمارینا دل ری، کالیفرنیا قرار دارد. ICANN مرجعی است که به هماهنگ سازی تخصیص شناسه‌های یکتا برای استفاده در اینترنت می‌پردازد. این شناسه‌ها شامل نامهای دامنه، نشانی‌های IP، شماره پورت‌های برنامه‌ها در لایه انتقال و بسیاری از پارامترهای دیگر می‌شود. فضاهای نام یکتای جهانی که در آن نام‌ها و شماره‌ها به صورتی تخصیص داده می‌شوند که مقادیر یکتا باشند، برای دسترسی جهانی به اینترنت ضروری هستند. ICANN توسط یک هیات مدیره بین‌المللی که از بین انجمنهای فنی، آکادمیک و سایر انجمنهای غبر تجاری دیگراینترنت انتخاب می‌شود. دولت امریکا همچنان نقش اولیه را در تایید تغییرات در حوزه ریشه سامانه نام دامنه (به انگلیسی: DNS root zone) که قلب سامانه نام دامنه(DNS) را تشکیل می‌دهد. نقش ICANN در هماهنگی تخصیص شناسه‌های یکتا، آن را به عنوان تنها پیکره هماهنگ سازی در شبکه جهانی اینترنت متمایز می‌سازد. در ۱۶ نوامبر ۲۰۰۵ نشست جهانی در باره جامعه اطلاعاتی که در تونس بر‌گزار شد انجمن حاکمیت اینترنت(IGF) را تاسیس کردند تا به مسایل مرتبط با اینترنت بپردازد.






کاربردهای امروزی

اینترنت انعطاف‌پذیری بیشتری را در مورد ساعتهای کاری و موقعیت جغرافیایی فراهم می‌سازد بویژه با گسترش اتصالهای پرسرعت و نرم‌افزارهای کاربردی وب. امروزه اینترنت تقریباً از همه جا و به طرق مختلفی قابل دسترسی است، بویژه از طریق دستگاههای متحرک اینترنتی (Mobile Internet Device)، تلفن همراه، جعبه‌های بازی دستی(Handheld Game Console) و مسیریابهای سلولی(Cellular Routers) که به کاربران اجازه می‌دهد که هرکجا شبکه‌های بی سیم وجود دارد به اینترنت متصل شوند. با وجود محدودیت اندازه صفحه کوچک دستگاههای جیبی، خدمات اینترنت مانند وب و پست الکترونیک قابل استفاده‌اند. اینترنت همچنین بازار بزرگی برای شرکتها شده‌است. برخی از بزرگترین شرکتهای دنیا با بهره‌گیری از ماهیت کم هزینه تبلیغات و دادوستد اینترنتی (که به دادوستدالکترونیک(E-Commerce) مشهور است) بزرگ شده‌اند. این سریعترین راه برای انتشار همزمان اطلاعات بین افراد متعدد است. اینترنت متعاقباً راه و رسم خریدکردن را نیز متحول ساخته‌است. به عنوان مثال یک فرد می‌توانند کالایی مانند یک لوح فشرده(CD) را به صورت برخط(Online) سفارش داده و ظرف چند روز آن را از طریق پست دریافت کند و یا مستقیماً آن را در رایانه‌اش بارگیری(Download) نماید. اینترنت همچنین امکانات بزرگی برای بازاریابی شخصی (Personalized Marketing) به ارمغان می‌آورد و بیشتر از هر رسانه تبلیغاتی دیگری به یک شرکت امکان تبلیغ خصوصی محصول برای یک فرد و یا گروهی از افراد را می‌دهد. از نمونه‌های بازایابی شخصی می‌توان به اجتماعات برخطی چون Facebook، Orkut، ،Twitter، Friendster، Myspace و مشابه آنها اشاره کرد که هزاران کاربر به عضویت آنها در می‌آیند تا خود را تبلیغ کنند و به صورت برخط دوست بیابند. بسیاری از آنها نوجوانان و جوانان بین ۱۳ تا ۲۵ سال هستند. وقتی که آنها خود را تبلیغ می‌کنند، علایق و سرگرمی‌های خود را نیز تبلیغ می‌نمایند و شرکتهای بازاریابی برخط(Online Marketing) نیز از آن سود می‌جویند تا به اطلاعاتی در مورد اینکه هریک از این کاربران معمولاً جه کالاهایی را به صورت بر خط می‌خرند، دست یابند و محصولات شرکت خود را برای کاربران مورد نظرشان تبلیغ کنند.

به اشتراک گذاری آنی و کم هزینه ایده‌ها، دانش و مهارت‌ها، با کمک نرم‌افزارهای تشریک مساعی (Collaborative Software) کارهای مشارکتی را بسیار آسانتر نموده‌است. گروهها نه تنها می‌توانند به ارزانی ارتباط برقرار کنند و ایده‌ها را به اشتراک بگذارند، بلکه در وهله اول به دلیل دسترسی بسیار گسترده اینترنت تشکیل گروهها آسانتر می‌شود. مثالی از این موضوع، جنبش نرم‌افزار آزاد است که محصولاتی چون لینوکس، فایرفاکس موزیلا و اپن‌آفیس بوجود آورد. "گپ" اینترنتی چه به شکل اتاقهای گپ IRC و چه به شکل پیام رسانی فوری (Instant Messaging) به همکاران اجازه می‌دهد که به راحتی ضمن کارکردن پشت رایانه هایشان با یکدیگر در تماس باشند. پیام‌ها حتی راحت تر و سریعتر از سیستم پست الکترونیکی مبادله می‌شوند. این سیستم‌ها می‌توانند به گونه‌ای توسعه یابند که امکان مبادله فایل و یا تماس تصویری را نیز به کاربران ارائه دهند.(مانند Yahoo Messenger)

سیستمهای کنترل نسخه (Version Control) به گروه‌های همکاری کننده اجازه می‌دهد که بر روی اسناد اشتراکی کار کنند، بدون اینکه تصادفاً کار یکدیگر را رونویسی کنند و یا منتظر رسیدن اسناد به دستشان باشند تا بتوانند کار خود را بر روی اسناد انجام دهند. تیم‌های تجاری و پرژه‌ای می‌توانند تقویم‌ها را نیز در کنار اسناد و اطلاعات به اشتراک بگدارند. چنین هماهنگی‌هایی در طیف وسیعی از موضوعات مانند پژوهشهای علمی، تولید نرم‌افزار، برنامه ریزی کنفرانس وفعالیتهای سیاسی صورت می‌گیرد. همکاریهای سیاسی و اجتماعی با گسترش دسترسی به اینترنت و افزایش سوادرایانه‌ای افزایش می‌یابد. از رویدادهای فلش ماب در اوایل ۲۰۰۰ تا استفاده از شبکه‌های اجتماعی در اعتراضات به انتخابات ۲۰۰۹ در ایران. اینترنت به افراد این امکان را می‌دهد که به طرز بسیار موثر تری از هرروش دیگری با هم کار کنند.

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






خدمات
اطلاعات

بسیاری از افراد واژه‌های "اینترنت" و "وب جهان گستر"(یابه صورت کوتاه "وب") را به جای هم بکار می‌برند، حال آنکه این دو واژه معناهای متفاوتی دارند. وب جهان گستر مجموعه‌ای جهانی از اسناد و تصاویر و سایر منابعی است که به وسیله ابرپیوندها با یکدیگر ارتباط منطقی دارند و با استفاده از شناسه‌های منبع یکنواخت (به انگلیسی: Uniform Resource Identifier) ویا به اختصار URI مورد مراجعه قرار می‌گیرند. URIها به ارائه دهندگان اجازه می‌دهد که سرویسها و مشتریان را به صورت سمبولیک مشخص نمایند. تا مکان یابی و آدرس دهی وب سرورها، سرورهای پرونده و سایر پایگاه داده‌هایی که اسناد را ذخیره می‌کنند و همچنین عرضه دسترسی به منابع از طریق پروتکل HTTP، اصلی‌ترین پروتکل حامل وب، را ممکن سازند.HTTP تنها یک از صدها پروتکلی است که روی وب استفاده می‌شود. وب سرویسها نیز می‌توانند از این پروتکل برای ارتباط استفاده کنند.

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

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






ارتباط

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

تلفن اینترنتی نیز سرویس ارتباطی دیگری است که با پیدایش اینترنت امکانپذیر شد. صدا روی پروتکل اینترنت(VoIP) نام پروتکلی است که زیر بنای همه ارتباطات تلفنی اینترنتی است. ایده آن در اوایل دهه ۱۹۹۰ همراه با برنامه‌های واکی-تاکی گونه برای رایانه‌های شخصی ظهور کرد. در سالهای اخیر سیستمهای VoIP سادگی استفاده و راحتی تلفن‌های معمولی را پیدا کرده‌اند. فایده این کار ان است که چون ترافیک صدارااینترنت حمل می‌کند، VoIP هزینه بسیار کمی دارد و حتی می‌تواند رایگان باشد. به ویژه برای آن دسته از اتصالات اینترنت که همیشه برقرارند (مانند مودم کابلی یا ADSL) گزینه مناسبی است. VoIP در حال پخته شدن و تبدیل شدن به رقیب جایگزینی برای سیستم‌های تلفن سنتی است. هم‌کنش‌پذیری بین عرضه کنندگان مختلف بهبود یافته و امکان برقراری و یا در یافت تماس با تلفن‌های معمولی نیز به وجود آمده‌است. کارتهای شبکه ساده و ارزان VoIP نیز در دسترس هستند که نیاز به وجود رایانه برای استفاده از VoIPرا ازبین می‌برند.

کیفیت صدا از یک تماس تا تماس دیگر تغییر می‌کند، اما غالباً کیفیت برابر یا بهتر از تلفن معمولی است. مشکلاتی که برای VoIP باقی می‌مانند، گرفتن شماره تلفن‌های اظطراری و قابلیت اطمینان است. در حال حاضر تعدادی از ازائه دهندگان VoIP سرویس شماره‌های اظطراری را ارائه می‌دهند اما هنوز به صورت جهانی در دسترس نیست. تلفن‌های سنتی انرژی را از خط تلفن می‌گیرند و در صورت قطع برق می‌توانند همچنان عمل کنند. برای VoIP این امکان بدون استفاده از منبع تغذیه پشتیبان برای تغذیه تجهیزات تلفن و دسترسی به اینترنت، وجود ندارد. VoIP همچنین محبوبیت روزافزونی بین علاقه‌مندان بازیهای کامپیوتری به عنوان شکلی از ارتباط بین بازیکنان می‌یابد. محبوبترین برنامه‌های VoIP برای بازیها عبارتند از: Ventrilo و TeamSpeak. Wii، پلی‌استیشن ۳ و ایکس‌باکس ۳۶۰ نیز ویژگی گفتگو با VoIP را عرضه می‌کنند.






انتقال داده

اشتراک فایل نمونه‌ای از انتقال مقادیر بزرگ داده از طریق اینترنت است. یک فایل رایانه‌ای را می‌توان به صورت پیوست نامه الکترونیکی به دوستان و همکاران فرستاد. می‌توان آن را دریک وبگاه ویا اف تی پی سرور(FTP Server) بارگذاری (Upload) نمودتا به آسانی توسط دیگران بارگیری(Download) شود. می‌توان آن را در یک "مکان مشترک" در یک کارسازپرونده(File Server) قرار دارد تا به سرعت و آسانی در اختیار همکاران قرار گیرد. بار سنگین بارگیریهای شمار زیاد کاربران را می‌توان با به کاربردن کارساز(سرور)های آینه و شبکه‌های تظیر-به-نظیر کاهش داد. دسترسی به فایل را می‌توان از طریق تصدیق هویت کاربر کنترل کرد. انتقال فایل بر روی اینترنت را نیز می‌توان با رمزگذاری در پوشش ابهام قرار داد. دستیابی به فایل ممکن است در گرو پرداخت مبلغی باشد که می‌تواند توسط کارت اعتباری پرداخت شود. مبدا و اعتبار فایل از طریق امضای دیجیتال و یا MD۵ و سایر روشهای هضم پیام قابل بررسی است. این ویژگیهای ساده اینترنت در مقیاس جهانی، به تدریج تولید، فروش و توزیع هر چیزی را که قابل ارائه به صورت فایل باشد را تغییر می‌دهد که این چیزها شامل همه انتشارات چاپی، محصولات نرم‌افزاری، اخبار، موسیقی، فیلم، ویدیو، عکاسی، گرافیک و آثار هنری دیگر می‌باشد.

رسانه جریانی(Streaming Media) همان عملی است که بسیاری از پخش کنندگان صدا و سیما، به واسطه آن، برنامه‌های خودرا از طریق اینترنت به صورت زنده پخش می‌کنند.(به عنوان مثال BBC) آنها امکان دیدن برنامه‌های غیر همزمان ضبط شده را نیز به کاربران می‌دهند. گروهی از آنها صرفاً برنامه‌های خود را از طریق اینترنت پخش می‌کنند. این بدین معنی است که یک رایانه می‌تواند به این رسانه‌های برخط، شبیه به همان صورتی که پیش از این تنها از طریق گیرنده‌های رادیو و تلویزیون امکانپذیر بود دست یابد. پادکستها گونه دیگری از پخش اینترنتی هستند که فایل صوتی توسط رایانه بارگیری می‌شود و سپس به یک پخش کننده رسانه قابل حمل منتقل می‌شود تا بتوان بعداً در حرکت بدان گوش داد.

وب بین (Webcam)ها را نیز می‌توان گونه کم هزینه تر رسانه جریانی دانست. اگرچه برخی از وب بین‌ها تصویر با ترخ فریم کامل می‌دهند اما غالباً تصویر کوچک است و به کندی به روز می‌شود. کاربران اینترنت می‌توانند حیواناتی را دریک جنگل افریقایا گزارش تصویری از ترافیک در یک میدان را به صورت زنده و بی درنگ تماشا کنند و یا بر روی دارایی‌های خود از راه دور نیز نظارت بصری داشته باشند. محبوبیت اتاقهای گپ ویدیویی ویا کنفرانس تصویری نیز با افزایش تعداد کاربرانی که وب بین دارند، افزایش می‌یابد. یوتیوب در تاریخ ۱۵ فوریه ۲۰۰۵ ایجاد شد و اکنون وبگاه پیشرو در زمینه ویدیوهای جریانی است. یوتیوب از یک پخش کننده وب برپایه فلش برای پخش ویدیو استفاده می‌کند. کاربران ثبت نام کرده می‌توانند مقدار نامحدودی ویدیو را در این وبگاه بارگذاری کنند و پروفایل شخصی بسازند. یوتیوب ادعا می‌کند که کاربرانش روزانه صدها میلیون ویدیو را بارگذاری و یا تماشا می‌کنند.






دسترسی

رایج‌ترین زبان برای ارتباطات در اینترنت زبان انگلیسی است. این ممکن است ناشی از زادگاه اینترنت و همچنین نقش زبان انگلیسی به عنوان زبان بین‌المللی باشد. ناتوانی رایانه‌های اولیه - که اغلب در امریکا ساخته می‌شدند - در پردازش نویسه (کاراکتر)های به جز گونه انگلیسی الفبای لاتین نیز ممکن است با این موضوع مرتبط باشد. پس از انگلیسی(۲۸٪ از بازدیدکنندگان وب)، پرخواهان ترین زبانها در وب جهان گستر عبارنتد از: چینی ۲۳٪، اسپانیایی ۸٪، ژاپنی ۵٪، پرتغالی و آلمانی (هر کدام ۴٪)، عربی و فرانسه و روسی (هرکدام ۳٪)و کره‌ای ۳٪. بر پایه منطقه، ۴۲٪ از کاربران اینترنت در آسیا، ۲۴٪ در اروپا،۱۴٪ در امریکای شمالی، ۱۰٪ در امریکای لاتین و کارائیب، ۵٪ در آفریقا، ۳٪ در خاورمیانه و ۱٪ در استرالیا/اقیانوسیه. فناوریهای اینترنت در سالهای اخیر بویژه در زمینه استفاده از یونیکد، به حد کافی گسترش یافته‌اند و امکانات مناسبی برای ارتباط در بسیاری از زبانهای دنیا در دسترس می‌باشد، اما همچنان مسائلی مانند موجیباکه (نمایش نادرست برخی نویسه‌های یک زبان) باقی هستند.

روشهای معمول دسترسی به اینترنت در خانه‌ها شامل دسترسی با شماره‌گیری (dial-up)، خطوط زمینی پهن باند(از طریق کابل کواکسیال، فیبر نوری و یا سیم مسی)، وای-فای (Wi-Fi)، ماهواره و فناوری ۳G تلفن همراه می‌باشد. اماکن عمومی که می‌توان در آنها از اینترنت استفاده نمود شامل کتابخانه‌ها و کافی‌نتها که در آنها رایانه‌هایی با اتصال به اینترنت مهیاست. همچنین کیوسکهای اینترنت در بسیاری از اماکن عمومی مانند سالن فرودگاه و کافی شاپها موجودند که بعضی از آنها برای استفاده‌های کوتاه و سرپایی در نظرگرفته شده‌اند. واژه‌های گوناگونی برای نامیدن این ترمینالها به کار می‌رودف از جمله: کیوسک عمومی اینترنت و یا پایانه دسترسی عمومی.

این ترمینالها به گستردگی برای کاربردهایی چون رزرو بلیط، سپرده گذاری بانکی، پرداخت برخط مورد استفاده قرار می‌گیرد. وای-فای(Wi-Fi) دسترسی بی سیم به شبکه‌های رایانه‌ای و در نتیجه به اینترنت را فراهم می‌کند. نقاط داغ (Hotspots) به مکانهایی گفته می‌شود که دسترسی به اینترنت بی سیم در آن نقاط امکانپذیر است و کاربران می‌توانند با لپ تاپ و یا دستیار دیجیتال شخصی(PDA) خود به اینترنت متصل شوند. گاهی این سرویس‌های بیسیم برای عموم و یا حداقل برای مشتریان رایگان ارائه می‌شود. یک نقطه داغ محدوده مکانی مشخصی را شامل می‌شود مثل محوطه یک دانشگاه، پارک و یا حتی سراسر نقاط یک شهر. سرویسهای تجاری Wi-Fi که کل شهر را پوشش می‌دهند هم اکنون در شهرهای لندن، وین، تورنتو، سانفرانسیسکو، فیلادلفیا، شیکاگو و پیتسبورگ ارائه می‌شوند. در این شهرها مشترکین می‌توانند در هر نقطه‌ای از شهر به شبکه وای-فای متصل شوند. علاوه بر وای-فای، آزمایشهایی نیز در زمینه شبکه‌های بی سیم متحرک اختصاصی مانن ریکوچت و سرویسهای داده‌ای پرسرعت بر روی تلفنهای همراه، و شبکه‌های بی سیم ثابت انجام شده‌است. تلفنهای همراه پیشرفته مثل تلفن‌های همراه هوشمند (Smartphone) همگی با قابلیت اتصال به اینترنت از طریق شبکه تلفن عرضه می‌شوند. مرورگرهای وب مثل اپرا معمولاً نسخه‌ای برای این دستگاههای جیبی پیشرفته دارند.






آثار اجتماعی

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

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

اینترنت کاربرد جدیدی به عنوان بک ابزار سیاسی یافته‌است مه این منجر به سانسوراینترنت می‌شود. نمونه استفاده سیاسی از اینترنت، مبارزه انتخاباتی هاوارد دین در سال ۲۰۰۴ در ایالات متحده بود که به دلیل جمع‌آوری کمکهای مردمی از طریق اینترنت شایان توجه بود. بسیاری از گروههای سیاسی از اینترنت برای سازماندهی در انجام ماموریت خود استفاده می‌کنند. برخی از دولتها مانند ایران، کره شمالی، میانمار، چین وعربستان، آنچه را که مردم می‌توانند از طرق اینترنت ببینند، به ویژه در مورد مسایل سیاسی و مذهبی محدود می‌نمایند. این کار از طریق نرم‌افزارهایی که دامنه و محتوا را فیلتر می‌کنند صورت می‌پذیرد. در نروژ، دانمارک، فنلاند و سوئد، ارائه دهندگان اصلی خدمات اینترنت به صورت داوطلبانه و احتمالاً برای اجتناب از قانون شدن فیلترینگ، قبول کرده‌اند که دسترسی به سایتهایی که توسط مقامات مسوول لیست شده‌است را محدود نمایند. اگرچه قرار بر این است که این آدرسهای ممنوع شده تنها شامل وبگاههای هرزه نگاری کودکان باشد، اما محتوای این لیست مخفی است.در بسیاری از کشورها مانند ایالات متحده امریکا، اگرپه قوانینی در ممنوعیت پخش موارد دربردارنده هرزه نگاری کودک تصویب نموده‌اند اما استفاده از نرم افرارهای فیلترینگ را اجباری نکرده‌اند. نرم‌افزارهای تجاری و یا رایگان بسیاری تحت عنوان نرم‌افزار کنترل محتوا در دسترس هستند که کاربران از طریق آنها می‌توانند وبگاههای مستهجن را در رایانه شخصی و یا شبکه محلی مسدود نمود تا از دسترسی کودکان به مواد هرزه نگاری و یا خشونت نگاری جلو گیری نمود.

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

یکی از فعالیتهای تفریحی اصلی در اینترنت، بازیهای چند نفره است. این شکل تفریح اجتماعاتی را بوجود می‌آورد که در آن افراد از هر سن و نژادی از دنیای بازیهای چندنفره کامپیوتری لذت می‌برند. اگرچه بازیهای برخط از سال ۱۹۷۰ وجود داشته‌اند، اما گونه مدرن این بازیها با خدمات اشتراکی مانند گیم‌اسپای و MPlayer آغاز شد. غیر مشترکین محدود به بازیهای خاص و یا زمان بازی خاص بودند. بسیاری از مردم از اینترنت برای دسترسی و بارگیری(download) موسیقی و فیلم و سایر آثار استفاده می‌کنند. این خدمات به هر دو صورت رایگان و پولی، با استفاده ازسرورهای مرکزی و یا فناوریهای نظیر-به-نظیر توزیع شده ارائه می‌شوند. برخی از این منابع توجه بیشتری نسبت به سایرین در زمینه حقوق مولفین اصلی نشان دادهاند.

بسیاری از مردم از اینترنت برای دسترسی به اخبار، پیش بینی آب وهوا، گزارشهای ورزشی و جستجوی مطالب در مورد علاقه‌مندیهای خود استفاده می‌کنند. آنها از گپ برخط، پیام رسان فوری و پست الکترونیک برای در تماس بودن با دوستان خود در سراسر دنیا و به شیوه‌ای شبیه به دوست مکاتبه‌ای که در قدیم رواج داشت، استفاده می‌کنند. اینترنت شاهد شمار رو به افزایش میزکارهای وب که در آن کاربران به فایلها و تنظیمات خود دسترسی پیدا می‌کنند، بوده‌است."کم‌کاری سایبری" (Cyberslacking) محل اتلاف جدی منابع سازمانهاست. کارمندان انگلیسی به طور میانگین ۵۷٪ از وقت خود را به وب گردی در حین کار می‌پردازند..

ارتباط اينترنتي ظاهراً مجال و امكان بيشتري به سوءِ تعبير، ابهام و اشتباه و سوءِ استفاده مي دهد تا شكل هاي سنتي تر ارتباطات:
اين مسئله در بطن ماهيت ارتباط انساني نهفته است. ما تصور مي كنيم كه ارتباط انساني محصول ذهن است، اما پيكر ها هستند كه اين كار را انجام مي دهند: چهره ها تكان مي خورند، صداها به ارتعاش در مي آيند، پيكرها مي جنبند، دست ها ادا و اشاره مي كنند... در اينترنت ذهن حضور دارد اما بدن غايب است. گيرندگان پيام ها هيچ سرنخي براي درك و شناخت شخصيت و خلق و خوي فرستنده ندارند، و فقط مي توانند حدس بزنند كه چرا اين پيام فرستاده شده، معناي آن چيست و چه پاسخي بايد به آن داد. اعتماد عملا از صحنه خارج مي شود. اين كار مالامال از بيم و خطر است. (Locke 2000)






تاثیرات ذهنی

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

استیون پینکر (به انگلیسی: Steven Pinker)، روانشناس، نظری مخالف دارد. او به این نکته اشاره می‌کند که افراد بر روی آنچه انجام می‌دهند کنترل دارند وبنابراین این پژوهش و استدلال هرگز طبیعت انسان را در نظر نداشته‌است. او می‌گوید "تجربه ظرفیتهای پردازش اطلاعات مغز را عوض نمی‌کند" و ادعا می‌کند که اینترنت باعث باهوشتر شدن انسانها شده‌است.






نکات حقوقی و اخلاقی

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






تاریخ اینترنت

اتحاد جماهیر شوروی آن زمان موشکی با نام «اسپونیک» (Spotnik) را به فضا می‌فرستد و نشان می‌دهد دارای قدرتی است که می‌تواند شبکه‌های ارتباطی آمریکا را توسط موشک‌های بالستیک و دوربرد خود از بین ببرد. آمریکایی‌ها در پاسخگویی به این اقدام روس‌ها، موسسه پروژه‌های تحقیقی پیشرفته “ARPA” را به‌وجود آوردند. هدف از تاسیس چنین موسسه‌ای پژوهش و آزمایش برای پیدا کردن روشی بود که بتوان از طریق خطوط تلفنی، کامپیوترها را به هم مرتبط نمود. به طوری که چندین کاربر بتوانند از یک خط ارتباطی مشترک استفاده کنند. در اصل شبکه‌ای بسازند که در آن داده‌ها به صورت اتوماتیک بین مبدا و مقصد حتی در صورت از بین رفتن بخشی از مسیرها جابه‌جا و منتقل شوند. در اصل هدف “ARPA” ایجاد یک شبکه اینترنتی نبود و فقط یک اقدام احتیاطی در مقابل حمله احتمالی موشک‌های اتمی دوربرد بود. هر چند اکثر دانش امروزی ما درباره شبکه به‌طور مستقیم از طرح آرپانت “ARPPA NET” گرفته شده‌است. شبکه‌ای که همچون یک تار عنکبوت باشد و هر کامپیوتر ان از مسیرهای مختلف بتواند با همتایان خود ارتباط دااشته باشد واگر اگر یک یا چند کامپیوتر روی شبکه یا پیوند بین انها از کار بیفتادبقیه باز هم بتوانستند از مسیرهای تخریب نشده با هم ارتباط بر قرار کنند.

این ماجرا با وجودی که بخشی از حقایق به‌وجود آمدن اینترنت را بیان می‌کند اما نمی‌تواند تمام واقعیات مربوط به آن را تشریح کند. باید بگوییم افراد مختلفی در تشکیل اینترنت سهم داشته‌اند آقای “Paul Baran” یکی از مهمترین آنهاست. آقای باران که در دوران جنگ سرد زندگی می‌کرد می‌دانست که شبکه سراسری تلفن آمریکا توانایی مقابله با حمله اتمی شوروی سابق را ندارد. مثلاً اگر رییس جمهور وقت آمریکا حمله اتمی متقابل را دستور دهد، باید از یک شبکه تلفنی استفاده می‌کرد که قبلاً توسط روس‌ها منهدم شده بود. در نتیجه طرح یک سیستم مقاوم در مقابل حمله اتمی روس‌ها ریخته شد.آقای باران (Baran) تشکیل و تکامل اینترنت را به ساخت یک کلیسا تشبیه کرد و معتقد بود، طی سال‌های اخیر هر کس سنگی به پایه‌ها و سنگ‌های قبلی بنا اضافه می‌کند و انجام هر کاری وابسته به کارهای انجام شده قبلی است. بنابراین نمی‌توان گفت، کدام بخش از کار مهمترین بخش کار بوده‌است و در کل پیدایش اینترنت نتیجه کار و تلاش گروه کثیری از دانشمندان است. داستان پیدایش اینترنت با افسانه و واقعیت در هم آمیخته شده‌است.

در اوایل دهه ۶۰ میلادی آقای باران طی مقالاتی پایه کار اینترنت امروزی را ریخت. اطلاعات و داده‌ها به صورت قطعات و بسته‌های کوچکتری تقسیم و هر بسته با آدرسی که به آن اختصاص داده می‌شود به مقصد خاص خود فرستاده می‌شود. به این ترتیب بسته‌ها مانند نامه‌های پستی می‌توانند از هر مسیری به مقصد برسند. زیرا آنها شامل آدرس فرستنده و گیرنده هستند و در مقصد بسته‌ها مجدداً یکپارچه می‌شوند و به صورت یک اطلاعات کامل درمی‌آیند.

آقای باران (Baran) طی مقالاتی اینچنینی ساختمان و ساختار اینترنت را پیش‌گویی کرد. او از کار سلول‌های مغزی انسان به عنوان الگو استفاده کرد، او معتقد بود: وقتی سلول‌های مغزی از بین بروند، شبکه عصبی از آنها دیگر استفاده نمی‌کند و مسیر دیگری را در مغز انتخاب می‌کند. از دیدگاه وی این امکان وجود دارد که شبکه‌ای با تعداد زیادی اتصالات برای تکرار ایجاد شوند تا در صورت نابودی بخشی از آن، همچنان به صورت مجموعه‌ای به هم پیوسته کار کند. تا نیمه دهه ۶۰ میلادی کسی به نظرات او توجه‌ای نکرد. تا اینکه در سال ۱۹۶۵ نیروی هوایی آمریکا و«آزمایشگاه‌های بل» به نظرات او علاقه‌مند شدند و پنتاگون با سرمایه‌گذاری در طراحی و ساخت شبکه‌ای براساس نظریات او موافقت کرد.

ولی آقای باران (Baran) بنابر دلایلی حاضر با همکاری با نیروی هوایی آمریکا نشد. در این میان دانشمندی با نام تیلور (Tailon) وارد موسسه آرپا (ARPA) شد. او مستقیماً به آقای هرتسفلد رییس موسسه پیشنهاد کرد: (ARPA) آرپا هزینه ایجاد یک شبکه آزمایشی کوچک با حداقل چهار گره را تامین کند که بودجه آن بالغ بر یک میلیون دلار می‌شد. با این پیشنهاد تیلور تجربه‌ای را آغاز کرد که منجر به پیدایش اینترنت امروزی شد. او موفق شد در سال ۱۹۶۶، دو کامپیوتر را در شرق و غرب آمریکا به هم متصل کند. با این اتصال انقلابی در نحوه صدور اطلاعات در دنیای ارتباطات رخ داد که نتیجه آن را امروز همگی شاهد هستیم. این شبکه به بسته‌هایی (packet) از داده‌ها که به وسیله کامپیوترهای مختلف ارسال می‌شدند اتکا داشت. پس از انکه ازمایشها سودمندی انرا مشخص کردند سایر بخش‌های دولتی و دانشگاهها پژوهشی تمایل خود را به وصل شدن به ان اعلام کردند . ارتباطات الکترونیکی به صورت روشی موثر برای دانشمندان و دیگران به منظور استفاده مشترک از داده‌ها در امد. در همان زمان که ARPAnet در حال رشد بود تعدادی شبکه پوشش محلی (LAN) در نقاط مختلف آمریکا به وجود امد. مدیران LANها نیز به وصل کردن کامپیوترهای شبکه‌های خود به شبکه‌های بزرگتر اقدام کردند . پروتوکل اینترنت ARPAnet IP زبان استاندارد حکمفرما برای برقراری ارتباط کامپیوترهای شبکه‌های مختلف به یکدیگر شد.تاریخ تولد اینترنت به طور رسمی اول سپتامبر ۱۹۶۹ اعلام شده‌است. زیرا که اولین “IMP” در دانشگاه “UCLA” واقع در سانتاباربارا در این تاریخ بارگذاری شده‌است.

از اوایل دهه ۱۹۹۰ رشد استفاده از اینترنت به صورت تصاعدی افزایش یافت . یکی از علل چنین استقبالی ابزار جستجویی مانند Gopher و archie بوده‌است اما اینها در سال ۱۹۹۱ تحت تاثیر word wide web قرار گرفتند که به وسیله CERN یا ازمایشگاه فیزیک هسته‌ای اروپا ساخته شد . با ان که اینترنت از ابتدا طوری بود که مبادله اطلاعات برای تازه واردان بسیار ساده باشد. بزرگترین جهش در وب در سال ۱۹۹۳ با عرضه نرم‌افزار موزاییک mosaic که نخستین برنامه مرورگر وب گرافیکی بود به وجود امد. برنامه موزاییک محصول تلاش دانشجویان و استادان بخش "مرکز ملی کاربردهای ابر کامپیوتر " در دانشگاه ایلینویز آمریکا بود. برای نخستین بار موزاییک امکانات اشاره و کلیک (به وسیله موش) را فراهم کرد. کاربران می‌توانستند صفحات وب (web page) یا مجموعه‌ای از متن و گرافیک را کنار هم بگذارند تا هر کسی که میخواست انها را بتواند روی اینترنت ببیند. وقتی با موش روی کلمه‌ها یا تصاویر خاصی که hyper link نامیده می‌شد کلیک می‌کردند برنامه موزاییک به طور خود کار یک صفحه دیگر باز می‌کرد که به کلمه یا تصویر خاص و کلیک شده اختصاص داشت. بهترین بخش این سیستم انجا بود که hyper linkها می‌توانستند به صفحاتی روی همان کامپیوتر یا هر کامپیوتر دیگر اینترنت با خدمات وب اشاره کنند. صفحات وب هر روز متولد می‌شدند و مفهوم موج سواری یا surfing روی وب متولد شد. اواسط سال ۱۹۹۴ سه میلیون کامپیوتر به اینترنت وصل شده بود و در ان هنگام اجرای عملیات اهسته نشده بود. صفحات جدید وب که شامل همه چیز از اسناد دولتی تا مدارک شرکت‌ها و مدل‌های جدید لباس بود در سراسر دنیا چندین برابر شد . موزاییک و جانشینان ان مانند navigator محصول شرکت " نت اسکیپ " اینترنت را از قلمرو علمی به میان مردم اوردند. طبق اخرین امار ۵۱ درصد کاربران بعد از سال ۱۹۹۵ وارد این محیط شده‌اند. میلیون‌ها انسانی که از اینترنت استفاده می‌کنند نیازی ندارند که نکات فنی مانند TCP/IP را بدانند . امروزه شرکتهای خدمات دهنده اینترنت یا ISP این کار را به عهده دارند.رشد روز افزون ان و ساده تر شدن استفاده ان همچنان ادامه دارد . هر چه تعداد مردم بیشتری به اینترنت رجوع کنند تعداد شرکت‌های سازنده برنامه‌های اینترنت بیشتر می‌شود.با انکه بعضی از عاشقان اینترنت ان را نوعی شیوه زندگی می‌دانند. در نظر بیشتر کاربران منبع سرگرمی اطلاعات است ولی بیشترین مصرف ان پست الکترونیکی یا همان email است که یکی از ابزارهای ارتباطی کار امد به شمار می‌رود. پیامها از کامپیوتری به کامپیوتر دیگر با سرعت پرواز می‌کنند و منتظر میمانند تا شخص فرصت خواندن انها را پیدا کند . وب امکانات خوبی برای کپی از نرم‌افزارهای مجاز از لحاظ کپی فراهم میسازد. وقتی که می‌بینیم که در مدت کوتاهی اینترنت به چنین رشدی نایل آمده است، مطمئناً دشوار خواهد بود که آینده او را پیش بینی کنیم. طبق نظر کارشناسان ماهانه ۱۰ درصد به تعداد کاربران اینترنت افزوده می‌شود ولی تعداد دقیق کاربران که روزانه از آن استفاده می‌کنند مشخص نیست. هرچند که پاره‌ای از کارشناسان تعداد آنها را تا ۹۰۰ میلیون نفر حدس می‌زنند. تعداد رسمی کاربران اینترنتی را در سال ۲۰۰۰ کارشناسان ۵۰۰ میلیون نفر اعلام کرده بودند.

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







مرورگر وب

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

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

در نوامبر ۲۰۱۰ اینترنت اکسپلورر، موزیلا فایرفاکس و گوگل کروم به ترتیب بیشترین سهم را در بازار مرورگرهای اینترنت داشته‌اند.






تاریخچه

اولین مرورگر وب در سال 1990 و توسط Tim Berners-Lee اختراع شد به نام مرورگر WorldWideWeb که نام آن بعدها به Nexus تغییر کرد. در سال 1993Mark Andreessen مخترع Netscape دست به نو آوری و ایجاد تغییراتی در مرورگرها زد، او با انتشار Mosaic (بعدها Netscape) اولین مرورگر محبوب در سراسر جهان که استفاده از تار جهان گستر را آسان تر و دسترسی مردم معمولی را با آن نیز ممکن ساخت و همچنین اولین مرورگر گرافیکی جهان بود انقلابی در روش استفاده از وب را به وجود آورد. او بعدها شرکت خود را به نام Netscape افتتاح کرد و در سال 1994 مرورگر Netscape Navigator را عرضه کرد که سریعا به محبوب ترین مرورگر جهان تبدیل شد. در سال 1995 مایکروسافت با عرضه Internet Explorer نخستین قدم را در رقابت مرورگرها برداشت و در سال 2002 با 95% تعداد کاربر تبدیل به محبوب ترین مرورگر جهان شد.

در سالهای بعد با عرضه دیگر مرورگر ها این رقابت ها جدی تر شد و کارزاری با نام جنگ مرورگرها شکل گرفت.






اینترنت اکسپلورر
ویندوز اینترنت اکسپلورر (به انگلیسی: Windows Internet Explorer) مرورگر وب مایکروسافت و پراستفاده‌ترین مرورگر در میان کاربران است. این مرورگر به طور پیش فرض همراه با سیستم‌عامل ویندوز نصب می‌شود (ویندوز ۹۸ و نسخه‌های جدید تر ویندوز).






میزان گستردگی استفاده از اینترنت اکسپلورر

این امار میزان استفاده از اکسپلورر در پی سی ها را نشان می دهد. (شامل تبلت ها و تلفن های هوشمند نمی‌شود.)






گذشته

پروژه اینترنت اکسپلورر تابستان ۱۹۹۴ بوسیله Thomas Reardon آغاز شد.







فایرفاکس

موزیلا فایرفاکس (به انگلیسی: Mozilla Firefox) (به فارسی: روباه آتشین موزیلا) (مخفف شده آن به صورت رسمی Fx، اما به‌صورت غیررسمی FF) مرورگر وب آزاد و متن‌باز برگرفته از موزیلا اپلیکیشن سویت است که توسط بنیاد موزیلا اداره می‌شود. بر اساس آمار در ماه می ۲۰۱۴، این مرورگر ۲۴٫۹٪ از کاربران اینترنت را به خود اختصاص داده است.

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

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

در طی مدت‌های گذشته برنامه موزیلا در مدت‌های طولانی نسخه فینال را توزیع می‌کرد اما امروزه با تاخیر سیاست‌های بنیان‌گذار آن یعنی موزیلا، نسخه‌های فینال به‌زودی عرضه می‌شوند و مشکلات سریع‌تر برطرف می‌شوند.






ویژگی‌ها

این برنامه ویژگی‌های بسیاری دارد. با گسترش وب و اهمیت بحث تبلیغات طراحان به فکر ایجاد صفحاتی افتادند که بدون خواست کاربر گشوده شوند. با استفاده از امکان pop-up blocker موزیلا، این صفحات امکان ایجاد مزاحمت را ندارند. این گزینه برای مرورگر قابل تنظیم است.

یکی از ویژگی‌های موزیلا فایرفاکس امکان گشودن چند صفحه در یک پنجره (tabbed browsing) و کشیدن و رها کردن (drag-and-drop) مکان تب‌ها است.

قابلیت RSS قوی این مرورگر، امکان پاک کردن آسان اطلاعات شخصی، امکان کشیدن و رها کردن متن به باکس جستجو، حمایت از SVG و CSS2 و CSS3 و JavaScript، حمایت از صفحات طراحی‌شده با فناوری نوین ای‌جکس (AJAX)، حمایت از قابلیت‌های ویژهٔ CMSهای رایج، همکاری گسترده با شرکت‌های بزرگ مانند eBay و موتورهای جستجوی یاهو و گوگل و ده‌ها قابلیت سازگارانهٔ دیگر، موزیلا را از جمع مرورگرهای غیرحرفه‌ای جدا کرده و باوجود سادگی و محیط دوست‌داشتنی، آن را به یکی از Browserهای پیشرفته بدل می‌کند. افزونه‌های مورد نیاز نصب شده و در حالت عادی غیرفعال است

اضافه شدن افزونه one-time
اضافه شدن نوار جستجوی توییتر Twitter
اولویت‌بندی جدید برای تقاضا در بازشدن زبانه‌های جدید
بهبود در اجرای مرورگر با سرعت فوق‌العاده
بهبود در عملکرد و در هنگام استفاده از عناصر آهنگ‌ها ویدیوها
پشتیبانی CORS در دامنه‌های WebGL
پشتیبانی از منوهای HTML5
پشتیبانی برای insertAdjacentHTML
بهبود و پشتیبانی برای نوشتن در زبان CSS و بسیاری زبان‌های دیگر
پشتیبانی پیشرفته WebSocket
افزایش امنیت
افزایش سرعت بارگذاری Java
افزوده شدن صفحه New Tabs







توانایی سفارشی‌سازی

یکی از قابلیت‌های فایرفاکس امکان تغییر آن به مرورگری برای سلیقه هر فرد است. برای این کار فایرفاکس دو مورد را در نظر گرفته است. اول توانایی‌های مرورگر، دوم ظاهر آن.

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






مشکلات فایرفاکس

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

یکی از مشکلات دیگری هم که به فایرفاکس نسبت داده می‌شود مشکلاتی است که توسط پلاگین فلش (Macromedia Flash) ایجاد می‌شود که برای لینوکس نوشته‌شده که این مشکل ارتباطی به خود فایرفاکس ندارد.






پیکربندی

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

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

برای دسترسی به پیکربندی فایرفاکس در نوار نشانی این عبارت را وارد کنید: about:config

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

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

وب‌سایت PortableApps.com، فایرفاکس قابل حمل را عرضه می‌کند. این نسخه قابلیت اجراشدن روی درایوهای USB Flash و CD-ROM و همچنین درایوهای سخت خارجی و بعضی از پخش‌کننده‌های دیجیتالی موسیقی را دارد.







گوگل کروم

گوگل کروم (به انگلیسی: Google Chrome) یک مرورگر وب رایگان است که در ۲ سپتامبر ۲۰۰۸ (۱۲ شهریور ۱۳۸۷) توسط شرکت گوگل بر پایهٔ پروژهٔ کرومیوم عرضه شد. در ابتدا نسخهٔ آزمایشی آن برای کاربران نرم‌افزار سیستم‌عامل ویندوز در یک‌صد کشور جهان عرضه شد ولی گوگل اعلام کرد که نسخه‌های منطبق با سیستم‌عامل گنو/لینوکس و رایانهٔ اپل مکینتاش آن هم در آینده توزیع خواهد شد. موتور این مرورگر نرم‌افزار آزاد وب‌کیت (به انگلیسی: WebKit) است. از امکانات و قابلیت‌های آن می‌توان به Tabbed browsing، و امکاناتی مشابه Privacy در سافاری و Speed Dial در مرورگر اپرا اشاره نمود.

در سپتامبر ۲۰۰۸ گوگل بخش زیادی از کد منبع کروم شامل، موتور جاوااسکریپت وی۸ را با نام کرومیم در اختیار عموم قرار داد. این کار باعث شد که دیگران بتوانند کد را مطالعه کنند و کمک کنند تا این مرورگر برای سیستم عامل لینوکس و مک نیز قابل استفاده شود.






امکانات

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







سافاری

در گردشگری، سفری که با هدف دیدن و تهیهٔ فیلم و عکس از جانوران بزرگ‌جثهٔ حیات وحش انجام می‌شود را سافاری (safari) می‌گویند. فرهنگستان زبان فارسی برای سافاری واژه وحش‌گشت را نیز پیشنهاد کرده‌است.

به طور سنتی، معمولاً از سافاری به عنوان تورهای بیابان‌گردی و دشت‌گردی در آفریقا یاد می‌شود و بنیان‌گذاران غربی این تورها برای نامیدن این تورها از واژه عربی سفر که در زبان‌های آفریقایی به صورت سافاری تلفظ می‌شود استفاده کرده‌آند.

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







اپرا

اُپرا (به انگلیسی: Opera) یک مرورگر وب رایگان و متن‌بسته وب و نرم‌افزاری اینترنتی با دارا بودن حدود دو درصد کاربران اینترنت است که شرکت نرم‌افزاری اپرا آن را توسعه داده‌است. این مرورگر برای کاربری‌های عمومی اینترنتی نظیر نمایش وبسایت‌ها، دریافت و ارسال نامه‌های الکترونیکی، مدیریت ارتباطات، گفتگوی برخط آی‌آرسی، بارگذاری از طریق پروتکل بیت‌تورنت و خواندن فیدهای وب مورد استفاده قرار می‌گیرد. اپرا برای کاربرد برروی رایانه‌های شخصی، تلفن‌های همراه و تبلت‌ها به طور رایگان عرضه می‌گردد.

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

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






تاریخچه

اپرا به صورت یک پروژه تحقیقاتی در شرکت تله‌نور، بزرگترین شرکت ارتباطی نروژی، پا به عرصه وجود گذاشت. در سال ۱۹۹۵ (میلادی)، شرکتی مخصوص برای توسعه اپرا به نام اپرا سافتور ASA تاسیس شد. اپرا اولین در سال ۱۹۹۶ به صورت عمومی منتشر شد و اولین نسخه عمومی آن هم ۲٫۰ بود که فقط بر روی مایکروسافت ویندوز اجرا می‌شد. در سال ۱۹۹۸ پروژه‌ای برای پورت کردن اپرا به دستگاه‌های موبایل به منظور کسب درآمد در بازار نوظهور این نوع دستگاه‌ها، بنیان نهاده شد. نسخه ۴٫۰ که در سال ۲۰۰۰ (میلادی) منتشر شد، حاوی یک هستهٔ چندسکویی جدید بود که کار پورت کردن اپرا به سیستم‌عامل‌ها و سکوهای سخت‌افزاری مختلف را تسهیل می‌کرد.

تا این لحظه، اپرا یک نرم‌افزار مشروط بود و کاربران باید پس از دوره آزمایشی، نسخه کامل آن را خریداری می‌کردند. نسخه ۵٫۰ که در سال ۲۰۰۰ منتشر شد، دیگر یک نرم‌افزار مشروط نبود و پروژه اپرا سیاست جدیدی برای کسب درآمد از این مرورگر را اتخاذ کرده بود. این سیاست جدید ایت بود که اپرا تبدیل به یک آگهی‌افزار شود و برای کاربرانی که برای استفاده از آن هزینه نکرده‌اند، تبلیغات نمایش داده شود. در نسخه‌های بعدی اپرا، این امکان برای کاربران فراهم شد تا بین دیدن بنرهای تبلیغاتی یا دیدن تبلیغات متنی از طرف گوگل، یکی را انتخاب کنند. از نسخه ۸٫۵ که در سال ۲۰۰۵ (میلادی) منتشر شد، تبلیغات به صورت کامل از اپرا حذف شد و شرکت گوگل تبدیل به حامی مالی اصلی این پروژه شد (که در عوض، پروژه اپرا قبول کرده بود که موتور جستجوی گوگل، موتور جستجوی پیشفرض در اپرا باشد)

نسخه ۹٫۱ که در سال ۲۰۰۶ (میلادی) منتشر شد، علاوه بر داشتن تعدادی قابلیت جدید گوناگون، مجهز به قابلیتی بود که به موجب آن، کاربر را در برابر صفحات جعلی و کلاهبرداری اینترنتی محافظت می‌کرد. این کار با استفاده از فناوری‌هایی صورت می‌گرفت که از طرف GeoTrust (ارائه‌کننده گواهینامه دیجیتالی) و PhishTank (سازمانی که وبگاه‌های فیشینگ شناخته‌شده را پیگیری می‌کرد) تامین شده بودند. در نسخه ۹٫۵ وقتی که Netcraft جای GeoTrust را گرفت و برای محافظت در برابر بدافزارها هم از Haute Secure استفاده شد، این قابلیت بهینه شد و گسترش پیدا کرد.

همچنین در سال ۲۰۰۶ (میلادی)، Opera Software ASA برنامه Internet Channel و Nintendo DS Browser را برای کنسول‌های بازی نینتندو دی‌اس و Wii منتشر کرد.

یک موتور جاوااسکریپت جدید به نام Carakan، که نامش از الفبای ژاپنی گرفته شده بود، در نسخه ۱۰٫۵۰ معرفی شد. بر طبق گفته اپرا سافتور، کاراکان اپرا ۱۰٫۵۰ را هفت برابر سریع‌تر از اپرا ۱۰٫۱۰ می‌ساخت. در ۱۶ دسامبر ۲۰۱۰، نسخه ۱۱ از مرورگر اپرا منتشر شد که دارای قابلیت افزونه‌ها، زبانه‌های پشته‌ای، حرکات تصویری ماوس، و تغییراتی در نوار آدرس بود. نسخه ۱۲ هم در ۱۴ ژوئن ۲۰۱۲ منتشر شد.

در ۱۲ فوریه ۲۰۱۳، اپرا خبر داد که قصد دارد موتور پرستو را کنار گذاشته و با استفاده از کدهای پروژه کرومیوم، از موتور وب‌کیت که در مرورگر کروم شرکت گوگل بکار رفته، استفاده کند. همچنین اپرا سافتور طرحی ریخته بود تا کدهایی را به وب‌کیت اهدا کن. در ۳ آوریل ۲۰۱۳، گوگل اعلام کرد که برخی از اجزای وب‌کیت را منشعب خواهد کرد تا یک موتور چیدمان جدید به نام بلینک بوجود آورد؛ در همان روز، اپرا تایید که کرد که این پروژه هم در پیاده‌سازی بلینک، تابع گوگل خواهد بود.

در ۲۸ می ۲۰۱۳، یک نسخه بتا از اپرا ۱۵ در دسترس قرار گرفت که اولین نسخهٔ مبتنی بر پروژه کرومیوم بود. بسیاری از قابلیت‌های شاخص نسخه‌های قبلی حذف شده بودند، و Opera Mail هم به صورت یک برنامه مجزا که از اپرا ۱۲ مشتق شده بود، درآمد.






ویژگی‌ها

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

Opera Turbo: که با فشرده سازی صفحات و تصاویر به میزان ۲، ۳ یا ۴ برابر (بسته به سرعت اتصال اینرنت) سرعت بارگذاری صفحات وب را تا چندین برابر بالا می‌برد.
Opera Unite: برای اشتراک گذاری فایلهای دلخواه خود روی شبکه اینترنت، بدون نیاز به آپلود آنها در سایتهای دیگر
Opera Link: برای هماهنگی سریع اطلاعات مرورگر خودتان روی اپرای دیگر یا رایانه دیگر
Private browsing: برای مرور کردن کاملاً ایمن صفحات اینترنت بدون برجای ماندن رد پا روی رایانه (نسخه ۱۰/۵۰)
Opera extensions: افزونه‌های مرورگر اپرا که از نسخه ۱۱ به بعد به این مرورگر افزوده شده‌است.
Opera Mail: این قابلیت یکی از بهترین قابلیت‌ها و ویژگی‌هایی استکه به این مرورگر نسبت به دیگر مرورگرها برتری می‌بخشد. با استفاده از این قابلیت می‌توان در فید سایت‌ها و وبلاگ‌ها مشترک شد و از بروزرسانی آنها مطلع شد. همچنین این فید خوان قابلیت پوشه سازی و دسته بندی نیز دارد.
Speed Dial: امکان دسترسی سریع به سایت‌های از پیش تعیین شده در Tab جدید.
Mouse Gestures: انجام فرمان‌های رایج در مرورگر مانند بازکردن Tab جدید و بازگشت به صفحه قبل، با نگه داشتن کلید راست موس و حرکت دادن موس به جهت‌های تعیین شده.
Extensions: جایگزینی برای Widgetهای اپرا است که عملکردی مانند افزونه‌های فایرفاکس دارد.









سی‌مانکی

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

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






تاریخچه

با پایان توسعهٔ مجموعه نرم‌افزار اینترنتی موزیلا توسط بنیاد موزیلا و تمرکز این بنیاد بر دو برنامهٔ مجزای فایرفاکس و تاندربرد پاسخگویی به نیاز برای یک مجموعه نرم‌افزار اینترنتی توسط بنیاد به انجمن سی‌مانکی سپرده شد. بدین ترتیب شورای شامل فلیپت چیی, کارستن دووسترلوه, ینس هاتلاک، ربرت کایزر, یان نیل, نیل راش‌بروک, اندرو شولتز و جاستین وود تشکیل شد و در ۱۵ سپتامبر ۲۰۰۵ ویرایش ۱٫۰ الفا را عرضه نمود.






نام

هرچند نام سی‌مانکی پیش از این در قالب نام‌کد (به انگلیسی: code name) و با نگارشی از حروف کوچک برای برنامه منتشر نشدهٔ (به انگلیسی: Netscape Communicator 5) و نیز مجموعه نرم‌افزار اینترنتی موزیلا توسط موزیلا استفاده شده بود اما جایگزین نام نه چندان مناسب (به انگلیسی: ButtMonkey) گشت.

این مرورگر در ذیل توزیع لینوکس دبیان با نام (به انگلیسی: ICEAPE) عرضه می‌گردد.






ساختار

مجموعه نرم‌افزار اینترنتی سی‌مانکی شامل ۴ مجموعه‌است.






هدایتگر سی‌مانکی

هدایتگر سی‌مانکی (به انگلیسی: SeaMonkey Navigator)، مرورگر این مجموعه نرم‌افزاری است که برامدی از مرورگر نت‌اسکیپ می‌باشد و در حال حاضر از گکو ۱۲ استفاده می‌کند.






گیرنده پست الکترونیکی و خبرخوان

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






تدوین‌گر سی‌مانکی

برنامه تدوین‌گر سی‌مانکی (به انگلیسی: SeaMonkey Composer) تدوین‌گر HTML است که برای توسعه‌دهندگان در نظر گرفته شده‌است.






کلاینت گپ IRC

کلاینت گپ‌اینترنتی چتزیلا یکی از برنامه‌های تشکیل دهندهٔ مجموعه نرم‌افزار اینترنتی است که برای استفاده از کانال‌های اینترنتی در نظر گرفته شده و به صورت پیشفرض کانال موزیلا را با خود دارد.







لینکس

لینکس (به انگلیسی: Lynx) مرورگری مبتنی بر متن است که برای محیط‌های متنی که بتوان نشانگر مکان‌نما را آدرس‌دهی کرد قابل استفاده است. این مرورگر بیشتر بین کاربران لینوکس رواج دارد گرچه نسخه‌های ویندوز و مک‌اواس آن نیز وجود دارد. این نرم‌افزار تحت اجازه‌نامه جی‌پی‌ال قابل دریافت و استفاده است. لینکس قدیمی‌ترین مرورگری‌است که هنوز به طور گسترده در حال استفاده‌است.






آوانت

آوانت (به انگلیسی Avant Browser) مرورگر رایگانی که بر پایه هسته اینترنت اکسپلورر عمل می‌کند. این مرورگر بر روی ویندوزهای ۲۰۰۰، ایکس پی، ویستا و 7 قابل نصب بوده و برای عملکرد بهتر مرورگر باید اینترنت اکسپلورر ۶، ۷ و یا ۸ بر روی رایانه نصب شده باشد.

بنا بر آمار پایگاه CNET تا دسامبر سال ۲۰۰۹ بیش از ۲۵ میلیون بار نسخه‌های مختلف آن دانلود شده‌است.






قابلیت‌ها

برخی از قابلیتهای این مرورگر به شرح ذیل می‌باشد .






۱-مسدود کننده فایلهای فلش

این ویژگی کاربر را قادر می‌سازد تا به راحتی از بارگیری فایلهای فلش تبلیغاتی بر روی رایانه جلوگیری شود که این امر بر سرعت بازشدن صفحات اثر می‌گذارد.






۲-مسدود کننده صفحات Pop-Up

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






۳-ویژگیهای عملکردی موشواره

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






4-پرکردن خودکار یا AutoFill

این ویژگی باعث می‌شود که پسورد سایتها ذخیره شده و تنها با یک کلیک به راحتی بتوان از آنها استفاده نمود.






5-حالت تمام صفحه یا Real Full Screen Mode

با فشردن کلید F12 به حالت تمام صفحه تبدیل و نوارهای بالا و پایین مرورگر ناپدید می‌شود .






مکستون

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

وب افزارماکستون یکی از برندگان جایزهٔ ۱۰۰ پاداش سینت در سالهای ۲۰۰۸ و ۲۰۰۹ بود و در سال ۲۰۱۱ ماکستون رتبهٔ ۹۷ را در لیست بهترین محصولات سال که توسط PCWorld علام می‌شود را به دست اورد.

به گفته مدیر عامل شرکت بین‌المللی ماکستون مینگ جی «جف» چن، ماکستون در اصل توسط چانگیو (Changyou)، یک برنامه نویس چینی که می‌خواست برنامه‌ای برای سفارشی کردن مرورگراینترنت اکسپلورر بسازد طراحی شده‌است. چانگیو در بولتن بورد سیستم کاری خود را قبل از خروج از این پروژه در سال ۲۰۰۰ تغییر داد. چانگیو روش جدیدی برای توسعهٔ این برنامه را در پیش گرفت و در سال ۲۰۰۲ نسخه جدید، MyIE۲ منتشر شد. MyIE۲ به سرعت رشد کرد، با وجود کاربران جدیدی در سراسر جهان به کمک پلاگین‌ها و پوست و با کمک اشکال زدایی‌های پی در پی ماکستون در سال ۲۰۰۳ تا حدود بسیاری دگرگون شد.

در سال ۱۹۹۹، چن مرکز جهانی محدود شدهٔ مایسافت را در هنگ کنگ پایه‌گذاری کرد اما بعدها محل مرکز هنگ گنگ را به پکن تغییر داد. یکی از نخستین سرمایه گذاران این مرکز شرکت اسکایپ بود.

ماکستون یکی از دوازده مرورگر برتر توسط مایکروسافت در سال ۲۰۱۰ در سایت BrowserChoice.eu بود وب سایتی که به کاربران ویندوز مایکروسافت ساکن در منطقه اقتصادی اروپا پیشنهاد می‌دهد که با توجه به نیاز هایشان چه مرورگر وبی برای استفاده‌های انها از اینترنت بهتر است.
2:17 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 در برنامه‌های تعبیه شده و سیستم‌های عامل؛ و بقیه برنامه‌ها معمولاً برای نوشتن انواع دیگر برنامه‌ها کاربرد دارند. روش‌های مختلفی برای سنجش محبوبیت زبان‌ها، هر یک متناسب یا یک ویژگی محوری متفاوت پیشنهاد شده‌است:

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

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

این حقیقت که این دسته بندی ممکن است در راستای محورهای مختلف انجام شوند، این وظیفه را پیچیده تر می‌کند؛ برای مثال، جاوا هم یک زبان شیءگرا(چون به برنامه نویسی شیءگرا تشویق می‌کند) و زبان همزمان(چون ساختارهای داخلی برای اجرای چندین جریان موازی دارد) است. پایتون یک زبان اسکریپتی شیءگراست.

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

یک زبان برنامه نویسی ممکن است با فاکتورهای غیر مرتبط به مثال‌های برنامه نویسی دسته بندی شود. برای مثال، غالب زبان‌های برنامه نویسی کلمات کلیدی زبان انگلیسی را استفاده می‌کنند، در حالیکه تعداد کمی این کار را نمی‌کنند. سایر زبان‌ها ممکن است براساس داخلی بودن یا نبودن دسته بندی شوند.
ساعت : 2:17 pm | نویسنده : admin | تک گرافیک | مطلب قبلی
تک گرافیک | next page | next page