Информационная система для компактного мобильного устройства

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

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 15.01.2019
Размер файла 5,9 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Информационная система для компактного мобильного устройства

В.В. Коновалов

младший научный сотрудник лаборатории информационных систем

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

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

Для различных задач используются различные языки программирования и среды разработки, которые учитывают специфику конкретно поставленной задачи.

Для того, чтобы приложение работало на различных платформах, одним из наиболее удобных решений является использование языка программирования Javascript. Фактически данный язык программирования присутствует в любом устройстве, которое поддерживает выход в глобальную сеть Internet.

Всевозможные мобильные устройства имеют различные архитектуры, и для каждой из этих архитектур имеется, как правило, среда разработки (SDK), предназначенная для разработки приложений для операционной системы данной архитектуры. Такая среда разработки генерирует машинный код, выполняемый на рассматриваемом устройстве и не совместим с другими устройствами. В связи с этим использование SDK является трудоёмким и узконаправленным решением.

Однако, если в устройстве имеется Internet browser, в этом случае появляется возможность реализовывать приложения на языке Javascript, что позволяет существенно облегчить разработку и обеспечить переносимость приложения.

Метод разработки информационной системы для компактного мобильного устройства

В силу исторических причин, связяанных со спецификой использования Javascript, в качестве основного языка для создания динамических страниц HTML, в данном языке изначально отсутствовали функции работы с файлами локальной файловой системы.

Поскольку в языке Javascript отсутствует возможность чтения файлов [4], [1], имеется проблема получения входных данных. Имеется возможность использования технологии баз данных [2], однако черновая версия спецификации не принята в технологии HTML и является несвоместимой и проблематичной.

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

А именно, для не слишком большого объёма данных (несколько мегабайт) возможно преобразование программных данных напрямую в текст кода Javascript, при помощи следующей Перл-программы:

Рисунок 1: Программа преобразования текстового файла в код Javascript

информационный приложение мобильный устройство

Например, имелся текстовый файл с данными следующего вида -

---===--- Eesti

eesti <eesti>эстонский

===---===

---===--- a

<_ _ _[d-, _[de _[sid>буква _

===---===

---===--- aabe

<_ aape _[t-, _[te aape[id>буква

===---===

---===--- aabits

<_ _a _a[t-, _a[te _a[id>букварь, азбука, азы чего

===---===

---===--- aabitsa

азбучный, букварный

===---===

---===--- aabitsatхde

азбучная ~ прописная истина

===---===

---===--- aade

<_ aate _[t-, _[te aate[id>идеал, [высокая] идея

===---===

для него создаётся файл с расширением JS cо следующим содержимым:

var sonastik = ";Eesti^eesti эстонский;a^_ 1. буква _;aabe^_ буква;aabits^_ букварь, азбука, азы чего;aabitsa^_ азбучный, букварный;aabitsatхde^_ азбучная ~ прописная истина;aade^_ идеал, [высокая] идея;"

Затем, после включения данного фрагмента Javascript строкой

<script src="so~nastik-1-small.str.js"></script>

в переменной имеется требуемый текстовый массив.

Пример приложения

Поставлена задача со следующими входными ограничениями:

· приложение должно иметь удобный пользовательский интерфейс;

· использовать (мобильное) устройство с небольшим объёмом памяти.

· поиск по словарной статье выполняется в режиме offline, то есть без доступа в интернет

· предполагается переносимость на различные устройства, то есть желательно отсутствие привязанности к конкретной модели устройства

Примерный интерфейс имеет следующий вид -

Рисунок 2: мобильный словарь на Nokia C6700c

Аналогичное приложение на устройстве с большим количеством памяти допускает наличие более расширенных словарных статей.

Рисунок 3: мобильный словарь на устройстве с Android

Приведённый в качестве примера интерфейс предусматривает наличие подсказки словарной статьи в процессе набора слова. Также, возможно использование стандартных библиотек для реализации визуальных эффектов и, например, распаковки сжатых данных (zlib-inflate.js [3]).

<html>

<head><meta charset="utf-8"></head>

<body>

<style type="text/css">

#res {

background-color: #eeeeee;

outline-style: groove;

outline-color: #1111ff;

padding-left: 10px;

}

.sona-follow {

display: inline;

background-color: #eeeeee;

text-decoration: underline;

color: blue;

}

.sona-follow-m {

display: inline;

background-color: #f0f0f0;

text-decoration: underline;

color: black;

}

</style>

<p>слово:<input style="width: 2cm;" id="ee" type="text"></input><button id="ee-seek">поиск</button></p>

<div id="preview"> <p>...</p> </div><div id="res"> </div>

<script src="so~nastik-1-small.str.js"></script>

<script>

var ee =document.getElementById("ee");

var res =document.getElementById("res");

var prev =document.getElementById("preview");

var butt =document.getElementById("ee-seek");

ee.onkeyup = function () {

// seek in word list ;list

var que = ee.value.replace(/ +$/,'').toLowerCase();

var k=0, k0, k2, k3, r = new Array(), cq=";"+que;

var k4 = cq.length, k5;

// beginning of word .... ;blabla^

while ( (k0=sonastik.indexOf(cq,k)) != -1) {

k5 = sonastik.indexOf("^",k0+1);

r.push(

"<div class='sona-follow' onclick='javascript:ee.value=\""

+sonastik.substring(k0+1, k5)+"\";search_s();'>"+

"<b>"+que+"</b>"+sonastik.substring(k0+k4, k5) + "</div>"

);

k=k0+1;

if (r.length>15)

break;

}

// middle of word ....

r.push(' <br> ');

k=0;

while ( (k0=sonastik.indexOf(que,k)) != -1) {

if (sonastik.substring(k0-1,k0) != ";") {

// BUT- check that it falls into word definition, first!

k2 = sonastik.indexOf(';',k0+1);

k3 = sonastik.indexOf('^',k0+1);

if (k2<k3) {

// indeed, false positive

k=k0+1;

continue;

}

k5 = sonastik.lastIndexOf(";",k0)+1;

r.push(

"<div class='sona-follow-m' onclick='javascript:ee.value=\""+sonastik.substring(k5,k3)+"\";search_s();'>"+

sonastik.substring(sonastik.lastIndexOf(";",k0)+1,k0)

+ "<b>" + que + "</b>"

+ sonastik.substring(k0+que.length,k3) +"</div>"

);

}

k=k0+1;

if (r.length>25)

break;

}

prev.innerHTML = "<p>" + r.join(' ') + "</p>";

}

function search_s () {

var s = ee.value.replace(/ +$/,'').toLowerCase(), k0, k1;

if ((k0=sonastik.indexOf(";"+s+"^")) != -1) {

k0 += 2+s.length;

// found...

k1=sonastik.indexOf(";",k0);

var str=sonastik.substring(k0,k1); //assert k1!=-1

res.innerHTML = ("<p>"+

str.replace(/_/g, s).replace(/&/g,'&amp;')

.replace(/</g,'&lt;')

.replace(/\n/g, "<br>")+"</p>");

}

}

butt.onclick = search_s;

ee.focus();

</script>

</body></html>

Заключение

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

Литература

1. ECMAScript Language Specification (http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf)

2. http://dev.w3.org/html5/webstorage/

3. http://www.onicos.com/staff/iz/release/zlib-js/zlib-js.html

4. JavaScript: The Definitive Guide, 5th Edition, Publisher: O'Reilly Pub Date: August 2006 Print ISBN-10: 0-596-10199-6 Print ISBN-13: 978-0-59-610199-2

Размещено на Allbest.ru


Подобные документы

  • Основы создания мидлетов (midlet) - MIDP приложений для мобильных устройств на языке Java. Особенности устройств, для которых мидлеты предназначены. Библиотеки javax.microedition. Практические примеры создания MIDP приложений для телефона и их запуск.

    методичка [25,9 K], добавлен 30.06.2009

  • Исследование возможностей и областей использования языка программирования JavaScript. Сравнительный анализ языков программирования JavaScript и PHP. Разработка интерактивного Web-приложения на примере теста по теме "Программирование на языке Delphi".

    практическая работа [26,0 K], добавлен 04.02.2015

  • Сравнительная характеристика, возможности и функции языков программирования JavaScript и PHP. Основные области их использования. Разработка интерактивного Web-приложения с применением JavaScript на примере теста по теме "Программирование на языке Delphi".

    курсовая работа [19,3 K], добавлен 01.07.2014

  • Типизация данных в JavaScript. Правила объявления локальных и глобальных переменных. Объявление и использование функций. Открытие и закрытие файла, запись в него и чтение из него. Создание теста с использованием средств языка программирования PHP скрипт.

    контрольная работа [73,8 K], добавлен 25.01.2016

  • Характеристика возможностей редактора DreamWeaver и Front Page. Особенности языков программирования PHP и JavaScript. Основные требования, предъявляемые к Web-странице. Специфика программного обеспечения для ее создания и эффективности использования.

    курсовая работа [44,6 K], добавлен 03.02.2011

  • Практическая значимость создания сайта. Язык программирования JavaScript. Основные области использования языка JavaScript при создании интерактивных HTML-страниц. Язык программирования PHP. Программная основа сайта. Создание оформления дизайна сайта.

    дипломная работа [1,1 M], добавлен 05.03.2013

  • Создание интерактивных веб-страниц. Что такое JavaScript. Полная интеграция с браузером. Мощные средства для создания сетевых соединений. Подключение и выполнение JavaScript. Загрузка данных без перезагрузки страницы. Объекты для работы с мультимедиа.

    лекция [16,2 K], добавлен 05.02.2012

  • Базовый синтаксис языка сценариев JavaScript. Создание страниц, включающих в себя программы, которые взаимодействуют с пользователем, управляют браузером и динамически создают HTML-содержимое. Работа с объектами, которые инкапсулируют данные и поведение.

    лабораторная работа [58,6 K], добавлен 25.05.2016

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

    реферат [1,0 M], добавлен 20.10.2014

  • Разработка программного решения по созданию мобильного приложения. Изучение технологий для разработки приложений. Анализ работы торговых агентов. Обоснование выбора языка программирования. Проектирование интерфейса структуры и верстка, листинг программы.

    дипломная работа [2,2 M], добавлен 08.06.2017

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.