123

Attention! The website uses cookies to offer you better browsing experience. Find out more on Privacy Policy. Now your browser has blocked cookies. This information will be displayed until you enable cookies in your browser.
I understand and accept cook­ies!
*
:
/
o
[
]
Z
U

O wtycz­kach

Z pod­su­mo­wa­nia po­prze­dnie­go ar­ty­ku­łu wie­my, że ga­le­ria mo­że (ale nie mu­si) ko­rzy­stać z wty­czek lub bib­lio­tek. Dzi­siaj roz­wi­nie­my ten te­mat.

Co to jest „wtycz­ka” i cze­mu wtycz­ki są złe.

Ogól­nie rzecz bio­rąc – wtycz­ka to ob­cy kod, któ­ry mu­sisz zin­te­gro­wać ze swo­ją stro­ną, aby uru­cho­mić na niej ja­kąś fun­kcjo­nal­ność. Cze­mu są złe:

  1. Ob­cią­ża­ją Two­ją stro­nę (kod wtycz­ki mu­si być za­ła­do­wa­ny do pa­mię­ci i w za­leż­no­ści od roz­wią­za­nia, al­bo jest ła­do­wa­ny je­dno­krot­nie i in­sta­lo­wa­ny na sta­łe w przeg­lą­dar­ce, al­bo jest ła­do­wa­ny przy każ­dym uru­cho­mie­niu stro­ny).

    To pier­wsze roz­wią­za­nie wy­da­je się być lep­sze, ale to nic in­ne­go jak właś­nie in­sta­lo­wa­nie Flash-a, Sil­ver­Light-a, czy in­nych te­go ty­pu roz­sze­rzeń. Za­zwy­czaj użyt­ko­wnik jest pro­szo­ny o zgo­dę na ta­ką in­sta­la­cję i tu ma­my pier­wszy prob­lem – a co bę­dzie jak się nie zgo­dzi? No cóż – zo­sta­nie pu­ste okien­ko w miej­scu na­szej su­per ga­le­rii :-).

    A jak bę­dzie chciał obe­jrzeć na róż­nych urzą­dze­niach i róż­nych przeg­lą­dar­kach? – no to bę­dzie mu­siał za­in­sta­lo­wać wtycz­kę na wszyst­kich urzą­dze­niach i wszyst­kich przeg­lą­dar­kach. Co to ozna­cza? Dok­ła­dnie ty­le, że pro­du­cent wtycz­ki mu­si za­pe­wnić pra­wid­ło­wą jej pra­cę na wszyst­kich urzą­dze­niach, a nie jest to pro­ste :-). Za­czy­na­ją się prob­le­my ze zgo­dno­ścią, z wer­sja­mi, itd. Zro­bi­łeś coś no­we­go – mu­sisz po­pro­sić, że­by użyt­ko­wnik zak­tua­li­zo­wał wtycz­kę, bo sta­ra mo­że tej fun­kcjo­nal­no­ści nie ob­słu­gi­wać.

    No to mo­że zre­zyg­nuj­my z te­go roz­wią­za­nia i ła­duj­my wtycz­kę bez­po­śre­dnio ze stro­ną. De fac­to – ta dzia­ła­ją wszyst­kie bib­lio­te­ki ty­pu jQue­ry i po­dob­ne.

    Na pe­wno ta dro­ga roz­wią­zu­je prob­lem py­ta­nia użyt­ko­wni­ka o zgo­dę :-). Po pro­stu nie py­ta­my go o to :-). Ale czy to jest fair? No cóż, po­nie­waż tak ła­do­wa­ne wtycz­ki ma­ją je­dnak mniej­szą swo­bo­dę dzia­ła­nia, to mo­że­my się z tym po­go­dzić, ale mu­si­my mieć je­dnak świa­do­mość, że do koń­ca – to nie wie­my co w ta­kiej wty­czce sie­dzi, więc bie­rze­my na sie­bie od­po­wie­dzial­ność za ewen­tual­ne wła­ma­nie za po­śre­dni­ctwem ta­kiej bib­lio­te­ki. Je­śli na­sza stro­na to zwyk­ły blog – to prob­lem nie­wiel­ki, ale je­śli to sklep in­ter­ne­to­wy i ma­my prze­sył pie­nię­dzy – to za­mie­szcza­nie na ta­kiej stro­nie ob­ce­go ko­du (po­bie­ra­ne­go z ze­wnę­trzne­go ser­we­ra) nie wy­da­je się dob­rym roz­wią­za­niem.

    Ale za­łóż­my, że jest ok, wtycz­ka się za­ła­do­wa­ła i wszyst­ko dzia­ła. Czy to roz­wią­za­nie jest bez wad? Nie­ste­ty wtycz­ka ma swo­ją ob­ję­tość i mu­si zo­stać prze­sła­na przed ot­war­ciem stro­ny. Co praw­da dob­rze zbu­do­wa­ny kod (i wtycz­ki i stro­ny) za­pe­wni, że przeg­lą­dar­ka za­pa­mię­ta kod wtycz­ki i nie bę­dzie jej po­bie­ra­ła wie­lo­krot­nie, ale pa­mię­taj „pier­wsze wra­że­nie ro­bi się tyl­ko raz”.

    Więc je­śli Two­ja stro­na ten pier­wszy raz bę­dzie się ła­do­wa­ła śla­ma­zar­nie - to właś­nie ta­kie wra­że­nie po niej po­zo­sta­nie :-).

  1. Czy po­za zwięk­sze­niem ob­ję­to­ści stro­ny to już wszyst­kie prob­le­my zwią­za­ne z wtycz­ka­mi/bib­lio­te­ka­mi?

    No cóż – mo­że chciał­byś mieć też in­ne fun­kcjo­nal­no­ści na stro­nie (ko­men­ta­rze, cza­ty, in­ne spra­wy).

    Jak to po­go­dzić – je­śli każ­da z tych fun­kcjo­nal­no­ści wy­ma­ga bib­lio­tek – to py­ta­nie, czy to są te sa­me bib­lio­te­ki?

    Je­śli nie – to ma­my prob­lem – bo nie dość, że mu­si­my je wszyst­kie za­ła­do­wać, to je­szcze one nie mo­gą się ze so­bą „gryźć”.

    Więc le­piej by­ło­by, że­by te wszyst­kie fun­kcjo­nal­no­ści je­dnak pra­co­wa­ły pod ta sa­mą bib­lio­te­ką, ale co z te­go wy­ni­ka? To – że li­czba do­stęp­nych roz­wią­zań nag­le nam się moc­no ogra­ni­cza. Je­śli to ma być roz­wią­za­nie „dar­mo­we”, to mo­że­my li­czyć na to, że ja­kiś in­ny użyt­ko­wnik tej kon­kret­nej bib­lio­te­ki zro­bił już ta­ką fun­kcjo­nal­ność i ją udo­stęp­nił. Je­śli płat­ne – to zwią­zu­je­my się z pro­du­cen­tem bib­lio­te­ki i te­go roz­wią­za­nia.

    Jest je­szcze trze­cie wy­jście – na­u­czyć się bib­lio­te­ki i na­pi­sać sa­mo­dziel­nie wy­ma­ga­ny mo­duł :-).

    Je­śli już we­jdziesz w ja­kąś bib­lio­te­kę – to na­wet jak pod in­ną po­ja­wi się cie­ka­we roz­wią­za­nie – Ty masz na swo­jej stro­nie już tę in­ną i bi­jesz się z myś­la­mi – zmie­niać czy ciąg­nąć :-).

Po co nam te wszyst­kie kło­po­ty i prob­le­my z wtycz­ka­mi? Czy nie le­piej po pro­stu użyć cze­goś, co nie wy­ma­ga ża­dnych wty­czek/bib­lio­tek? Tak – jest to moż­li­we :-). Na­sza ga­le­ria – to tyl­ko 120KB ko­du i ła­du­je się wprost do pa­mię­ci przeg­lą­dar­ki. Nie prze­cho­dzi przez ża­dne pośred­nie bib­lio­te­ki czy wtycz­ki. Po pro­stu tzw. „na­ty­wny” kod Java­Script.

Ze­spół 3n, Ko­sza­lin, kwie­cień 2019


Comments: comment this page