На чем написать программу для работы с бд

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Switch branches/tags
Branches Tags
Could not load branches
Nothing to show
Could not load tags

Nothing to show

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Cancel Create

  • Local
  • Codespaces

HTTPS GitHub CLI
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more about the CLI.

Sign In Required

Please sign in to use Codespaces.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Программа с базой данных и интерфейсом PYQT5 на Python

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

09cea59 Jun 4, 2020

Git stats

Files

Failed to load latest commit information.

Latest commit message
Commit time

readme.md

База данных с соединением клиент-сервер

Какой язык программирования наиболее удобен для приложения с локальной базой данных?

Пока в кандидатах после беглого обзора литературы языки C# и Java, а в качестве базы данных SQLite. Однако с нуля трудно оценить, что будет более удобным в применении 🙂 Отсюда и возникает вопрос: подойдет ли java для указанных выше целей? Или всё же лучше C#?

  • Вопрос задан более трёх лет назад
  • 6599 просмотров

7 комментариев

Оценить 7 комментариев

Если вы хотите запускать на android, то только SQLite, так как андроид работает локально только с этой БД. А java — да, хватит.

Спасибо за совет! Задам совсем нубский вопрос: возможен вариант простого переноса файлика БД из Win в Андроид? Т.е., нужно уехать и работать за планшетом — переносим файл БД на планшет и продолжаем работу.

Yippee-ki-yay: Да, SQLite переносима.
Yippee-ki-yay: так цель программу написать или язык выучить?

rediskus: и то, и то. Есть и еще одна подцель: хочется проверить, применимы ли конструкции B метода в реальном программировании 🙂

Yippee-ki-yay: При желании можно все что угодно применить. Однако фразы «Литературы по Delphi практически нету» и «конструкции B метода в реальном программировании» от одного человека слышу впервые. 🙂 Делфя живет вот уже 21-й год и помирать пока не собирается. Литературы за это время по ней написан вагон и маленькая тележка, и большая часть в инете легко ищется.

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

Как подключиться к MySQL на Python | MySQL создание таблицы, добавление, удаление, вывод данных

Простой пример: недавно одна небольшая контора из нашего города резко отказалась от виндов и перешла на линукс. ПО для работы со сканером штрихкодов резко перестало работать, а покупать или где-то доставать рабочее заказчик не захотел. Одни умные мальчики пытались вкрячить в систему wine и запустить виндовую софтину, другие притащить node.js. Как итог не заработало ничего.

Читайте также:
Один в один похожие программы

Задача решилась пересборкой старого ПО, написанного на делфи с помощью Лазаруса под линукс примерно за 2 вечера. И пусть это не Qt и даже не node.js-оно собралось и работает.

rediskus: когда я писал про литературу, имел в виду доступные с рутрекера книги по связке БД и Delphi, причём описывающие более-менее свежую версию программы.
Насчет B — вы правы, только пишут они на AMN (Abstract Machine Notation), и после доказательства непротиворечивости абстрактной модели проводят процедуру детализации (refinement), переводя конструкции AMN в исполняемый программный код. При этом, разумеется, свойство непротиворечивости должно сохраниться. Сейчас популярна фишка с переводом на Java, поэтому и заинтересовался.

Delphi удобен в том смысле, что он более близок к B. Например, объявление всех переменных в начале программы — одинаково в Delphi и B. Мне это кажется более удобным, чем впихивать переменные в любом месте программы 🙂 Однако судя по нынешнему состоянию дел, делфа не у дел 🙂 Вот и захотелось выбрать инструмент поновее. Задача реальная, поэтому можно и дело полезное сделать, и новый язык разобрать. Более склоняюсь к Java.

Решения вопроса 0
Ответы на вопрос 9

yarosroman

C# the best

1. Настолько кроссплатформенное (Win и Android), я думаю вряд ли возможно, ибо разные вещи, мобильный и оконный интерфейс.
2. Это без проблем, даже писанное на с# можно собрать в 1 EXE переносимый.
3. тут не от языка зависит.

В качестве бд, я бы посоветовал FireBird, может быть и локальной база (есть сборка специальная Embedded называется, аналог SQLite), при этом можно в любой момент сделать сетевой, и настроить репликацию.

Насчет Delphi, не забываем, что это коммерческий продукт, и по хорошему, для коммерческого применения его надо купить. а вот VisualStudio например Express вообще бесплатный, а Community с небольшими ограничениями по использованию, плюс при этом не требуют никаких отчислений при коммерческом распространении продукта.

Ответ написан более трёх лет назад
Нравится 1 2 комментария
файрбирд устарела. ms sql есть редакции бесплатные и мелкие локальные, как sqlite

yarosroman

Николай Турнавиотов: Чем это интересно устарела? 3 версия на подходе. Плюс не требует установки, MSSQL Compact, обрезок еще тот, а вот для локальной нормальной бд в MSSQL придется повозиться, при этом поставить движок её, который под 100 мб, установочный пакет весит.

программист средней руки

