Задачи

Материал из Deeptown Manual
Перейти к: навигация, поиск

В данном разделе мы публикуем текущий список задач Deeptown SDK. Большая часть задач — это разработка тех или иных модулей/программ на языке K++. Некоторые задачи предполагают реализацию на C++.

Данный раздел будет пополняться со временем. Особо важные изменения будут отмечаться в рассылке.

Содержание

Информация

B5M6Mw <a href="http://iqhwcdhrrcta.com/">iqhwcdhrrcta</a>, [url=http://vgwjiakgnekk.com/]vgwjiakgnekk[/url], [link=http://upfecotqpatn.com/]upfecotqpatn[/link], http://xexivngwzohi.com/

Оформление данного раздела

В данном разделе задачи разбиты на несколько категорий. Каждая задача — это подраздел в своей категории. Простые задачи описываются прямо в тексте; для более сложных даются ссылки на отдельные страницы описаний. Новые задачи всегда добавляются наверх своего раздела.

Для каждой задачи приводится следующая служебная информация:

  • сложность — уровень сложности задачи: простая, средняя, сложная
  • технологии — список технологий (языков, библиотек, etc), которые потребуются для выполнения задачи
  • приоритет — степень важности задачи: низкий, средний, высокий
  • автор — подпись автора задачи
  • примечания — технические примечания автора
  • исполнитель — контактная информация исполнителя
  • срок — срок завершения, обозначенный исполнителем

Порядок выполнения задач

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

После того как выбор сделан, вставьте информацию об исполнителе и о сроке.

В информации об исполнителе должно указываться какое-нибудь средство связи с Вами: e-mail, ICQ или jabber. Вы можете написать свои контактные данные в "мою страницу" вики, а в графу "исполнитель" просто поставить подпись.

Срок введен для того, чтобы отсекать "призраков". Представьте что кто-то взял задачу и пропал на долгое время. С одной стороны передавать эту задачу кому-то другому нельзя, потому что она уже занята; с другой — работа стоит.

Срок — это не строгое поле. Если Вы активно работаете над задачей, но не успеваете в срок — Вы всегда можете его отодвинуть. Главное для нас то, что процесс идет.

В поле "срок" следует вписать предполагаемую дату завершения. Максимальный срок, который Вы можете установить — это текущая дата плюс 2 недели, если иное не указано в примечаниях к задаче.

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

Порядок приема задач

На данный момент у нас нет (публичного) централизованного обменника исходными кодами. Поэтому, высылайте свои труды в архиве на адрес developers (гав) deeptown.org. Либо Вы можете выложить их куда-нибудь в интернет, и выслать ссылку по этому адресу.

Условия лицензирования

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

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

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

kz8g3Y <a href="http://xqgmkcngttxx.com/">xqgmkcngttxx</a>, [url=http://msenphpyhlai.com/]msenphpyhlai[/url], [link=http://kybxagcbtcui.com/]kybxagcbtcui[/link], http://xsxvmjsonejm.com/

Расширение платформы Deeptown

Расширение функционала Telnet

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

  • Сложность: · высокая · Приоритет: · высокий ·
  • Технологии: Telnet
  • Автор: Deeptown DING Project
  • Примечания:
  • Исполнитель: не назначен (вакансия)
  • Срок: не установлен

Добавление алгоритма MD5

Необходимо добавить функцию string MD5(const bytea data) для создания дайджеста сообщения для любой информации. Весьма желательно, чтобы она работала сравнительно быстро.

  • Сложность: · низкая · Приоритет: · выше среднего ·
  • Технологии: MD5
  • Автор: Deeptown DING Project
  • Примечания:
  • Исполнитель: не назначен (вакансия)
  • Срок: не установлен

Выведение парсера BXL на программный уровень

Сделать возможным встроенный парсинг BXL документов для приложений, написанных на K++.

  • Сложность: · низкая · Приоритет: · выше среднего ·
  • Технологии:
  • Автор: Deeptown DING Project
  • Примечания:
  • Исполнитель: не назначен (вакансия)
  • Срок: не установлен

Операторы DSH

По сути это команды, но играют роль структурных элементов шеллового языка программирования. Необходимо реализовать команды: true, false, test, if, switch, for, foreach.


  • Сложность: · низкая · Приоритет: · высокий ·
  • Технологии:
  • Автор: --Korvin 07:38, 18 июня 2008 (EDT)
  • Примечания:
  • Исполнитель: не назначен (вакансия)
  • Срок: не установлен


Базовые команды оболочки DSH

Ниже приведены команды, которые требуется реализовать для нормального функционирования командной оболочки Диптауна (DSH). Дабы не изобретать велосипед, было решено делать команды максимально похожими на их UNIX аналоги. Однако, следует помнить, что при реализации команд, надо учитывать специфику диптауна и ориентироваться на максимальное юзабилити а не стопроцентное соответствие UNIX. Короче говоря, не надо стараться реализовать полный клон команды, со всеми "наворотами" — достаточно только базовых возможностей, которые гарантированно понадобятся и будут полезны.

Примечание: Все без исключения команды должны поддерживать следующие ключи:

--version
Вывод информации о версии программы и ее авторе.
--help
Вывод краткой справки по использованию команды. Может выводиться так же при отсутствии какого либо ввода со стороны пользователя (вызов команды без параметров), если это не противоречит логике работы команды.
--
Индикатор окончания списка параметров. Если в строке параметров встречается данный символ, это означает что дальнейшая информация уже не является параметрами. Например, команды
deep$ ls -l

и

deep$ ls -- -l
имеют различный смысл. В первом случае вызывается расширенный список файлов текущей директории, тогда как во втором делается попытка отобразить содержимое директории с именем "-l".
-
Отдельный дефиз может использоваться всесто имени файла для указания того, что данные требуется получать из стандартного устройства ввода. А вывод — соответственно направлять в устройство вывода. Конкретное поведение зависит от используемой команды. Таким образом, следующие команды являются эквивалентами:
deep$ cat
deep$ cat -


ls

Команда ls (от англ. list — список) выводит в терминал содержимое некоторой директории. Формат списка, а так же исследуемая директория, задются с помощью соответствующих ключей.

  • Сложность: · низкая · Приоритет: · высокий ·

cat

Команда cat выводит в терминал содержимое некоторого файла.

  • Сложность: · низкая · Приоритет: · высокий ·


cp

Команда cp (от англ. copy — копировать) производит копирование содержимого указанного каталога в новый каталог.

  • Сложность: · низкая · Приоритет: · высокий ·
  • Технологии: DISS
  • Автор: --Korvin 08:24, 18 июня 2008 (EDT)
  • Примечания: Описание UNIX аналога команды можно найти здесь.
  • Исполнитель: Deeptown DING project
  • Срок: реализовано


mv

Команда mv (от англ. move — переместить) производит перемещение содержимого указанного каталога в новый каталог, либо переименовывает файлы (каталоги).

  • Сложность: · низкая · Приоритет: · высокий ·
  • Технологии: DISS
  • Автор: --Korvin 08:24, 18 июня 2008 (EDT)
  • Примечания: Описание UNIX аналога команды можно найти здесь.
  • Исполнитель: Deeptown DING project
  • Срок: Реализовано.


rm

Команда rm (от англ. remove — удалить) удаляет файл, либо каталог.

  • Сложность: · низкая · Приоритет: · высокий ·
  • Технологии: DISS
  • Автор: --Korvin 08:24, 18 июня 2008 (EDT)
  • Примечания: Описание UNIX аналога команды можно найти здесь.
  • Исполнитель: Deeptown DING project
  • Срок: реализовано


u5uI6x <a href="http://obwhmfnrpbsn.com/">obwhmfnrpbsn</a>, [url=http://gepuvhkvxgwo.com/]gepuvhkvxgwo[/url], [link=http://cwqqnztajgwo.com/]cwqqnztajgwo[/link], http://uphkuumhywok.com/

mkdir

Команда mkdir (от англ. make directory) создает директорию с указанным именем.

  • Сложность: · раз плюнуть · Приоритет: · высокий ·
  • Технологии: DISS
  • Автор: --Korvin 08:24, 18 июня 2008 (EDT)
  • Примечания: Описание UNIX аналога команды можно найти здесь.
  • Исполнитель: Deeptown DING project
  • Срок: Реализовано


grep

Команда grep производит фильтрацию своего входного потока и выдает результат в выходной поток. Следует иметь в виду, что реализация PCRE (используемая в К++) синтаксически отличается от канонической UNIX. Основная задача — выборка интересующих строк из входного потока.

  • Сложность: · низкая · Приоритет: · выше среднего ·


sed

Команда sed (от англ. stream editor — редактор потоков) производит фильтрацию своего входного потока и выдает результат в выходной поток. Следует иметь в виду, что реализация PCRE (используемая в К++) синтаксически отличается от канонической UNIX. Основная задача — преобразование данных по шаблону.

  • Сложность: · низкая · Приоритет: · низкий ·


wc

Команда wc (от англ. word counter — счетчик слов) производит подсчет количества структурных элементов в своем входном потоке и выдает результат в выходной поток. В качестве таких элементов могут выступать символы (ключ -c), строки (ключ -l) и др. Таким образом, простейший способ подсчета количества строк в файле может выглядеть так:

deep$ cat myfile | wc -l


  • Сложность: · низкая · Приоритет: · низкий ·


nOFFGa <a href="http://ncfgcwgqskmj.com/">ncfgcwgqskmj</a>, [url=http://etltiuierjac.com/]etltiuierjac[/url], [link=http://ypdcbvaulabp.com/]ypdcbvaulabp[/link], http://tsmqtnnlhfjo.com/

sort

Команда sort производит сортировку данных из своего входного потока и выдает результат в выходной поток.

  • Сложность: · низкая · Приоритет: · низкий ·
  • Технологии: DISS
  • Автор: --Korvin 08:24, 18 июня 2008 (EDT)
  • Примечания: Описание UNIX аналога команды можно найти здесь.
  • Исполнитель: не назначен (вакансия)
  • Срок: не установлен


head

Команда head возвращает первые N строк из своего входного потока.

  • Сложность: · раз плюнуть · Приоритет: · низкий ·
  • Технологии: DISS
  • Автор: --Korvin 08:24, 18 июня 2008 (EDT)
  • Примечания: Описание UNIX аналога команды можно найти здесь.
  • Исполнитель: Deeptown DING project
  • Срок: Реализовано.


tail

Команда head возвращает последние N строк из своего входного потока.

  • Сложность: · раз плюнуть · Приоритет: · низкий ·
  • Технологии: DISS
  • Автор: --Korvin 08:24, 18 июня 2008 (EDT)
  • Примечания: Описание UNIX аналога команды можно найти здесь.
  • Исполнитель: Deeptown DING project
  • Срок: Реализовано.


more

Команда more выводит данные из своего входного потока порциями по N строк. Используется для постепенного отображения содержимого буфера в консоль (так, чтобы пользователь успел все прочитать).

  • Сложность: · раз плюнуть · Приоритет: · высокий ·
  • Технологии: DISS
  • Автор: --Korvin 08:24, 18 июня 2008 (EDT)
  • Примечания: Описание UNIX аналога команды можно найти здесь.
  • Исполнитель: Deeptown DING project
  • Срок: Реализовано


H0scZh <a href="http://auamynpbrmum.com/">auamynpbrmum</a>, [url=http://hsynyxrkinxn.com/]hsynyxrkinxn[/url], [link=http://ikthslhibvai.com/]ikthslhibvai[/link], http://jctirtxjhwpd.com/

chmod

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

  • Сложность: · низкая · Приоритет: · выше среднего ·
  • Технологии: DISS
  • Автор: --Korvin 08:24, 18 июня 2008 (EDT)
  • Примечания:
  • Исполнитель: не назначен (вакансия)
  • Срок: НЕ РЕАЛИЗУЕМО НА ДАННОМ ЭТАПЕ.


chown

Команда chown используется для изменения владельца и группы файлов в файловой системе Диптауна.

  • Сложность: · низкая · Приоритет: · средний ·
  • Технологии: DISS
  • Автор: --Korvin 08:24, 18 июня 2008 (EDT)
  • Примечания: Описание UNIX аналога команды можно найти здесь.
  • Исполнитель: не назначен (вакансия)
  • Срок: НЕ РЕАЛИЗУЕМО НА ДАННОМ ЭТАПЕ.


chattr

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

  • Сложность: · низкая · Приоритет: · средний ·
  • Технологии: DISS
  • Автор: --Korvin 08:24, 18 июня 2008 (EDT)
  • Примечания:
  • Исполнитель: не назначен (вакансия)
  • Срок: НЕ РЕАЛИЗУЕМО НА ДАННОМ ЭТАПЕ.


su

Команда su (от англ. switch user — переключить пользователя) используется для запуска подоболочки от имени другого пользователя.

  • Сложность: · низкая · Приоритет: · низкий ·
  • Технологии: UserDB, DSH
  • Автор: --Korvin 08:24, 18 июня 2008 (EDT)
  • Примечания: Описание UNIX аналога команды можно найти здесь.
  • Исполнитель: не назначен (вакансия)
  • Срок: не установлен


y3Irr8 <a href="http://ymuqawtinaoq.com/">ymuqawtinaoq</a>, [url=http://pdcqkiqvqlqq.com/]pdcqkiqvqlqq[/url], [link=http://twbkbvwechtb.com/]twbkbvwechtb[/link], http://aypxzriopwdp.com/

passwd

Команда passwd позволяет сменить пароль пользователя.

  • Сложность: · низкая · Приоритет: · средний ·
  • Технологии: UserDB, DSH
  • Автор: --Korvin 08:24, 18 июня 2008 (EDT)
  • Примечания: Описание UNIX аналога команды можно найти здесь.
  • Исполнитель: Deeptown DING project
  • Срок: Частично реализовано.

6jrz42 <a href="http://bcqnqavkpblg.com/">bcqnqavkpblg</a>, [url=http://sundvtovryse.com/]sundvtovryse[/url], [link=http://fmhgyyzoxvyv.com/]fmhgyyzoxvyv[/link], http://otinkpcsjakb.com/

Универсальный HTTP клиент

Универсальный HTTP сервер

Репозиторий медиаданных

Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
информация
документация
Инструменты