Vyzkoušej všechny online kurzy na 30 dní nyní v akci -50%
Akce

Výsledky vyhledávání

pro ”c++” jsme našli 183 výsledků

Články (123)

Všechny články
Co je nového v Bootstrap 5
Novinky
02.07.2020
Lubo Herko Edited

Co je nového v Bootstrap 5

Od poloviny června máme přístup k první alpha verzi Bootstrap 5. Kromě nové verze loga v sexy závorkách {B} se dočkáme i obrovského množství vylepšení na všech frontách. Už samotná dokumentace je ukázkou vylepšeného vzhledu a funkcionalit. Pokud se neumíš dočkat a chceš nový Bootstrap vyzkoušet ASAP, začni tady. Je to stále Alpha verze, nedoporučuji ji proto nasadit do žádného projektu. Než dostaneme první betaverzi, může projít změnami, které Ti vyrobí více práce než pomoci. Toto je "sestřih" nejvýraznějších změn, které jsme popsali přesně pro Tebe. Na míru. [Image] JavaScriptUž žádná podpora pro jQuery, i když..Pro některé killer feature, pro jiné nic podstatného. Nový Bootstrap 5 nebude již obsahovat jQuery jako jednu ze svých závislostí (i přesto, že jQuery „asi“ stále žije a v dubnu letošního roku jsme dostali novou verzi jQuery – 3.5). Víme to už dávno, už jsme se na to jen těšili. Ještě nemáme oficiální konečná čísla, ale očekáváme, že Bootstrap díky této zásadní změně ztratí jak na kilobajtech, tak na milisekundách. Pokud si rozumíme 😉 Pokud však stále jQuery ve svém projektu potřebuješ, Bootstrap o tom bude vědět a všechny komponenty přidá k modulům jQuery. V zásadě to znamená, že stále bude možné inicializovat například Tooltip komponent takovým (starým) způsobem (v případě, že Bootstrap detekuje přítomnost jQuery): $('[data-toggle="tooltip"]').tooltip(); Button pluginZměnami projde i state-management tlačítek. Ty využíváme například i jako indikátory ZAP/VYP při různých funkcionalitách našich aplikací. Ve starších verzích Bootstrap stav tlačítka řešil JavaScript. Bootstrap 5 se snaží state-management řešit v co nejvyšší míře dostupnými funkcionalitami a elementy HTML a CSS. Výsledkem tak je manažování stavu tlačítka pomocí checkbox a radio elementů. Naše ZAP/VYP tlačítka tak budou o něco spolehlivější mezi různými platformami. CSSCSS proměnnéS koncem podpory pro Internet Explorer přicházejí i nové možnosti. Jednou z nich jsou i CSS proměnné. Ty jsme spatřili již v předchozí verzi (root variables), avšak ne v takovém rozsahu jako ve verzi 5 – kde se css proměnné dostaly už i do jednotlivých komponent. Například do tabulek: .table { --bs-table-bg: #{$table-bg}; --bs-table-accent-bg: transparent; --bs-table-striped-color: #{$table-striped-color}; --bs-table-striped-bg: #{$table-striped-bg}; --bs-table-active-color: #{$table-active-color}; --bs-table-active-bg: #{$table-active-bg}; --bs-table-hover-color: #{$table-hover-color}; --bs-table-hover-bg: #{$table-hover-bg}; // Styles here... } Výhodou CSS proměnných je jejich používání bez nutnosti zkompilování SASS kódu do CSS. Takto bude možné hodnoty některých proměnných měnit v přímo Inspectoru prohlížeče, což urychlí práci například při prototypování. V Bootstrap 5 stále zůstane možnost definice proměnných v SASS (_variables.scss) souborech, tak, jak jsme to dělali dosud. Osobně bych neočekával kompletní přechod ze SASS proměnných do CSS proměnných. SASS má stále svou nenahraditelnou roli při vytváření proměnných pomocí mapování, proto očekávám, že budeme mít k dispozici kombinaci SASS proměnných s CSS proměnnými iv budoucnosti. Vylepšený gridZískáme nový grid-tier pro obrazovky o šířce větší než 1400px - .col-xxl-. Rovněž mezery mezi jednotlivými sloupci gridu budou nově "ohebnější". Získáme novou css utilitu g pro naše .row. S gutter hodnotami takto bude možné pracovat podobně jako s margin a padding hodnotami, na co jsme si již zvykli: .g-2 .gx-2 .gy-2 .g-lg-2 .g-0 FormulářeOd verze 4 jsme mohli ve svých aplikacích používat checkbox, radio a file elementy dvěma způsoby: 1. Buď jsme použili původní, systémový vzhled (poskytnutý browserem), 2. nebo jsme použili nový vzhled (custom-checkbox, custom-radio). Verze 5 bude obsahovat už jen nový vzhled těchto prvků. Formuláře tak budou vypadat rovněž v každém prohlížeči a operačním systému a přizpůsobení vzhledu těchto komponentů bude stejně jednodušší. Rovněž bude odstraněn i potřebný .form-group wrapper. Nové formuláře již budou obsahovat jen jednotlivé form elementy, bez tohoto DIV elementu. Hurá! Méně kódu! 🙂 <form> <div class="mb-3"> <label for="exampleInputPassword1" class="form-label">Password</label> <input type="password" class="form-control" id="exampleInputPassword1"> </div> ... </form> Wrapper bude potřebný pouze pro custom elementy (.form-select, .form-check, .form-file) a také .form-group. Utilities APIUtility jsou velmi užitečné CSS třídy, kterými obvykle měníme parametry rámování, barev, způsobů zobrazení, stínování a různých velikostí (width, height, padding, margin,...). V praxi se občas stává, že se nevejdeme do předdefinovaných utilit, které jsou součástí Bootstrap-u. Proto jsme někdy vytvářeli vlastní třídy. Například pokud nastavujeme šířku nějakého elementu, máme k dispozici takové css třídy: .w-25 /* 25% */ .w-50 /* 50% */ .w-75 /* 75% */ .w-100 /* 100% */ .w-auto /* auto */ Pokud jsme potřebovali 33% width, 90% width, nebo jiné hodnoty, vytvořili jsme vlastní CSS třídy, udělali override na $sizes mapu v nějakém vlastním souboru, nebo jsme nebodaj editovali přímo $sizes mapu v souboru proměnných _variables.scss. Ve verzi Bootstrap 5 máme k dispozici čistší a užitečnější SASS nástroj, jak modifikovat stávající, nebo přidat nové utility do našeho projektu, tématu nebo pluginu pro Bootstrap - utilities API: $utilities: map-merge( ( "width": ( property: width, class: w, values: ( 33: 33%, 90: 90% ) ), "input-padding": ( property: padding, class: ip, values: ( 0: 0, 1: .3rem, 2: .5rem, 3: .7rem, 4: .9rem, 5: 1rem, ) ) ), $utilities); Výsledkem takového kódu budou nové css třídy utilit: .w-33 /* nastaví width na 33% */ .w-99 /* nastaví width na 90% */ .ip-1 /* nastaví padding na .3rem */ .ip-2 /* nastaví padding na .5rem */ .ip-3 /* nastaví padding na .7rem */ .ip-4 /* nastaví padding na .9rem */ .ip-5 /* nastaví padding na 1rem */ Ostatní vylepšeníIkonyS alpha verzí Bootstrap 5 přichází také pátá alpha verze Bootstrap Icons. Je to sada více než 1000 ikon, které jsou nadesignovány tak, aby parádně ladily s Bootstrapem. Nifty funkcionalita je také SVG sprite, která nám umožňuje vytvořit vlastní mapu SVG ikon a efektně ji používat v projektu, aniž bychom kód špinili samotným SVG zdrojovým kódem. <svg class="bi" width="32" height="32" fill="currentColor"> <use xlink:href="bootstrap-icons.svg#heart-fill"/> </svg> Osobně jsem velkým fanouškem Fontawesome ikon, které obsahují kromě enormně většího množství ikon a jejich variant i velmi užitečné způsoby integrace do projektů. Fontawesome nejsou však dostupné zdarma, proto možná v dalším projektu i my v learn2code zvážíme integraci s Bootstrap ikonami. DokumentaceUž na první pohled je vidět, že dokumentace prošla změnami. Ty však nejsou jen vizuální, ale vylepšen je i samotný obsah. Orientace mezi sekcemi je díky novému postrannímu jménu rychlejší. Jednotlivé sekce obsahují také jakési "overview", které postupně přibývají do každé hlavní sekce dokumentace. I tyto změny urychlují navigaci v dokumentaci a hledání požadované informace je takto rychlejší. BarvyPřibyly také nové barevné odstíny a vylepšen bude také jejich kontrastní poměr. ZávěrTento text není a ani nechtěl být kompletním diffem verze 4 s novou verzí 5. Mnohem více novinek najdeš ve stále rostoucí dokumentaci k Bootstrap 5. Pokud jsem na něco důležitého zapomněl, klidně se ozvi v komentáři.
Co bys měl vědět o Předplatném online kurzů pro rok 2018
Novinky
16.11.2017
Skillmea

Co bys měl vědět o Předplatném online kurzů pro rok 2018

Předplatné Learn2Code online kurzů jsme letos trochu upravili a máš možnost si jej objednat nebo prodloužit za výhodných podmínek. Vždyť čti dál. Cenu ročního přístupu jsme snížili z 249 Eur na 199 Eur a kromě toho, pokud si předplatné objednáš například v listopadu, přístup získáš až do konce prosince 2018. Máš tak od nás další měsíc studia programování, online marketingu nebo designu grátis .  Co všechno u nás najdešJiž téměř 40 online kurzů můžeš studovat na Learn2Code platformě. Další kurzy budou neustále přibývat, zmíním jen ty nejzajímavější, na které se asi nejvíc těšíš: • Python pro začátečníky • Android Developer • JavaScript série • VBA programování • Adobe Illustrator • a mnoho dalších témat Toto vše máš za 199 Eur, což je přibližně 15 Eur na měsíc , pokud přičteme i prosinec 2017 jako bonusový měsíc, který dostáváš zdarma. A to se vyplatí, protože dostaneš desítky kurzů, stovky hodin videomateriálu, certifikáty o absolvování kurzů, podporu od lektorů v diskusích. Předplatné jako dárekNevíš, čím obdarovat sebe nebo své blízké na Vánoce? Máme pro tebe super tip - Learn2Code Předplatné :) Vzdělávání je ta nejlepší investice do budoucnosti pro tebe nebo tvé blízké. A proto nám napiš email a vystavíme ti dárkový poukaz.[Image] Garance včetně penězLearn2Code kurzy prošly stovky spokojených studentů, nekupuješ tedy kočku v pytli. Pokud sis přesto nejistý, jestli se ti bude online forma vzdělávání zamlouvat a zda ti bude vyhovovat, garantujeme ti vrácení peněz v ochranné lhůtě 14 dnů. V případě, že tedy nebudeš s našimi kurzy spokojen, vrátíme ti plnou částku zpět. O vrácení peněz nás požádej emailem do 14 dnů od tvé objednávky.[Image] Pojď do toho! Veškeré info a přihlašování do předplatného  najdeš na této stránce . Pokud máš nějaké dotazy nebo nejasnosti, napiš nám email nebo zavolej :) 
Influencer marketing: výběr, ceny a metriky
Rozhovory
23.01.2023
Tím Skillmea