Java будет требовать наличия на клиенте установленной JVM. для С# нужен аналог — .NET Framework, он он устанавливается вместе с системой, в отличие от JVM. Если знаете Delphi — то C# будет весьма близок. Более того — первый архитектор .NET — как раз архитектор Delphi. К сожалению не знаю как работают библиотеки для взаимодействия с SQLite.

Ответ написан более трёх лет назад

Спасибо за ответ 🙂 Но если на компе инсталлирована виртуальная машина для java, то сформировать обычный исполняемый файл с её помощью возможно, так? Хотя, судя по Вашему ответу, ближе к целям C#. Просто хочется если уж изучать, то нечто стоящее.

> Какой языка программирования наиболее удобен
тот, в который умеешь

> и возможность работы на планшете (android).
java

Ответ написан более трёх лет назад

К сожалению, умею в delphi, а она нынче не очень популярна. Скажите, пожалуйста, а возможен простой перенос файла базы данных между андроид и windows?

Yippee-ki-yay: не вижу проблем, если sqlite будет одной и той же версии. ты ведь про него?

aol-nnov: да, про него. Насколько я понял по беглому обзору java, с ним возможна такая комбинация: пишем код, компилим под Win и Android, предварительно изменив view для более удобного представления на планшете. А потом, при необходимости, перетаскиваем файл базы из одного приложения в иное. Это верно хоть отчасти? 🙂

Xamarin + C#.

Yippee-ki-yay: то, что написано на джаве под андроид, в плане гуи, ты на десктопе не применишь.
гуи придется писать два раза.

Читайте также:
Что такое персонифицированная программа педагога

aol-nnov: т.е. если при построении программы применять паттерн MVC, то придется переделать лишь часть view, так? А модели останутся нетронутыми?

Yippee-ki-yay: примерно ) делать начнёшь — увидишь 🙂

master2016

Всё нормально.
Душа лежит к java, но практически в этом случае больше подойдет C#.
Ответ написан более трёх лет назад

Спасибо за ответ, но почему же больше подойдет C#? Java для windows — совсем никак, или же C# просто более заточен для работы с базами данных?

master2016

«вставил флешку, запустил exe-шник, работает» — у вас же такое требование.
Библиотечки для C# уже установлены в Windows.
А для JAVA вам придется устанавливать виртуальную машину (JVM).

Если же у вас все компьютеры находятся в пределах досягаемости и установить JVM туда потребуется только один раз, выбирайте JAVA без сомнений.

Но еще подумайте вот о чем — а не лучше ли сделать доступ к базе через браузер? Тогда вы вообще не будете зависеть от всякого харда (ну почти) 🙂

Все компы в пределах досягаемости 🙂 А вот инет нестабилен, поэтому функцию передачи базы на сервак я встраивать буду (думаю, такое есть), а вот работать придется локально.

master2016

«работать придется локально» — это не отменяет работу в браузере. Интранет — и все дела. Зато, когда появится нормальный интернет, у вас уже будет все готово.

На выходе сможете вообще сделать один бинарик без внешних зависимостей вшив в него все ресурсы
Как это сделать вот тут можете прочитать p0nce.github.io/d-idioms/#Embed-a-dynamic-library-.

А книгу для изучения вот эту порекомендую ddili.org/ders/d.en/index.html

Ответ написан более трёх лет назад

Спасибо, интересный вариант, первый раз такое слышу 🙂 Просто тут возникает небольшое опасение — не получится ли на выходе знания по очередной delphi?

Yippee-ki-yay: нет не получится. Относитесь к Ди как к правильному С++ или как к C# без завязки на .NET Язык более чем живой и хоть и медленно, но рынок занимает.
Вход куда проще чем в C#, единственное небольшие сложности с графическими тулкитами, но они решаемые.

Yippee-ki-yay, beduin01,
D уже сдох.
первое сентября уже наступило, да. Иксперты по языкам в виде niokrokadile уже подтянулись

2ord

Схема создания приложений для Андроида такова:
flow.jpg
Создавать байткод в .class файлах могут не только компиляторы языка Java, но и компиляторы большого множества других языков. Байткод Java исполняется в среде исполнения Java VM и её аналоге, Dalvik VM:
dalvik.jpg
На портативных устройствах Android установлен runtime Dalvik VM, а на настольных (сегодня это уже размытое понятие) — полноценная Java SE Runtime Environment.
Одно дело — скомпилировать байткод в файл, а другое дело — исполнять инструкции байткода из файла.
Так, Java SE Runtime Environment использует оконную систему низлежащей ОС. В Windows — Windows API, а Linux — X server API. Несмотря на разницу в оконных системах, у них много общего.
А вот на портативных устройствах экраны другие и вместо мыши — касание экрана или перо. Причём, из-за того, что размеры экрана малы, то построение графического интерфейса для настольных и портативных устройств сильно отличается.
Тенденция последних лет — это так называемый «адаптивный дизайн», когда графический интерфейс подстраивается под особенности экрана: автоматически изменяются размеры графических элементов, перескакивают на следущую строку и т.д.

Для написания настольных приложений Delphi подходит.
Для Андроида же можно создавать программы на Free Pascal в связке с laz4android.

Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать

Если выбирать между Java и С#, то десктопное приложение всё же лучше писать на C#, потому как гуй у явы выглядит слегка кособоко. Delphi так же весьма хорош + абсолютная портативность, в отличии от кандидатов выше. К тому же, при должном умении, на нём можно и под Андроид писать.

Читайте также:
Как удалять программы в линукс дебиан

Ответ написан более трёх лет назад

Спасибо за Ваш ответ, но ведь, насколько я понял из дискуссий программистов на различный сайтах, знания по delphi бесполезны ввиду невозможности их применения в реальных проектах. Поэтому и выбираю между C# и Java 🙂

Yippee-ki-yay: Вы можете написать свой проект на дельфях? Он реальный или иллюзорный?

P.S. Это не к тому, что я фанат дельфей. Я вообще виндой не пользуюсь, так что и дельфями, соответственно, тоже.

Yippee-ki-yay: Вы ищете язык чтобы решить проблему или научиться программировать? На Delphi решить проблему проще всего. Но учить его чтобы потом найти работу, тут да, это не лучший вариант. Тут вперёд вырывается java, но для вашей задачи, наверное не лучшее решение — десктопный гуй + портативность, это не совсем про неё. А вот для Андроида, она в самый раз.

Тут C# и рядом не стоял.

AVKor: проект вполне реальный, никакой иллюзорности. Похожее я писал на делфе лет 5-6 назад, с тех пор многое подзабылось, но несложно вспомнить. Просто смысла нет вспоминать неприменимое, если есть шанс выучить новое и реально применимое 🙂

zedxxx: и чтобы решить проблему, и чтобы разобраться кроме делфы в более весомом языке. Уже дня три рою литературу и форумы, но определиться всё никак не могу.

Источник: qna.habr.com

Андрей Попов. Доцент.

1. Классификация приложений и СУБД. Задачи курса и л/р 1.

2. Создание приложений PHP с помощью менеджера зависимостей Composer. Задачи л/р 2.

3. Структура и оформление консольного PHP-приложения.

3. Консольные и браузерные приложения.

4. Особенности JavaScript в браузерных приложениях.

5. Обработка браузерных событий в JavaScript.

6. База данных IndexedDB.

7. Веб-приложения. Протокол HTTP. Веб-сервер и CGI-скрипты.

Статистика группы 402

  1. Полнота выполнения задания (в процентах).
  2. Своевременность сдачи задания:
    • К контрольному сроку — коэффициент 1.
    • Задержка до 14 дней — коэффициент 0,8.
    • Задержка 14 дней и более — коэффициент 0,5.

    Вопросы к экзамену

    1. Распределенная разработка приложений с использованием Git и GitHub.
    2. Интерактивный и программный режимы работы с базами данных на примере SQLite.
    3. Задача проектирования и создания структуры базы данных для реляционных и нереляционных СУБД.
    4. Обеспечение логической целостности данных средствами СУБД (на примере MySQL или MariaDB).
    5. Работа с данными в исполняемые скриптах для Unix-подобных операционных систем и для Windows.
    6. Архитектура консольных приложений. Стандартные потоки ввода/вывода.
    7. Разработка консольных приложений, работающих со встраиваевыми базами данных (на примере SQLite).
    8. Программный доступ к реляционным базам данных с помощью SQL на примере библиотеки PDO в PHP.
    9. Объектно-реляционные отображения данных (ORM). Использование ORM на примере RedBean PHP.
    10. Стандарты PSR при разработке PHP-приложений.
    11. Повторное использование кода для PHP-приложений. Пакетный менеджер Composer.
    12. Модульная архитектура браузерных JavaScript-приложений.
    13. Работа с локальными данными из браузерных приложений. Local storage и база данных IndexedDB.
    14. Использование нереляционных баз данных на примере IndexedDB и MongoDB.
    15. Реализация клиент-серверной архитектуры веб-приложений, протокол HTTP.
    16. Архитектура одностраничных веб-приложений. Технологии асинхронного обмена данными с сервером.
    17. Работа с данными из веб-приложений с использованием REST API.
    18. Архитектура серверной части веб-приложений на PHP.
    19. Серверный и клиентский рендеринг веб-страниц, технологии Page Controller и Front Controller.
    20. Использование микрофреймворков для создания веб-приложений на примере Slim (PHP).

    Литература к курсу

    1. Форта Б. «SQL за 10 минут» — М.: Вильямс, 2014. – 288 с.
    2. Кузнецов М.В., Симдянов И.В. «MySQL 5» — СПб.: БХВ-Петербург, 2006. — 1024 с.
    3. Маклафлин Б. «PHP и MySQL. Исчерпывающее руководство» — СПб.: Питер, 2013. — 512 с.
    4. Колисниченко Д. «PHP и MySQL. Разработка web-приложений» — СПб.: БХВ-Петербург, 2013. — 560 с.
    5. Смольянов А.Г., Карьгин И.П., Смольянова Е.Г. «Работа с удаленными базами данных средствами Web : учебное пособие» — Саранск: Мордов. гос. пед. ин-т, 2017. — 122 с.

    Источник: andpop.ru

    Рейтинг
    ( Пока оценок нет )
    Загрузка ...
    EFT-Soft.ru