Txigorgailua - dena konpostagailura sartzen da. Iragazi eta gozatu

Gertatzen da IT gaiei buruzko Errusiako galdera-erantzun baliabidea nahiko ezaguna dela CISen - toaster. Hala ere, zerbait falta zitzaion gertutik ezagutzen hasi nintzenean. Honek arakatzailearen luzapenaren hobekuntza ekarri zuen. Ezagutu nazazu.

Ezaugarri nagusiak:

  • Izenburua: Txigorgailua Erosotasuna.
  • Erabiltzaileen estatistikak: irtenbideak dituzten galderen ehunekoa; Habr-eko karma; profilaren laburpena - hau guztia Toaster-en galderen zerrendan dago.
  • Oharrak: denbora errealean gunean, ikonoan, gehi push jakinarazpenak, ezarpen asko, guneak irekita egon behar du (wikia).
  • Iragazkiak: Formuletan oinarritutako baldintzak: galderak ezkutatu, margotu eta jakinarazpenak ere erakutsi ditzakezu - hori guztia malgutasunez konfiguratuta dago baldintza logikoen moduan (wikia).
  • Interfazea: hobekuntza txikiak, hala nola, data zehatzak erakustea edo harpidetzaren egoera galderen zerrendan bistaratzea.
  • Habr interfazea: hobekuntza txikiak (aukerakoak), adibidez, iruzkinetako koska-lerroak.
  • Iturburu irekia: Zuk zeuk birsor dezakezu benetan nahi baduzu (iturriak).
  • Free: MIT lizentzia.
  • Memoria-kontsumoa: 30-50MB, Txigorgailuaren aukeren eta erabilera intentsitatearen arabera
  • Tamaina: 93KB v0.8.1rako (paketatu gabe, ez txikitutako kodea).
  • Esparrua: falta, garbi JS (minimalismoa).
  • Kodearen kalitatea: batez bestekoa, estiloen nahasketa, ezaugarri handiak, trikimailu zikinak, iruzkin gutxi.
  • Baimenak: toster.ru, habr.com, notifications, storage, unlimitedStorage

Hasieran, luzapena niretzat egin nuen helburu bakar batekin: erabiltzailearen galderen ehunekoa zeinetan "Markatu irtenbide gisa" botoia sakatzean traba egin zuen erakustea. Gero, apurka-apurka, lehenengo bat eta gero beste bat gehitu ziren, tresna ehun kilobyteko munstro bihurtu arte. Hala ere, "alferrikako ezer ez erabiltzea" printzipioa jarraitu zen amaiera arte.

Orain ezaugarri nagusietako bat ezarpenetan formulen erabilera da. Haiekin ia edozer gauza egin dezakezu, zure arreta kudeatu nahi duzun guztia. Gauza nagusia zer nahi den jakitea da. Ezkutatzea, koloreak aldatzea eta jakinarazpenak dira gune batekin lan egitean arreta jarri beharreko hiru alderdi nagusiak. Dena eta dena iragaztea erosotasunerako gakoa da.

Gai zehatz bati buruzko jakinarazpenak jasotzeko aukera emango dizun arau malgu baten adibidea:

!tag("Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π΅ΠΊΠ»Π°ΠΌΡ‹") && !contains(t,"Ρ€Π΅ΠΊΠ»Π°ΠΌ") && contains(t,"Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²") && !tag("HTACCESS") || containsWord(t,"Ρ€ΠΊΠ½") || contains(t,"роскомнадзор") || contains(t,"роскомпозор") || contains(t,"государств") || contains(t,"Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½") || contains(t,"Π·Π°ΠΏΡ€Π΅Ρ‰Ρ‘Π½") || contains(t,"пиратск") || containsWord(t,"ΠΎΠ±Ρ…ΠΎΠ΄") || containsWord(t,"ростСлСком") || containsWord(t,"яровой") || containsWord(t,"Ρ€Ρ„") && tag("ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Π΅ сСти") = notify

Berehala esango dut eval() funtzioa ezin dela erabili. Beraz, ez duzu asko dibertituko. Hori dela eta, nire makulua idatzi behar izan nuen 5 KBko kodea erabiliz alderantzizko idazkera poloniarra. Hau, esan liteke, JS oso neutralizatua dela, bai funtzioei bai sintaxiari dagokionez.

Duela gutxi argitalpen bat izan da Toster luzapena. Konparatuz, TEk interfaze politagoa eta Toster Comfort-ek ez dituen ezaugarri batzuk ditu. Hala ere, nire luzapenak baliabideen kontsumoa azpimarratzen du. Hala ere, inork ez zaitu molestatzen bi luzapenak erabiltzeko; ez dute gatazkarik izan behar.

Modu onean, TC hutsetik berridatzi behar da, lana bi aldiz gutxienez bizkortu daitekeelako eta cachearekin lan egin - 10 aldiz, localStorage eta JSON.stringify() alde batera utziz eta arkitektura-soluzio batzuk aldatuz. Baina ez naiz nik balentria hau egin behar duena. Eta β€œfuntzionatzen badu, ez ukitu” printzipioaren zalea naiz. Oporretan nagoen bitartean, gaiak eta PR aktiboki hartzen ari naiz, baina ez minimalismoaren kontura. Eskerrik asko zure arretagatik!

Iturria: www.habr.com

Gehitu iruzkin berria