Просмотр полной версии : Реализация портфолио
или с чего начать?
Не уверен что в тот раздел, но т.к. собираюсь на сей задаче разобраться в ас3 поэтому постить решил сюда, если что, уважаемые модеры, перенесите.
Самому себе поставленна задача - создать динамическое портфолио. примерный вид - как на картинке ниже. Вроде понятно, нужны классы:
1) класс прелоадера
2) тот что парсит ХМЛ с входными данными
3) класс отражений
4) класс одной работы
5) класс выстраивающий внешний вид портфолио
6) класс отвечающий за заблюривание
7) класс отвечающий за перемещение от одной работы к другой
8) класс для отправки сообщений на почту
9) класс выстраивающий всю флешку, DocumentClass
вот по сему у меня возник вопрос ко всем кто когда либо делал сайты на ас2 ас3, с чего начать и как структурировать работу?
DarkLight
02.11.2007, 01:28
Вобщем-то идея разделения нормальная. А вообще я обычно вначале сажусь с листом бумаги, и делаю так: сверху рисую диаграмму действий типа загрузка -> отображение списка -> загрузка изображений куда надо и т п, затем рядом рисую какие данные куда идут. После этого набрасываю диаграммы классов, на ходу придумывая названия и ищу тот функционал, который реализовывал раньше, чтобы не писать заново. После этого кладу эту схему на видном месте и по нейй работая, внося коррективы по необходимости.
2morrowMan
02.11.2007, 01:30
По-моему, с классами ты немного перебрал, как для обычного портфолио.
Не стоит сильно заморачиваться - там нету ничего такого сложно.
to DarkLight, ну я обычно все это структурирую при помощи Visio, аналогов к сожалению не знаю
to 2morrowMan, ну почемуже? разве есть смысл допкстим соединять в один класс перемещение к разным работам и заблюривание?
DarkLight
02.11.2007, 01:35
5 - осторожно, чтобы не разжирел сильно
6,7 - можно слить в один класс со статическими методами имхо, т к это наложение эффектов...и отражения даже сюда всунуть
to DarkLight, да вообщем вариант, просто насколько они будут массивны?
да и еще, в любом случае при написании 3+5+6 понадобиться одна единственная математическая формула которая будет и менять размер и задавать силу блюра и скорость уезда при перемещении от одной работы к другой. вот что-то с ней пока тяжко....
а также вариант ли нарисовать рамочку для работы там сделать этакий холдер в который будут грузиться превьюшки и линковать его с классом или программно все это отрисовывать?
PS если быть до конца честным, как это все реализовать пока не имею представления, но готов учиться....
DarkLight
02.11.2007, 01:45
ну а хотя бы со средой решение принято? Flash или Flex? от этого тоже многое зависит...
to DarkLight, flash с flex'ом у меня пока боооооольшие непонятки, даж подойти как к нему не знаю, вчера пытался поставить второй билдер, результат, в конце установки Try версии скачанной с сайта adobe, ребут компьютера. всмысле самостоятельный, ничем не обусловленный... взял и перезагрузился... аж 2 раза..
DarkLight
02.11.2007, 01:55
Ну если во флеше, собственно такая структура вполне подойдет, при этом класс работы линкуем к символу, я думаю.
ну да, это чисто теоретически - проще.
Тут в принципе больше пяти классов не нужно.
__etc, а можно внести чуть больше конкретики?) ну из основных, document class, preloader class а остальные три?)
ну вот как-то так, сорит за качество, форум больше не дает...
Ты делаешь портфолио с нормальным дизайном или клиент-серверное приложение по запуску ядерных ракет?
__etc, а ты хочешь сказать что качество проектирования, коддинга и планирования задачи для самого себя как в первом так и во втором случае должно быть разное? я так не считаю, к любой задаче надо подходить основательно.
Я хочу сказать о том, что не надо использовать микроскоп для забивания гвоздей.
__etc, логично :)
начал писать потихонечку.
package ru.snut.src{
import flash.display.MovieClip;
import flash.events.*;
import flash.text.TextField;
import flash.utils.setInterval;
import flash.utils.clearInterval;
import fl.transitions.Tween;
import fl.transitions.easing.*;
dynamic public class Preloader extends MovieClip {
private var intervalOutId:int;
private var loaderOutY:Tween;
private var loaderOutAlpha:Tween;
public function Preloader():void {
addEventListener(Event.ENTER_FRAME, Update);
}
private function Update(e : Event):void {
var bLoaded:Number = stage.loaderInfo.bytesLoaded;
var bTotal:Number = stage.loaderInfo.bytesTotal;
var s:String = "";
var percent:Number = 0;
if (bTotal>0) {
percent = Math.floor(bLoaded/bTotal*100);
s = percent+ "%";
}
this.txt.text= s;
this.bar.gotoAndStop(percent+1);
// Если полностью загрузились, то проигрываем уезд лоадера, а потом переходим на второй кадр
if (bLoaded == bTotal || bTotal==0) {
if (parent is MovieClip){
(parent as MovieClip).stop();
tweeningOut();
}
intervalOutId = setInterval(loadOut, 1000);
}
}
private function loadOut(){
removeEventListener(Event.ENTER_FRAME, Update);
if (parent is MovieClip){
(parent as MovieClip).gotoAndStop(2);
}
}
private function tweeningOut(){
loaderOutY = new Tween(this, "y", Bounce.easeInOut, this.y, this.y + stage.width / 2, 1000, true);
loaderOutAlpha = new Tween(this, "alpha", Bounce.easeInOut, this.alpha, 0, 1000, true);
}
}
}
класс залинкован с символом в библиотеке
понять не могу почему не проигрываются твины...
Я бы ещё и от AS3 отказался. AS2 прекрасно справится с задачей.
Диаграммы рисовать, конечно, научились, а вот функции именовать и код типизировать, увы, ещё нет.
DarkLight
03.11.2007, 00:32
...и кстати советую определиться со стилем описания импорта: либо везде ставить только до пакета, либо прописывать каждый класс, а то каша получается...и про типизацию верно замечено в предыдущем посте...
__etc, если посмотреть первый пост сообщения то данный проект затевается для того чтобы разобраться с ас3...
ну есть небольшие огрехи по поводу типизация, но я же прошу сильно не пинать, а помочь научиться...
Так учитесь. Пишите типы, которые возвращает функция, права доступа, откажитесь от dynamic (он реально нужен крайне редко).
__etc, насчет dynamic - крайне согласен, врядли я буду использовать не предопределенные методы.
а приваты, паблики, войды уже везде расписал:)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.