Розробка Web-сайту та бази даних “Інтернет – магазину”

Автор работы: Пользователь скрыл имя, 20 Декабря 2012 в 09:49, дипломная работа

Краткое описание

Мета роботи. Проаналізувати специфіку діяльності Інтернет магазинів, їх відмінності від звичайних магазинів, розглянути сучасні засоби по розробці Інтернет-магазинів та розробити web- сайт „Інтернет-магазин”.
Завдання на дипломну роботу:
1.Здійснити пошук інформації по тематиці дипломної роботи та провести її аналіз та дослідження;
2.Ознайомитись з особливостями Інтернет-магазину, його позитивними та негативними якостями, та визначити їх класифікацію;
3.Розглянути існуючі Інтернет-магазини та вивчити їх принципи побудови та роботи;
4.Розглянути структуру побудови Інтернет-магазинів;
5.Провести маркетингове дослідження та розглянути економічні передумови створення Інтернет-магазину;
6.Розглянути сучасні програмні засоби по розробці Інтернет-магазинів;
7.Розробити Web-сайт та базу даних «Інтернет-магазину».

Вложенные файлы: 1 файл

Diplom (3).doc

— 3.46 Мб (Скачать файл)

Традиційність

Мова РНР здаватиметься  знайомою програмістам, що працюють в  різних областях. Багато конструкцій  мови запозичені з С, Perl. Код РНР дуже схожий на той, який зустрічається в типових програмах на С або Pascal. Це помітно знижує початкові зусилля при вивченні РНР. PHP - мова, що поєднує переваги Perl і С і спеціально спрямована на роботу в Internet, мова з універсальним і зрозумілим синтаксисом. І хоча PHP є досить молодою мовою, вона знайшла таку популярність серед web-програмістів, що на даний момент є мало не найпопулярнішою мовою для створення web-додатків (скриптів).

Наявність вихідного  коду та безкоштовність

Стратегія Open Source, і розповсюдження початкових текстів програм в масах, зробило поза сумнівом благотворний вплив на багато проектів, в першу чергу - Linux хоч і успіх проекту Apache сильно підкріпив позиції прихильників Open Source. Сказане відноситься і до історії створення РНР, оскільки підтримка користувачів зі всього світу виявилася дуже важливим чинником в розвитку проекту РНР. Ухвалення стратегії Open Source і безкоштовне розповсюдження початкових текстів РНР надало неоціниму послугу користувачам. Додатково, чуйне співтовариство користувачів РНР є свого роду колективною службою підтримки, і в популярних електронних конференціях можна знайти відповіді навіть на найскладніші питання.

Ефективність

Ефективність є виключно важливим чинником при програмуванні  для розрахованих на багато користувачів середовищ, до яких належить і web. Важливою перевагою PHP є те, що ця мова належить до інтерпретуючих. Це дозволяє обробляти сценарії з достатньо високою швидкістю. За деякими оцінками, більшість PHP-сценаріїв (особливо не дуже великих розмірів) обробляються швидше за аналогічні їм програми, написані на Perl. Проте, щоб не робили розробники PHP, виконувані файли, що відкомпілювалися, працюватимуть значно швидше - в десятки, а іноді і в сотні разів. Але продуктивність PHP цілком достатня для створення цілком серйозних web-додатків.

Докладний опис мови

З точки зору системи  типізації, PHP є мовою програмування  з динамічною типізацією. Немає необхідності явного визначення типу змінних, хоча така можливість існує. В разі звернення  до змінної, інтерпретатор PHP трактує її тип відповідно до контексту. За необхідності можливе приведення змінної до певного типу за допомогою відповідних конструкцій мови. Це може знадобитись, якщо зважити, що значення змінної можуть трактуватись по-різному в залежності від її типу. Також можливе визначення типу відповідної змінної на певному етапі виконання сценарію. Імена змінних чутливі до регістру символів.