Influencer marketing: výběr, ceny a metriky

V novém podcastu jsme si povídali s Tonym Dúbravcem. Tony je online marketér, tvůrce podcastu "Doba digitální" a newsletteru o digitálních novinkách. Je odborníkem na social media a e-commerce, takže dnes budeme mluvit právě o těchto tématech. ➡️ Tony, jak silný trend vidíš aktuálně na social media?Jedním z trendů jsou určitě krátká videa, která přišla z TikToku a postupně se dostala na ostatní platformy. Dalším trendem je influencer marketing nebo jiný přístup k obsahu, který začíná s příchodem TikToku zabývat více na kvantitu, ne jen na kvalitu.   ➡️ Ty jsi nyní konzultant pro strategie social media, čemu se věnuješ více detailně?Působím jako marketing manažer v Medusa Group, největší gastro společnosti na Slovensku. Mým druhým směrem je zároveň vytváření týmů pro klienty, které jsou složeny z freelancerů. Pracuje s agenturními týmy složenými z freelancerů a vytváří tým podle potřeb klienta, kde jsem v pozici account manažera. Kromě toho provádí školení o sociálních sítích, přednáší na eventech a publikuje podcasty a newslettery o digitálních novinkách. [Natáčení podcastu] ➡️ Jak vnímáš vývoj infuencer marketingu na trhu? Je poptávka ze strany firem vyšší? Je to stále považováno za "sexy" pro firmy. Ne každý si ovšem uvědomuje, že to není vždy to, co by měli řešit. Je to pořád buzzword, ale výrazně se to změnilo od doby, kdy jsem psal blogy. Tato oblast nabrala obrovský rozmach a nyní už pro některé představuje základ jejich příjmu. Někteří lidé se totiž živí jen tím, že propagují produkty a služby. Momentálně existují dvě hlavní formy takové spolupráce. První je, že někdo žije tou značkou, používá ji a je jejím ambasadorem. Druhou formou jsou influenceři, kteří v podstatě prodávají reklamní prostor.    ➡️ Kolik výstupů bys doporučil dohodnout aby to mělo smysl?  Pokud chceš jen zásah, pak má smysl i jeden příspěvek, záleží také na tom, kolik času trvá kampaň a kolik máš budget. Většina influencerů si účtuje za příspěvek, nebo mají nějaký balík příspěvků a stories. Většinou se to jen násobí. Záleží na tom, čeho chceš dosáhnout, jestli ti stačí jeden příspěvek nebo chceš kampaň táhnout déle. Pak by se možná vyplatilo uvažovat o užší spolupráci s influencerem, ne jen o „koupě reachu.“   ➡️ Jak se pohybují ceny v influencer marketingu? U influencerů s 50 tisíci followery je to částka od 500 € za příspěvek. Obecně bych řekl že to začíná na 250 €. Samozřejmě se najdou influenceři, kteří ti udělají za 200 € tři příspěvky nebo tě spropagují za barter. Je to individuální, každý si své práce váží jinak.   [Tony Dúbravec ve Skillmea podcastu] ➡️ Existuje nějaká databáze, kde si umíš vyhledat relevantní influencery k navázání spolupráce? Existují také agentury, které se věnují této oblasti. Samozřejmě, za nějakou provizi. Doporučuji, pokud je to v možnostech, dělat si to sám nebo s někým, komu důvěřuješ a zná prostředí. Pokud si to člověk řeší sám, tak pozná ten svět influencerů, pochopí, že to není jako nakupování v obchodě.    ➡️ Co doporučuješ měřit při influencer marketingu nebo co ty sleduješ, jaké metriky? Na Reach lze asi nejvíce spoléhat. Existují různé způsoby jak měřit výkon spolupráce, jako jsou údaje UTM nebo kupony. Avšak většinou lidi zajímají interakce. Spousta lidí však nevšímá, zda jsou to reálné interakce nebo jen nějaké boty. Autenticita tedy může být obtížně ověřitelná. Engagement rate může být důležitý, ale nemusí být relevantní. Když se provádí s více influencery, je vhodné porovnat výkony jednotlivých influencerů a podle toho se pak rozhodovat, s kým se bude dělat dál. Avšak když se provádí jen s jedním influencerem, je těžko posoudit, zda to bylo dobré nebo ne, je to spíše pocitové. Pro více z rozhovoru s Tonym si poslechněte Skillmea podcast: #10 Jaké jsou trendy v social media marketingu?. 
Co dělá DevOps Engineer?
Vzdělávání
16.11.2021
Skillmea

