Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
 
VG_Jan
0 / 0 / 0
Регистрация: 21.11.2016
Сообщений: 3
#1

Написать программу-тестовик - Программирование Android

21.11.2016, 17:17. Просмотров 416. Ответов 21
Метки нет (Все метки)

Приветствую форумчане. На данный момент у меня есть цель написать программу-тестовик, на подобии подготовительных тестовиков ВОУДа, школьной или программы ВУЗов, с базой тестов, и чтобы она базировалась на Андроиде. Имеется Eclipse для разработки, и хотел самостоятельно обучиться азам по-средством видео-уроков, но чувствую, что что-то не идет процесс. Был бы рад советам и рекомендациям со стороны опытных людей. Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2016, 17:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написать программу-тестовик (Программирование Android):

Написать программу Шрифт - Программирование Android
Привет, Ребят... Такой вопрос.... как написать саму как программу (Шрифт.apk), которую устанавливает в телефон и она меняет полностью...

Хочу написать программу - Программирование Android
Здравствуйте. Раньше я изучал программирование под андроид и основы Java. Надо только будет освежить память. Хочу написать программу,...

Хочу написать программу на Android - Программирование Android
Всем привет! Ситуация такова: Решил сделать приложение на Android,а знаний в программировании абсолютно никаких нет, так как являюсь лишь...

нужно написать простеньку программу на Android - Программирование Android
кто может сделать простеньку программу на Андроид и выложить ее в плей маркет, ПМ. оплата договорная

Нужно написать программу под андроид! - Программирование Android
Всем доброго времени суток. Очень нужна помощь, по написанию программы под андроид. К сожалению навыками программирования не владею, но...

Кто может программу написать на андроид? - Программирование
Если есть умельцы для быстрой связи пишите <cut>

21
bako-95
9 / 9 / 4
Регистрация: 27.04.2015
Сообщений: 112
21.11.2016, 18:01 #2
Познакомится со sql базой данных.
Создаете базу данных, туда закидываете вопросы с вариантами ответов. Правильные ответы пишутся в одном столбце. Затем разбираетесь с адаптером под Андроид и делаете функцию вывода нужных строк из базы данных вопросов . Варианты ответов перемешиваете тут же. Создаете обработчик принимающий выбранные варианты и определяющий правильные ответы.
Для полноты функций можете создать еще одну базу данных куда будут записываться набранные баллы и показываться в виде графиков-таблиц (нужное подчеркнуть).

Цель ясна, а опыт в других платформах и языках есть? Если нет, то потренируйтесь сначала на котиках используя sql базу данных, адаптер, и другие элементы.
1
VG_Jan
0 / 0 / 0
Регистрация: 21.11.2016
Сообщений: 3
21.11.2016, 18:24  [ТС] #3
Спасибо вам за дельную подсказку. О SQL не знал. Буду изучать. А не подскажете в каком клиенте работать с этим языком, и применим ли он дальше будет в моей работе при портировании на андроид? Я, как можно догадаться, не особо опытен в этих вещах.
0
OlegJV
103 / 103 / 29
Регистрация: 13.03.2016
Сообщений: 472
21.11.2016, 19:18 #4
Я когда писал подобное, у меня тесты грузились с сервера в виде xml файлов. Поскольку количество вопросов было относительно небольшим (порядка 150 - 200) решил не заморачиваться с БД, а так и сохранял xml. Для выделения правильных ответов использовал различные префиксы у строк с ответами, которые отбрасывал при выводе на экран. На случай, если особо умные тестируемые додумаются открыть файл в текстовом редакторе, для префиксов использовал одинаковые с виду буквы, типа правильные ответы - "с" латинская, неправильные - "с" русская.
1
Antohsa
8 / 12 / 0
Регистрация: 18.10.2016
Сообщений: 115
21.11.2016, 19:42 #5
VG_Jan, SQL Вам пригодится в будущем, при более серьезных приложениях 100%. Да и вообще эта технология широко где используется, например, при в Web технологиях.. сейчас очень много сайтов это php + MySql внутри и HTML + JavaScript снаружи..

Для работы в визуальном представлении можно использовать DB Browser for sqlite" & "SQLite studio....

Для кодинга сам Eclipse...
1
Pablito
2477 / 1961 / 611
Регистрация: 12.05.2014
Сообщений: 6,866
Завершенные тесты: 1
21.11.2016, 19:49 #6
Цитата Сообщение от Antohsa Посмотреть сообщение
Для кодинга сам Eclipse...
я уже говорил - хватит раздавать по темам совершенно дурацкие советы
ты вводишь людей в заблуждение
они читают это в верят таким как ты на слово, а потом у них начинаются проблемы
0
Antohsa
8 / 12 / 0
Регистрация: 18.10.2016
Сообщений: 115
21.11.2016, 19:51 #7
Паблито, в Eclipse нельзя писать приложения на Android с использованием SQL?
0
Pablito
2477 / 1961 / 611
Регистрация: 12.05.2014
Сообщений: 6,866
Завершенные тесты: 1
21.11.2016, 20:18 #8
Цитата Сообщение от Antohsa Посмотреть сообщение
в Eclipse нельзя писать приложения на Android с использованием SQL?
я знаю карате, дзюдо, самбо и много других страшных слов
0
Antohsa
8 / 12 / 0
Регистрация: 18.10.2016
Сообщений: 115
21.11.2016, 20:20 #9
Паблито, в общем оффтоп... лучше пишите по делу, а не придирайтесь ко мне...
0
VG_Jan
0 / 0 / 0
Регистрация: 21.11.2016
Сообщений: 3
21.11.2016, 20:42  [ТС] #10
Так, DB Browser for sqlite Я уже попользовал. В качестве начального значения под номер выделил поле "_id", дальше поле вопроса, и пять полей под варианты ответа, где первое из пяти - правильный вариант. По такой схеме Я создам базу. С базой разобрались.
Теперь, 1) в каком формате лучше сохранить базу; 2) Что самое главное, каким образом писать приложение, на что больше всего уделить внимание, как использовать БД в этом приложении?
Извиняюсь если как-то занудно, но хотелось бы разобраться.
Заранее спасибо.
0
Antohsa
8 / 12 / 0
Регистрация: 18.10.2016
Сообщений: 115
21.11.2016, 20:56 #11
VG_Jan, на устройстве база сохранится в файле. Вам об этом не стоит переживать... БД используйте для хранения данных.. остальные вопросы слишком расплывчаты... Вы лучше начните, буду вопросы - пишите...
0
OlegJV
103 / 103 / 29
Регистрация: 13.03.2016
Сообщений: 472
22.11.2016, 03:04 #12
Создание БД описано в мануалах 100500 раз, тут вопросов нету. Первый возникающий вопрос - откуда и каким образом будет заполняться база данных? Где и в каком формате будут храниться тесты вне приложения?
Я к чему веду - я ничуть не против SQL, очень даже за, когда это нужно. Но я в свое время для хранения тестов не придумал ничего лучше xml. Вполне себе нормальный способ - загружать внешний xml файл и парсить его в базу данных. Но есть ли в этом смысл, если файлы небольшие? Я вот поглядел по своим файлам, если оставить xml с одним тестом, то у теста с наибольшим количеством ответов, причем старался выбрать самые длинные, размер не дотягивает до 3 кб со всеми тегами и префиксами). Ну то есть если очень грубо - в гигабайте памяти смартфона поместится около 400 000 вопросов.
Теперь далее. Может я и глупости пишу, ну да ладно. Из xml каждый тест я парсил в виде csv строки, где первый элемент - вопрос, остальные - ответы. Какой правильный какой неправильный - я уже писал. Потом эта строка путем split превращается в ArrayList, причем количество ответов может быть любым. А если у нас база данных с пятью полями под ответы, а попался тест с шестью ответами - все переделывать? Тут предлагалось делать в таблице БД отдельный столбец для правильных ответов - а если их несколько, или даже все правильные? Все будет дублироваться? Хотя ладно, в защиту любителей SQL - никто не запрещает хранить полученные из xml csv строки в базе данных с одним полем))
Ну а потом в моем варианте все действия происходят в кастомном адаптере - из ArrayList добывается первый item, который вопрос, остальные идут в ТеxtView, предварительно разделяясь на substring(0, 2) - префикс и substring(2) - сам ответ. В том же адаптере есть метод вроде isTrue, который перебирает все ответы и сравнивает их с отмеченными пользователем, например, чекбоксами. Что-то вроде if (checkBox.isChecked == praefix.equals("c_"). То есть вся логика обработки теста находится в адаптере и не захламляет основной код, который используется чисто под статистику - сколько ответов правильных в процентах и т.п.
Извиняюсь за многабукаф.
0
Antohsa
8 / 12 / 0
Регистрация: 18.10.2016
Сообщений: 115
22.11.2016, 03:43 #13
Как я понимаю, SQL целесообразно использовать в том случае, когда необходимо оперативно делать выборку из таблиц, применяя удобный синтаксис этого инструмента (типа SELECT FROM WHERE SORT LIMIT), особенно если много разных связанных по структуре таблиц и записей в них...

Если можно ограничится файлами, не занимаясь написанием своих аналогов SELECT FROM, то их и нужно использовать. Зачем городит огород. Просто первый же ответ был про SQL, эту тему и развили...

SQL, наверное, еще будет намного быстрее работы с файлами, но в данном случае разница будет минимальной, если вообще будет...
0
OlegJV
103 / 103 / 29
Регистрация: 13.03.2016
Сообщений: 472
22.11.2016, 03:52 #14
Цитата Сообщение от Antohsa Посмотреть сообщение
SQL, наверное, еще будет намного быстрее
В моем скромном парке девайсов основной подопытный котик - это Samsung S3 mini, далеко не самый мощный на сегодня. Он с рутом и с отладкой через WiFi, поэтому чаще всего используется. Никаких тормозов на нем замечено не было. Соответственно на S5 mini их тем более не замечал. Про Sony xperia Z5 думаю можно не говорить.
Каюсь, я не тестировал программу на самом старшем (по возрасту) HTC Desire HD, ибо считаю нецелесообразным в наше время ворошить фекалии мамонтов. Но есть подозрение, что и там бы все работало без тормозов))
Причем это с учетом того, что на момент написания программы я еще не дорос до использования RecyclerView и все делалось в обычном ListView.
0
Antohsa
8 / 12 / 0
Регистрация: 18.10.2016
Сообщений: 115
22.11.2016, 03:57 #15
OlegJV, да там разница заметная будет скорее всего, когда Вы будете пытаться сделать сложную выборку из таблицы в 10 000 строк... просто еще дело в том, что файл Вам надо читать полностью (либо до нужного места), а из SQL можно выбрать только то, что нужно...

Всегда одно и тоже можно сделать по разному. По идеи надо расценивать с точки зрения эффективности (быстрота, количество используемых ресурсов), но если приложение простое, а девайс мощный, думаю, что можно сделать так, как удобно.... ну и если руки не из плеч.. =)))
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.11.2016, 03:57
Привет! Вот еще темы с ответами:

Написать простейшую программу для андройд - Программирование Android
Нужно написать простейшую программу в универ. Задание скину в личку.

Написать программу нахождения максимального и минимального элементов массива - Программирование
Написать программу нахождения максимального и минимального элементов массива. Поиск элементов описать в виде функций с именами maxelem и...

Написать программу, в которой основную работу производит сервис - Программирование Android
Здравствуйте. Возникла задача написать программу в которой основную работу производит сервис. Также требуется Activity для настройки...

Как написать первую программу для андроид: нужны видеоуроки и статьи - Программирование Android
как написать первую программу для андроид ПОДСКАЖИТЕ ВИДЕОУРОКИ ИЛИ КНИГИ ГДЕ ВСЕ ПОДРОБНО ОПИСАНО


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Yandex
Объявления
22.11.2016, 03:57
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru