powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / GUID или Namespace
9 сообщений из 9, страница 1 из 1
GUID или Namespace
    #35991043
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что лучше?
...
Рейтинг: 0 / 0
GUID или Namespace
    #35991110
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты бы конкретизировал вопрос, что ли.
...
Рейтинг: 0 / 0
GUID или Namespace
    #35991134
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мысль взята отсюда http://lib.juga.ru/article/view/138/1/64/
Африканец - Заметки про Жабу. Часть 2. Околожабство
.....Способ именования пакетов в жабе - отдельная песня. Они называются по адресу компании в обратном порядке. Скажем, мы зарегистрировали домен dvsoft.com - вот наши классы и называются com.dvsoft.... Это все хорошо, когда апплеты по сети приезжают, и совершенно бессмысленно при написании нормальных программ. Ведь кроме всего прочего единство имени не означает единства версии. Подход Микрософта с его COM мне нравится больше - не имя определяет интерфейс, а Глобальный Идентификатор.....
...
Рейтинг: 0 / 0
GUID или Namespace
    #35991197
clihlt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Ну у майкрасовта, к слову сказать кроме GUID'ов, можно получить доступ по имени объекта....
Мое имхо, здесь у них действительно правильный подход - хочешь мега уникальности - создавай объект по гуид, хочешь понятных имен - пожалте по имени.
...
Рейтинг: 0 / 0
GUID или Namespace
    #35991217
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Имхо это всё же в значительной степени противопоставление тёплого мягкому. Эти инструменты решают существенно разные задачи и не способны заменить друг друга.

1. Иерархическое именование классов на сегодня в общем необходимо. Это оптимальный путь управления "такой грудой классов" с сохранением мало-мальски читаемого кода.

2. Жёсткое завязывание имени класса на имя и расположение файла - имхо спорная, скорее плохая идея. Директива use namespace - спорна. Промежуточные варианты, как в дельфе - спорны.

3. Задачу хорошей идентификации класса "в произвольной обстановке" имя класса, в том числе иерархическое, удовлетворительно не решает и решить не сможет. GUID её решает вполне хорошо, сравнимых альтернатив пожалуй нет.

4. В любом случае, нужна идентификация версии, что представляет отдельную интересную задачу.
...
Рейтинг: 0 / 0
GUID или Namespace
    #35991596
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 clihlt

Развивая идею Африканца, можно предложить преемственную схему создания
уникальных интерфейсов.

GUID0e55da80439111deb27200304f278c65/IClock.java

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package GUID0e55da80439111deb27200304f278c65;

/**
 *
 * @author mayton
 */
public interface IClock {

}

GUIDd0566c90439011de947300304f278c65/IClock.java

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package GUIDd0566c90439011de947300304f278c65;

/**
 *
 * @author mayton
 */
public interface IClock {

}


(поскольку GUID-сигнатуры могут начинаться с numeric символа, я добавляю впереди строку "GUID" для фиксации требований синтаксиса java-имён.)

В жирй модели есть недостающее звено - реестр Microsoft Windows. Его роль будет
заменять репозиторий файлов с соотв. именем jar-пакета. Думаю, что при
монтировании его в CLASSPATH не должно возникать проблем.

GUID0e55da80439111deb27200304f278c65.jar
GUIDd0566c90439011de947300304f278c65.jar
...
Рейтинг: 0 / 0
GUID или Namespace
    #35991635
clihlt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

В принцыпе работать это в яве должно. Единственный минус, если в проекте несколько пакаджей, то напротив импорта каждого пакаджа прийдется ставить коментарий с каким-нибудь нормальным именем. Иначе разобратся будет сложновато.
...
Рейтинг: 0 / 0
GUID или Namespace
    #35991648
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А как в MS разбираются? Аннотации пишут?

(Сорри, на COM-технологиях кодил еще при царе Александе Втором... Так што забыл немного.)
...
Рейтинг: 0 / 0
GUID или Namespace
    #35991671
clihlt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Ну GUID в MS надо прередавать, как параметр в CoCreateInstance. Как правило создают структуру с человеческим именем, которая и содержит непосредсвенно сам гуид.

Типо такого
Код: plaintext
1.
2.
3.
// {DD8A4A2A-E338-46F5-A196-F3B8DA9D0242}
static const IID IID_IsmsSender =
{ 0xDD8A4A2A, 0xE338, 0x46F5, { 0xA1, 0x96, 0xF3, 0xB8, 0xDA, 0x9D, 0x2, 0x42 } };

Ну и плюс возможность получить гуид объекта по имени объекта из реестра, если конечно имя прописано.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / GUID или Namespace
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]