Co dělá DevOps Engineer?

Na základě některých statistik se předpokládá, že poptávka po softwarových inženýrech do roku 2029 poroste o 22%. Tato poptávka po softwarových inženýrech a webových či mobilních aplikacích, které vytvářejí, vedla k mnoha novým pracovním pozicím a inovativním, efektivnějším vývojovým procesům – jako například DevOps. Zajímá tě, co je to DevOps, co dělá takový DevOps Engineer (inženýr), kolik vydělává a jaké dovednosti potřebuje? Čti dál a dozvíš se víc.[Image]Co je DevOps? DevOps je spojení slov Development (vývoj) a Operations (provoz). Je to speciální metoda vývoje softwaru, která spojuje procesy, lidi a technologie, díky čemuž mohou firmy produkovat kvalitní software, služby a produkty. DevOps-áci používají nástroje, procesy a metody vývoje k zajištění efektivního vývoje aplikací. Hrají důležitou roli v každé fázi procesu vývoje, od nápadu až po implementaci a údržbu. DevOps označuje způsob vývoje softwaru, který zajišťuje, že vše běží hladce v každé fázi vývoje. Před představením DevOps v roce 2009 vývojářské týmy obvykle sestavovaly každou část aplikace nezávisle. Jeden tým by se například zabýval strukturou databáze, zatímco jiný vytvořil frontend nebo bezpečnostní prvky. I když to bylo efektivní, často to vedlo k problémům, kdy byly tyto různé části spojeny do jednoho celku. DevOps se snaží tento problém vyřešit tím, že všechny účastníky vývoje spojí dohromady. Můžeš si to lehce představit jako stavbu domu. Standardně bys měl různé dodavatele, kteří by dělali různé práce: zedníci, elektrikáři, instalatéři, malíři atp. U DevOps modelu však tito dodavatelé spolupracují, diskutují o každé fázi vývoje a pracují spolu a táhnou za jeden provaz. Výsledkem je, že konečný produkt je efektivnější, kvalitnější a ušetří i čas, protože každá složka se pojí s ostatními. DevOps Engineer zajišťuje, že se to všechno děje hladce a konzistentně během celého životního cyklu vývoje. DevOps specialisté tedy používají různé nástroje, procesy a metody vývoje, aby zajistily efektivní vývoj aplikací. V každé fázi procesu vývoje (od nápadu až po implementaci a údržbu) hrají významnou roli. Jelikož celý vývoj aplikace je v rámci jednoho týmu, vývojáři jsou schopni rychleji komunikovat mezi sebou, ale také kolaborovat se zákazníkem, což znamená častější vydávání nových verzí vyvíjeného softwaru. Funkce DevOps DevOps specialista podporuje komunikaci, spolupráci a sdílení odpovědnosti napříč všemi stranami během životního cyklu vývoje. Hlavní výzvou, které čelí DevOps-áci, je sjednotit všechny účastníky vývoje, což jsou frontend a backend developeři, UI/UX designéři, testeři, lidé zodpovědní za bezpečnost produktu, ale také obchodníci, zákaznický servis či další klíčové osoby. V DevOps kultuře jsou všichni tito účastníci stejně důležití a jejich vstupy do vývoje mají stejnou hodnotu. DevOps-ák musí zajistit, že je s tím celý tým ztotožněn, podporuje to a samozřejmě zejména praktikuje. Jaké techniky používají DevOps-áci? Nejčastěji jsou využívány následující postupy či technologie: • continuous integration, continuous deployment (CI/CD), • kontejnerizace, • monitorování. Ve zkratce si řekněme o každé z výše uvedených technologií. CI/CD Zavádí automatizaci do softwarového vývoje. Pomocí skupiny různých nástrojů tak lze zajistit automatické sestavování verzí, jejich kontrolu a reporting kvalit konkrétní verze. Po sestavení a otestování lze nasadit verzi do produkčního prostředí. To je technika Continuous Integration. Jinými slovy, změny se provedou a integrují okamžitě. "CD" se může vztahovat i na Continuous Delivery. Změny provedené v aplikaci se před odesláním do úložiště (např. GitHub) testují na chyby. Následně jsou umístěny do živé produkce. Continuous Deployment znamená automatické odesílání změn provedených vývojářům z úložiště jako například. GitHub do produkce, kde jej mohou koncoví uživatelé používat. Kontejnery Kontejnery poskytují způsob izolace procesů od zbytku softwaru. Každý kontejner funguje v podstatě jako virtuální stroj, který spouští jednu část celkového procesu. Protože kontejnery lze velmi rychle zapnout a vypnout, kontejnerizace usnadňuje vytváření, nasazování a spouštění aplikací. DevOps engineer musí rozumět kontejnerizaci, protože má vliv na to, jak se produkt vytváří, upravuje a testuje. Při vytváření kontejneru by mělo platit pravidlo, že jeden kontejner je jedna služba. Abychom docílili těchto vlastností kontejnerů, musíme dodržet 3 hlavní principy kontejnerizace: standardnost (Standard), jednoduchost (Lightweight) a izolovanost (Isolated). V dnešní době je velmi populární přechod na mikroservisově orientovanou architekturu. U této architektury je funkcionalita softwaru rozdělena do menších částí - mikroservisů. Cílem je vytvoření aplikace, která bude co nejvíce modulární. Bude to znamenat její zjednodušení, udržovatelnost a také škálovatelnost. Funkcionalita aplikace se rozdělí do jednotlivých mikroservisů, kde každý má na starosti pouze jednu, oddělenou část softwaru. Pokud bude nutná změna aplikace, tyto mikroservisy je relativně snadné upravit. Provede se jen požadovaná změna, upraví se daný mikroservis a opětovně je nasazen. Při takovém přístupu se vyskytuje méně chyb, výpadků a má to kladný vliv na testování a hledání chyb v softwaru. Monitorování Monitorování zahrnuje používání systému, který umožňuje sledovat celý vývojový ekosystém a upozorní tě, pokud se něco pokazí. S dobře nastaveným monitorováním můžeš rychle řešit problémy pomocí analýzy základních příčin, která přesně určí, kde problém začal. Monitorování ti také umožňuje zjistit, jak se různé systémy navzájem ovlivňují, ať už běží současně nebo postupně. Tvá práce jako DevOps specialisty bude téměř nemožná bez komplexního monitorovacího řešení. Řešení problémů bude rychlejší a efektivnější.[DASA DevOps Competency model (zdroj: DASA)] Dovednosti DevOps specialisty Technické dovednosti jsou nezbytností. I když se v DevOps prostředí a IT obecně neustále objevují nové technologie a nástroje, dobrý DevOps inženýr by měl mít kvalitní znalosti v těchto oblastech: • verziování, systém správy verzí (jako Git, Github, Bitbucket, Svn atd.), • Continuous integration (Jenkins, Bamboo, VSTS), • koncepty kontejnerů (Docker), • orchestrace kontejnerů (Kubernetes, Swarm, Openshift), • cloud (AWS, Azure, GoogleCloud, Openstack), • základy sítí, Linux (základy OS), Bash, • základy programování (např. Python, Design Patterns). DevOps inženýři musí být schopni psát bezpečný kód na ochranu aplikací před útoky, jakož i na obranu před běžnými zranitelnostmi kybernetické bezpečnosti. Stejně jako v jiných technických prostředích, klíčovým prvkem DevOps je také automatizace. Mnoho opakujících se a manuálních úkolů prováděných tradičnějšími systémovými administrátory lze automatizovat pomocí jazyků jako Python, Ruby, Bash či Shell. Nezapomínej ani na soft skill dovednosti jako komunikační dovednosti, dobrou organizaci, ochotu spolupracovat, flexibilitu, prezentační dovednosti nebo to, že zákazník je na prvním místě. Mzda DevOps specialisty se podle portálu platy.sk pohybuje v závislosti na regionu a seniority na úrovni od 2.000 Eur výše. Jedná se o velmi žádanou pozici, poptávka po DevOps inženýrech v posledních letech značně vzrostla.[Image]Jak se stát DevOps specialistou Aby ses stal DevOps specialistou, musíš získat znalosti a zkušenosti potřebné pro práci s různými technologiemi. Klíčem je naučit se dovednosti, aplikovat je a vybudovat si portfolio, kterým se umíš odprezentovat. Náš seznam výše v článku se zdá být vyčerpávající a nekonečný. Jak jsme již zmiňovali, v jedné oblasti můžeš být expertem ao jiných víš toho málo. To je naprosto v pořádku. Základní znalosti z každé oblasti jsou dobrým začátkem. Například, pokud jsi softwarový inženýr, určitě jsi dobrý v programování. Nemělo by být pro tebe obtížné zvládnout práci admina, protože některé činnosti jsi už určitě mohl vykonávat ve své práci. Stejně tak, pokud jsi síťový inženýr, nebudeš mít problém naučit se více o bezpečnosti, virtualizaci a správě infrastruktury. Každá z těchto dovedností spolu souvisí. Cesta k tomu, abyste se stali DevOps specialistou je dlouhá, ale stojí za to. A neexistují žádné zkratky.
Co je testování softwaru?
Vzdělávání
18.10.2021
Skillmea

