Olen veebirakendusi arendanud juba pikka aega. Kaua aega tagasi. Teie esimesed veebirakendused keskkonnas Ma lĂ”in neil pĂ€evil, mil sĂ”na "google" ei olnud veel tegusĂ”na ja Internetist teabe otsimiseks kasutasid inimesed Yahoo! ja Rambler. Ma kasutasin seda 'om - neil oli kitsenev otsing ja mitte nii kole ĂŒlekoormatud liides nagu Yahoo!
Rakenduste arendamine, kĂ”ik rakendused, mitte ainult veebi jaoks, on loominguline töö. On ebatĂ”enĂ€oline, et keegi selle vĂ€itega vaidleks. Ja ilu loovuses on nagu praktika teaduslikes teadmistes â tĂ”e kriteerium. Aga kui teaduspraktika on objektiivne ja pĂ”hineb mÔÔtmistel, siis ilu on subjektiivne teema, olenevalt sellest, kes vaatab. Seega kĂŒsisin endalt, mis on minu jaoks isiklikult ilus veebirakendus?

(KDPV puhul ei ole silm minu, see on naise silm, kuid IMHO, naise silm KDPV suhtes on sobivam kui mehe oma, sest see on !)
LĂ”ike all on minu enda kriteeriumid, millist veebirakendust vĂ”ib praegu ilusaks pidada. Minu isikliku kogemuse pĂ”hjal vĂ€ga subjektiivne vĂ€ide. VĂ”ib-olla tunduvad minu ilu kriteeriumid mĂ”nele inetuse kriteeriumina. Ărge ĂŒllatuge, teil on lihtsalt teistsugune kogemus.
Ja kuna olete juba lÔikes osalenud, olge oma kommentaarides ettevaatlik. LÔppude lÔpuks, kui saate artikli lugemise lÔpetada kohe, kui selles vÀljaöeldu tundub teile inetu vÔi isegi inetu, siis olen autorina sunnitud kÔik kommentaarid lÀbi lugema.
Elupaik
Protokollid
Ma isegi ei tea, kas tasub seda kriteeriumi eraldi teha. Veebirakendused elavad veebis ja on sunnitud jÀrgima veebiseadusi (protokolle). Peamised Interneti-protokollid on jÀrgmised: О . Nendel pÔhinevad paljud teised protokollid, kuid veebirakenduste puhul pean kÔige olulisemaks (vÔi Ôigemini selle laiendus alusel ). See tÀhendab, et ilus veebirakendus on saadaval HTTPS/TLS-i kaudu (valikuliselt - HTTP kaudu) ja muud protokollid (LDAP, RPC, IMAP4, POP3, SMTP, FTP, NNTP, ...) muudavad selle iga tÀiendavalt toetatavaga vÀhem ilusaks. protokolli. Rakendus ise saab neid lisaprotokolle kasutades kasutada vÀliseid ressursse.
suhtes , siis pole mul selle protokolli veebirakendustega piisavalt kogemusi. See nÀeb ilus ja paljutÔotav vÀlja, kuid ma ei oska öelda, kui stabiilne ja praktiline see on.
Brauserid
Veebirakendusel on ainult ĂŒks jalg serveri poolel, teine ââââkliendi poolel. Kliendipool on brauser. Kaasaegne brauser pakub , mida kaasaegne veebirakendus saab ja peaks enda huvides Ă€ra kasutama. Kaunis veebirakendus kasutab kaasaegseid brauseri vĂ”imalusi ja ei pea töötama brauserites, mis ei paku kaasaegseid vĂ”imalusi. Ma saan aru, et - see on vajalik meede, kuid see on kole. LĂ”puks ei pea moodsate tehnoloogiatega sammu pidama ainult arendajad, see kehtib ka kasutajate ja ettevĂ”tete kohta.
JP
Programmeerimiskeeltega, mida veebirakenduste loomiseks kasutatakse, on kĂ”ik vĂ€ga segane. Veebirakenduste kliendipoole jaoks on palju tehnoloogiaid, mis vĂ”imaldavad arendajal hĂ”lbustada HTML/CSS/JS triaadi loomist (millest saavad aru kĂ”ik kaasaegsed brauserid). Kuid omal ajal puutusin tihedalt kokku ja minu arvates on ilus, kui arendaja nĂ€eb brauseris algset koodi, mitte kompileerimise vĂ”i ĂŒlekandmise tulemust. SeetĂ”ttu kasutage 'ja sarnased tooted kliendikoodi IMHO genereerimiseks on inetud. Mida sarnasem on brauseris töötav kood arendaja loodud lĂ€htekoodiga, seda parem. Ei usu mind? Proovige siluda GWT tootmisprotsessis loodud koodi.
Serveri poolel on rohkem vabadust (Java, PHP, perl, python, C#, Ruby, ...), kuid mulle tundub, et see on ilus, kui sama programmeerimiskeelt kasutatakse nii serveri poolel kui ka brauser â JavaScript. Ikkagi , ja sarnaselt mĂ”tlevate inimeste meeskonnad on produktiivsemad.
Inimlikkus
Ilus veebirakendus peaks kasuks tulema. Kasulik ennekÔike inimestele kui lÔpptarbijale. SeetÔttu ei saa ma seda ilusaks veebirakenduseks nimetada . Tavainimesel (mitte veebiarendajal) on nendega raske töötada. Veebiteenused on omal moel ilusad,
Ilusal veebirakendusel peaks olema intuitiivne liides. Selle ĂŒle vĂ”ib vaielda See on ĂŒsna subjektiivne asi. Nina kĂ”ik on palju lihtsam, kui kasutaja ei saa rakendust ilma vÀÀrtusliketa kasutada - halb UX, kole veebirakendus. Selle kriteeriumi kĂ”ige ilusamaid veebirakendusi saavad hĂ”lpsasti kasutada lapsed, kes veel lugeda ei oska.
Pöördmastaapsus
Kunagi sai programme ĂŒle kanda diskettidele, nĂŒĂŒd - mĂ€lupulkadele vĂ”i kohe Internetist alla laadida. Tavalise rakenduse kopeerimine ja selle teises masinas kĂ€ivitamine on tĂŒhine ĂŒlesanne. MĂ”nevĂ”rra eriline on olukord veebirakendustega. VĂ”rk on globaalne keskkond, milles ei ole vaja sama veebirakenduse kloone. Internetis piisab ĂŒhest Facebookist, Twitterist, Instagramist, Mail.ru-st vĂ”i Yandexist. Samas temaatilises niĆĄis vĂ”ivad olla erinevad veebirakendused, kuid erineva sihtrĂŒhmaga (nt Facebook ja Vkontakte, Mail.ru ja Gmail, Google Maps ja Azure Maps). Selliste veebirakenduste ĂŒlemaailmse kĂ€ttesaadavuse tagamiseks on vaja riistvararessursse. .
Ma pole kunagi arendajana sellisel tasemel veebirakendustega töötanud ja mul pole Ă”rna aimugi, kuidas need sees töötavad. Selliste veebirakenduste funktsionaalsuse tagamiseks on vaja vastavate spetsialistide meeskondi ja eraldi andmekeskusi. Imetlen inimeste vĂ”imet sellises mahus koostööd teha ja selliseid tooteid luua, kuid minu ilustandardiks on veebirakendus, mida saab kĂ€ivitada eraldi sĂŒlearvutis.
Kaunis veebirakendus ei skaala mitte ainult ĂŒles ja vĂ€ljapoole (kasutajate jaoks), vaid ka alla ja sissepoole (arendajate jaoks).
"amfiibsus"
Kaasaegsetele veebirakendustele juurdepÀÀsuks kasutatakse kahte tĂŒĂŒpi seadmeid:
- arvutid (sĂŒlearvutid, lauaarvutid);
- mobiilseadmed (nutitelefonid ja tahvelarvutid);
Kusagil silmapiiril paistab rohkem ""Aga see selleks korraks.
Arvutid erinevad mobiilseadmetest sama palju kui maismaaloomad veelindudest. Need on erinevad keskkonnad ja seavad neis elavatele olenditele (programmidele) erinevad nĂ”udmised. Ilusad veebirakendused ei ole need, mis vĂ€lja nĂ€evad ja need, kes on vees, on nagu kalad, maal nagu loomad ja Ă”hus () â nagu linnud.
Ma arvan, et see on kole"â, see on nagu proovimine istuda kahel (SEO-ga â kolmel) toolil. Parem nagu Fiona Shrekist â ĂŒks pĂ€eval ja teine ââöösel. Jah, kallim. Aga parem.
Ristjagamine
MĂ€rkasin juba lĂ”igus âReverse Scalabilityâ, et vĂ”rgu globaalsus vĂ”imaldab ĂŒhe veebirakenduse olemasolu planeedi kohta. SeetĂ”ttu peab iga veebirakendus oma pĂŒsimajÀÀmise tagamiseks teistest vĂ€hemalt mĂ”nevĂ”rra erinema. KĂŒll aga minu aastatepikkune kogemus (e-poe poodide ehitamise raamistik) ĂŒtleb, et ĂŒksikute veebirakenduste vahel vĂ”ib olla rohkem sarnasusi kui erinevusi. SuurepĂ€rane veebirakendus ei peaks olema mitte ainult modulaarne, vaid ka jagama oma mooduleid teiste veebirakendustega. Mingil mÀÀral kajastub see idee JSR 168 ja JSR 286 ning raamistikud nagu , ja sama MagentoMinu arvates on veebirakenduse moodulite rohkus seda ilusam. Ristjagamine vĂ”imaldab luua kvaliteetsemaid mooduleid ja selle tulemusel stabiilsemaid veebirakendusi.
Mooduli all ei pea ma silmas selliseid teeke nagu jQuery vĂ”i RequireJS â pigem suuremaid ĂŒksusi, nĂ€iteks pluginaid Đž . Kuid raamatukogude puhul kehtib ka vĂ€itekiri, et raamatukogu laialdane levik vĂ”imaldab seda paremaks ja jĂ€tkusuutlikumaks muuta.
Harvardi arhitektuur
, erinevalt praegu valitsevast pallist , tĂ€hendab koodi ja andmete eraldamist. Arhitektuur ei tĂ”usnud, aga idee ise tundub mulle isiklikult ilus. Eriti veebirakenduste jaoks. Igasugune staatiline (HTML/CSS/JS/Images/âŠ) on kood. Seda saab ja tuleks vahemĂ€llu salvestada kas serveri vĂ”i kliendi poolel. Ja andmed on / (ilus) vĂ”i / (veidi vĂ€hem ilus). VĂ”i WebSockets/JSON (vĂ”ib olla parim valik, aga ma pole seda proovinud).
Lokaliseerimine
Veebirakenduste arendamisel puudutavad mind eriti kaks asja â mitmekeelne liides ja ajavööndid. Olen pĂ€rit LĂ€tist, meil on kasutusel kolm keelt: LV, RU, EN. Ilus veebirakendus ei peaks mitte ainult vĂ”imaldama teil rakenduses endas kasutada mitut keelt, vaid vĂ”imaldama teil ka laiendada kasutatavate keelte arvu vĂ€liste ressursside, nĂ€iteks . Sama kehtib ka moodulite kohta, millest veebirakendus kokku pannakse.
Ajavööndite puhul on kÔik lihtne, kÔigil juhtudel, kui pole selge, kuidas kuupÀeva ja kellaaega töödelda, tehke nii: kÔik, mis on serveris, lÀheb serverisse ja pÀrineb serverist - UTC, kÔik, mida kliendil kuvatakse - vastavalt ajavööndile kasutajaprofiilist. See on ilus.
SurmatÀhtede asemel sepised
Ammu oli igal enam-vĂ€hem suurel linnal oma sepikoda. VĂ”ib-olla mitte ĂŒksi. MĂ”ned on paremad, mĂ”ned on halvemad. Seppasid tunti ĂŒle maailma ja oli ka neid, kelle juurde nad tulid, sest alternatiivi polnud. Oli sĂ”du, epideemiaid ja looduskatastroofe. MĂ”ned linnad kadusid koos elanikkonnaga. Kuid sepatöö jĂ€i elama. Kadunud linnade asemele ehitati uued ja neisse tekkisid ka sepikojad.
NĂŒĂŒd vaadake sellist teenust nagu . Kui juurserverid kaovad, .
Minu arvates ei saa ilus veebirakendus olla nii suur kui Facebook vĂ”i Mail.ru. See on juba lĂ€hemal ""nii ehitamiseks vajalike ressursside kui ka töövĂ”ime sĂ€ilitamiseks vajalike ressursside osas. Jah, kui Facebook hĂ€vitatakse, siis inimkond ei kao, selle funktsioonid vĂ”tavad kiiresti ĂŒle teised rakendused (sama Vene Föderatsiooni territooriumil ja seda ĂŒmbritsevatel aladel, Instagram, Twitter, ...). MĂ€rkimisvÀÀrse osa planeedi elanikkonnast ĂŒhe rakendusega lukustamine pole aga ilus. Lisaks, arvestades palju sÀÀstvamate alternatiivide (nt. ).
KokkuvÔte
Kui olete lĂ”puni lugenud ja olete segaduses - "Mis see oli?"SeejĂ€rel avaldan teile siirast kaastunnet. Ma ei sundinud sind seda lugema. Ăritasin lihtsalt oma mĂ”tteid sĂ”nadesse panna, et leida teisi, kes samamoodi mĂ”tlevad. VĂ”ib-olla saan nendega arutada ilusate veebirakenduste loomise aspekte ja leida vastused oma kĂŒsimustele. Ja mul on neid palju.
TĂ€name lugemast.
Allikas: www.habr.com
