|
Модераторы: Sardar, Aliance |
|
Sardar |
|
|||
Бегун Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 3 Всего: 317 |
С этого топа открывается проект, цели которого:
Сейчас подходящее время для работы - лето. В проект приглашаються все заинтересованные, главным образом, делиться замечаниями и требованиями. Конечно, не все они будут реализованны, если область применения решения очень мала. За основу был взят именно prototype.js, т.к. возносит JS на ступеньку выше. Здесь нет виджетов и готовых компонентов типа календарей и подобного, за ними обращаться к dojo toolkit. Вообще, я привык делать "графические примочки" под задачу, а не реализовывать огромный и гибкий компонент под все мыслимые условия. Задача нашей библиотеки:
Многое реализованно мной, ещё больше сторонними разработчиками, кода на самом деле много. Этим проектом мы хотим рассмотреть их устройство, но не заменить их, хотя в итоге библиотека будет самостоятельным продуктом. Главное отличие - мы малое сообщество, мы не сможем поддерживать библиотеку в таком состоянии, что бы она могла быть использоваться в серьёзных проектах. Но! результаты этой библиотеки будут гораздо выше чем у её старших собратьев, т.к. мы будем учиться, а специалист, ИМХО, лучше либы Сейчас открываю один топ, в будущем будет раздел форума в проектах. Вы можете писать в этой теме что угодно, кроме "О, это круто!" и подобных, не привносящих ничего, постов. В будущем для этого будут отдельные топы, сейчас флуд не нужен Заинтересованные могут начать проектировать части библиотеки, состовлять требования, рассматривать интересные моменты. Одна просьба: выкладывайте тексты "аттачем" к посту, длинный пост плохо читается. Лицензия: весь код, написанный мной, будет под GPL- или LGPL-лизензией. Код, написанный другими участниками, должен быть под любой OpenSource лицензией. Код может быть использован любым проектом с совместимой лицензией. Почти все лицензии, в том числе и LGPL, позволяют использовать код в коммерческих целях. По моему, только GPL "заразная" (потребует от проекта GPL-совместимой лицензии). Have fun! (Исправил грам.ошибки и пунктуации. -12345с) Это сообщение отредактировал(а) 12345c - 24.7.2006, 14:10 |
|||
|
||||
Се ля ви |
|
|||
Java/SOAрхитектор Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: нет Всего: 127 |
Sardar, идея хорошая, но где - спецификация? Subversion-репозиторий? Баг-фиксинг - система? Или ты действительно хочешь написать фреймворк, просто общаясь с людьми в закреплённой теме форума?
-------------------- |
|||
|
||||
Sardar |
|
|||
Бегун Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 3 Всего: 317 |
Се ля ви, идея появилась 2 дня назад, реализовываться начала 3 часа назад. Всё будет. Главным образом подфорум в проектах и категория в вики. После интегрируемся в SVN форума. Баг-репортинговой системы не будет пока её нет у форума, быть дочерним проектом Винграда и использовать отдельный инструментарий не разумно
Этой темой хочу увидеть отзывы "да! я уже пользовал ... и хотелось бы ...". Другими словами найти заинтересованных лиц и просто тех кто хочеть учиться. К концу недели всё необходимое налажу, начну выкладывать идеи и код. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
Се ля ви |
|
|||
Java/SOAрхитектор Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: нет Всего: 127 |
У меня накопилось немало идей, правда не столько для обучающихся новичков, сколько для автоматизации разработки сайтов коллективами дизайн-студий. Я про себя называю этот проект "XSite", время от времяни добавляю к нему новые идеи и жду, пока будет возможность им заняться. Некоторые идеи можно было бы вместить в этот фреймворк.
Тогда можно так: на выхах распарсю свои записи и попытаюсь выудить, что, возможно, было бы вам здесь интересно в контексте этого фреймворка - можно будет обсудить и что-то включить, хотя непосредственного участия и не обещаю - мне бы со своим проектом справиться... Но всё-таки хотелось бы по-раньше увидеть документ с надписью "Спецификация", что бы не было ситуации "кто в лес, кто по дрова", а без него и обсуждать-то по сути нечего, кроме просто выявления желающих чем-нибудь таким заняться. -------------------- |
|||
|
||||
smartov |
|
|||
свой собственный Профиль Группа: Экс. модератор Сообщений: 4225 Регистрация: 2.2.2006 Где: NJ Репутация: нет Всего: 259 |
Sardar, уже не раз видел разные фреймворки. Не взял ни один. И у меня подозрение что если не подойти к вопросу интересно, то и этот окажется маловостребованным.
Почему не взял ни один: 1) Размер. Мне нужна ерундовина: тултип какой-нибудь, но не простой, а немного навороченный. Я знаю что там кода на пару килобайт, и таскать за собой библиотеки (которые пользователь будет грузить себе) на 50 и более килобайт желания нет абсолютно никакого. Но бывает что библиотека сама по себе реализовывает какой-то сложный функционал. Вывод - надо состряпать js-compressor. Только не глючный 2) Сваленность в кучу. Даже если я все-таки из-за природной лени возьму какую-то библиотеку, то наверняка она не подойдет мне полностью. Вывод - поправить. Удобство копания в коде на >50 Kb ясно сразу. Вывод из первых двух пунктов - код надо разделять. Всенепременно. Модульность - наше главное оружие. 3) IE - стандартизация. Нет, я конечно понимаю, что даже Опера уже вроде принимает document.elementName... или там document.form1.field1 но ведь есть же общепринятые стандарты. getElementById() итд итп. А это уже Code Standards. 4) Ну этот вопрос ты совершенно верно обговорил - делать код работоспособным в IE 5, Opera 7, Firefox 0.99, Nesccape и Safari черт знамо каких версий это неправильнео, утяжеляет работу со скриптом, размер скрипта, а уж копание во всех этих ветках кода - вообще песня. На счет прототайпа - глянул. Идеи неплохи, но реализация..... А кое где и идеи...... Например эта "Dollar function" - это наверное чтобы усложнить жизнь тем, кто будет твой код читать. В общем подсмотреть - могет быть. Равняться - ИМХО нет. А так в общем тоже не прочь был бы поучавствовать. Есть пара вопросиков: Какой canvas? Что за коллекции ты имеешь в виду? (пример) |
|||
|
||||
Sardar |
|
||||
Бегун Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 3 Всего: 317 |
Предпологаю что 60%-80% работы будет выполняться мной и я же буду играть роль диктатора Спецификации будут порождаться из обсуждений в 2-3 working draft'а. На днях напишу первую о коллекциях. Главное что бы спека была краткой. Обсуждение почему так и как пользоваться будут растянутыми конечно. Кстати проект уже получил имя: ViJio Пока проект всецело на клиенте. Я даже от JSON отказался лишь бы не было необходимого кода на сервере. Клиентская либа будет работать с любым софтом на сервере, только лишь протокол должен быть описан. К примеру реализуем авторизацию: Процесс: запрос, ответ-сигнатура и приглашение, запрос-логин-сигнатура, ответ-доступ. Идея в том что пароль не отсылаеться текстом , а используеться для кодирования некой рандомной сигнатуры на сервере (она генериться на 5 минут). Таким образом отсылаем логин и закодированную сигнатуру, а сервер проверит логин и раскодирует сигнатуру - совпадение - зашёл. Если не пользоваться аяксом (для логина это лишнее), то имеетм скрипты только на первой странице: 1) процессор формы валидирует форму. Проект гибкой валидации я уже описывал, получилось громоздко, нужно упростить 2) реализация алгоритма кодирования, blowfish например, пройдёмся по шагам, хотя главное здесь сама идея кодировать сигантуру В итоге разработчик дефинирует схему валидации для процессора формы (нечто краткое и проще чем писать свой скрипт под задачу) и пользуеться подлючаемой реализацией blowfish что бы закодировать сигнатуру. Пользователь ни о чём не догадываеться, просто знает что его пароль никогда не отсылаеться в открытом виде и перехватить его практически не возможно. Участники проекта ознакамливаються с базовыми принципами "защиты", выбраным алгоритмом кодирования, обратбокой форм и главное сопутствующими ассоциациями, что помогут при реализации подобного проекта. Се ля ви, выкладывай идеи в этот форум: http://forum.vingrad.ru/index.php?showforum=254 Только не забудь добавить префикс к названию: "Идея", "Мысли", "FR" или подобное, пока форум ограничен во вложенности подфорумов, глубже не сделать. Добавлено @ 20:12 Задача фрейворка заставить пользователей не бояться и главное разбираться в сторонних либах
Либа всегда будет немного раздутой, но она будет модульной сама по себе, т.е. можно отключить лишнее, а также модульной в сознании участника - ты просто сам сможешь copy-paste точно то, что тебе необходимо. В итоге в будущем у тебя не будет вопросов: "как сделать так что бы ... делал то то?", ты просто откроешь код сторонней либы и подправишь его немного под себя. Отсюда нужно будет научиться не конфликтовать версиями, при обновлениях уметь востановить свои наработки. 3) специфичные для отдельного браузера фишки расматриваться не будут, только W3C стандарты + необходимые пока для ИЕ патчи. Конечно уникальные и удобные вещи как transformNode или selectNodes под ИЕ будут перенесены на другие браузеры, только потому что это удобно, как и XmlHttpRequest был внедрён во все браузеры. JS1.6 рассматриваться пока не будет. Набери в поиске в основном разделе Это SVG графика, поддерживаемая лисой(Gecko) и Safari(KTHML). ИЕ в будущем тоже будет (куда денеться, зараза). Задача изучить и писать кратко, а не рисовать графики на сервере. Динамические графики на флеше есть зло, под линухом не у каждого есть флеш. В точности как в Ruby или prototype.js. Придёться ломать сознание что бы внедрить идею но именно для этого проект и создан - учить писать эффективно. Поймёшь чуть позже, я пишу мануал - дизайн докуемнт - спецификацию для коллекций. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
||||
|
|||||
diam |
|
|||
Опытный Профиль Группа: Участник Сообщений: 348 Регистрация: 23.1.2005 Где: Екатеринбург Репутация: нет Всего: 16 |
Я так и не понял, по какому принципу будет разрабатываться фреймворк. Так же не понял, чем он должен стать по окончанию написания. Понял только, зачем: не для практических применений, а для понимания процесса .
Собственно, вопросы. 1. Будет ли subversion или нечто подобное? 2. Каким ты видишь фреймворк по окончанию разработки? (Нужно иметь представление о конечном результате) |
|||
|
||||
S.A.P. |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: 3 Всего: 71 |
Я обожаю эту функцию для меня теперь всякие document.getElementById('div1').insertBefore(document.getElementById('child1'), document.getElementById('outer_child')) стали всего - лишь кошмарным сном. К тому - же это делает универсальным вызовы функций в которые могут передаваться как id элементов, так и сами элементы. Слово W3C у меня никогда не ассоциировалось с удачным програмным интерфейсом. Sardar, сейчас уже можно сказать на какие браузеры будет ориентирован этот фреймворк и в каком объёме? в частности интересует IE6 ( ) . Я полагаю от этого и зависит степень геморройности всей затеи. Попутно хочу предложить включить в список фич - кроссбраузерную работу с Selections. Эта тема у меня долго мусолилась, но универсального решения я пока не придумал. |
|||
|
||||
Zeroglif |
|
|||
Опытный Профиль Группа: Участник Сообщений: 644 Регистрация: 22.9.2005 Репутация: нет Всего: 66 |
Я - ЗА! Учиться хочу всегда. Позиция по этому делу приблизительно совпадает с позицией smartov. |
|||
|
||||
smartov |
|
|||
свой собственный Профиль Группа: Экс. модератор Сообщений: 4225 Регистрация: 2.2.2006 Где: NJ Репутация: нет Всего: 259 |
||||
|
||||
Sardar |
|
||||
Бегун Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 3 Всего: 317 |
Да, создам ветку, SVN форумский (там же все разработки).
Набор не сильно связанных между собой функций и модулей длай решения конкретных задачь. Сильная сторона: малый размер, можно собрать под себя. Слабая сторона: это для тех кто разбираеться, набор инструментов, а не готовое на все мыслимые условия решение. Аналогии Debian linux - есть всё необходимое (20% системы) и редко (никогда) используемое (70% системы) - это большой софт который не просто настроить под конкретную задачу, за то как танк может решить в любых условиях что угодно. Gentoo linux - нет ничего (как в винде) после установки, собираеться всё необходимое под себя, требуеться точно представлять чего ты хочешь, но результат - очень быстрый, заточенный под твои нужды, без лишнего хлама софт. Я тоже, немного громоздкий синтаксис DOM'а мешает. Поверх него хочеться очень легковесную оболочку типа выборки по className (или по условию вообще, т.е. обычный filter для коллекций), выборка непосредственных потомков ноды по тегу (getElementsByTagName пробегает по всем нодам, что требуеться гораздо реже) и т.д.
Нет, мы не пишем (хотя это и не запрещаеться, читай Я не пишу ) совместимо с древними браузерами. Сейчас веб в быстром темпе развиваеться, ценность разработчика знакомого с новыми возможностями (XHTML strict, SVG, XUL/XAML, XML/XSLT, CSS2/3 etc) гораздо выше чем того кто умеет верстать под HTML3.0 Просто создай тему в разделе ViJio в "Наши проекты", название "Идея: работа с Selections" и подробно что хочешь видеть + то как ты представляешь это порешать Так, тема вижу разрастаеться, постите идеи в раздел ViJio, а я разберусь что склеить/разделить -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
||||
|
|||||
Ciber SLasH |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1813 Регистрация: 9.11.2004 Где: С.-Петербург Репутация: 1 Всего: 67 |
Я тоже поучаствавать хотел бы...
|
|||
|
||||
PyS |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 149 Регистрация: 21.8.2006 Где: г. Алматы (Казахс тан) Репутация: нет Всего: 1 |
||||
|
||||
GZep |
|
|||
участник Винграда Профиль Группа: Завсегдатай Сообщений: 1528 Регистрация: 7.7.2006 Где: Москва Репутация: нет Всего: 32 |
Sardar, а такие уже готовые проекты, как, например, tooltip будут автоматически включаться в репозиторий?
-------------------- |
|||
|
||||
dXdYdZ |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 146 Регистрация: 16.4.2007 Репутация: нет Всего: 4 |
На счёт заинтересованных лиц.
Я достаточно долго (примерно 1.5 года) работал с библиотекой Dojo toolkit. Начинал ещё с версии 0.3.1. В процессе работы с данной библиотекой разобрался с большим количеством её возможностей и могу сказать Вам, что всё, что Вы хотите написать, в ней уже есть. Плюс ещё куча возможностей "на все случаи жизни". Кроме этого она обладает чёткой структурой, идеологией и позволяет абстрагироваться (на высоком уровне) от особенностей тех или иных браузеров. Писал интерфейсы. В том числе и разрабатывал свои компоненты (widget-ы) для Dojo. Однако библиотека Dojo вплоть до версии 0.4.х обладает рядом очень существенных для Internet недостатков, а именно:
Ещё одним недостатком можно считать отсутствие полноценной поддержки на руском языке. Одно время я писал (в основном переводил) документацию по dojo на русский язык. Перевёл описание нескольких базовых библиотек (порядка 40 страниц текста), однако это описание лишь примерно 5% возможностей данной библиотеки. Я даже делал сайт, посвящённый dojo toolkit, однако это не вызвало никакого интереса со стороны общественности, поэтому в настоящий момент сайт находится в полурабочем (скорее даже в нерабочем) состоянии и сейчас мной не поддерживается. Перечисленные выше недостатки, как правильно заметил smartov, присущи не только библиотеке Dojo toolkit, но и большинству других JavaScript-библиотек. В связи с этим я начал создание своей JavaScript-библиотеки, главными принципами при разработке которой являлись:
В скором времени планируется размещение данного сайта в сети Internet. Это сообщение отредактировал(а) dXdYdZ - 2.8.2007, 15:27 |
|||
|
||||
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | JavaScript: Применение библиотек | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |