: . Главная . : . Форум . : . Загрузка . : . Пользователи . : . ЧаВо . : . Документация . :


Операционная система 3OS -> Форумы -> Идеология проекта
<< Предыдущая тема | Следующая тема >>   

Критики немного

Перейти к странице -1-2-3 Следующая
Автор Отправлено
ye
Thursday 08.01.2004 13:36 Цитата
Зарегистрирован Thursday 08.01.2004 13:20
Сообщений - 15
Перечитал весь форум и терзают меня смутные сомнения...
Вродебы пипл работая с ОО должен быть способен мыслить абстракциями достаточно сильно,
ну чуть ли не в кадом топике говорят что файлов не будет, выжеч надо и все такое.

А что качественно изменится если в ответ на команду
del SomeFile.rtf
вы получите сообщение
ERROR: by your SQL request no BLOB being found
вместо
ERROR: file not found
Что измениться?
В одном случае кусок на диске называется ФАЙЛ а в другом случае BLOB
Можно назвать и ОБЪЕКТ
А можно и ГОРШОК

Только сути это не изменит - есть кусок памяти с набором атрибутов, есть правила хранение множесть кусков и есть API для различных манипуляции

IMHO можно выжечь из лексикона слово файл, подменить его чемто иным, но сути не измениться.
Наверх
Roman I Khimov
Thursday 08.01.2004 15:42 Цитата

Местоположение: Россия, Санкт-Петербург
Сообщений - 178
Изменится доступ к объекту, в первую очередь, а от этого изменяться методы взаимодействия с ним.
Что сейчас - у тебя есть файл .jpg, но ты НИЧЕГО не знаешь об этом файле. Кроме того что он скорее всего картинка в JPEG. И в любом случае что-то с ним делать будет программа.
Теперь обратная сторона - тебя есть объект "JPEG картинка", ты знаешь все его аттрибуты, ты видишь, что это - дочерний класс от "картинка", ты знаешь что у тебя есть метод конвертации из JPEG в базовый формат (что-то вроде BMP), ты можешь его выгнать на экран просто пройдясь по этим методам! Более того - ты можешь увидеть, что для базового класса "картинка" определены методы изменения той самой картинки - resize, фильтры... И ты можешь по ходу пьесу в подобии explorer'a перестроить менюшки для редактирования этой картинки, так как интерфейс - это интерфейс, а не программа!
Файл - черный ящик, про него никогда ничего нельзя знать заранее. Про объект ты знаешь все.

Греби и улыбайся!
Наверх
Сайт
ye
Thursday 08.01.2004 17:33 Цитата
Зарегистрирован: Thursday 08.01.2004 13:20
Сообщений - 15
IMHO если рассуждать с высокой степенью абстракции то Файл есть базовый класс для любых объектов хранящихся в коллекции ФайловаяСистема
И Ваш класс JpegКартинка будет таки порожден от класса Файл чтоб была возможность сторить его в коллекции ФайловаяСистема

Если корень "Файл" так неприемлем для разума можно переправить
Что коллекция ObjectsPool сохраняет объекты чьи классы базируются на классе BasicObject

Сути не изменит, особо когда объекты будут складироваться на HDD и мерзкое слово файл по старинке так и будет возникать на языке

И еще - у файла есть все признаки объекта - методы класса единажды помещенные в память работают со любыми объектами "Файл", атрибуты, данные.
Наверх
Roman I Khimov
Thursday 08.01.2004 21:43 Цитата

Местоположение: Россия, Санкт-Петербург
Сообщений - 178
Хм.
В принципе так. Но не так. Ни одного экземпляра такого объекта не будет. ;-P
То есть будет, но разве что для "старых" файлов. Но и то, их надо конвертить в объектный формат.
Зачем нам объект типа "файл", если все его производные описывают все разнообразие файлов?! А любой новый формат можно легко вписать в систему.
Согласись - это другой уровень абстракции! Аттрибуты не только даты-права доступа, а тип, разные комментарии, размеры, исполнители, длительности, разрешение... Все, что сейчас то приписывается в виде id3-тегов, то приляпывается в JPEG-комментарии, и размер картинки хранится вместе с картинкой, то описывается жуткий формат документа... Не должно этого быть! Все должно быть просто и унифицированно. ООП - это инструмент позволяющий такое реализовать быстро и красиво.

Греби и улыбайся!
Наверх
Сайт
ye
Friday 09.01.2004 15:08 Цитата
Зарегистрирован: Thursday 08.01.2004 13:20
Сообщений - 15
Не кажется ли Вам что происходит некоторая подмена понятий?
То о чем Вы говорите относится к внутренней структуре хранения данных и неимеет ничего общего с ООП. Реализуйте класс для работы с mp3 с необходимым интерфейсом, реализуйте потдержку mime или еще чего чтобы однозначно определять через какой интерфейс можно работать с этим файлом, и Ваша ОС срадостью съест такой файл как родной объект.

А перерисывать форматы "файлов", это даже не смешно
Наверх
Roman I Khimov
Friday 09.01.2004 16:01 Цитата

Местоположение: Россия, Санкт-Петербург
Сообщений - 178
Да, это относится к внутренней структуре данных, и это легко и удобно реализуется средствами ООП. Если наворотить классы-обертки над стандартными форматами, то работать это все будет чрезвычайно тормозно! Проще отконвертить обычный файл в объектный формат 3OS раз и навсегда. Ну, конечно, не навсегда - при случае надобности надо иметь возможность отконвертить все назад, чтобы скинуть другу, до сих пор мучающемуся под Win или Lin.
Вообще зачем создан компьютер? Чтобы обрабатывать информацию Однако как можно эффективно обрабатывать информацию, если об этой информации нельзя ничего сказать? Файл - набор байт и система никоим образом о нем не думает. Объект же является четко типизированной сущностью. Вот объект jpeg-картинка, вот объект mp3-музыка, вот ape-музыка, вот контейнер zip, а в нем поглядите-ка...
Реализовывать такие радости поверх файлов - это жутковатые конструкции получатся.

Греби и улыбайся!
Наверх
Сайт
ye
Friday 09.01.2004 16:39 Цитата
Зарегистрирован: Thursday 08.01.2004 13:20
Сообщений - 15
Чтото тут не договорено.
Если код отдельно а данные отдельно то способ определения интерфейса через которые работать с такими данными неимеет значение - регистри, .ini или rti
Если данные и код вместе - то увольте - это не далекр ООП
Наверх
Roman I Khimov
Friday 09.01.2004 17:49 Цитата

Местоположение: Россия, Санкт-Петербург
Сообщений - 178
Мешать код и данные? Никогда!!!

Греби и улыбайся!
Наверх
Сайт
ye
Friday 09.01.2004 20:12 Цитата
Зарегистрирован: Thursday 08.01.2004 13:20
Сообщений - 15
Замечательно
Тогда зачем менять формат существующих файлов если они удовлетворяют 99% всех пользователей?
Наверх
Roman I Khimov
Friday 09.01.2004 22:02 Цитата

Местоположение: Россия, Санкт-Петербург
Сообщений - 178
Потому что не удовлетворяет!
Никогда не сталкивались с id3v1, id3v2, APE-тегами? В одних одно, в других другое, периодически программы не могут понять записи друг друга.
Есть еще одна большая проблема - проблема промежуточного формата[i], как я бы ее назвал. Посмотрите - сколько форматов хранения изображений - и JPEG, и GIF, и PNG, и TIFF, и BMP, и многие другие. Но - это форматы хранения результата работы художника! А работает-то он не с ними, а с Photoshop, Corel Draw - у них свои промежуточные форматы, форматы в которых хранится чуть ли не весь процесс создания изображения. И эти форматы оказываются жестко связаны с соответствующей программой! Нет Corel Draw - отдыхай. Это нормально? Данные есть, но прочитать их невозможно! Идти покупать Corel Draw - дороговато как-то. А мне ничего не надо, я хочу видеть результаты своей работы, даже если я их не выкинул в JPEG, GIF...
Более того - я хотел бы иметь возможность минимально эти данные редактировать! И я хотел бы иметь возможность перетащить "вьюер" это формата вместе с самим файлом, поскольку у друга такого нету... И как прикажете быть? Таскать с собой кучу ненужных программ, одна из которых работает с форматами А, Б и В, но не работает с Г, а вторая с А, Г и Е, но не понимает Б и В?
Проблема в унификации форматов хранимых данных - все должно быть читаемо на любой платформе! Какого черта я должен ставить себе Windows и MS Office, если мне надо посмотреть .doc файл? Может я родился с дистрибутивом Linux'а в руках! А OpenOffice навороченные .doc документы все-таки коверкает.
Данные не должны быть зависимы от платформы. Поэтому создание 3OS - это не только создание новой ОС, но и создание новой системы хранения всех данных, представимых в двоичной форме. Это все должно быть снабжено инструментами конвертации в "традиционные" форматы файлов, но поверьте мне, когда подход 3OS к хранению и обработке данных можно будет потрогать руками вы это оцените!
Никакой explorer не может отделить .sxw от .doc - ему это все одно и он ничерта не знает ни о том, ни о другом, если у него нет программы просмотра - это просто [i]мусор
, все равно невозможно с ним ничего сделать и он никогда не сможет сказать, что необходимо для просмотра такого документа. Видя объект типа "электронная таблица" 3OS-система, даже не зная о формате ничего, может предположить где брать средства работы с ним - на 3os.ru конечно же! Передать тип объекта, получить все что надо по сети. Все. Пользователь может спокойно работать с этим объектом. А не заниматься поисками типа "А вот это что за ерундень такая?.. Чем ее открыть-то вообще можно?".
Единственное требование к сторонним разработчикам - предоставьте описание формата. Все. А еще лучше воспользуйтесь нашими, развейте их, ведь описание класса можно и нужно расширять методами работы с ним, почему нет? Можете продавать этот кодек (а любой вызываемый метод, который изменяет состояние объекта - это кодек), раздавать его - нам все равно. Только сделайте так, чтобы после его применения объект был читаем.
Связь "файл-программа" должна уйти в прошлое, как воспоминание о страшном кошмаре. Объект самодостаточен! Хотя храниться на винчестере будут только данные этого объекта, связать их с кодом данного объекта не должно быть проблемой. Более того - две 3OS-системы смогут еще при передаче объекта "договориться", а есть ли у получателя средства работы с данным объектом, и если нет - тут же отправить их!

Греби и улыбайся!
Наверх
Сайт
Irish
Saturday 10.01.2004 03:11 Цитата

Зарегистрирован: Monday 17.11.2003 16:27
Сообщений - 29
Так, теперь обычным смертным становится совсем все туманно... Это что, надо брать в руки чудо-конвертер и все переконвертировать в понятный системе формат? Те же mpeg`и? Как будет реализована совместимость с уже существующими форматами?
Наверх
Сайт
Перейти к странице -1-2-3 Следующая

Модераторы: Roman I Khimov, netwizard.

Переход:     Наверх