Лобзин ДП-шаблон. Дипломный проект тема Пояснительная записка дп. 09. 02. 07. 41. 25. 2022 01 пз
![]()
|
1.8 Обоснование выбора языка программирования и СУБДДля реализации проекта, были рассмотрены следующие языки программирования. Данные языки программирования были выбраны для рассмотрения как наиболее благоприятные средства разработки мобильных приложений. Java - Объектно-ориентированный язык программирования, по большей части ориентированный для создания web-приложений и backend`ов. Но помимо этого, имеется возможность встраивать небольшие, надёжные и не зависящие от платформы Java-апплеты. Которые могут настраиваться и распространяться потребителями с такой же лёгкостью, как любой документ HTML. Серверные приложения на Java называются сервлетами(servlet) и представляют из себя небольшую подпрограмму. Именно благодаря такой структуре и общим принципам работы интерпретатора, обеспечивается хвалённая скорость работы с большими объёмами данных. В отличии от PHP – скрипта который на каждый вопрос вызывается заново, Java-сервлет работает и обрабатывает данные до тех пор, пока не будет завершена работа сервера. Это обеспечивается благодаря принципу работы Java. Любые программы на Java при использовании запускаются не в системе, а в самостоятельной виртуальной машине, ограничивая память от воздействия со стороны. Для небольших решений такие затраты ресурсов не оправданы, потому Java широко используется в крупных предприятиях (Enterprise разработка). В итоге выбран PHP5, как самое оптимальное средство для выполнения поставленной задачи. PHP5 свободно взаимодействует с базами данных MySQL и http-сервером. Помимо этого, в расчёт берётся простота разработки небольших web-приложений. Kotlin (Ко́тлин) — статически типизированный язык программирования, работающий поверх JVM и разрабатываемый компанией JetBrains. Также компилируется в JavaScript, и в исполняемый код ряда платформ через инфраструктуру LLVM. Язык назван в честь острова Котлин в Финском заливе, на котором расположен город Кронштадт. Авторы ставили целью создать язык более лаконичный и типобезопасный, чем Java, и более простой, чем Scala. Следствием упрощения по сравнению со Scala стали также более быстрая компиляция и лучшая поддержка языка в IDE. Язык полностью совместим с Java, что позволяет java-разработчикам постепенно перейти к его использованию; в частности, в Android язык встраивается с помощью Gradle, что позволяет для существующего android-приложения внедрять новые функции на Kotlin без переписывания приложения целиком. C# – объектно-ориентированный язык программирования. Разработан в 1998 – 2001 годах группой инженеров компании Microsoft под руководством Андерса Хейлсберга и Скотта Вильтаумота как язык разработки приложений для платформы Microsoft .NET Framework. Плюсы: – поддержка Microsoft. В отличии от Java, которой не пошел на пользу переход в собственность Oracle, C# хорошо развивается благодаря усилиям Microsoft; – в последнее время много совершенствуется. Так как C# был создан позже, чем другие языки, то требовалось очень много доработать. Также это касается популяризации и бесплатности - было обещано открыть исходный код, а инструменты (Visual Studio, Xamarin) стали бесплатными для частных лиц и небольших компаний; – много синтаксического сахара. Синтаксический сахар – это такие конструкции, которые созданы для облегчения написания и понимания кода (особенно если это код другого программиста) и не играют роли при компиляции; – средний порог вхождения. Синтаксис похожий на C, С++ или Java облегчает переход для других программистов. Для новичков это также один из самых перспективных языков для изучения; – Xamarin. Благодаря покупке Xamarin на C# теперь можно писать под Android и iOS. Это, несомненно, большой плюс, так как их собственная мобильная ОС (Windows Phone) не завоевала большой популярности; – добавлено функциональное программирование (F#); – большое сообщество программистов; – много вакансий на должность C# программиста в любом регионе. Минусы: – ориентированность, в основном, только на .NET (на Windows платформу); – бесплатность только для небольших компании, учащихся и программистов-одиночек. Для больших команд покупка лицензий обойдется недешево. Поэтому если у вас есть своя фирма, то придется раскошелиться; – сохранили оператор go to. SQLite — компактная встраиваемая СУБД. SQL поддерживает динамическое типизирование данных. Возможные типы значений: INTEGER, REAL, TEXT и BLOB. Так же поддерживается специальное значение NULL. Размеры значений типа TEXT и BLOB не лимитированы ничем, кроме константы SQLITE_MAX_LENGTH в исходниках sqlite, равной миллиарду (109). Каждое значение в любом поле любой записи может быть любого из этих типов, независимо от типа, указанного при объявлении полей таблицы. Указанный при объявлении поля тип хранится для справки в его исходном написании, и используется в качестве основы для выбора предпочтений (так называемое «type affinity»: это подход, редко встречающийся в других СУБД) при выполнении неявных преобразований типов на основании похожести этого названия типа на что-либо, знакомое SQLite. В этот алгоритм зашит обширный перечень практикуемых в других СУБД вариантов названий типов данных. Если безопасного преобразования записываемого значения в предпочитаемый тип не получается, SQLite записывает значение в его исходном виде. Для получения значений из базы есть ряд функций для каждого из типов, и, если тип хранимого значения не соответствует запрашиваемому, оно тоже, по возможности, преобразуется. |