- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Egy szenzor, két zoomkamera: újraírta a Huawei a mobilfotózás történetét
- Magyarított Android alkalmazások
- Redmi Watch 5 - formás, de egyszerű
- Google Pixel topik
- Apple Watch Sport - ez is csak egy okosóra
- Nem várt platformon a OnePlus Nord 5
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Megérkezett a Google Pixel 7 és 7 Pro
- Samsung Galaxy Watch6 Classic - tekerd!
-
Mobilarena
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
norby10
csendes tag
-
Sk8erPeter
nagyúr
Szerintem bad practice-eket megosztani Smarty.js néven nem túl jó ötlet...
Akkor már írd oda, hogy mit NE, és mit IGEN. Ne csak a NE-megoldás legyen ott...
Nem beszélve arról, hogy már csak azért is rossz a kód, mert nincs típusellenőrzés sem, nem biztos, hogy az átadott változónak (ami nem biztos, hogy típushelyes) létezik egyáltalán .length property-je. -
Jim-Y
veterán
válasz
Sk8erPeter #4397 üzenetére
Hat, elotted a lehetoseg, tudom, hogy neked is vannak olyan kodjaid/eseteid amik megernenek egy fuggvenyt
En folyamatosan bovitgetem, de ugye ez lassan megy, mivel egyedul csinalom. Ellenben biztos vagyok benne, hogy hasznos dolog (legalabbis nekem).
Pl ma is
[link]
function easyToUseBadLogicalAND(arr) {
return arr && arr.length;
}Az egesz abbol indult ki, hogy review-oltam, es volt egy ilyen a kodban (egyszerusitve persze szv pl a valtozok miatt ne szoljatok be
)
var y = x && x.length ? true : false;
Ami nyilvanvaloan egy antipattern, lenne, de megsem az. Akkor lenne igazan antipattern, ha
var y = x && x.length > 0 ? true : false;
De mivel az && nem biztos, hogy mindenki szamara egyertelmuen mukodik, ezert megert egy kis kodot szerintem
-
Sk8erPeter
nagyúr
válasz
martonx #4395 üzenetére
"Szóval igen, erre is gondoltam, csak úgy voltam vele, hogy ezt így hosszadalmasabb levezetni, mint példának felhozni a CMS-t, ahol ez szükségképpen eleve így van."
Tudod, hogy szeretek korrigálgatni bizonyos mondatokat CMS-témában (amik félrevezetőek lehetnek annak, aki csak (rossz) hírből hallott a CMS-ekről), még akkor is, ha tudom, hogy teljesítmény terén tényleg sokszor nagyon gyatra tud lenni.A korrekciók oka nálam igazából csak az, hogy míg aktívan CMS-eztem, akkor rá kellett jönnöm, hogy mivel a CMS-ek népszerűek, nagy közösség áll mögöttük, meg relatíve egyszerű is elindulni az úton velük (aztán bizonyos esetekben annál nehezebb tovább is haladni), ezért a nagy merítésből sok is a kókler, van jópár modul, amit sokan használnak, mégis rettentő szarul vannak megírva, erőforrás-pazarlóak, a lehető legrosszabb teljesítményt nyújtó adatbázis-kezelési technikákat alkalmazzák (a "kedvencem": a PHP-vel szerializált óriásadathalom egyben történő beerőltetése egy darab mezőbe, a széjjelrobbbantandó stringek beerőltetése egy darab mezőbe (kettősponttal, pipe-pal, pontosvesszővel, tökömtudjamivel "elválasztott" retkek)), így a CMS alapvető működéséből (ti. hogy épp a rugalmasság biztosítása érdekében lényegében a legtöbb dolgot adatbázisban tároljuk, illetve onnan kérjük le; moduláris felépítésből következő bizonyos redundáns kódrészletek, stb.) következő teljesítményromlást még jóval tovább rontják bizonyos emberkék, így nagy általánosságban nem túl jó a CMS-ek renoméja. (Hozzáteszem, pl. a Drupal OOP-vel kevert procedurális kódja sem túl nyerő, bár sztem talán a PHP-s legnépszerűbbek közül még ez a legrugalmasabb CMS.)
Pedig sokszor a CMS maga az API-ján keresztül jóval igényesebb módszereket is kínálna, mint ahogy azt sok fejlesztő kihasználja. És ez gáz. A korábbi, JS-kódokat az adatbázisba benyomorító példám is erre vonatkozott: lehet ezt csinálni tisztességesen is, úgy, hogy szépen egy fájlt szerkeszt a fejlesztő, ahogy illik, a CMS egyetlen dolga pedig csupán ezt a fájlelérési utat betenni a script tag src-attribútumába, majd a kliensoldali kódot a moduláris kódszervezési minta alapján betölteni, meg lehet csinálni gusztustalanul is, hogy a PHP-kódba valahol be van nyomorítva az inline JS-kód egy stringként.
Szóval nincs így szükségképp eleve a CMS-ben, ennyit akartam korrigálni ezzel a hosszas felvezetéssel, korán van még.Hát így a kód nem hangzik rosszul, bár maradhatott volna a kolléga, hogy vele tudjuk megbeszélni a dolgot, ha már tanulni akar belőle.
(#4370) Jim-Y :
A Crockford-idézetre:
"This feature was added for people who were beginners, so if you want to look like a beginner, then leave the semicolons out."
Hmm, hát igen, de sosem értettem, hogy miért kell egy nyelvet eleve úgy megalkotni, hogy az amatőrök is felszabadultan tákolhassanak, miért nem kötelező az utasítás végén eleve a pontosvessző? Ha valamit a fejlesztő szarul csinál, rá kell vágni a kezére, ez a toleránsnak tűnni akaró szemlélet elég káros lehet.(#4371) :
Ez a Smarty projekt alapvetően jó ötletnek tűnik, de tényleg kéne pár ember, aki ezt update-elgeti, nehogy elhaljon a dolog.
Megcsillagoztam GitHubon a repót. -
martonx
veterán
válasz
Sk8erPeter #4394 üzenetére
Ez egyre inkább off topik, de per pillanat is tudok mutatni olyan főállásban PHP fejlesztőt, aki pont olyan szarul írja a PHP kódját mindenféle framework, meg CMS nélkül is, mint ahogy írtad
Szóval igen, erre is gondoltam, csak úgy voltam vele, hogy ezt így hosszadalmasabb levezetni, mint példának felhozni a CMS-t, ahol ez szükségképpen eleve így van.Az eredeti kódban meg olyanok voltak, hogy itt - ott, egy - egy if ág végén, ahol nyilván return akart volna lenni, mert teljesen egyértelmű volt, hogy a cél akkor az adott funkcióból kilépés lett volna, event.preventDefault-ok álltak pl. xy string hosszának ellenőrzésekor, azaz amikor validációs hiba történt
Akkor direkt nem akartam ezen élvezkedni, de addig provokáltál...Finoman, némi hint-tel megszórva próbáltam a kollégát rávenni, hogy szánja már rá azt a 10 percet némi javascript doksi olvasására. Mivel időközben levette pastebin-ről, így gondolom sikerült is a rávezetés. Kár, hogy nem tudtad te is megnézni, biztosan okozott volna neked is pár vidám / sírva röhögős / fej falba verős percet.
-
Sk8erPeter
nagyúr
válasz
martonx #4393 üzenetére
Hmm, hát nem tudom sajnos, mi volt az eredeti kódban, így nem tudom, mit csinált rosszul, de mondjuk így segíteni is nehéz az illetőnek, hogy törölte.
Ja, a CMS-es mondatod akkor valóban félreérthető volt, azt hittem, arra gondolsz, amikor egy magát fejlesztőnek tartó valaki behányja inline módon az adatbázisba a kódokat, azt meg ki kell túrni, berakni a HTML-kimenetbe, script-tagek közé, természetesen az inline-sága miatt ez(ek) a kódrészlet(ek) nem is cache-elhető(ek), így a betöltést értelemszerűen lassítja, mivel a böngésző gyorsítótárazását sem tudja kihasználni. Lett volna alapja egyébként, ha erre gondolsz, sajnos láttam már pár ilyen módon megírt, hányadék modult. Miközben persze már a modul írásakor is régen voltak olyan módszerek, amikkel tisztességesen be lehet tölteni a kódokat modulárisan, de fájlokból...
Az az ilyen "nekiesek, hadd szóljon" típusú fejlesztő.
(Aki nem hajlandó eltölteni plusz egy órát a dokumentáció/hasznos tutorialok olvasgatásával, mert haladni akar, cserébe csinál egy kupac szart.)
-
martonx
veterán
válasz
Sk8erPeter #4392 üzenetére
"Pedig annyiból nem mondott hülyeséget, hogy valóban megakadályozhatja egy form elküldését, ha mondjuk a submit buttonre (buttonökre) van kötve az event handler, és hív egy event.preventDefault()-ot; ugyanígy a linkre is igaz. Mondjuk annyiból nem volt pontos a meghatározása, hogy a metódushívás inkább az eventet érvényteleníti/törli, DE az esemény további felszivárgását nem akadályozza meg. Szóval tulajdonképpen az alapértelmezett viselkedést lehet vele módosítani, úgyhogy nagyon nem lőtt mellé. Vagy csak most hirtelen nekem nem ugrik be, mire gondoltál."
Egyrészt igazad van, mert amit mondott önmagában annyira nem volt hülyeség, de nem is mondtam, hogy hülyeség. Viszont ha ehhez megnézed az adott példa kódját (hopsz most olvastam tovább a hsz-ed, és látom, hogy időközben törölte a kódot), akkor meg láthatod, hogy gyakorlatilag fingja sincs, hogy mit csinál, és mi a különbség az event.preventDefault és egy szimpla return között. Ergo fogalma sincs mit csinál, mire jó, még ha lexikálisan nézve nagyjából ismeri is a preventDefault meghatározását.
A CMS-es megjegyzésemet félreértetted. Arra gondoltam, hogy a CMS kismillió dolgot kérdez le a DB-ből, ahhoz, hogy egy hello world oldalt kigeneráljon. Ez esetében szükséges működés, de nyilván teljesítmény optimalizáláls szempontjából rossz működés. Mondhatni szükséges rossz. De ezt már százszor kitárgyaltuk.
-
Sk8erPeter
nagyúr
válasz
martonx #4391 üzenetére
Pedig annyiból nem mondott hülyeséget, hogy valóban megakadályozhatja egy form elküldését, ha mondjuk a submit buttonre (buttonökre) van kötve az event handler, és hív egy event.preventDefault()-ot; ugyanígy a linkre is igaz. Mondjuk annyiból nem volt pontos a meghatározása, hogy a metódushívás inkább az eventet érvényteleníti/törli, DE az esemény további felszivárgását nem akadályozza meg. Szóval tulajdonképpen az alapértelmezett viselkedést lehet vele módosítani, úgyhogy nagyon nem lőtt mellé. Vagy csak most hirtelen nekem nem ugrik be, mire gondoltál.
(#4372) Zedz :
Szívesen ránéztem volna, de törölted a kódodat pastebinről, úgy meg nehéz.(#4381) PumpkinSeed :
"Azért lokálisan tesztelek webszerver nélkül, mert órai feladatra készül és ott nem szabad olyan kódot alkotni ami webszerver nélkül nem működik"
Jézusom, milyen degenerált módszer. Ahelyett, hogy ahhoz szoktatnának, amit az ember élesben és a gyakorlatban használ... Azért ha webfejlesztésről van szó, talán nem a lokális, webszerver nélküli tesztelést kellene erőltetni. Kíváncsi lennék, mégis mi az oka, hogy így találták ki a házit nektek...
Amúgy tényleg elkeserítő, hogy csomó visszajelzés alapján azt hallani, hogy ezek a tanfolyamok vagy elavultak, vagy valami kicsavart gondolkodás mentén elcseszik az oktatás módját.(#4388) martonx :
"Simán lehet, hogy a szerver oldalon van valami elcseszve (mondjuk a legtriviálisabb dolgokat is sql-ből kérdezgeti le, erre nagyon jó tipikus rossz példa a cms-ek működése), [...]"
Mondjuk a CMS-nél is egy normális fejlesztő JavaScript-fájlokat szerkesztget, nem inline kódokat tol fel az adatbázisba, úgyhogy szerintem ez rossz példa, mert a fejlesztői gányolásokért nem a CMS a hibás.(Bár való igaz, hogy sokszor lehetőséget is ad rá.)
Félreértés ne essék, tény, hogy a CMS sok mindent tölt be adatbázisból, ahogy ezt sok topicban átrágtuk, de a CMS-eknél van JS-fájlok betöltéséért felelős metódus, vagy épp a modul valamely fájljában is lehet deklarálni, hogy mely JS-fájlokra lesz valószínűleg szükség. -
cSuwwi
senior tag
válasz
martonx #4388 üzenetére
Az analytics előrerakáson kívül nekem újdonságot szerencsére nem mondtál.
Async/defert nem használok, csak érdekelt hogy van-e létjogosultsága egy átlagos sitenál.
Minify, image sprite alap. Ahol megoldható külön aldomainről mennek a static dolgok, de ez egy pofon a szarnak, mert a cookiekat ugyanúgy elküldi neki. Ideális esetben lenne egy cookieless domain staticnak.
Átlag 2 js-t használok, egy framework.js-t (benne a külsős cuccok, jQ vagy ami éppen kell), illetve egy js amiben a saját cuccok vannak.Szerveren gzip, normális expire time van, js/css-nél ?v=dátum paraméter is van, hogy változás esetén frissüljön.
-
martonx
veterán
Van pár ökölszabály:
1. scripteket mindig a body végére tesszük. Ez alól a ga script az egyetlen (általam ismert) kivétel, noha ez is simán megy az oldal alján is, de a gugli azt javasolja, hogy a mérések pontossága érdekében inkább menjen a head-be. A ga script egyébként csak egy async loader, szóval szerencsére csak minimálisat fog az oldalad betöltődésén lassítani.
2. ne foglalkozz az async - defer attribútumokkal. Ha ezekre vagy szorulva, akkor az azt jelenti, hogy valamit elég rendesen elbaltáztál. No de miért? Mert egy rendesen optimalizált oldalon egy szál minifikált bundle-özött js található (na jó az egy szál, az bizonyos esetekben, mikro optimalizációknál lehet akár 2-3 is), ergo ezekre az attribútumokra nincs is érdemben szükség.
3. ha már optimalizálás, akkor cdn-ről használod azt az egy szál minifikált, bundle-özött js-edet? Sőt menjünk tovább, minden statikus tartalmat (css - ami ugye szintén bundle-özött, minifikált, képek - amik ugye lehetőség szerint sprite-okban vannak). A cdn-ben be van állítva a gzip, illetve valami jó nagy expiary date? A cdn már csak azért is fontos, mert a böngésző azonos domain-ról sorrendben szedi le / várja be a kért cuccok letöltődését. Ellenben ha valamit másik domain-re teszel ki, pl. cdn-re, akkor annak a letöltése, feldolgozása hirtelen párhuzamossá válik.
4. ha már kismillió js file-od van, akkor használj valamilyen loader scriptet, amivel szabályozni tudod, hogy mikor épp melyik js töltődjön be, így minden oldal csak a számára szükséges minimális js-t fogja letölteni, használni.
5. egy oldal pagespeed-jén ritka az, amikor maga a js betöltés ront. Simán lehet, hogy a szerver oldalon van valami elcseszve (mondjuk a legtriviálisabb dolgokat is sql-ből kérdezgeti le, erre nagyon jó tipikus rossz példa a cms-ek működése), valami nincs cache-elve, szar a html struktúra, túlbonyolított a css, és ez miatt extra köröket fut a renderelés stb... -
cSuwwi
senior tag
Optimalizálás témakörbe: külső js fileokat head-be, vagy body vége elé?
Jómagam csak az oldalak végére pakolom (elvileg ide illene, illetve már megszokásból, inline js-t kerülöm, csak diszkrét js van az oldalaimban)
Viszont a "csoda" seo-sunk szerint előre kellene, és az analytics mérőkódot is.
Az átlag magyar siteokat elnézve a fejlesztőbrigádtól függ éppen hova kerül. Van valami előnye a headbe tenni?Illetve az async/defer gyakorlatban is beválik? Gyorsabb lesz a betöltődés?
Itt ahogy látom az async-nál párhuzamosan letölti és le is futtatja (addig áll az oldal renderelés), defernél is hasonló, csak a sorrend is számít. [link]
Eddig remekül megvoltam ezek nélkül is, kérdés hogy gyakorlati haszna van-e (bizonyára), használja valaki? -
martonx
veterán
1. a preventDefault-ot teljsen rosszul használod. Csak 1 kell belőle, és az legfelülre.
2. nem lehetne jsfiddle-re, hogy esetleg ki is javítsuk? Bár nekem bőven jó az az 1-es pont hintje alapján kijavítod magadA kódod alapján adódik a kérdés, hogy tudod-e, mit csinál a preventDefault? Ha a válaszod igen lenne erre, akkor kérlek először olvass utána, hogy mit csinál, és értsd is meg, hogy mit csinál.
-
Zedz
addikt
válasz
PumpkinSeed #4381 üzenetére
Irigyellek egy kicsit, nálunk tilos volt bármit is használni, csak a natív JS kapott osztályzatott.
-
PumpkinSeed
addikt
válasz
Sk8erPeter #4379 üzenetére
Azért lokálisan tesztelek webszerver nélkül, mert órai feladatra készül és ott nem szabad olyan kódot alkotni ami webszerver nélkül nem működik, ezért az osztályozás is webszerver nélküli teszt alapján megy, így én is anélkül tesztelek.
-
Jim-Y
veterán
válasz
Sk8erPeter #4379 üzenetére
Igazad van ez igy tenyleg jobb magyarazat
-
Sk8erPeter
nagyúr
Azért azt nem árt kihangsúlyozni, hogy lokálisan nem működik...
De nem is így szokás tesztelni fejlesztéskor, úgyhogy nem hiszem, hogy ez releváns kellene, hogy legyen (egy helyi webszervert feltenni pár kattintás, akár IIS-ről, akár Apache-ról van szó).
A második megoldás is JÓ, sőt, akár jobb is lehet! Annyiban egyszerűsít a dolgokon, hogy az aktuálisan használt protokollt fogja használni a betöltött URL-eknél is, akár pl. http-ről, akár https-ről van szó, nem kell bedrótoznod a használt protokollt! (Létezik olyan oldal, ami elérhető http-n és https-en is. Ezzel a módszerrel nem kell kutyulni a használt protokollokat.)Persze nem meglepő módon van szócikk erről is stackoverflow.com-on:
http://stackoverflow.com/questions/9646407/two-forward-slashes-in-a-url-src-href-attribute -
Jim-Y
veterán
válasz
PumpkinSeed #4375 üzenetére
Te tudod..
Mukodik:
<html>
<head>
<script src='http://code.jquery.com/jquery-1.11.1.min.js'></script>
<script src='http://code.jquery.com/jquery-migrate-1.2.1.min.js'></script>
</head>
<body>
<h1>Test</h1>
<script>
console.log($('h1').text());
</script>
</body>
</html>Nem mukodik:
<html>
<head>
<script src='//code.jquery.com/jquery-1.11.1.min.js'></script>
<script src='//code.jquery.com/jquery-migrate-1.2.1.min.js'></script>
</head>
<body>
<h1>Test</h1>
<script>
console.log($('h1').text());
</script>
</body>
</html> -
Jim-Y
veterán
válasz
PumpkinSeed #4373 üzenetére
En atneznem a helyedben a link protokolokat, mert azokkal lesz a gond
A kepen file:// es utana egy webcim
A szerveren is
<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>Normalisan kene megadni az src attributomot.
-
PumpkinSeed
addikt
Üdv,
Olyan kérdésem lenne, hogy kizárólag lokális megnyitás alatt kapom ezeket:
Ha webszerverre felteszem akkor probléma nélkül működik.
-
Zedz
addikt
Sziasztok,
Elkezdtem szabadidőmben egy regisztrációs és login rendszert írni, Ajax segítségével. Olyan problémába ütköztem, hogyha a mellékelt kódban lévő ajax.done-ba rakom a preventDefaultot, akkor nem fogja meg a submitot és elküldi a formot.
Hogyan tudnám megcsinálni azt, hogyha a kapott válasz 0, akkor preventeljen, ha nem, akkor submitolja el az egészet?
-
Jim-Y
veterán
Ha valaki érdekelt az ilyenben, csináltam egy GitHub repot, ahova kollaboránsokat keresek. Valahol el kell kezdeni a netes jelenlétet, és hát, kezdjük kicsiben, az is több mint a semmi
A Smarty egy olyan repo amiben a hasznos, ötletes, mások számára is érdekes JavaScriptes megoldásokat gyüjtöm (folyamatosan). Ha neked is van hasonló, akkor esetleg összedobhatnánk amink van
-
Jim-Y
veterán
Haha..
"This feature was added for people who were beginners, so if you want to look like a beginner, then leave the semicolons out."
hallas utan
Crockford
agree -
Speeedfire
félisten
válasz
martonx #4362 üzenetére
Egyáltalán nem volt átlátható.
Kipróbáltam a knockout-ot, mert főnök azt mondta mennyi jó. 1 hét alatt kellett megoldani a projektet (ko tanulással együtt) és ez lett belőle...működött meg minden, csak...
Lehet adnom kellene neki még egy esélyt az újabb ko-val és átnézni a teljes doksit hozzá.
-
martonx
veterán
Ugyanarra jók. Mindig érdekeltek, de sose jutottam el oda, hogy érdemben kipróbáljam őket. Igaziból a knockoutjs-el 100%-ban elégedett vagyok, az angularjs-t kipróbáltam a hype miatt. Nem hiszem, hogy érdemben kiderülhetne bármelyik más frameworkről is, hogy sokkal jobbat tudna mint ezek.
-
Daws
újonc
Sziasztok, megtudnátok mondani, hogy Windows 8-ban hogyan tudom a rendszerváltozókat szerkeszteni? A szerkesztés gomb nem működik a többivel együtt. (szürke mind)
-
Jim-Y
veterán
válasz
Sk8erPeter #4363 üzenetére
Hát ja, csak beszélnünk kellett róla, hogy drága erre akciózzák, ugye a kapcsolatok...
Én is most aktiváltam a lejárt verziómat, bár érdekes, de egy augusztus elején lejárt verziót simán tudtam használni..no mindegy, így a tisztaEgész komoly időbe telik míg beállítom a JsHintet és a JS Inspection-öket a saját szájízem szerintire
De azért megéri, így legalább be tudok állítani egy olyan lintelést ami követi a saját stílusomat.
-
Sk8erPeter
nagyúr
"By the way ... [link]"
Fasza, és tényleg működik:
https://www.jetbrains.com/student/
Megkaptam a visszaigazoló e-mailt @hszk.bme.hu-s címmel regisztrálva, ez a "JetBrains Product Pack for Students" licenc 2015 szeptemberéig érvényes ezekre a termékekre:
IntelliJ IDEA
ReSharper
AppCode
PhpStorm
PyCharm
RubyMine
WebStorm
dotCover
dotTrace
dotMemoryEz így korrekt. Na, ha már ilyen rendesek voltak, adok még egy esélyt majd a WebStormnak/PHPStormnak.
A ReSharper meg Visual Studio-ban C#-kódoláshoz állítólag komoly mankó tud lenni.
-
martonx
veterán
válasz
Speeedfire #4357 üzenetére
A ko mapping pluginre soha nem volt szükségem. Ahogy switch case-re se, se ko, se angular alatt.
Ha anno ko alatt ennyi volt a modelled, pláne nem értem, hogy mi nem volt ezen átlátható? -
Zedz
addikt
-
cSuwwi
senior tag
A grunt (vagy akkor már inkább gulp) automatizált dolgainak jó része kiváltható egy jól beállított editorral.
Én pl. Sublime 3-at használok, lintelés (js, php) pár kattintással megoldható. Jobb is, mert kódírás közben már jelez ha gond van. Atommal is jól mennek az erős(?) nodejs támogatás miatt, bár W7-en tragikusan lassú.
Gulppal marad a minify, uglify, de főleg a sass konvertálás. Jó dolgok ezek, tényleg sok a helper tool mostanság. Aki még dolgozott a "hőskorban", amikor nem volt firebug meg egyéb toolok, akkoriban egy élmény volt debugolni de simán sitebuildeni is.
-
Jim-Y
veterán
Szia
Ami repetitív munka arra nagy valószínűséggel van grunt plugin. Könnyű konfigurálni, és jó pár fejlesztőkörnyezet is támogatja.
Mire használatos?
Amire szinte mindig:
* Lintelés, például jshint.
* Minifikálás, például uglify
* Unit tesztek automatikus futtatására, pl Jasmine, vagy Mocha, vagy QUnit
* LiveReload, pl grunt-watch. Ez utóbbi azt jelenti, hogy ha előre beállított fájlokat szerkesztesz, és elmented őket, akkor előre beállított taskok automatikusan lefutnak. Például ha a core *.js fájlaidat szerkeszted, akkor automatikusan lefut a lintelés, vagy ha browserify-t használasz akkor a bundling stb...
* KonkatenálásÉs akkor van még ami ritkábban:
* https://github.com/gruntjs/grunt-contrib
A JavaScriptes munka már rég nem csak annyiból áll, hogy megnyitsz szerkesztővel egy js fájlt és írsz pár függvényt ami csinál valamit a dommal, esetleg behúzod a jQuery-t.. Nagyon jó ökoszisztéma alakult ki az évek alatt, nagyon hasznos eszközökkel amik megkönnyítik a munkát.
Egyrészt ami régen nem volt, és most van, jó IDE-k. Jó build toolok, szerver oldali js környezet, npm, bower, browserify...
-
Speeedfire
félisten
válasz
martonx #4340 üzenetére
Elképzelhető, hogy én szerveztem rosszul, nincs kizárva.
Alapvetően én a visszakapott json adathalmazt egy változóba tettem bele.var AppViewModel = function(data) {
var self = this;
self.available = ko.observableArray([1,2]);
self.dataSource = ko.mapping.fromJS(data);Én mondjuk nem vagyok nagy js-es, nekem olyan max 2k lehetett eddig a legnagyobb kód jquery-ben. Viszont van egy új projekt, ahol annyi mindent bind-olok már jquery-vel, hogy valami másikat használnék a jquery helyett.
"és kiegészítőket kellett leszedni hozzá" - ko-hoz kiegészítőt kellett leszedned? Miért angular-hoz nem kell? Ok, routingot és DI-t valóban tud az angular alapból, de ezeket a komponenseket bármikor ko mellé is oda tudod tenni.
Konkrétan ez a 2 kiegészítő kellett:
- SWITCH/CASE binding for Knockout
- Knockout Mapping plugin -
martonx
veterán
A Grunt-tal a kliens oldali framework-öd build-jét tudod automatizálni (pl. html-ek minifikálása, js-ek egybegyúrása, minifikálása, css-ek, stb...). Mint ASP.NET fejlesztő bevallom még sose használtam, mert az ASP.NET - Visual Studio alapból nagyon erős ezekben.
Nodejs-es, PHP-s világban viszont elég elterjedt. -
Zedz
addikt
válasz
martonx #4353 üzenetére
Nos, az MVC támogatása már szimpatikus nekem is, PHP oldalon egy ideje előszeretettel kalapálom így a kódjaim. Szerintem utánanézek először ennek a knockoutnak.
Találtam még egy ilyet, hogy Grunt, és ahogy olvastam ez az automatizálást segíti. Kliens oldalon ezt hogyan kell érteni? Mert szerver oldalon X időközönként ha lefut egy kód azt értem, vagy ha a Linuxal csináltatunk péládul napi dolgokat.. de kliens oldalon?
-
honda 1993
senior tag
Koszi a valaszt.
A xamp telepitve van, es regebben mar irtam egy amolyan egysoros php kodot is amit a sikerult lefuttatnom azutan hogy a bongeszobe beirtam hogy "localhost".
De aztan valamiert abbahagytam es most a javascriptet tanulgatom (mintha ez picit egyszerubb lenne)Es majd csak kesobb fogok hozza a phphez.
Vegul is meg csak 3 honap telt el azota hogy a HTML ES A CSS nyelveket elkezdtem tanulni.
-
martonx
veterán
1. kód szervezésben. Bevallom szeretem az MVC / MVVM kód szervezést. Amikor jön egy json adat, az már megy is bele egy jó kis modellbe, és ezt bindolom a megfelelő helyekre.
2. a modellek változása realtime megjelenik a böngészőben, átvezetődik más modelleken, stb...
3. nagyon szépen lehet velük template-elni, pl. valamilyen lista elemeket kell generálnod a kapott jsonból. Ezt e frameworkök nélkül jobbára kénytelen vagy elkezdeni js kóddal foreach-ekkel megírni, és összerakosgatni string részletekből. Ha láttál már ilyen js kódot, akkor érteni fogod, hogy mire gondolok.
4. szépen el lehet velük szeparálni a különböző kód rétegeket (html - js és js-en belül a class-ok, service-ek, controller-ek)
5. a html-eidet is szépen kis darabokra tudod szedni, ezáltal sokkal átláthatóbb lesz a kódod
6. segítenek a routingban, DI-ban (ez mondjuk csak az angularjs-re igaz, aminek viszont a DI-át százszor is elátkoztam, szóval ez azért nem mindig előny). Knockouthoz meg azt húzol be pluszban, amit jól esik pl. pagejs + requirejs.
7. összességében, jóval kisebb kód mennyiséget eredményeznek, lásd Jim-Y esetét. Mondjuk angular-t telefonra a gyatra teljesítménye miatt én se mernék bevállalni, de egy 30Kb-os knockout-ot már volt, hogy használtam telefonon, és tök szépen, gyorsan tette a dolgát, pedig ez még az okostelefonok őskorában volt, amikor 1 magos 600Mhz-ez szutykokon futottak a mobilos böngészők első verziói.Mindezek ellenére abszolút nem azt mondom, hogy akkor most mindenki kezdjen el valamilyen js framework-öt használni, hiszem hogy a webes projektek jelentős részének nincs rájuk szüksége. De egy picit is jelentősebb projektet én már nem kezdenék el knockoutjs (rosszabb esetben angularjs) nélkül.
-
dqdb
nagyúr
válasz
honda 1993 #4349 üzenetére
Javascript-el meg lehet irni hozza a tobbit? (tehat hogy ne csak ott legyenn az oldalamon, hanem mukdjon is.)
Vagy ezt csak php val lehet?
Meg lehet JS-ben is írni, ha a szerveren NodeJS fut, és te abban valósítod meg a rendszeredet, de te valószínűleg nem erre gondoltál. A megoldás lehet PHP, Ruby, Python, ASP.NET vagy bármilyen szerveroldali megoldás, az a lényeg, hogy ehhez nem elég a kliensre letöltődő HTML + JS, hanem kell egy kiszolgáló és rajta futó logika.Nem tudom hogy a"kijelentkezest hogy lehet megirni. Vagy ez csak akkor fog latszani ha javascriptel vagy phpval megirom hozza a tobbit?
Session alapú megoldás kell neked, esetleg REST implementációnál ticketek használata. De úgy érzem, mindkettőtől még nagyon messze állsz, előbb a kliensoldali JS-tel kellene képbe kerülnöd, és látni, mi a kliens feladata, mi a szerver feladata, mi fut a kliensen, mi fut a szerveren, a kettő hogyan kommunikál.Sk8erPeter: csak 15 perc, mert egy másik feladványra elkészült előtte egy hasonló stílusú Ascii85 megoldásom, és azt donornak felhasználtam. Jó móka volt az egész, és úgy éreztem, a végeredmény kellően sokkoló lett első pillantásra ahhoz, hogy egy uglifieren ne küldjem még keresztül a kódot
-
DS39
nagyúr
válasz
honda 1993 #4349 üzenetére
kevered a szezont a fazonnal.
bejelentkezési folyamat részeként JavaScriptet max a validáláshoz használj, a kliens-szerver adatkommunikációt, PHP-vel (vagy ASP.NET vagy JSP) kell megoldani. illetve a bejelentkezettséghez, kijelentkezéshez session változókat kell kezelj.
-
honda 1993
senior tag
Hali.
Html-ben megirtam a bejelentkezo feluletet.
1.kerdes:
Javascript-el meg lehet irni hozza a tobbit? (tehat hogy ne csak ott legyenn az oldalamon, hanem mukdjon is.)
Vagy ezt csak php val lehet?
Illetve ha javascriptel is meg lehet irni akkor a ketto kozul melyikkel erdemes nekivagni?2.kerdes:
Nem tudom hogy a"kijelentkezest hogy lehet megirni. Vagy ez csak akkor fog latszani ha javascriptel vagy phpval megirom hozza a tobbit? -
Jim-Y
veterán
Kozben rajottem, hogy ebbe beleszamoltam a dependenciakat is, igy azert jocskan lecsokkent a sorszam, de meg igy is 100K folott van. Amugy nem tudom, hogy ez JS-ben mennyinek szamit, szerintem kozepesnek. Atlatni, hasznalunk RequireJS-t, igy azert konnyebb. Hogy erted, hogy "miben dolgozik egy kód"?
-
Zedz
addikt
válasz
martonx #4343 üzenetére
És ezeknél az oldalaknál például miben voltak nagy hasznodra ezek a keretrendszerek? Az oldalaknál csak azt látja a user, hogy "húú ez de jól működik". Angulart nemrég nézegettem, de igazából azon kívül hogy real-time be tudott tölteni egy másik HTML állományt, nem sok minden fogott meg benne.
(#4344) Jim-Y Úr isten!
Hogy látjátok át?
És szabad tudnom, miben dolgozik egy kód?
-
martonx
veterán
Single page application-ökhöz. Eddig kettő nagyobb ilyen projekten dolgoztam. Egy CRM rendszeren, amit knockout-tal csináltunk, és egy média library-s, rendelő oldalon ami angularjs-el készült (mielőtt páran felnyögnének, ez egy elég sajátságos terület, elég sajátságos megoldásokkal, így nem volt kérdés, hogy mindenből custom-ot kellett írnunk).
Kisebb ko-s projektjeim voltak még, mint pl. online repülőjegy foglaló rendszer (ezt ide is tudom linkelni, mert ez publikus link), ahol a járat keresés résznél mindent a knockout vezérel, illetve per pillanat egy pénzügyi szektoros fejlesztésen dolgozok, ami szintén publikus lesz, ha elkészül. -
Zedz
addikt
válasz
martonx #4340 üzenetére
Milyen és mekkora projektekhez kellenek ekkora frameworkök? Jelenleg még nem tudom elképzelni, hogy még a JS-hez is fw-t használjak. Ahogy eddig néztem PHP-nál segítik az adatbázis kezelést, a védelmet, url kezelés...stb, de itt nem nagyom tudom mire használják a profibbak. :S
-
honda 1993
senior tag
válasz
Sk8erPeter #4337 üzenetére
Arra magamtol is rajottem hogy javascript kod.
A kerdesem arra iranyult hogy pontosan milyen kod is ez.(tehat mit eredmenyez a kod) nem tudom maskeppen megfogalmazni.
Es azert nem masoltam be es probaltam ki mert most telefonrol vagyok
-
martonx
veterán
válasz
Speeedfire #4334 üzenetére
Összetett adatmodelleknél valóban gázos volt a knockout vagy te szervezted rosszul a kódot? Pl. egyik legnagyobb eltérés a ko vs angular között, hogy ko alatt úgy szervezed a kódod ahogy akarod. Az angular viszont sokkal jobban belekényszerít az adott homokozóba.
A legutóbbi angularjs-es projektem több hónapig tarott. Végült most hagy ne számoljam meg, de több tucat js file-ból és fogalmam sincs hány ezer / tízezer kódsorból áll.
Ugyanilyen nagyságrendű ko-s projekteken is szoktam dolgozni.
Megnéztem az általad belinkelt tutorialt, erről beszéltem. Ilyen szinten még minden szép és jó.
"és kiegészítőket kellett leszedni hozzá" - ko-hoz kiegészítőt kellett leszedned? Miért angular-hoz nem kell? Ok, routingot és DI-t valóban tud az angular alapból, de ezeket a komponenseket bármikor ko mellé is oda tudod tenni.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #4338 üzenetére
Nem kötöttem beléd, csak nem értettem, hogy értetted azt, hogy nagyon jónak tűnik a plain JS, úgyhogy ezért visszakérdeztem.
-
Speeedfire
félisten
válasz
Sk8erPeter #4335 üzenetére
Mármint úgy érted, hogy belekötsz mindenbe?
Inkább mondj te is valami okosat a manapság népszerű data-bind-os mvv/mvvm-ekkel kapcsolatban.
-
Sk8erPeter
nagyúr
válasz
honda 1993 #4336 üzenetére
Az egy JavaScript-kód.
[link], utolsó bekezdés, nehogy elkezdj rajta agyalni, tök felesleges.
-
honda 1993
senior tag
válasz
Sk8erPeter #4335 üzenetére
Amit linkeltel az micsoda?
D
-
Sk8erPeter
nagyúr
válasz
Speeedfire #4334 üzenetére
"Ez a planjs nagyon jónak tűnik.
"
Mármint úgy érted, tetszik a plain JS?(#4316) Jim-Y, (#4319) dqdb :
Jól hangzik, majd kipróbálom, kösz.dqdb, ezt mennyi idő alatt sikerült összehozni?
-
Speeedfire
félisten
válasz
martonx #4332 üzenetére
Ez nem hangzik túl jól.
Amikor a knockout-ot próbálgattam, akkor még a 2.2-es verzió volt fent. Egyszerű dologra jó volt, de összetett adatmodellnél még gázos volt és kiegészítőket kellett leszedni hozzá. Sebességben nem veszek észre semmit, gyorsnak tűnik a codeschool példa.
Milyen nagyobb projektre gondolsz? Vagy mi volt az amit meg akartál valósítani benne, de nem tudtad csak körülményesen?Ez a planjs nagyon jónak tűnik.
-
Jim-Y
veterán
válasz
Speeedfire #4331 üzenetére
Nekem nincs nagy js-lib tapasztalatom, inkább csak vanilla js, de annyi biztos, hogy ennek a kérdésnek nincs értelme. Azért nincs, mert feladattól függ, hogy melyiket kell használni. Van amilyen feladatra ez a jó, más feladatra meg a másik. Itt max annyit tudsz kérdezni, hogy kinek mi jött be, és milyen feladatra használta. Legalábbis szerintem, és a 'zinternet szerint is
-
martonx
veterán
válasz
Speeedfire #4331 üzenetére
Az angularjs egy agyonhypeolt fos szerintem (pont, mint az almás termékek). Felületesen nézve persze sok mindent tud, és nem is olyan rossz, aztán gyorsan kiderül, hogy ebből is egy kicsit tud, meg abból is, a singleton megvalósítás se feltétlenül nyerő és a többi. Teljesítményben pedig a katasztrofálishoz közelít knockoutjs-el összehasonlítva. Anno komoly knockoutjs tapasztalattal a hátam mögött nekivágtam az angularjs-nek, mert a csapból is az folyt hogy az milyen jó. Aztán pár hét elég volt, hogy kiderüljön, a pistike projektek, meg a tutorialok szintjén tényleg szép és jó, de picit is mélyebb vizekre merészkedve, már nem más mint szopás halom.
Én részemről maradok továbbra is a knockout (egy hónapja jött ki a 3.2-es ami már tudja a komponensek létrehozását, kezelését ala angularjs direktívák) + jquery (ezt mondjuk egyre inkább, egyre könyebben lehet zeptojs-re váltani, vagy plainjs-re) + pagejs (ez csinálja az SPA routingot, kemény 1Kb) kombónál.
-
Speeedfire
félisten
Ki milyen js libary-t ajánl? Most az anjular-ral kezdtem el ismerkedni, egész jónak tűnik. Jóval többet tud, mint a jquery és a knockout együtt.
-
Zedz
addikt
Sziasztok,
Napokban kezdtem el olvasgatni a Javascript OOP után, és máris lenne egy kérdésem, amit jobb ha valaki megválaszol mielőtt még megkavarodik bennem a dolog.
Szóval ahogy én eddig értelmeztem a dolgot, vannak a constructor féle és literal féle object. Mikor melyiket használjak? Az előbbit ha több példányt is akarunk, utóbbit ha csak elég 1 példány?
-
martonx
veterán
válasz
honda 1993 #4325 üzenetére
a print és az echo mióta kiírató parancsok a javascriptben?
-
#81999360
törölt tag
válasz
honda 1993 #4325 üzenetére
-
honda 1993
senior tag
udv.
az lenne a kerdesem hogy az
"alert, a print es az echo" tag-eken kivul vannak e meg ilyen kiirato parancsok a javascriptben.
ha valaki linkelne egy oldalt ahol minden megtalalhato a temaval kapcsolatban,akkor azt is megkoszonnem.
ui: sorry ha a js-ben nem tag-nek hivjak ezeket a karaktereket,nem tudtam maskeppen megfogalmazni a kerdesemet
-
PumpkinSeed
addikt
válasz
PumpkinSeed #4321 üzenetére
-
PumpkinSeed
addikt
Azt hogy tudom kivitelezni, hogy adott egy ilyen struktúra:
#home
#about_us
#contactszépen egymás alatt. Ha a menüben elkattintok a pl. az about_us-ra akkor jelenjen meg egy kis nyíl jobb alsó sarokba, hogy a #home-ra szeretnék vissza ugrani. Milyen eseményt kell figyeljek, ha minden #home elhagyás esetén szeretném, hogy ez a kis nyíl felvillanjon?
-
dqdb
nagyúr
válasz
Sk8erPeter #4315 üzenetére
Nagyon jó móka, és kiválóan alkalmas a kevés szabadidőd elszúrására
Röviden arról van szó, hogy valaki kitalál egy feladványt, megírja hozzá a unit testeket, és neked olyan kódot kell írni, ami átmegy a teszteken (természetesen a teszteket, valamint mások megoldásait csak azután ismered meg, miután megoldottad a feladatot).
Érdemes megnézni mások megoldásait, lehet belőlük tanulni. És persze hirtelen ötlettől vezérelve, pusztán szórakozásból lehet alkotni tömör, de lassú és erőforrás-pocsékoló, tökéletesen karbantarthatatlan kódot, mint a for ciklustól mentes Base64 megoldásom
-
Jim-Y
veterán
válasz
Sk8erPeter #4315 üzenetére
Ez egy olyan oldal, ahol a kozosseg kitalal feladvanyokat, es azt masok megoldhatjak, ha sikeresen megoldjak, akkor kapnak erte pontot es mennek elore a rangletran, kozben meg tanulnak/gyakorolnak. Aki feltesz egy feladvanyt, az teszteseteket is megad, es csak azok a megoldasok mennek at a rostan, amik megfelelnek a teszteseteknek.
Tobb nyelv is tamogatott az oldalon. Van JS, Python, Ruby, Haskell, Clojure meg meg talan par. Bar en eddig csak a JavaScriptes feladvanyokat neztem. Igazan szorakoztato igy elutni a feles idot (sorozes, edzes meg asszony utan persze
). Szerintem mindenkepp regelj
Ha megoldasz egy feladvanyt, akkor meg tudod nezni masok megoldasait, es ertekelni is tudod azokat, mint
* Best Practice
* Clever
Itt santit amugy az oldal, mert sosem az a best practice amit epp arra szavaztak, helyen kell kezelni es akkor nem zavaro.Ja igen, amit pedig linkeltem az az elso "feladvanyom" amit csinaltam, mikor csinalsz egyet az nem lesz rogton eles, hanem csak beta, es a kozosseg tagjai tudjak megszavazni a nehezseget, meg jelezni a hibakat stb..
-
Jim-Y
veterán
Ha esetleg valakinek lenne kedve tesztelni http://www.codewars.com/kata/typer-dot-js Thx
-
martonx
veterán
-
j0k3r!
őstag
válasz
martonx #4305 üzenetére
Ezt annyival egészíteném ki, hogy elvileg lehet már VS Express-hez is Web Essentials-t telepíteni (én is nemrég hallottam egy ms oktató videóban): http://madskristensen.net/post/web-essentials-on-visual-studio-web-express
-
Sk8erPeter
nagyúr
Nem úgy "okosítod fel" a NetBeans-t, hogy "valahogy" működjön JS-fejlesztésre, hanem faszán működik JavaScripthez is. Hidd el, nem mondanám, ha nem használtam volna már sok-sok órát. Debuggoltam is már benne JavaScript-kódot, ehhez kapcsolódót itt írtam:
http://prohardver.hu/tema/weblap_keszites/hsz_10596-10596.html
Az Eclipse-et én sem szeretem, nem találom kézenfekvőnek, csúnyának is találom (mindig meglepődöm, amikor valaki Eclipse-kedvelőként a NetBeans-re mondja ugyanezt), úgyhogy azt alapvetően én sem annyira szeretem használni, pedig nagyon komoly pluginek vannak hozzá, és sokszor bizonyos projektekhez vagy bizonyos munkahelyeken kikerülhetetlen. (Egyébként engem a különutas megoldásai is idegesítenek, pl. ha 3 IDE-ben megegyezik egy bizonyos billentyűkombináció, akkor az tuti, hogy az Eclipse-ben defaultból valami tök más. De ez csak egy példa, mert ez még könnyen átállítható, de sok helyen az elrendezése is valahogy "olyan Eclipse-es".
)
A WebStormot (vagy PHPStormot) elég rövid ideig próbálgattam, jónak tűnt, emlékeim szerint tetszetős volt a felülete, de nem sikerült rájönnöm, hogy miért is érné meg ezért fizetnem, amikor a NetBeans számomra ugyanezeket tudja. Félreértés ne essék, nem akarok senkit lebeszélni a WebStormról (vagy PHPStormról), de szerintem nem biztos, hogy azonnal rohanni kell a pénztárhoz, ha van ingyenes alternatíva is. -
Jim-Y
veterán
válasz
Sk8erPeter #4307 üzenetére
Egyébként, te is tehetnél vele egy próbát, van 30 napos free licensz, nálam ezen tesztidőszak eredménye -> [link]
Én meg igérem, hogy megnézem a közeljövőben a Netbeans ilyen téren is
Btw Dracula theme ftw. Sajnos ST2-höz nem találtam, nincs is olyan color-scheme ami ne zavarna
-
Jim-Y
veterán
válasz
Sk8erPeter #4307 üzenetére
Hát nézd, az egyik Java-ra íródott, de fel lehet okosítani pluginekkel, hogy valahogy működjön js fejlesztésre, a másik meg direkt erre készül, ha az összefoglalóból az jön le, hogy a Netbeans is tudja ugyanazt akkor lehet úgy is van. Én egyetemen végig Netbeanst használtam, utána pedig Eclipse-t Java fejlesztésre, most meg Webstormot JS-re, a három közül egyértelműen a WS a legjobb IDE ha személyes véleményemet kérdezed. Eclipse nekem logikátlan, lassú, és nem is tetszik a kezelőfelülete, Netbeanst már jobban szeretem, az jobban bejött mint IDE, de ott meg picit sem foglalkoztam a konfigurálhatóságával. A WS-nek tényleg az a legnagyobb gondja, hogy fizetős, de cserébe van rendes support is
-
Sk8erPeter
nagyúr
Szerencsére ezeket mind tudja a NetBeans is.
Git-, SVN-támogatás, meg sok egyéb is lehet egy-egy plugin formájában, ha már az egész moduláris. Érdemes a Git toolbart is felrakni hozzá.
Nekem az a bajom a WebStormmal, hogy nem ingyenes. Fizetős, miközben ezeket ingyen tudja a NetBeans és valószínűleg az Eclipse is (csak plugineket kell felrakni hozzá, ami mondjuk a WebStormban alapból benne van), plusz mint a Wikipédiás lapról kiderül, ez a program is Javában íródott, tehát a JVM overheadje ennél is ugyanúgy jelen van, így nem látom, mit tudunk nyerni ezzel a fejlesztőkörnyezettel a másik kettővel szemben. Persze ettől még elhiszem, hogy kényelmes, biztos a különbségek fejlesztés közben derülnek ki. Sokan szeretik a WebStormot JavaScript-fejlesztésre, de érdekelne, hogy milyen pluszt tud az ingyenes alternatívákhoz képest, mert én még nem fedeztem fel olyat, ami ne lehetne pótolható pluginnel NetBeans-ben és Eclipse-ben (én az előbbit szoktam használni gyakrabban).
-
Jim-Y
veterán
válasz
martonx #4305 üzenetére
Koszonom szepen, biztos hasznos lesz masoknak is, en pusztan azert kerdeztem, mert irtad, hogy van nem fizetos valtozata ami erdekes lehet sokak szamara.
En is teszek valamit a kozosbe, hatha ez is segit valakinek. En cca 3,4 honapja hasznalok egy JetBrains termeket javascript fejlesztesre, foleg js fajlokban matatok, css-ben es html-ben kevesebbet.
Webstorm
=======Amit szeretek benne:
- szoros integraltsag svn-el. Rogton az elejen megadod a mar letezo projektet, o felismeri, hogy version kontrol alatt vagy, es ezt jelzi is a fajloknal. Uj fajl letrehozasanal megkerdezi, hogy hozza szeretned-e adni a projekthez, ha igen zold lesz a fajl (neve a projekt strukturaban, es a taboknal is), amugy meg piros, ha egy under version control fajlt modositasz akkor pedig kek. Ugyanez kodszinten is megvan, Jelzi a valtoztatasokat kekkel (update), zolddel (added). Hasznos tud lenni.
Ugyancsak svn, van egy csillivilli osszehasonlito ablak, ahol a current copy-t tudod osszehasonlitani (es mergelni) a head-el. Nagyon egyszeru a mergeles, nyilacskakkal at tudod huzni a merged fajlba a valtoztatast. Eleg tuti- Amit surun szoktam hasznalni, navigacio a fajlok kozott, fajlhoz ugras, sorhoz ugras, usage search (ez nem tudom, hogy mi magyarul
), find in path, illetve a Refactoros Rename. Ez is nagyon hasznos. Bar ez tuti masban is igy van, de pl az egyszeru szerkesztokhoz kepest, Sublime, Brackets, Atom ez tobbet tud, es kenyelmesebb.
- Live templates: Ez olyan mint ST2-nel a Snippets. Itt is tudsz elore definialni kodreszleteket, amiket utana be tudsz illeszteni es konfiguralni. Pl us -> TAB -> 'use strict', vagy
for -> TAB -> es beilleszt egy kesz for ciklust stb...- Jok a code quality beallitasok. JSHint + JSLint + configuralhato Javascript inspections.
Ez utobbi peldaul olyan hogy beallithatod hogy milyen merteku nestingnel szoljon, avgy ha tul sok parameteres a fuggvenyed akkor is szoljon, meg meg ezer ilyen code quality beallitas.- A potencialis hibakat is jelzi az editor. Lehet inspection-t vegezni. Pl jelzi a unused valtozokat.
- Van beepitett Grunt consol. Ezt is hasznosnak talaltam.
Talan ezek a fontosabbak, vagyis amik nekem eddig jol jottek.
CSS
====Itt talan azt erdemes kiemelni, hogy a hexa kodokat megjeleniti az ide egy kis negyzetben a sorszamozas mellett.
Kb ennyi
-
martonx
veterán
Jim - Y kérésére írok egy rövid összefoglalót ide a JS toikba, hogy milyen szolgáltatásokat ad a Visual Studio tisztán html (plusz nyilván css, js, de semmiképpen sem .Net) fejlesztés esetében. Először is szögezzük le, hogy legalább két verziója van a VS-nek:
1. ingyenes VS Express, aminek a funkcionalitása majdnem az, mint a Pro verziója, viszont nem lehet hozzá plugineket telepíteni, ami pont a webfejlesztés szemszögéből nézve elég nagy hiányosság.
2. fizetős VS (Pro, Ultimate), ahol a Pro kb. mindenre elég, hacsak nem teszt automatizálással, meg mindeféle brutális funkcionális teszt írásával foglalkozunk. A Pro-ból az egyetlen számomra hiányzó funkció a web oldalak beépített load test-je, ami az Ultimate-ben benne van.No, de mi az, amit az ingyenes is tud:
Kód kiegészítés js, css, html - a html kiegészítése szvsz a VS-nek a legjobb az összes eddig általam próbált rendszer közül, ami lássuk be pusztán az Eclipse, Netbeans vonalra korlátozódik, szóval lehet, hogy a PHPStrom, Webstorm ugyanilyen jó html-ben. CSS-ben segítget, js-ben egészen jó, bár kellően bonyolult jó sok js-re bontott projekt struktúránál, azért meg tudja adni magát a js kódkiegészítés. Emellett természetesen minden általános IDE funkció benne van, projektben keresés, szűrés, navigálás, verzió kezelőkkel integráltság stb...
Fizetős mivel tud többet: van egy Web Essentials nevű hivatalos MS által supportált plugin. Aminek a tudása elég emberes, nem is sorolnám fel, nézze meg mindenki maga: link
Hozzáteszem én pusztán html kódot nem szoktam fejleszteni, ASP.NET-ezek, így részemről alap volt a VS mint IDE választása.
-
honda 1993
senior tag
válasz
martonx #4303 üzenetére
igen tisztaban is vagyok vele.
csak az a problemam hogy ezeket a "szak kifejezeseket " nem igazan ertem,mig tarsalgasi szinten megyeget az angol
es pont ezek a szak kifejezesek azok amiket lassan/nehezen tudok megerteni a sok angol nyelvu tutorialbol.
ekkor szoktam itt segitseget kerni.
-
martonx
veterán
válasz
honda 1993 #4302 üzenetére
Ez esetben a megoldás adott: első körben fel kell hoznod az angolodat legalább olyan szintre, hogy azt értsd, ami tutorialban le van írva. Ha komolyan gondolod a programozást (az eddigi hsz-eidből az tűnik ki, mégha én személy szerint inkább a kőműves szakmát javasolnám is neked), akkor muszáj lesz angolul valamennyire megtanulnod.
-
honda 1993
senior tag
basszus.
ertem en hogy mit akartok mondani,es igazatok is van.
es igen,azert teszem fel itt (is) a kerdeset,mert egyszerubb.es gyorsabb is ( persze nem mindig)
mivel nem vagyok tul jo angolbol,ezert kicsit nehezen igazodok ki az angol nyelvu tutorialokon.
ezt szerintem talan meg is lehet erteni,hiszen egy olyan dologrol van szo az esetemben amiben teljesen kezdo vagyok.magyar nyelven pedig keves tutorial van a neten,es azok kozul sem mindegyik olyan jo.
-
Jim-Y
veterán
válasz
Sk8erPeter #4300 üzenetére
Finoman fogalmaztál.. én már írtam egy min 50 soros hsz-t arról, hogy nekünk mennyire nem célunk őt bántanbi, meg, hogy ilyen hozzáállással milyen rossz lesz neki majd a nagybetűsben, stb.. aztán 60 sornál CTR+A + DEL.. egész egyszerűen van akinek lenne értelme 50 sornyi segítséget írni, meg van akinek nincs. Gondolj bele ha már itt a fórumon ilyen szociális gondjai vannak, akkor milyen lehet az életben, nem mi fogjuk a helyes útra sodorni, meg nem mi fogunk tudni neki segíteni abban, hogy önállóbb legyen, szóval ja.. kitöröltem a cuccost, és szerintem finoman fogalmaztál
Új hozzászólás Aktív témák
Hirdetés
- Macron betiltatná az EU-ban a közösségi médiát a 15 év alattiaknak
- BestBuy topik
- Apple Music
- Motoros topic
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Rezsicsökkentés, spórolás (fűtés, szigetelés, stb.)
- EAFC 25
- Philips LCD és LED TV-k
- Honda topik
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- További aktív témák...
- HP 15-af105nh laptop (15,6FHD/AmdQuad/4GB/128SSD/Magyar) - Akku X
- JOYOR S5 Pro 10" Elektromos Roller 26Ah Akkumulátorral Moddolt!
- XPS 13 9310 13.4" FHD+ IPS i7-1185G7 16GB 512GB NVMe ujjlolv IR kam gar
- Megkimélt Apple iPhone 8 Plus 64GB Fekete szinben, 100% akkuval, kártyafüggetlen, garanciával
- Megkimélt Apple iPhone SE 2020 128GB kártyafüggetlen, fekete és fehér színben garanciával!
- ÁRGARANCIA! Épített KomPhone Intel i7 14700KF 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Csere-Beszámítás! Asus Számítógép PC Játékra! R5 1600X / GTX 1080 8GB / 32GB DDR4 / 256SSD + 2TB HDD
- Jo Nesbo: LEOPÁRD (nem olvasott)
- Beszámítás! Lenovo Legion Slim 5 16AHP9 notebook - R7 8845HS 16GB RAM 512GB SSD RTX 4060 8GB Win11
- BESZÁMÍTÁS! Apple MacBook Air 15 M3 8GB 256GB SSD garanciával hibátlan működéssel
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged