Новые статьи

Компилирование булевых выражений

Java  перевод, парсер

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

Набор инструкцийВ нашей маленькой ВМ есть небольшой набор инструкций для поддержки логических выражений.
  * PUSH кладет значение переменной в стек
  * AND выполняет логическое «И» между двумя операндами в стеке
  * OR выполняет логическое «ИЛИ» между двумя операндами в стеке
  * NOT выполняет логическое «НЕ» между одним операндом в стеке
Виртуальная
Продолжить

Рейтинг:  6  (За: 6 | Против: 0)
Добавлено: 16.11.2015 от Senderman

Комментарии (9)

Графическое поле ввода

Java  java me, gamedev

Возьмем проще, что нам надо для того, чтоб сделать подобный трюк?
1. Смена дисплеев — Canvas-TextBox
2. Обработка команды для TextBox
3. Класс для курсора
4. Класс для графического поля ввода


     Начнем с класса для поля ввода. Назовем его GInput.java
  1. //GInput.java
  2. import // упускаю, это азы и каждый должен сам уметь это делать
  3.  
  4. public class GInput {
  5.  
  6.   public int x, y, //точка расположения поля на дисплее
  7.                   width, height; // размеры (ширина, высота)
  8.  
  9.   public String text = "Нажми для ввода"; // текст поля
  10.  
  11.   public GInput(int x, int y, int width, int height) {
  12.     this.x = x ;
  13.     this.y = y;
  14.     this.width = width;
  15.     this.height = height;
  16.   }
  17.  
  18.   //рисование поля, нарисуем рамку и внутри пусть будет текст (можешь здесь

Продолжить

Рейтинг:  6  (За: 7 | Против: 1)
Добавлено: 15.11.2015 от vl@volk

Комментарии (9)

Пишем простейший роутинг

PHP/MySQL  php, routing

Доброго времени суток, %username%! Сто лет ничего не писал и столько же лет выходят статьи на эту тему, но все же, я оставлю это здесь

Итак, чем же мы займемся? Мы напишем роутинг в стиле скелетона.

Что же такое роутинг и с чем его едят:

Вот, что говорит вики на этот счет - Routing) — процесс определения маршрута следования информации в сетях связи. Маршруты могут задаваться административно (статические маршруты), либо вычисляться с помощью алгоритмов маршрутизации, базируясь на информации о топологии и состоянии сети, полученной с помощью протоколов маршрутизации (динамические маршруты).
Маршрутизация — Википедия
https://ru.wikipedia.org/wiki/Маршрутизация


А если проще и ближе к делу - роутинг, это средство определения и контроля маршрута запроса пользователя.
Продолжить

Рейтинг:  3  (За: 6 | Против: 3)
Добавлено: 13.11.2015 от Artorius

Комментарии (22)

Rust и Benchmarking

Прочие языки  rust

Оригинальный код бенчмарка на Java выглядел так:
  1. public class Main {
  2.     public static void main(String[] args) {
  3.         int w = 25600;
  4.         int h = 2048;
  5.         int a[] = new int[w*h];
  6.         long stt = System.currentTimeMillis();
  7.         for (int i=0; i<w; i++)
  8.             for (int j=0; j<h; j++)
  9.                 a[i+w*j] = i*j;
  10.         System.out.println(System.currentTimeMillis()-stt);
  11.     }
  12. }
Казалось бы — что сложного просто перенести этот код на другой язык, тем более, что близкий по парадигме. Полный энтузиазма и решительности, я поставил Rust, Cargo и SolidOak (рекламирующую себя как Rust IDE, но на деле представляющую из себя просто NeoVim в окошке) и понял как сильно я ошибался.

Открыть спойлер

Продолжить

Рейтинг:  7  (За: 7 | Против: 0)
Добавлено: 9.11.2015 от Oak

Комментарии (13)

Прерванное нажатие в андроид

Android  touch

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

Скриншот работающего приложения:

CurcleTap.apk

Цитата неточного туториала 7 апреля 2017 года:

ACTION_CANCEL – практически никогда не случается. Насколько я понял, возникает в случае каких-либо внутренних сбоев, и следует трактовать это как ACTION_UP.
© StartAdroid.ru

Код
Продолжить

Рейтинг:  2  (За: 3 | Против: 1)
Добавлено: 6.11.2015 от Askalite

Комментарии (5)
<< 1 ... 29 30 31 32 33 ... 49 >>

Мы в соцсетях

tw tg yt gt