До базових типів  належать булеві дані, цілі та дійсні числа  із плаваючою комою, а також стрічки. Булеві дані виражають істинність значення. Цілі числа можуть бути подані у вісімковому, десятковому та шістнадцятковому вигляді. Розмір цілого числа може змінюватись залежно від платформи, як правило, розрядність становить 32 біти. PHP не підтримує беззнакові цілі числа. Дійсні числа із плаваючою комою можуть бути подані в десятковій або експоненційній формі.

Робота з  рядками

Стрічки розділяють на два  класи - стрічки, що підлягають аналізу, та стрічки, що не підлягають аналізу. Перший клас досліджується інтерпретатором на наявність посилань на інші змінні і за умови їх наявності, відбувається підстановка значень у відповідне місце. Крім того, клас дозволяє проводити маніпуляції із керуючими символами. Символ стрічки може мати лише одне із 256 значень, але існує можливість працювати із багатобайтовими символами. Доступ до символів стрічки можливий з використанням синтаксису, схожого на доступ до елементів масивів.

PHP надає широкий спектр  функцій для пошуку та заміни  тексту в стрічках. Для цього  використовують як традиційний підхід, так і спеціальний підхід, що базується на використанні регулярних виразів. При цьому в мові реалізована підтримка двох видів регулярних виразів — Perl-сумісні та POSIX-сумісні, що розрізняються за синтаксисом та особливостями роботи.

Змішані типи даних

До змішаних типів  належать масиви та об'єкти. Масиви в  сенсі мови є наборами змінних, що згруповані в єдину змінну. Вимога однотипності наповнення масивів не ставиться. Технічно, масиви являють  собою впорядковані карти, що відображають ключові значення на позиції змінних даних. Вмістом значення, на яке вказує ключ може бути будь-чим, що можна подати у вигляді змінної. Не існує жодних обмежень, крім об'єму пам'яті, що накладаються на кількість ключів масиву.

Особливістю мови є відмова  від рівномірного розподілу ключів масивів. Знайшла реалізацію і модель багатовимірних масивів, причому без явного обмеження глибини вкладеності. Корисною властивістю PHP є можливість асоціації масивів із функцією зворотного виклику. Ці функції дозволяють проводити дії над одним чи кількома масивами в пакетному режимі.

Також, існують два  спеціальні типи даних — ресурс та NULL. Ресурс — спеціальна змінна, що містить посилання на зовнішній  ресурс. Ресурси створюються та використовуються в спеціалізованих функціях. Оскільки тип містить спеціальні вказівники на відкриті файли, під’єднання та інше, то будь-які дії над значенням ресурсу не мають сенсу.

Область видимості змінної  — середовище, в якій вона визначена. Розрізняють локальні та глобальні  змінні. За замовчуванням, всі змінні мають локальний характер дії. Виділяють особливий тип змінних — статичні, що дозволяє повторне звернення до змінної в певному сегменті коду, причому змінна буде зберігати попередньо отримане значення. Існує також поняття суперглобальний змінних, які служать місцем збереження даних оточення або даних, отриманих ззовні. Підтримується концепція динамічних змінних та функцій.

Константи в PHP — ідентифікатори простих значень. Можливе визначення константи, причому після її оголошення стає неможливою зміна її значення чи анулювання. Константи можуть мати лише скалярні значення. Підтримується можливість отримання значення константи за динамічним ім'ям. Область видимості констант буде глобальною для сценарію та всіх під’єднаних компонентів. Також в ядрі мови визначено чимало системних констант.

Конструкції мови

Оператори в сенсі  мови дозволяють виконувати відповідну дію над одним чи кількома операндами. Оператори бувають трьох типів  — унарні, бінарні та тернарні. Оператори, як і в інших мовах характеризуються не лише дією, а й асоціативністю та пріоритетністю. Особливістю булевих операцій порівняння — розрізнення двох класів — з врахуванням типу і без врахування типу, при якому відбувається приведення до відповідного типу. Заокруглення відбуваються завжди в меншу сторону. В мові реалізовані особливі класи операторів — виконання, управління помилками та перевірки приналежності до класу.

