string.obj

Discussing libraries simplifying applications development
  • Вместо не относящегося к работе со строками никоим образом string.extension лучше стандартный strrchr ну и strchr в пару. Да и другие функции можно было бы стандартно назвать, а то писать такие длинные наименования 100 раз запаришься.
  • Ну имхо string.extension место в другой либе (fs, да). Ну названия необычные, да) Я бы назвал их copy, concat, downcase, upcase, length на манер Ruby::String (у руби вообще топовые имена функций, только из-за этого все хочу на Rails перейте) http://ruby-doc.org/core-2.2.0/String.html .

    А вообще спасибо, пойду переделывать все свои приложения.
  • e-andrew wrote:Ну имхо string.extension место в другой либе (fs, да). Ну названия необычные, да) Я бы назвал их copy, concat, downcase, upcase, length на манер Ruby::String (у руби вообще топовые имена функций, только из-за этого все хочу на Rails перейте) http://ruby-doc.org/core-2.2.0/String.html .

    А вообще спасибо, пойду переделывать все свои приложения.
    тогда названия же большие будут, Ray же лень писать xD
    Технологии меняют мир, а я - меняю технологии.
  • Да лень каждый раз набирать string. перед каждой функцией и поверь, что будет лень не только мне. Почему бы не использовать стандартные сишные названия для строковых функций? Или ты хочешь что-то вроде неймспейсов или пакетов жабы? Так там даже специальный механизм есть чтоб не мучиться using/import. А в dll-ке ты такое можешь?
  • Ray wrote:Да лень каждый раз набирать string. перед каждой функцией и поверь, что будет лень не только мне. Почему бы не использовать стандартные сишные названия для строковых функций? Или ты хочешь что-то вроде неймспейсов или пакетов жабы? Так там даже специальный механизм есть чтоб не мучиться using/import. А в dll-ке ты такое можешь?
    так library.obj загружает в массив указатели. Их один раз получаешь уже на свои короткие (названия) ф-ций. Например в Си:

    Code: Select all

    void (*stdcall strcpy)(char *,char *);
    void lib_init(void)
    {
      strcpy = library.get("string.cpy");
    }
    void main()
    {
      library.load("/sys/lib/string.obj");
      lib_init();
      char *txt1 = malloc(100);
      char *txt2 = "test";
      strcpy(txt1,txt2);
    }
    Технологии меняют мир, а я - меняю технологии.
  • Это если вручную указывать имена функций, то да. А если использовать самописную функцию для автоматической загрузки библиотек, то не так.
  • Ray wrote:Это если вручную указывать имена функций, то да. А если использовать самописную функцию для автоматической загрузки библиотек, то не так.
    она есть разве?
    Технологии меняют мир, а я - меняю технологии.
  • А кто-то мешал её написать?
  • Ray wrote:А кто-то мешал её написать?
    Ну во многих либах (во всех, с которыми я работал libio, libini, libpng, box_lib) используется такие "неймспейсы". Имена сишных функций ужасны, одна из причин, почему я не пользуюсь сишкой. Сам я сейчас использую свой inc, где функция конкатенации строк называется string.concatenate и вроде не лень пока. Возможно, отголоски от высокоуровневого кодинга (js, go).
  • Имена сишных функций короткие и понятные.И это не неймспейсы. А то что библиоиека без открытого кода сразу включается в образ в качестве вызывает определенные сомнения. Я бы не советовал таким пользоваться, т.к. закрытое ПО обычно удаляют из оф сборок
  • Ray wrote:Имена сишных функций короткие и понятные.И это не неймспейсы. А то что библиоиека без открытого кода сразу включается в образ в качестве вызывает определенные сомнения. Я бы не советовал таким пользоваться, т.к. закрытое ПО обычно удаляют из оф сборок
    удаляют из-за чего? Тем более я же сказал. Что если надо, то пусть обращаются. Значит незакрытый.
    Технологии меняют мир, а я - меняю технологии.
  • Из-за того что система открытая и большинство программ под неё открытые. zSea офигенный просмотрщик изображений даже не включили в офф. сборку из-за этого. Почитай форум если что.
    Порядок добавления в сборку не такой. Код должен лежать на свн и собираться автосборкой при коммитах. А то года через 2-3 ты пропадешь например, к этому времени будет написана куча программ, которые зависят от твоих библиотек и скажем даже важных программ. Допустим после этого переведут систему полность на PE библиотеки, а загрузку obj уберут из ядра, как это случилось с драйверами. Т.к. исходников твоих библиотек на свн нет, оперативно поправить их не получиться. "-Ты не просил у него исходники? А то у меня только старые без того-то и того-то" И получится что твои библиотеки уже не грузятся их надо выкидывать, а вместе с ними и все те важные программы, пока их не перепишут без использования этих библиотек.
  • Who is online

    Users browsing this forum: No registered users and 3 guests