Co je testování softwaru?

Software je třeba testovat během jeho vývoje i po každém updatu. Pokud se chceš dozvědět, co je součástí testování softwaru, proč je testování důležité, kde v procesu vývoje se testování nachází a které jazyky je dobré ovládat, pokud chceš být IT tester, čti tento článek dále. Co je testování softwaru?Testování softwaru je metoda, která kontroluje, zda skutečný softwarový produkt odpovídá očekávaným požadavkům (implicitním i explicitním) a zajišťuje, aby softwarový produkt neobsahoval chyby, resp. pomáhá s tím, aby software obsahoval co nejméně chyb a žádné kritické. Zahrnuje spuštění softwarových/systémových komponent pomocí manuálních nebo automatizovaných nástrojů. Účelem testování softwaru je identifikovat chyby, nedostatky nebo chybějící požadavky v porovnání s původními požadavky. Testování softwaru se týká procesu ověřování a vyhodnocování funkce softwarové aplikace nebo produktu. Používá se ke snížení nebo odstranění chyb a minimalizaci množství dodatečných investic, které musí společnost investovat do řešení problémů a vydávání aktualizací. Softwarový tester tedy hledá chyby, nedostatky či jiné problémy ve webových či mobilních aplikacích, desktopových produktech nebo hrách. “TL;DR: IT testeři jsou důležití, protože pomáhají vysoké kvalitě softwarových produktů, spokojenosti zákazníků a uživatelů a dlouhodobé prosperitě businessu.” Proč je testování softwaru důležité?Testování softwaru je důležité, protože neotestovaný nebo nedostatečně výkonný software může mít vliv na tisíce uživatelů. Pokud například webová aplikace, která prodává produkt, funguje příliš pomalu, zákazníci mohou být netrpěliví a koupí si podobný produkt jinde. Nebo pokud databáze v aplikaci pošle nesprávné informace pro vyhledávací dotaz, lidé mohou ztratit důvěru k webové aplikaci nebo firmě obecně. Softwarový tester pomáhá předcházet těmto druhům selhání. Testování softwaru navíc může pomoci zajistit bezpečnost uživatelů nebo osob, kterých se týká používání. Úkolem testeru je tedy vžít se do pozice uživatele daného softwarového produktu a připravit si různé scénáře, které na daném produktu v průběhu vývoje testuje. Nalezené problémy následně reportuje vývojářskému týmu, který tyto chyby odstraní. “TL;DR: Cílem testování je zajistit co nejvyšší uživatelskou spokojenost s produktem.[Image]” Typy testování softwaruExistuje několik typů testování softwaru, z nichž každý vyžaduje různý stupeň specifičnosti. Zde je seznam některých z nejběžnějších: Testování použitelnosti (Usability testing)Testování použitelnosti je nejlepším způsobem jak zjistit, zda s webovou stránkou, aplikací nebo hrou běžní uživatelé umí zacházet a pochopit, jak při jejím používání přemýšlejí. Usability testing je v podstatě způsob, jakým dokážeme ověřit výsledek své práce na reálných uživatelích. Usability testing představuje hodnocení produktu nebo služby jeho testováním reprezentativním vzorkem uživatelů. Zpravidla musí účastníci během testování splnit několik úkolů, přičemž je jejich chování a jednání pečlivě sledovány a zaznamenávány testerem. Akceptační testováníHlavním účelem akceptačního testování není nalezení chyb, ale ohodnocení připravenosti systému pro nasazení a používání. Jedná se tedy o kontrolu, zda systém funguje tak, jak má. Software v tomto případě pracuje s ostrými a skutečnými daty, testuje se, zda produkt pracuje správně v reálném nasazení a splňuje uživatelské požadavky. Integrační testováníCílem je ověřit, zda větší části softwaru spolu fungují. Tento typ testování většinou neprovádějí testeři, ale samotní vývojáři. Testuje se interakce s různými částmi softwaru, ale také s hardwarem, operačním systémem. Unit testySlouží programátorovi jako okamžitá zpětná vazba k napsanému kódu. Unit testy slouží k testování menších jednotek zdrojového kódu. Programátor napíše kód a následně pro tento kód napíše testy. Existuje přístup psaní testů před kódem, který se nazývá Test Driven Development. Test by měl testovat chování kódu za standardních i mimořádných situací. Ideální unit test je nezávislý na ostatních testech a na zbytku testovaného programu. Někdy není na první pohled vidět rozdíl mezi unit a integračním testováním. Kromě těchto testů známe další druhy testů, například. performance testy. Co potřebuješ vědět, chceš-li být testerem?I když jako IT tester nemusíš napsat ani řádek kódu, v mnoha případech jej stále musíš umět přečíst. Jako tester softwaru tvoje práce zahrnuje více než jen klikání a procházení aplikací. Musíš být schopen přezkoumat kód a hledat potenciální problémy nebo zjistit, co mohlo způsobit chybu nebo poruchu. Většina testerů provádí kromě manuálního testování také psaní automatizovaných testů. Napsat automatizované testy je ale výrazně jednodušší než naprogramovat celé aplikace. Podle portálu platy.sk je průměrná měsíční mzda IT testeru v Bratislavě téměř 2.000 Eur, takže vydat se na tuto kariérní cestu je iz finančního pohledu zajímavé. Zde je několik jazyků, které by ses měl naučit, abys maximalizoval své vyhlídky na práci testeru: • Java • Python • C# Stačí se naučit samozřejmě jeden z jazyků, může být také jiný než je v seznamu. Kromě toho budeš určitě potřebovat pořádnou dávku preciznosti a být komunikativní, jelikož budeš muset reportovat nalezené chyby, správně je pojmenovat, najít řešení a budeš dále v kontaktu s vývojářským týmem. Pokud v IT teprve začínáš, práce manuálního IT testeru je skvělý start. Manuální testování je stále tady a bude zde i nadále, jelikož má mnoho výhod, například pomocí manuálního testování umíš objevit nové chyby v aplikaci, designové chyby a další. Opět poznamenáváme, že trh v QA se neustále vyvíjí a předpokládáme, že bude chtít univerzální testery, kteří umí dobře manuálně testovat a zároveň i tvořit automatizaci. Pokud máš v plánu stát se automatizovaným testerem, máme pro tebe hned několik kurzů. Nejprve začni s kurzem Selenium, ve kterém se naučíš i Javu a JUnit. Tento kurz má také pokračování pro pokročilé. Pokud se ti více zamlouvá JavaScript, určitě mrkni kurz Cypress.io. Cypress je moderní testovací nástroj pro end to end testování.
Celostránkové editování v DIVI
Novinky
03.12.2021
Jaroslav Beňo

Celostránkové editování v DIVI

V říjnu a listopadu 2021 vyšly dvě novinky do perfektního Wordpress tématu DIVI. V tomto článku se na novinky podíváme podrobněji, konkrétně na první z nich. Celostránkové editování v DIVI. První novinkou je možnost editovat celou stránku odkudkoli. V minulosti, pokud jste chtěli upravit hlavičku stránky, tak jste museli přejít speciálně na místo pro úpravu hlavičky. Nyní umíte upravit všechno odkudkoli. Pokud to vidíš, umíš to upravit. Tato aktualizace ti umožňuje snadno přejít na tvé vlastní hlavičky, zápatí a šablony příspěvků během prohlížení webových stránek a tak je rychleji upravovat ve Visual Builderu. K úpravě částí tvého webu již není třeba přecházet přes informační panel WordPressu nebo Divi builderu. Když povolíš Visual Builder, můžeš upravovat vše, co vidíš, od horní části webu až po její spodní část. V jednoduchosti řečeno: bez ohledu na to, kde se na svém webu nacházíš, můžeš upravovat to, co vidíš. Samozřejmě, pomocí Divi umíš upravovat vše, co na stránce vidíš, ale v minulosti jsi musel jít přes Divi theme builder, který jsi musel lokalizovat a poté najít specifickou část stránky a tak ji upravit. To mohlo zabrat nějaký čas, zvláště pokud jsi měl vytvořeno několik templatů a nejprve jsi musel zjistit, který chceš upravit – který je aktivní. Nainstaluj updaty Jako první krok musíš udělat update Divi témata na nejnovější verzi. Pokud nemáš povoleny automatické updaty, tak postup je následující: půjdeš do Appearance – Themes a uděláš update.[Image]Pokud vlastníš jednorázovou licenci, tak updaty si umíš stahovat během prvního roku. Pokud ne, tak ti doporučuji zakoupit si plnou licenci - updaty máš stále zadarmo. Jak začít Jsme na našem webu, který chceme upravovat. Jsme přihlášeni a prohlížíme si web. [Image] V horní liště povolíme Visual Builder stisknutím na Enable Visual Builder. Nyní umíš jednoduše upravovat custom header, custom footer, stránky a prostě všechno, co na stránce vidíš.[Image]Teď už ti nic nebrání vyzkoušet tuto novinku a potěšit se s jednodušším editováním 🙂
Code Week 2018
Události
02.10.2018
Skillmea

Code Week 2018

Co je Evropský týden programování? Evropský týden programování je nezávislé hnutí dobrovolníků, kteří ve své vlasti propagují programování v roli velvyslanců týdne programování. Všichni organizátoři akcí zaměřených na programování (školy, učitelé, programátorské kluby a kroužky, knihovny, podniky, veřejné orgány) se vyzývají, aby doplnili svou akci na mapu na stránce codeweek.eu . K čemu slouží týden programování?• Oslavuje programování jako tvůrčí činnost • Dává lidem svobodu • Spojuje lidi • Nadchne více lidí pro vědu, techniku, inženýrství a matematiku Co si mohu z této akce odnést já?• Programování je zábava! • Programování je tvůrčí! Lidstvo se od nepaměti věnuje tvorbě – nejprve s pomocí hlíny, kamene, cihel, papíru či dřeva, dnes už i díky počítačovému kódu. • Programování dává lidem svobodu! Digitální obsah nemusíte jen pasivně přijímat. Díky programování můžete věci i sami tvořit a zpřístupňovat je milionům lidí. Můžete vytvářet webové stránky či hry nebo kontrolovat počítač nebo robota kódem. • Je to možnost pochopit svět. Stále více věcí je vzájemně propojeno. Pokud víme, co se děje v zákulisí, pochopíme, jak funguje svět! • Programování nás učí algoritmickému myšlení, řešení problémů, kreativitě, kritickému myšlení, analytickému myšlení a týmové práci. • Až 90 % pracovních míst dneška vyžaduje digitální dovednosti včetně programování.[Image] Jak se mohu zapojit do Evropského týdne programování?• Programátoři mohou pořádat semináře v místních školách, co-workingových prostorách, komunitních střediscích nebo knihovnách. • Učitelé, kteří mají zkušenosti s programováním, mohou vést hodiny programování, vyměňovat si učební osnovy či pořádat semináře pro kolegy. • Učitelé, kteří (zatím) nemají zkušenosti s programováním, mohou zorganizovat semináře nebo pozvat rodiče či studenty, aby se navzájem naučili programovat. • Rodiče mohou podpořit své děti, aby navštívili seminář věnovaný programování. • Podniky a neziskové organizace mohou vést semináře o programování, poskytnout své zaměstnance jako školitele v rámci aktivity „staň se školitelem“, organizovat pro studenty zábavné programátorské soutěže nebo takové akce sponzorovat. • Veřejné instituce mohou pořádat semináře o programování nebo diskuse u kulatého stolu ve vlastních prostorách. • Každý, kdo se účastní akce zaměřené na programování, se o zkušenosti může podělit na webové stránce Evropského týdne programování a inspirovat ostatní! Nezapomeňte přidat své akce na stránce CodeWeek  a používat hashtagy #CodeEU a #CodeWeek.
Lambda výrazy v Javě - část III.
Tipy a triky
03.10.2019
Skillmea

