Техническое обеспечение интернет-проектов. Техническое обеспечение интернетпроектов
Скачать 128.39 Kb.
|
Министерство образования и науки Чеченской Республики Государственное бюджетное профессиональное образовательное учреждение «Гудермесский железнодорожный техникум» 09.02.05 Прикладная информатика (по отраслям) КУРСОВОЙ ПРОЕКТ НА ТЕМУ: Техническое обеспечение интернет-проектов Выполнил(а): студент(ка) гр. 4«Ж» Дудаев Рамзан Саламбекович Руководитель: преподаватель спец. дисциплин Бакараев Мовсар Мусаевич Допущен к защите: «___»______________ 20___ г. Подпись __________ Защищен с оценкой __________ «___»____________ 20___ г. Подпись ________ По дисциплине «ПМ.04 Обеспечение проектной деятельности» г. Гудермес 2018 г Содержание Введение 3 1. Информационная и техническая поддержка сайтов 4 1.2 Техническое обеспечение сайта 5 1.3 Информационное обеспечение интернет-ресурсов 6 1.4 Модернизация web-ресурса 7 2. Техническое сравнение лучших CMS с открытым исходным кодом 82.1 Удобство в использовании против сложности 82.2 Технические сравнение Joomla и Drupal 10Заключение 17Список литературы 18 Введение Интернет-проект – это информационная услуга, предоставляет каждому пользователю сети Интернет набор программных средств для виртуального просмотра и покупки товаров, опубликованных в данном Интернет-проекте. На данный момент во всем мире всё больше предприятий из самых различных отраслей воспринимают World Wibe Web в качестве дополнительного, эффективного, а иногда наиболее действенным инструментом организации продаж и получении прибыли. Электронная коммерция, на самом деле представляет не что иное, как прототип традиционного бизнеса. Интернет-бизнес основан на тех же фундаментальных принципах, разумеется, существует некоторая специфика, но она, как правило, выражается чисто технической адаптацией. Актуальность исследования объясняется тем, что электронный бизнес имеет четыре основных этапа использования: маркетинг, производство, продажи и платежи, а степень использования информационных и коммуникационных технологий и систем служит мерой, по которой бизнес может считаться электронным. Новизна исследования заключается в том, что, являясь, по сути, практическим исследованием она позволяет использовать материалы для подготовки специалистов, знающих специфику коммерческой деятельности в системах электронной коммерции. Объект исследования – Интернет-проект Задачи исследования, выполненные в ходе курсового проекта: - распространять информацию и услуги быстрее, чем посредством каких-либо других маркетинговых каналов; - автоматизировать работу менеджеров по продажам; - обеспечить круглосуточную доступность к информации о продукции; - обеспечить удобный и быстрый поиск товаров; - увеличить объем продаж фирм; - создать новые рабочие места; 1. Информационная и техническая поддержка сайтов Некоторые владельцы сайтов искренне полагают, что их сайт не требует никакого обслуживания. И, конечно, не хотят выделять средства на информационную и техническую поддержку, считая, что они будут потрачены зря. Рассуждают они примерно так: сайт обладает привлекательным дизайном, имеет удобную систему администрирования, а потому может существовать автономно без дополнительного обслуживания. В результате такого подхода получается, что сайты со временем перестают привлекать посетителей и соответственно не приносят никакого дохода их владельцам. И этому есть простое объяснение. Хоть сайт и может функционировать неограниченно долго, но его эффективность со временем понижается из-за появления все большего количества конкурентов. Поэтому необходимо производить качественное обслуживание сайта, чтобы он мог конкурировать с другими сайтами сходной тематики. Обычно работа по обслуживанию и поддержке сайтов разделяется на несколько этапов: Информационная поддержка сайта – осуществляется обновление и добавление нового информационного наполнения сайта, которое включает в себя различные тексты, картинки, видео материалы, баннеры с рекламой и т.п. Техническая поддержка сайта – это все работы, которые позволяют осуществить правильное функционирование и бесперебойную работу сайта. Подразумевает: наличие возможности восстановить сайт после технического сбоя, управление резервным копированием сайта, почтой, быстрое устранение неполадок при работе ресурса, возможность обновления функциональных возможностей сайта. Также сюда можно отнести консультирование по любым вопросам, касающимся поддержания сайта в работоспособном состоянии. В настоящее время услуги информационной и технической поддержки позволяют поддерживать функционирование сайта на должном уровне. И на этом не надо экономить. Самый лучший вариант — это нанять для осуществления поддержки сайта профессионалов, которые уже имеют значительный опыт. 1.1 Обеспечение работы сайта В наше время любая компания может позволить себе создать сайт. Как известно, спрос рождает и предложение, поэтому сейчас довольно много отличных специалистов, которые могут создать сайт любого уровня. Но создание сайта — только половина дела. Ведь он должен работать круглые сутки без сбоев. А потому необходимой становится техническая поддержка веб-сайта. Можно привести множество причин, по которым очень качественные ресурсы со временем могут стать балластом, приносящим компании лишь убытки вместо ожидаемой прибыли. Это может быть редкое обновление информации на сайте, из-за чего поисковая система может посчитать такой сайт «мертвым». Или даже взлом сайта. Все это приводит к снижению его рейтинга в распространенных поисковых системах. Поэтому важно постоянно обновлять технические параметры сайта, его информационную составляющую. Кроме того, серверы, которые хранят информацию вашего сайта, тоже подвержены сбоям, что может привести к недоступности сайта и в результате изменить к нему отношение поисковых систем и пользователей. 1.2 Техническое обеспечение сайта Под техническим обеспечением сайта обычно понимают комплекс мер, направленных на решение различных проблем, возникающих даже если ресурс хорошо автоматизирован. Услуги технического обеспечения обычно включают в себя консультации по вопросам, связанным с поддержанием сайта в работоспособном состоянии, управление почтой, обеспечение защиты сайта от взлома, создание резервных копий сайта, внесение изменений в функционал или графическую составляющую сайта. 1.3 Информационное обеспечение интернет-ресурсов Опытные специалисты могут осуществлять любые работы, связанные с информационной поддержкой сайта. Они могут осуществить обновление контента вашего сайта, уникализировать текстовое наполнение сайта, дополнить графический контент, а также оказать множество других услуг. Плюсы поддержки сайта Существует заблуждение, что осуществление технической и информационной поддержки сайта — это несложно. К примеру, это можно поручить системному администратору, чтобы сэкономить на поддержке сайта. Однако в данном случае экономия будет кажущейся. Ему элементарно не будет хватать опыта, чтобы осуществить весь комплекс мер по поддержке сайта на должном уровне. Поэтому лучше поручить это профессионалам, которые занимаются этим уже не один год и могут гарантировать бесперебойную работу Вашего ресурса. Основными преимуществами осуществления комплекса услуг по поддержке сайта с помощью компании можно назвать обеспечение работы сайта без сбоев, поддержание информации на сайте в актуальном состоянии, что позволит сделать сайт привлекательным для поисковых систем и в результате поднять его позиции в поисковой выдаче. То есть сайт будет функционировать именно так, как Вы и ожидаете. Кроме того, плюсами работы с компанией будет то, что Вам не придется искать специалиста и платить ему высокую зарплату. Все услуги по комплексному обслуживанию сайта описываются в договоре, а стоимость поддержки сайта будет вполне приемлемой. 1.4 Модернизация web-ресурса Если Ваша фирма уже имеет сайт, который создавался несколько лет назад, то он может нуждаться в модернизации, поскольку его дизайн, а также функционал за такое время может устареть. В этом случае лучше всего обратиться за помощью к профессионалам. Часто обновление сайта требуется в случае, когда сайт создавался человеком, который решил не использовать самые актуальные интернет-технологии. Или если Вы решили, что дизайн Вашего сайта уже устарел. Или у Вас был небольшой статичный сайт, который не позволял управлять информацией. И это лишь некоторые причины, которые могут потребовать модернизации сайта. Учитывая вышесказанное, современные компании, занимающиеся созданием сайтов, предлагают своим клиентам еще и такие услуги, как оптимизация web-сайта для поисковиков, обновление дизайна, создание дополнительных модулей для сайта, добавление новых разделов в уже существующем ресурсе. 2. Техническое сравнение лучших CMS с открытым исходным кодом2.1 Удобство в использовании против сложностиЕсли вы посмотрите в Интернете, большинство аналитиков используют графики, чтобы помочь определить, какая CMS будет наиболее подходящей для различных спецификаций. Wordpress находится на одном конце диапазона, будучи простым в использовании и не подходит для сложных проектов, Joomla находится в середине, а Drupal находится на другом конце диапазона, являющегося самым трудным в использовании и наиболее подходит для сложных проектов. В этой классификации есть доля правды, но их следует рассматривать только на самом общем уровне. Рис. 2 С точки зрения перспективы вебмастера, поддерживать сайт в актуальном состоянии - это довольно точное предположение. Тем не менее, для разработки сайта, это не обязательно так - давайте выясним, почему. Рис.2 Немного о верхней диаграмме. Joomla проще в установке и настройке, чем Drupal. Кроме того, легче развивать пользовательские функции для Joomla по сравнению с Drupal и Wordpress. Это утверждение является верным главным образом для высококачественной заказной разработки. Вы можете легко взломать код любой из трех CMS и заставить их делать то, что вы хотите, но это за счет безопасности, ремонтопригодности и надежности. Точно так же миф, что Drupal является более подходящим для сложных проектов, чем Joomla вызван оценками CMS, с точки зрения вебмастера, а не точки зрения программиста. Это восприятие связано с тем, что Drupal обеспечивает модульный подход для создания пользовательского интерфейса и ввода содержимого. Веб-страницы Drupal создаются с помощью блоков и видов. Это дает вебмастеру максимальную гибкость для создания веб-страниц без необходимости программирования модулей для Drupal. В то же время Joomla предоставляет вебмастерам подобные рабочие инструменты (компоненты и модули), но это не такие мощные инструменты, какие предоставляет Drupal квалифицированному вебмастеру чтобы быстро построить новые сложные веб-страницы. Тем не менее, создание нового пользовательского функционала - это совсем другая история. В современном мире, где все управляется с помощью программного обеспечения, гибкость в изменении содержимого веб-страницы и модульный пользовательский интерфейс - это недостаточно. Функциональность CMS должна быть достаточно гибкой, чтобы развиваться, удовлетворяя изменяющиеся потребности бизнес-логики сайта. 2.2 Технические сравнение Joomla и DrupalКак только программист открывает исходный код Drupal он сталкиваются с кошмаром. Программировать на Drupal не легко, так как он основан на плохо продуманном, процедурном фреймворке, в то время как Joomla основана на хорошо разработанном, объектно-ориентированном MVC фреймворке, который также реализует ряд шаблонов проектирования, таких как listener, и т.п. Даже если вы нанимаете высококвалифицированного, (очень дорогого) Drupal программиста, существует высокая вероятность того, что ваш код будет напоминать спагетти, которые будут вызывать много проблем в будущем, если вы хотите внести дополнительные изменения. 1 База данныхВ Drupal, виды хранятся в базе данных. Это означает, что вы не можете поставить их под контроль версий (например SVN или GIT) и разработчики не могут сотрудничать при развитии видов. Каждый новый тип содержимого в Drupal создает пару таблиц базы данных. Это означает, что структура базы данных изменяется с течением времени, если вебмастер создает и изменяет типы контента. Это кошмар для разработчиков, которые хотели бы создать Entity Relationship Diagrams (ERD), при создании веб-приложения. Вы никогда не можете полагаться на ERD потому, что в следующий раз, когда вы посмотрите в базу, количество таблиц и схема базы будет отличаться. В Drupal, логи хранятся в базе данных. Все современные системы хранят логи в файлах. Хранение логов в базе данных означает, что к ним очень трудно получить доступ, анализировать и профилировать. Разработчик не может использовать инструменты Linux (такие как sed и т.д.) для обработки и анализа журналов. Процесс идет медленнее и занимает огромное количество дискового пространства (много гигабайт) для хранения баз данных. Это делает базу данных системы необоснованно большой и неэффективной. Для большого сайта с высоким трафиком это делает практически невозможым запросы и анализ логов. Кроме того, он не может поддерживать ротацию и архивирование старых логов. Кто в здравом уме будет хранить логи в базе данных? 2. Паттерны проектированияJoomla является объектно-ориентированной, а Drupal основан на старом PHP 4 процедурном программировании (темные дни PHP). Drupal реализует устаревшие паттерны проектирования: Procedural Hooking Если вы хотите узнать больше о плохой практике программирования, читайте мою предыдущую запись в блоге: чистый код высокого качества - руководство о том, чтобы стать лучшим программистом. Однако Joomla реализует современные паттерны проектирования, которые используются в лучших фреймворках, таких как Symfony 2, Zend и корпоративных языках программирования, таких как Java (включая Struts и Spring): Объектная ориентированность (включая полиморфизм, инкапсуляцию, наследование и т.д.) MVC (Model View Controller) Event Driven, Event Dispatcher, и Observer Singleton Factory Некоторые из паттернов проектирования, реализованных в обоих CMS, таких как DBAL (Database Abstraction Layer) были сделаны лучше в Joomla. DBAL в Joomla почти так же хорош, как ORM (Object-relational mapping). И если вы действительно хотите использовать ORM Joomla, он легко интегрируется с Doctrine. Реализация этих современных практик связано с непрерывным улучшением фреймворка Joomla и CMS, которые проведены за эти годы, в то время как Drupal стагнирует. 3 Архитектура ядраJoomla имеет очень чистый API ядра, а Drupal написан на уродливом коде-спагетти. Можно было бы назвать архитектуру Joomla елкой, а архитектуру Drupal бакиболой. В Joomla у нас есть древовидная иерархия. Ствол является ядром Joomla. Он имеет ветки (API), к которым вы можете прикрепить несколько отростков (компоненты) или листьев (модулей или виджетов). Компонент может быть подключен, таким образом, чтобы интегрироваться с контролем доступа Joomla! (Access Control Levels) и функциями управления контентом. Будучи отростком, он может иметь подкатегории ветви и даже может иметь соединение с другим компонентом. Но в значительной степени, существует минимальный контакт между различными компонентами. В Drupal, форма является в основном круглой с многочисленными точками по всей поверхности - модулями. При построении расширения, вы можете подключить любой или все из этих модулей. Эта тесная интеграция означает, что все контактирует друг с другом. Эта архитектура гораздо менее элегантна и снижает качество кода любых пользовательских функций. В текущей и долгосрочной перспективе с такого рода структурой обслуживание становится проблемой. Для реализации Hooking в архитектуре Drupal используется call_user_func () и другие методы динамического вызова функций. Это означает то, что отладка Drupal с использованием современных инструментов отладки - это кошмар. Если вы хотите узнать больше о инструментах отладки вы можете прочитать: Как настроить VIM и PhpStorm с xDebug для отладки. Кроме того, это означает, что вы не можете использовать клик по методу или свойству для перехода к его объявлению в вашей современной IDE, когда вы программируете. Также, если вы используете PhpStorm или другую современную IDE, инспекция и автоматическое завершение не будут работать, так как они не будут знать тип возвращаемого значения динамически вызываемых функций. 4. Стандарты кодированияPSR - PHP Specification Request является стандартом кодирования, принятым в большинстве современных корпоративных фреймворках, таких как Symfony 2 и Zend. Joomla является PSR-0 совместимой и скоро станет PSR-1 совместимой. Drupal не соответствует любому стандарту PSR. 5 Производительность и кэшированиеDrupal в среднем составляет 100 запросов к базе данных на странице (для простых страниц). Из-за этого и других проблем с производительностью, связанных с Hooking архитектурой, все должно быть сильно абстрагированно и кэшироваться, что создает дополнительную сложность и требования к аппаратной составляющей ресурсов. Joomla является гораздо более легкой и оптимизированной. Она имеет намного более быстрее ядро. В Joomla рекомендованный лимит памяти составляет 512 МБ, а в Drupal - 2 ГБ. Большинство тестов согласны, что без кэширования Joomla является более быстрой и менее ресурсоемкой, чем Drupal. Однако некоторые тесты считают Drupal быстрее, когда кэширование включено. Но если кэширование Joomla устанавливается экспертами и настроено она может превзойти Drupal даже когда кэширование включено. Также кэширование в Joomla намного проще и менее ресурсоемко, чем в Drupal, что делает Joomla проще в использовании, обновление, и настройке. В то время как у вас есть Solr в Drupal, чтобы увеличить производительность для веб-сайтов с большими базами данных и большим количеством пользователей, в Joomla у вас есть Sphinx, который написан на родном C ++ и работает быстрее и проще, чем Solr. Нам просто не нужно устанавливать Sphinx на большинстве веб-сайтов, потому что Joomla быстра и достаточно мощна из коробки и имеет возможность работать с очень большими базами данных под интенсивным трафиком. Однако при необходимости Sphinx может обеспечить огромный прирост производительности на Joomla, делая ее во много раз быстрее, чем Drupal с Solr. Все вышеперечисленное - это сильные признаки того, что в противоположность распространенному мнению, Joomla намного лучше для разработки более крупных и более сложные сайтов, чем Drupal. Одним из многих успешных известных сайтов Joomla является linux.com. Люди, которые работают в linux.com известны своей одержимостью качеством кода и являются лучшими и умнейшими программистами. Независимо от того, сколько правительственных сайтов, сделанных на Drupal вы можете найти, то, что linux.com находится на Joomla перевешивает их всех. В защиту Drupal, в Linux Foundation, организации linux.com, также работает несколько небольших сайтов на Drupal (например video.linux.com). Но то, что они используют Joomla, а не Drupal для их основной функциональности на тяжелом сайте (linux.com), для меня большой плюс в пользу Joomla. Также стоит отметить, что контрибьюторы Linux Foundation дали Joomla рейтинг пять звезд, в то время как они-же дали Drupal только три звезды. Если вы заинтересованы, вы можете прочитать интервью с Дэном Лопес, веб-архитектором linux.com о том, почему он выбрал Joomla. Экономическое обоснованиеХотя Drupal обеспечивает наибольшую гибкость к вебмастеру, его администрирование очень сложное и имеет очень высокий порог вхождения. Клиенты должны будут нанять эксперта-вебмастера Drupal, а обычные пользователи не могут просто натренироваться, чтобы использовать Drupal, так-же как они могут быть обучены использовать Joomla. По сравнению с Joomla, административная консоль в Drupal является приборной панелью реактивного истребителя. С точки зрения сообществ, поддерживающих CMS, Joomla имеет гораздо большее сообщество разработчиков по сравнению с Drupal. Это признак того, что разработчики предпочитают работать на Joomla. И чтобы сделать Drupal еще хуже для бизнеса, опытных разработчиков Drupal гораздо труднее найти, и они стоят дороже, чем разработчики Joomla. Опытные разработчики предпочитают работать на Joomla, а не Drupal. Я не являюсь исключением из этого правила. Я отклонил несколько предложений работы с большими зарплатами, потому что я не хотел, еще раз пройти через боль разработки на Drupal. Drupal может улучшиться в будущемГоворят, что новый Drupal 8, который будет выпущен в ближайшее время (пока нет официальной даты релиза) массивно усовершенствован и много проблем и ошибок исправлено. Ядро Drupal была полностью переработано и перестроено и, как предполагается, много позаимствовано из фреймворка Symfony 2. Тем не менее, до тех пор, пока Drupal 8 не будет выпущен, даже не стоит рассматривать использование Drupal в реальных проектах. После того, как Drupal 8 будет выпушен я готов вновь посетить мир Drupal и сделать проект на нем, но я почти уверен, что к этому времени Joomla улучшится еще больше. Мы, возможно, даже получим полную поддержку TDD на Joomla (TDD или Test Driven Development является лучшей методологией разработки в мире). ЗаключениеВ результате выполнения дипломного проекта все поставленные задачи были успешно достигнуты: - Была дана краткая характеристика предприятия. - При проектировании интернет магазина был пройден полный цикл проектирования от постановки задачи до сдачи программного модуля в эксплуатацию. - Был выбран наиболее оптимальный язык программирования и среда разработки. - Также была рассчитана экономическая эффективность интернет-проекта. Созданный в рамках дипломного проекта Интернет-проект пока занимает промежуточное место в классификации Интернет-проекта между электронной витриной и полноценным электронным магазином, позволяя клиенту сформировать заказ, однако не работает с системами электронных платежей, разработка, которой и лежит в плане развития ИС. Список литературы Горнаков С.Г. Осваиваем популярные системы управления сайтом С.Г. Горнаков.- М.: Наука, 2014. Колисниченко Д.Н. Движок для вашего сайта. CMS Joomla!, Slaed, PHP-Nuke / Д.Н. Колесниченко.- М.: НТ Пресс, 2013. Колисниченко Д.Н. Joomla!: Руководство пользователя / Д.Н. Колисниченко.- М.: Диалектика, 2015. Норт Б. Joomla!: Практическое руководство / Б. Норт.- М.: Символ-плюс, 2013. Рамел Д. Самоучитель Joomla!/ Д. Рамел.- СПб.: Питер, 2014. Хаген Г. Создание веб-сайтов с помощью Joomla! 1.5 / Г. Хаген.- М.: Вильямс, 2013. Интернет-источник: https://www.ibm.com/developerworks/ru/library/os-drupal/index.html. http://www.skachatreferat.ru/poisk/. http://drupal-learning.com/course/sozdanie-internet-magazina-na-drupal-7-s-ispolzovaniem-modulya-commerce. |