![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 24.11.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam około dwudziestu instrukcji warunkowych dotyczących różnych sposobów animacji zdjęć. Każda animacja z względu na jej złożoność realizowana jest w pętli for, która to generuje ustaloną ilość elementów, które są potrzebne do wykonania danego efektu wizualnego na zdjęciu. Większość tych efektów jest bardzo podobna do siebie, tzn, np w jednych efekcie używam opacity, a w innym operuje na width lub height. Jaki sposób jest bardziej optymalny: 1. czy lepiej każdemu efektowi przypisać nową pętlę, która będzie realizowała daną animację (minusem jest powielanie kilkunastu linijek kodu) 2. A może lepiej utworzyć jedną pętlę i za pomocą instrukcji warunkowych tworzyć wyjątki (różnice dla aktualnie wylosowanej animacji). Proszę o wasze opinie na ten temat. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Lepiej zastosować funkcję z parametrem. Jako parametr podasz 'opacity', 'width' czy 'hight', a w kodzie
Kod cosCoZmieniasz[ zmienna ] = 'nowa wartosc'; Dla efektów bardziej złożonych robisz switch-a: Kod switch( zmienna ){
case 'superEfekt1': //..... break; case 'superEfekt2': //..... break; default: cosCoZmieniasz[ zmienna ] = 'nowa wartosc'; // czyli to gdy zmieniasz 'opacity', 'width' czy 'hight' } Ten post edytował kamil4u 24.11.2012, 20:19:05 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 24.11.2012 Ostrzeżenie: (0%) ![]() ![]() |
Problem jest w tym, że czasami podmieniam jakąś wartość a innym razem dodaje lub odejmuje jakieś wartości odpowiedzialne za daną animację.
Może inaczej się spytam: co jest lepsze: 1. Tworzenie pętli która reazlizuje wybrany efekt (większa ilość kodu ale mnie zadań do realizacji w ciele pętli 2. Instrukcje warunkowe w ciele pętli (mniejsza ilość kodu ale więcej zadań do wykonania wewnątrz pętli, np, pętla ma 20 cykli, przy dwudziestu instrukcjach warunkowych daje to do 400 dodatkowych zadań nim pętla zakończy działaniie - jeżeli źle to rozumiem to proszę mnie poprawić) Z góry dziękuję za odpowiedzi Ten post edytował clapton4321 24.11.2012, 20:37:15 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Zrób if-y lub switch i dodatkowo każdy efekt wrzuć do funkcji, dzięki temu będziesz miał większy porządek w kodzie.
I wklej tu ze dwa efekty to może da się wymyślić coś lepszego. Cytat co jest lepsze: Nic nie jest lepsze. W tym przypadku bardziej bym się skupił na estetyce kodu, żebyś w przyszłości mógł szybko coś poprawić. 20 cykli to nic( chyba, ze w środku masz skomplikowane operacje, ale wtedy należy optymalizować te operacje. ) Tak samo sprawdzenie warunku if długo nie trwa. Jeżeli masz tego naprawdę dużo to użyj switch, ale różnica będzie niezauważalna dla zwykłego człowieka. --edit-- Cytat Cytat Problem jest w tym, że czasami podmieniam jakąś wartość a innym razem dodaje lub odejmuje jakieś wartości odpowiedzialne za daną animację. Możesz dorzucić drugi parametr określający jaką operację należy zrobić (IMG:style_emoticons/default/wink.gif) Ten post edytował kamil4u 24.11.2012, 20:57:53 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 24.11.2012 Ostrzeżenie: (0%) ![]() ![]() |
Efekty mam w swichu i każdy case ma nazwę efektu plus funkcję realizującą ten efekt.
Zmagałem się z dwoma możliwościami: 1.
W tym punkcie instrukcje warunkowe są w funkcjach, które to właśnie skadają się m.in z pętli 2
W tym punkcie nie ma instrukcji warunkowych, poniważ każdy efekt jest wo oddzielnym case Dzięki za odpowiedź, jakiś czas się nad tym zastanawiałem, ale też nie mogłem znaleźć odpowiedzi który sposób będzie lepszy Ten post edytował clapton4321 24.11.2012, 21:12:27 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 13:31 |