Следующая »

Веб-сайты в современном мире становятся все сложнее, поскольку на них возлагается решение все более сложных задач. Они должны обеспечиваться эффективность обработки запросов, высокую надежность работы, предоставление результатов в удобном пользователям виде.

При разработке веб-сайта приходится сталкиваться с решением множества задач: дизайн, вёрстка, логика пользовательского интерфейса, обработка на стороне сервера и т.д. Однако всё это можно разбить на два направления: Front-end и Back-end разработка.

Front-end и Back-end разработка – это процесс создания сайта, разделенный на две части, клиентскую и серверную. Клиентская часть это front-end разработка, к ней можно отнести CSS верстку, создание макета и шаблонов для сайта, а также пользовательского интерфейса и специальных скриптов, отвечающих за визуализацию и анимацию. К серверной части (back-end разработке) относится создание ядра сайта, разработка платформы, основного функционала и административной части.

Back-end разработка включает в себя написание приложений, которые обеспечивают поддержку front-end. На сайте, back-end будет отвечать за проверку данных пользователей из баз данных, и предоставлять им возможности входа, а также принимать какие-либо предложения, которые могут быть полезны в улучшении сайта.

1. Обзор предметной области

Блог, сетевой дневник, блогосфера — эти слова уже успели стать банальными для любого человека, хоть чуточку знакомого с Интернетом. Однако аудитория активных пользователей Всемирной сети на все человечество пока не распространяется, да и не все пользователи Интернета ведут или хотя бы читают сетевые дневники. Так что же дает повод заявлять о включении в блогосферу всего человечества.

В первую очередь — это стремительная «мобилизация» Интернета и слияние популярных сервисов мобильной телефонии, например, отправки коротких сообщений (SMS), с такими формами интернет-блоггинга, как микроблоги, линк-блоги и лайфстрим-сервисы. Мобильное вторжение блогосферы обеспечивается тем, что простые сотовые телефоны, по которым когда-то можно было только звонить, уже вытеснены смартфонами, которые кардинально меняют не только парадигму самой мобильной связи, но и Интернет.

Сутью современного этапа эволюции блоггинга — микроблога — является лишь то, что в новой форме автор оставляет только короткие заметки, по длине обычно не превышающие 200 символов.

Таким образом, микроблогинг по сути заимствовал предельно лаконичный жанр SMS-сообщений и отражает информацию о том, что данный человек в какой-то момент хочет, делает, думает или к чему готовится. Сюда же относятся короткие цитаты, заимствованные высказывания и ссылки на какие-то внезапно понравившиеся автору микроблога ресурсы Интернета.

Дату рождения микроблоггинга сейчас восстановить уже трудно, поскольку грань между короткими, но обычными блогами и микроблогами довольно тонка, однако полноценный микроблоггинг принято отсчитывать с момента появления в 2006-м таких интернет-сервисов, как Twitter и Jaiku. Самым популярным в мире сервисом для микроблоггинга до сих пор остается Twitter, который заслужил доверие пользователей и оброс всевозможными клиентами для постинга и дополнениями.

Как уже упоминалось выше, наиболее популярным сервисом для микроблоггинга является Twitter, который был открыт в июле 2006года. Основным конкурентом Twitter является Jaiku. Однако существует множество других сервисов, поддерживающих микроблоггинг. К примеру, отечественная социальная сеть «Вконтакте» также имеет микроблоги, начиная с 2010 года. Пользователям данной социальной сети предоставляется возможность публиковать текстовые сообщения, фотографии, аудио файлы и т.д. у себя на странице.

2. Постановка задачи

Основной целью данной выпускной квалификационной работы является разработка веб-сайта “Многопользовательский микроблог”.  Данная задача решается в следующем порядке:

  1. Выбор архитектуры серверной части веб-приложения.
  2. Подробное определение и описание функционала сайта.
  3. Выбор используемых технологий при разработке сайта.
  4. Разработка модели данных.
  5. Разработка веб-сайта.

Ниже представлен список возможностей, которые должны быть реализованы в данном веб-сайте:

  • Пользователи сайта должны иметь возможность создания собственного акаунта на сайте, а также добавления дополнительной информации о себе (Полное имя, Дата рождения).
  • Зарегистрированные и авторизованные пользователи должны иметь функционал, позволяющий им размещать посты и оценивать их.
  • Дизайн сайта должен быть адаптивным – правильно отображаться на различных устройствах, будь то обычный ПК, планшет или телефон.
  • На сайте должна быть страница администратора, на которой он может управлять добавленными постами, а именно удалять или восстанавливать их, после удаления.

