Дипломная работа: Автоматизация документооборота учета материально-технического оборудования в ООО "ТРАНСКОМ"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
41
определяют, что делать с данными. PostgreSQL является примером
объектно-ориентированной реляционной СУБД.
Особенностью реляционных БД является предопределенная модель
хранимой информации. Данные являются строго типизированными, модель
содержит ряд ограничений и отношений для обеспечения целостности данных.
Главные плюсы и, в то же время, ограничения, реляционных БД(ACID):
Атомарность (Atomicity) – будут выполнены либо все подоперации
внутри операции, либо ни одной.
Консистентность данных (Consistency) – все данные будут целостными
и согласованными по завершении каждой транзакции.
Изолированность (Isolation) – параллельные транзакции не оказывают
влияния друг на друга.
Устойчивость (Durability) – система сохранит свое состояние
независимо от внешних факторов (транзакция прошла – изменение
данных не будет утеряно).
Самые известные реляционные БД – Oracle, SQL Server, MySQL,
PostgreSQL.
В то же время некоторые современные приложения налагают требования,
не решенные реляционными БД, и это привело к разработке баз данных NoSQL,
которые имеют следующие преимущества:
гибкая модель данных;
масштабируемость и производительность;
максимальное использование облачных вычислений и хранилищ.
Существуют следующие типы NoSQL баз данных:
базы данных на основе документов;
базы данных на основе графов;
хранилище «ключ-значение»;
колоночные базы данных.
Таким образом, не реляционные базы данных выигрывают у реляционных
по производительности, возможности масштабируемости и гибкости модели
данных. Множество небольших приложений уже сейчас используют не
42
реляционные базы данных за счет отсутствия потребности во встроенном по
умолчанию обеспечению атомарности операций, постоянной консистентности
данных (а не только после окончания транзакции) и жесткой модели данных.
Но для систем уровня предприятий реляционные базы данных являются
выигрышным решением. Минимум логики хранения данных на уровне
приложения, безопасность доступа к информации обеспечивается «коробочным
решением».
Поэтому в качестве модели представления данных выбрана реляционная.
1.4.2. Обоснование проектных решений по программному
обеспечению
В рамках обоснования проектных решений по программному
обеспечению следует выбрать язык программирования, а также реляционную
СУБД.
Вначале рассмотрим популярные и перспективные языки
программирования.
Ruby
Ruby – это высокоуровневый, объектно-ориентированный язык, влияние
на который оказали Python, Lisp, Perl, Eiffel и другие языки программирования.
Несмотря на противоречивые мнения, Ruby остается популярным языком
программирования, и его используют во многих проектах. Одна из причин
такого развития простота языка. Также многие называют Ruby языком
изящным, языком со своей философией.
Ruby – максимально понятный и логичный языкво многом благодаря
его создателю, который считал, что программа должна работать ровно так, как
изначально задумал программист. Это легло в основу принципа «наименьшей
неожиданности»[13].
Ruby имеет крупное сообщество, что полезно, особенно начинающим
разработчикам.Ruby используют такие компании, как Groupon, Airbnb, Pxlr,
Bloomberg и многие другие.
43
PHP
Своей популярностью PHP во многом обязан WordPress. Это язык,
популярность которого сейчас сложно переоценить. Если взять все
существующие сайты, то более 80% из них так или иначе используют PHP,
включая Facebook, Tumblr и Википедию.
PHP предлагает гибкость – здесь нет жестких правил относительно того,
как разрабатывать те или иные функции; можно использовать разные пути
решения проблем. Существует множество разных библиотек и расширений,
которые позволяют расширить функциональность сайта, а, в крайнем случае,
разработчик может легко написать расширение самостоятельно [14].
Многие предприятия выбирают сайты на базе PHP в основном из-за
невысокой стоимости, доступности и быстроты разработки.
Поэтому PHP – это хороший выбор для разработки веб-приложения. PHP
– язык, который легко учить, к тому же он используется во множестве проектов,
начиная от электронной коммерции и заканчивая мобильными приложениями и
новыми CMS.
PHP совместим с большинством операционных систем (Windows, Linux,
Mac OS и т.д.).
С++
C++ был создан в 1983 году в качестве альтернативы языку С – и быстро
завоевал популярность. Хоть С++ и произошел от С, но в дальнейшем пути
развития этих языков разошлись [16].
С++ это компилируемый статически-типизированный язык. Самые
известные проекты, написанные на C++, это Microsoft Windows и Google
Chrome.
Несмотря на возраст, язык остается востребованным, так как является
мощным инструментом разработки, использующимся в самых разных сферах:
банковых, финансовых, играх, продажах и так далее.
С++ позволяет создавать не только приложения, но и игры, а также
коммерческое ПО.
Главные преимущества С++ – это доступность, высокая вычислительная
производительность, наличие шаблонов и возможности расширения языка. С++
44
имеет высокий порог вхождения как и его предшественник С однако это
компенсируется широкими возможностями, которые предоставляет этот язык.
С++ позволяет работать на низком уровне – то есть взаимодействовать с
памятью, адресами и портами.
Иными словами, C++ это мощный язык программирования, который
позволяет создавать эффективные программы различных направлений, от
драйверов до сложных программных комплексов.
JavaScript
JS самый наиболее используемый разработчиками язык
программирования. Знание JS необходимо – сейчас это такой же используемый
везде инструмент, как HTML и CSS.
Что особенно важно, JS используется и во фронтэнде, и в бэкенде –
естественно, этот язык обладает не такими широкими возможностями, как
Python или Java, но использовать его проще, особенно если взять во внимание
обилие UI функций.
JS – это мультипарадигменный язык программирования: он поддерживает
объектно-ориентированный, императивный и функциональный стили. JS
позволяет создавать интерактивные веб-страницы, его не нужно компилировать,
он работает сразу как есть [4].
JS не стоит путать с Java – это разные языки, и единственное, что их
роднит – это схожесть в названии. JS сравнивают с разными языками
программирования: Python, Ruby… но это отдельный уникальный язык, который
является реализацией ECMAScript.
Обобщая: JS – это уникальная технология, обладающая широкими
возможностями в области веб-разработки.
Java
Java – это объектно-ориентированный язык (ОО-язык) программирования,
как и PHP, Python, C++ и Perl. В основном этот язык используется для
разработки серверных и мобильных приложений, а также видеоигр. Именно на
Java основан Android.
Если сравнивать Java с другими языками, то, во-первых, он очень прост
для изучения (а значит, программы проще писать и отслеживать их работу), во-
45
вторых, благодаря тому, что это объектно-ориентированный язык, можно
создавать модульные программы, код которых затем можно использовать снова
и снова. В-третьих, одно из главных преимуществ – это возможность переноса
программ из одной системы в другую, так как это кроссплатформенный язык (и
это особенно важно для веб-приложений). Разработанное на Java приложение
будет работать и в Windows, и в Linux, и в других ОС [5].
В итоге Java – это гибкий язык с открытым исходным кодом, который
можно использовать практически для любых задач. И поэтому программисты
Java остаются востребованными на бирже труда.
C#
C# был разработан Microsoft. Это объектно-ориентированный язык
программирования, который используется для разработки приложениях
платформы .NET Framework.
Это высокоуровневый язык, поэтому код легко читается, и в целом C#
задумывался как понятный и легкий в разработке язык.
C# используется для разработки массы вещей, от веб-сервисов до
мобильных и серверных приложений и многого другого [10].
С# популярен среди разработчиков, так как он вобрал в себя
преимущества двух языков – С++ и Java.
Сейчас C# – это актуальный для изучения язык, который позволяет
создавать популярные веб-приложения.
В качестве языка программирования выбран C#, которому соответствует
среда разработки Visual Studio. Этот выбор обусловлен тем, что C# фактически
интегрировал в себя все плюсы языков Java и C++, а также имеет такие
дополнительные особенности, как автоматический сборщик мусора,
продвинутую систему поддержки разработки кода, встроенную в IDE,
множество удобных и полезных типов данных, значительно ускоряющих
процесс разработки.
К тому же IDE Visual C# Express является бесплатной средой разработки
приложений на C#. Visual Studio Express бесплатный аналог Visual Studio,
правда имеет ряд ограничений. Например, программа не включает в себя MFC и
Источник: https://baza.diplomsite.ru/previewfile/1755