Перейти к содержимому

NEO

Пользователи
  • Публикации

    1 436
  • Зарегистрирован

  • Посещение

  • Победитель дней

    78

Сообщения, опубликованные пользователем NEO


  1. Нечего программировать? У меня есть идейка для тебя.

    Такое файловое хранилище, что бы в нем каждый с любого компа мог оставить файлы, а потом с другого места их забрать. Еще логин и пароль будет. А называться должно как то легко, невесомо... Например, "Воздушное хранилище", хотя наверняка можно придумать лучше название.

    ОК.


  2. Если баги не нашел, займись уменьшением количества кода, не теряя функционала, то есть рефакторинг.


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


    Оптимизацией тоже займись, я таких строк "inv = require("component").inventory_controller" уже 3 нашел.


    Я тут проверил, если вместо require везде вставить код его

     

     

    checkArg(1, module, "string")
      if loaded[module] ~= nil then
        return loaded[module]
      elseif not loading[module] then
        loading[module] = true
        local loader, value, errorMsg = nil, nil, {"module '" .. module .. "' not found:"}
        for i = 1, #package.searchers do
          -- the pcall is mostly for out of memory errors
          local ok, f, extra = pcall(package.searchers[i], module)
          if not ok then
            table.insert(errorMsg, "\t" .. f)
          elseif f and type(f) ~= "string" then
            loader = f
            value = extra
            break
          elseif f then
            table.insert(errorMsg, f)
          end
        end
        if loader then
          local success, result = pcall(loader, module, value)
          loading[module] = false
          if not success then
            error(result, 2)
          end
          if result then
            loaded[module] = result
          elseif not loaded[module] then
            loaded[module] = true
          end
          return loaded[module]
        else
          loading[module] = false
          error(table.concat(errorMsg, "\n"), 2)
        end
      else
        error("already loading: " .. module, 2)
      end
    

     

     

    получиться - 3991 строк. :D


    Теперь прикинь сколько лишних операции.


    75 require, да.. тут нужно рефакторингом заниматься, жестким.


  3. LeshaInc, lua-код транслируется в псевдо-байткод что бы виртуальная машина не занималась лищними действиями, то есть не парсила,и не анализировала строки, виртуальная машина копирует устройство озу, вместо имени функции адреса, короче ассемблер.

    Просто идёт превращение нам понятного языка, в инструкции последовательные.


  4. end
    end
    end
    end
    end

     

    Пойми что к чему. :D 


    Лучше в спойлеры не ложи код.


     

    Ссылка на библиотеку, знающие могут юзать напрямую функция api.mine(x,z) Скрытый текст pastebin get -f vApEBQdf mine.lua  

     

    По той ссылке гулять потом - это же установщик, а хотелось бы сразу прямую http:/pastebin.com/...

×
×
  • Создать...