3. Инструментальные средства разработки

Большинство современных веб-приложений имеет архитектуру «клиент-сервер». В данном случае клиентом является браузер, а сервером – веб-сервер. Перед тем как начать разрабатывать приложение, необходимо выбрать какие технологии будут использоваться при разработке.

Для клиентской части разработка происходит с использованием следующих технологий:

  • язык разметки HTML
  • язык стилей CSS
  • JavaScript

Однако также были выбраны фреймворки Bootstrapи jQuery.

Bootstrap – это простой и легко настраиваемый HTML, CSS, и Javascript инструментарий. Данный фреймворк включает в себя большое количеств готовых элементов (меню, выпадающие списки, формы), а также позволяет создавать адаптивную вёрстку для веб-сайта.

jQuery – библиотека JavaScript, фокусирующаяся на взаимодействии JavaScript и HTML. Использование данного фреймворка существенно упрощает написание клиентской логики сайта, а также существенно снижает количество строк кода, в сравнении с использованием «чистого» JavaScript. Также без данной библиотеки не будет работать Bootstrap, так как некоторые элементы, требующие выполнения некоторой логики, написаны с использованием jQuery.

Для разработки серверной части было решено использовать ASP.NET MVC 5, а также в качестве базы данных MS-SQL Server.

ASP.NET MVC в совокупности с такими технологиями как, EntityFramework, отвечающий за взаимодействие с базой данных, и ASP.NET Identity технологией, отвечающей за аутентификацию и авторизацию, является мощным и гибким инструментом.

Далее о каждой технологии подробнее.

3.1. .NET Framework и язык программирования C#

Язык программирования C# один из быстро развивающихся и востребованных языков в мире ИТ. На нем разрабатывают как небольшие десктопные приложения, так и крупные веб-сайты.

В сравнении с другими языками C# достаточно новый язык программирования. Первая версия языка появилась в феврале 2002 года. Она вышла вместе с релизом Microsoft Visual Studio .NET. Текущей версией языка является версия C# 7.0, которая вышла в 7 марта 2017 года вместе с Visual Studio 2017.

C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Как и данные языки C# является объектно-ориентированным. Например, C# поддерживает полиморфизм, наследование, перегрузку операторов, статическую типизацию. Объектно-ориентированный подход позволяет решить задачи по построению крупных, но в тоже время гибких, масштабируемых и расширяемых приложений.

Также C# имеет поддержку языка интегрированных запросов LINQ.  Язык LINQ вместе с  лямбда-выражениями вносят совершенно новый акцент в программирование на C# и еще глубже подчеркивают его ведущую роль в непрекращающейся эволюции языков программирования.

Когда говорят C#, нередко имеют в виду технологии платформы .NET. И, наоборот, когда говорят .NET, нередко имеют в виду C#. Однако, хотя эти понятия связаны, отождествлять их неверно. Язык C# был создан специально для работы с фреймворком .NET, однако само понятие .NET несколько шире.

.NET представляет мощную платформу для создания приложений. Можно выделить следующие ее основные черты:

  • Поддержка нескольких языков. Основой платформы является общеязыковая среда исполнения Common Language Runtime (CLR), благодаря чему .NET поддерживает несколько языков: наряду с C# это также VB.NET, C++, F#, а также различные диалекты других языков, привязанные к .NET, например, Delphi.NET.
  • Кроссплатформенность. .NET является переносимой платформой (с некоторыми ограничениями). Например, последняя версия платформы на данный момент .NET Framework поддерживается на большинстве современных ОС Windows (Windows 10/8.1/8/7/Vista).
  • Мощная библиотека классов. .NET представляет единую для всех поддерживаемых языков библиотеку классов. И какое бы приложение мы не собирались писать на C# - текстовый редактор, чат или сложный веб-сайт - так или иначе мы задействуем библиотеку классов .NET.
  • Разнообразие технологий. Общеязыковая среда исполнения CLR и базовая библиотека классов являются основой для целого стека технологий, которые разработчики могут задействовать при построении тех или иных приложений. Например, для работы с базами данных в этом стеке технологий предназначена технология ADO.NET. Для создания веб-сайтов - ASP.NET и т.д.
Следующая »
Похожие публикации
Похожих публикаций не обнаружено.