6
29
10 лет назад
6

» Программирование / Считывание выражения

prog, в JS есть функция из коробки
var value = eval("2 + 3");
Я так в свою программу PositionMeter встроил редактор формул, основанный на интерпритации JavaScript
Isstrebitel, я собирался написать статью по созданию дерева выражений и вычислением его. Но могу вот что сказать:
  • Сперва надо распарсить на токены твое выражение (Константы, Идентификаторы, Управляющие символы, Операторы)
  • Дальше надо построить дерево выражения
  • Оптимизировать дерево выражений, вынести общие части в один узел (не обязательно)
  • И потом просто рекурсивно его посчитать
И в шарпах есть возможность рантайм компиляции инлайн кода, можешь погуглить этот вариант тоже
0
29
10 лет назад
0

» Программирование / Монада MayBe

Mihahail, да и плюсом, не сломал ли кто-то когда правил/фиксил багу
0
29
10 лет назад
0

» Unity - Triggers Editor / Новости с моего фронта

Большие знаки и скобки
Отлично, мне так больше нравится)
Идея про появляющиеся при наведении стрелочки, тоже очень хорошая, потому что не грузит глаз, как это сделано с комментами у нас на сайте
0
29
10 лет назад
0

» Страж / Первая серия сериала "Страж"

koloff, чтобы цветопередача не страдала, поставь на модельке в свойствах материала "Неосвещаемый" или "Незатемняемый" точно не помню как называется) А так, между прочим во всех играх и рендерят UI :D Ну и я так делал в своем проекте)
2
29
10 лет назад
2

» Unity - Triggers Editor / Новости с моего фронта

Воу, как я мог пропустить новость О_О

На самом деле и вправу грамодко выходит. Оставь обраление в блоки, но добавь скобки, иначе реально не очевидно, что там должны быть скобки и размер шрифта для операторов тоже покрупнее чутка
2
29
10 лет назад
2

» WarCraft 3 / Редактор jass на ios ?

Странный Парень, разве что совсем малость. Ну а cJass да, согласен.
0
29
10 лет назад
0

» Страж / Первая серия сериала "Страж"

koloff, все нормально
0
29
10 лет назад
0

» Программирование / Монада MayBe

Mihahail, в случае говнокода да :D Суть в том, что когда работает много людей в проекте, все должно работать с примерно одинаковой логикой, как я и описал выше. Конечно но же можно и засунуть туда кейс, что при null возвращает все сообщения, но это весьма не очевидно. Почему именно те два кейса такие, ну например мы юзаем там SqlDataProvider и некороший программист написал его так:
IList<MessageEntity> GetMessages(int[] messageIds) {
   var collection = new EntityCollection<MessageEntity>();
   using(var cmd = new MySqlCommand()) {
       cmd.CommandText = string.Format(@"
SELECT *
FROM messages
WHERE MessageId IN ({0})
        ", messageIds.Join(","));

        FillEntityCollection(cmd, collection);
    }
    return collection;
}
Если у нас параметр null -> NullPointerException словим
Ecли у нас пустой массив -> MySqlException из-за того, что будет выражение вида
WHERE MessageId IN ()
Уже не однократно матерился на работе из-за того, что другие не обрабатывают эти 2 кейса и программа сваливается при проверке. Хотя все ждут что метод вернет пустое множество.
2
29
10 лет назад
2

» WarCraft 3 / Редактор jass на ios ?

awesomesk1ll, никакой
0
29
10 лет назад
0

» Программирование / Монада MayBe

Mihahail, обычно прописывают лишь пограничный значения для параметров. Например, метод
GetMessages(int[] messageIds)
Тут 2 пограничных значения:
1 - messageIds = null -> тут должен быть NullArgumentException
2 - messageIds = new int[] {} -> тут должен вернуть пустой список
Это и описывается в тест кейсах
0
29
10 лет назад
0

» Программирование / Монада MayBe

Mihahail, суть юнит тестов, чтобы описать правильное поведение объекта для большинства случаев (пограничных значений). Если поведение меняется, то юнит тест падает. Хорошим тоном считается писать юнит тесты для класса еще до имплементации самих методов.
0
29
10 лет назад
0

» Программирование / Монада MayBe

Ещё я плохо знаком с шаблонами, как по этой конструкции определить, где возникло исключение? А то протолкнем налл на самый верх, а где он появился?
Кст на счет этого, тут неожиданно вспомнил, чтобы не было нежданчиков, можно использовать юнит тесты и все будет ОК. Ну это если юнит тесты написаны хорошо конечно же
0
29
10 лет назад
0

» Игровые обзоры / [Видео] Геймплей Assassin's Creed Unity

H, ну судя по тому что они клепают по игре в год, и уже известно вроде как о 2х слдующих частях, с деньгами у них нет проблем.
0
29
10 лет назад
0

» Страж / Первая серия сериала "Страж"

koloff, Ого красавчик, будет время посмотрю. А вторая часть планируется?
0
29
10 лет назад
0

» XGM Конкурсы / Акция "YouTube/VK-репостер"

Таранес, читай условия
0
29
10 лет назад
0

» Программирование / [C#] Обращение к аттрибутам

Extravert, а что если во время инициализации получишь список и закешировать его?
0
29
10 лет назад
0

» Программирование / [C#] Обращение к аттрибутам

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

» На дне с Ктулху / Размышления и Эксперимент

Fakov, а ко мне никто не тянется(
0
29
10 лет назад
0

» Fa_losophy / Генератор

и главного героя, который постепенно учится видеть цвета, верней, предметы, которые имеют этот цвет, поэтому невидимы для остальных обитателей черно-белого цвета.
Ха, фильм такой был недавно :D
5
29
10 лет назад
5

» Блог H / xgm-update

Extravert, ну да совстевенно это из-за разрешающей способности монитора
H, указывать надо в пунктах.
0
29
10 лет назад
0

» Fa_losophy / Construct 2: Лекция первая

DARGO, не проблема со стыками тайлов, присмотрись
0
29
10 лет назад
0

» Fa_losophy / Construct 2: Лекция первая

DARGO, тайлы немного криво приложены, ребят при движении)
1
29
10 лет назад
1

» Fa_losophy / Construct 2: Лекция первая

совпадение ли, но сегодня я вот как раз узнал когда приходить в гаи на экзамен =D.
:D
В целом круто-та)
5
29
10 лет назад
5

» Fa_losophy / Construct 2: Лекция первая

Машину водить тебе не дано :D
0
29
10 лет назад
0

» Блог H / xgm-update

Inflexible, ну всмысле пилить новые стили пока что нет смысла