Функції в сенсі мови є контейнерами коду, причому можливе  поміщення інших функцій та класів. На цьому і базується можливість умовного визначення функції. В цьому випадку висувається вимога попередньої декларації викликаної функції, що не обов'язково в інших випадках. Можливості повторного визначення чи деактивації функції не існує. Результат, який повертає функція може мати будь-який тип.

В мові реалізована функціональність посилань. Можливо створити скільки  завгодно псевдонімів, що посилаються  на єдиний сегмент даних. При вивільненні  будь-якого з псевдонімів, сегмент  даних залишається в пам'яті  до моменту завершення сценарію або вивільнення усіх посилань.

Що стосується функцій  в PHP, то замість прийнятого в багатьох мовах принципу перевантаження функцій, що дозволяє змінити хід виконання певної функції в залежності від типу та кількості переданих параметрів, використовується метод динамічних аргументів. Це дає змогу не визначати кількість параметрів для функцій при їх оголошенні, а працювати із тими аргументами, які були отримані на момент виклику функції. У тілі функції можливо отримати кількість переданих їй аргументів і проводити відповідні маніпуляції. При оголошенні функції звичайним чином, можливе задання значень аргументів за замовчуванням. Функції можуть повертати лише одне значення, проте це обмеження можна оминути, використавши не лише масиви, а й посилання. Передача аргументів за посиланням неможлива під час виконання та оголошення функції.

Після виконання сценаріїв, простір пам'яті, займаної ними очищується збирачем сміття. Проте, за необхідності можливе виконання очищення пам'яті  від надлишкових сегментів даних  під час виконання скриптів. Використання функцій очищення пам'яті є невиправданим, хоча така можливість існує.

Для побудови програмних комплексів можливо використовувати  модульний підхід, виконуючи розділення різнорідного коду. При потребі, можливе  виконання під’єднання необхідних модулів, причому операція виконання може бути і умовною. Під’єднані до скрипта файли можуть повертати значення.

Додаткові можливості

Мова явно підтримує HTTP cookies відповідно до специфікацій Netscape. Це дозволяє проводити встановлення та читання невеликих сегментів даних на стороні клієнта.

PHP надає можливість  організації роботи з користувачем  протягом сеансів (сесій). В сесії  можна зберігати різні дані, включаючи  об'єкти.

Ліцензія

Ліцензія PHP має назву The PHP License version 3.0, ЧАП по цій ліцензії та її текст можна знайти на офіційному сайті The PHP Group, а також файл із ліцензією містить дистрибутив PHP (звичайно license.txt).

Історія. Перші  версії

Історія PHP починається  з 1995 року, коли Расмус Лердорф (Rasmus Lerdorf) створив простий додаток на мові Perl, що аналізує відвідини користувачами його резюме на Web-сайті. Потім, коли цим додатком вже користувалися декілька чоловік, а число охочих одержати його постійно збільшувалося, Лердорф назвав своє творіння Personal Home Page Tools версія 1 і виставив для вільного скачування. З цієї миті почався небувалий зліт популярності PHP.

Як це завжди буває, терміново  було потрібно доопрацювання і нові доповнення. Для їх реалізації Расмус створює нову версію пакету, тепер  уже написану на С. Отриманий таким чином інструмент набуває робочої назви PHP/FI (Personal Home Page / Forms Interpreter - Персональна Домашня сторінка / Інтерпретатор Форм), надалі він також буде відомий під назвою PHP 2. Ця версія вже більшою мірою схожа на сьогоднішній PHP. Вона мала синтаксис і спосіб іменування змінних в стилі мови Perl, можливість вбудовування PHP операторів в html-код сторінки, автоматичну інтерпретацію форм, інтеграцію з базами даних. При цьому все працювало досить швидко, оскільки PHP прикомпілювалось до Web-серверу Apache. До 1997 року PHP використовувався вже на 50,000 доменах (не більше 1% всіх Web -серверів).