Lambda výrazy v Javě - část III.

Lambda a vnitřní anonymní třídyVelmi se nám žádá říci, že lambda výrazy jsou jen zkratky jak napsat vnitřní anonymní třídy. Ale pamatuj si, není tomu tak. Vypadá to podobně, ale lambda není implementace rozhraní. Lambda je sama osobě nezávislá jiná věc. Podívejme se na příklad. Namísto toho, abychom použili implementační třídu našeho rozhraní IHelloWord, vytvoříme si vnitřní anonymní třídu. IHelloWord helloWord3 = new IHelloWord() { @Override public void sayHello() { System.out.println("HelloWord impls inner anonymous class"); } };Všechny 3 možnosti, které mají jako návratovou hodnotu rozhraní IHelloWord můžeme podsunout do metody printHelloWord(IHelloWord helloWord). helloWord.printHelloWord(helloWord1); helloWord.printHelloWord(helloWord2); helloWord.printHelloWord(helloWord3); Jak to, jak to?Jak java ví, jaký má použít typ pro lamba výraz? Abychom tomu porozuměli, vytvoříme si novou třídu, kde budeme pracovat s lambda výrazem. Vytvořme si rozhraní, které bude mít jednu metodu, která bude vracet int a na vstupu bude také int. interface Nasob{ int nasob(int a); } Ako by vyerala implementácia tohto rozhrania? class NasobPiatimi implements Nasob{ public int nasob(int a){ return a*5; } }Nyní si navrhněme lambda výraz, který odpovídá dané metodě. Nepotřebujeme návratovou hodnotu int, neboť java umí na ni přijít sama a nepotřebujeme ani název metody a ani modifikátor přístupu public. Náš lambda výraz bude vypadat takto: (int a) -> a*5;Nyní použijte tento lambda výraz: public static void main(String[] args) { Nasob nasobPiatimi = (int a) -> a*5; System.out.println(nasobPiatimi.nasob(10)); }Na výstupu bude 50. V tomto příkladu se lambda tváří jako instance rozhraní Nasob. V předchozích příkladech, kdy jsme používali HelloWord, jsme takovou proměnnou vkládali jako parametr metody printHelloWord (HelloWord3 v IDEi). Namísto toho jsme mohli tuto lambdu vložit přímo do metody. helloWord.printHelloWord(() -> System.out.println("HelloWord impls lambda");); Java kompilátor vezme tento lambda výraz a podívá se kam jde. Jedná se o metody printHelloWord a podívá se, co akceptuje na vstupu. Akceptuje rozhraní HelloWord. Pokud lambda sedí s požadavkem, že dané rozhraní obsahuje jen jednu metodu a ta vrací void a na vstupu nemá žádný parametr, tak java řekne, že daná lambda je typu HelloWord. Toto se jmenuje Type inference. Java si sama zjistí typ. Teď, když víš jak java dokáže zjistit typy, vrátíme se k příkladu, který jsme začali psát v této kapitole. V našem příkladu umíme ještě více zkrátit zápis našeho lambda výrazu. Nasob nasobPiatimi = (int a) -> a*5; System.out.println(nasobPiatimi.nasob(10));Jelikož naše lamba jde do metody rozhraní, kterou známe interface Nasob{ int nasob(int a); } Tak vieme presne povedať aký typ má vstupný paramter metódy. Je to int. interface Nasob{ int nasob(int a); }Když to víme, tak nemusíme při psaní lambda výrazu znovu specifikovat typ vstupního parametru. Nasob nasobPiatimi = (a) -> a*5; A jelikož máme jen jeden parametr, nemusíme psát ani závorky. Násob napětí = a -> a*5; Už nebudeme nic mazat, neboť by nám už nic nezbylo 😃 Nyní můžeme napsat metodu, která bude na vstupu očekávat rozhraní Nasob a když ji použijeme, tak do ní vložíme na vstup náš lambda výraz. public static void printNasob(Nasob nasob){ System.out.println(nasob.nasob(10)); } public static void main(String[] args) { printNasob(a -> a*5); }V jevu mohli klidně vytvořit nový typ pro tyto lambda výrazy. Ale neudělali to a jedním z důvodů je i zpětná kompatibilita se starším kódem. Jak už víme, tak lambda výrazy můžeme použít všude tam, kde máme vyhovující rozhraní. Ve vnitřních anonymních třídách, v metodách kde je na vstupu interface a podobně. Příklad: HelloWord helloWord3 = new HelloWord() { @Override public void sayHello() { System.out.println("HelloWord impls inner anonymous class"); } }; HelloWord helloWord3 = () -> System.out.println("HelloWord impls inner anonymous class"); Při tomto musíme pamatovat, aby rozhraní byla jedno metodová nebo aby ostatní metody rozhraní byly default. A dané metody v rozhraních, aby se shodovaly s lambda výrazem. Takové rozhraní s jednou abstraktní metodou (metoda, která poskytuje popis ne implementaci) se nazývá Functional interface. Představ si, že používáš rozhraní, které má jen jednu metodu a používáš ho pro lambda výrazy. Nyní by někdo cizí přišel a do tohoto rozhraní by přidal další abstraktní metodu, přesněji její popis bez implementace. Takové rozhraní by již více nebylo functional interface a proto by se nemohlo použít pro lambda výraz a nastala by chyba - přestože rozhraní by bylo v pořádku. Třeba na to myslet a pokud chceme něco přidat do functional interfac, tak jen jako default metody. Abychom upozornili kohokoli, kdo by chtěl něco přidat do našeho rozhraní, tak máme možnost přidat anotaci @FunctionalInterface. K anotacím se ještě dostaneme, tak se nebojte. Nyní je důležité vědět, že je to pomůcka – tato pomůcka nám udělá to, že jakmile napíšeme další metodu do našeho rozhraní, tak nastane chyba. Danou anotaci nemusíme psát, ale je to super. @FunctionalInterface public interface HelloWord { void sayHello(); }Příklady na vyzkoušení: 1. vytvoř si seznam míst 2. setřiď seznam 3. napiš metodu, která vypíše vše ze seznamu míst 4. udělej si metodu, která vypíše jen ta města, která se skládají z jednoho slova nepoužívej při tom lambda výrazy Pokračování příště 👋 Články a online kurzy o Javě pro tebe připravuje Jaro Beňo.