У тому ж 1997 році до проекту PHP підключилися Зів Сураські (Zeev Suraski) і Енді Гутманс (Andi Gutmans). Будучи студентами одного з ізраїльських університетів, вони намагалися використовувати PHP/FI для одного з комерційних університетських проектів. При цьому їм довелося зіткнутися з багатьма труднощами і обмеженнями цієї технології. Вивчаючи початковий код PHP 2, Зів і Енді дійшли висновку про необхідність доопрацювання, а точніше істотної переробки PHP, особливо в плані синтаксису мови. Протягом декількох місяців вони блискуче справилися з цим завданням.

Закінчивши роботу Зів  і Енді домовились з Расмусом про  співпрацю в галузі розвитку та вдосконалення мови. З цієї миті з'являється PHP Group - група однодумців, що працюють над розвитком технології PHP. Одержаний продукт з’явився на світ у 1998 році під назвою PHP 3.

При цьому головна особливість PHP 3 була можливість розширення ядра, що привернуло до роботи над PHP безліч сторонніх розробників, що створюють спеціалізовані модулі. Їх наявність дала PHP можливість працювати з величезним кількість баз даних, протоколів, підтримувати велике число API. До кінця 1998 кількість користувачів PHP перевалила за 100000, а PHP був вже встановлений на не менше ніж 10% серверах Інтернету. У той ж час значному поширенню даної мови сприяли публікації в електронній пресі та вихід книжок по вивченню PHP.

Відразу ж після виходу PHP 3, Енді Гутманс і Зів Сураські почали переробку ядра PHP. В першу чергу належало вирішити проблему підвищення продуктивності. Новий продукт, названий Zend Engine (від імен творців: Zeev і Andi), успішно справлявся з поставленим завданням і був реалізований в 1999 році. Основними ідеями що реалізовані є можливість компіляції сценарію у виконуваний модуль, за рахунок чого продуктивність можна було підняти на порядок.

Визнання та поширення

PHP 4, що працює на  цьому ядрі, вийшов в 2000 році. На  додаток до поліпшення продуктивності, PHP 4 мав нові можливості по підтримці сесій, буферизацію виводу, безпечні способи обробки інформації, що вводиться користувачем, і нові мовні конструкції. З виходом 4 версії PHP став використовуватися вже на більш ніж 20% доменів Інтернету.

За час з 2000 по 2004 рік продовжувалися активні роботи по поліпшенню 4 версії, але майже відразу PHP Group приступила до продумування можливостей нової версії. В першу чергу було вирішено підсилити об'єктні можливості мови, що дозволяло використовувати його для реалізації масштабних проектів. Роботи із створення версії 5 велися тривалий час, в них брало участь рекордна кількість фахівців, зокрема Стерлінг Хьюз (Sterling Hughes ) і Маркус Бергера (Marcus Boerger ).

У липні 2004 року виходить офіційний реліз PHP 5. В першу чергу, як і планувалося, було перероблено весь механізм роботи з об'єктами. І якщо в попередніх версіях об'єктно-орієнтоване програмування на PHP було можливе в мінімальному ступені, із-за чого і використовувалося на практиці не часто, то PHP 5 володіє прекрасним потенціалом реалізації об'єктного програмування. Окрім цього, PHP збагатився рядом цінних розширень для роботи з XML, різними джерелами даних, генерації графіки і інше.

Серед інших украй  корисних доповнень в PHP 5 слід зазначити  нову схему обробки виключень. Конструкція try/catch/throw дозволить весь код обробки помилок локалізувати в одному місці сценарію.

Всі основні бібліотеки для роботи з XML, запозичені в PHP 4, були піддані  серйозній переробці. Такі популярні  розширення, як SAX, DOM і XSLT, тепер використовують інструмент libxml2, що робить їх ще ефективнішими.

Информация о работе Розробка Web-сайту та бази даних “Інтернет – магазину”