Category Archive JetBrains

ByIvan BREZIANSKY

dotInsights | Február 2025

Vedeli ste, že?

Metóda GC.KeepAlive() v rámci .NET Framework sa nepoužíva na zabránenie zberu odpadu objektu pre celý rozsah metódy, ako by ste si mohli myslieť. Namiesto toho explicitne zabezpečuje, aby objekt zostal referencovaný v určitom bode kódu aj po jeho poslednom použití. Je obzvlášť užitočná pri práci s nespravovaným kódom alebo zdrojmi, kde by runtime mohol uvoľniť objekt príliš skoro, pretože preň neexistujú žiadne spravované referencie.

Zachytávajú vaše testy skutočne chyby?
Silná sada testov je dôležitou (a dovolím si tvrdiť, že aj nevyhnutnou) súčasťou vytvárania vysokokvalitného softvéru, ktorý je prispôsobiteľný zmenám. Keď už ste však tieto testy napísali, ako viete, že skutočne zachytávajú chyby? „Nikdy neverte testu, ktorý ste nevideli zlyhať“ je skvelé usmernenie pre písanie nových testov, ale čo potom?
Tu prichádza na rad testovanie mutácií. Jednoducho povedané, testovanie mutácií je spôsob testovania vašich testov. Podľa mojich skúseností to nie je veľmi rozšírená stratégia medzi vývojármi – vrátane mňa! Predtým, ako som sa o nej dozvedel, som sa už cítil istý v spôsobe, akým som písal testy, a nechcel som ešte investovať čas do učenia sa ďalšieho testovacieho rámca a filozofie. Keď som však pochopil, čo je to mutačné testovanie a aké jednoduché je osvojiť si ho, stal som sa jeho veľkým zástancom.

Testovanie vašich testov
Ak chcete vidieť, aké jednoduché je testovanie mutácií, skúste toto: vstúpte do jedného zo svojich projektov, zmeňte operátor + na operátor – a pozrite sa, či testy okolo tohto kódu stále prechádzajú. Ak áno, znamená to, že vaše testy pravdepodobne nie sú také úžasné, aké by mohli byť. Gratulujeme, práve ste vykonali testovanie mutácie!
Samozrejme, takto ručne meniť kód znova a znova by bolo veľmi bolestivé a časovo náročné, a práve na to slúžia knižnice na testovanie mutácií. Stryker, jedna z týchto knižníc, je populárnou možnosťou pre C# a Typescript. Stryker vám môže pomôcť tento proces škálovať tým, že ho automatizuje, objaví veľa mutácií naraz a potom zistí, či vaše testy zlyhali.

ByIvan BREZIANSKY

Java mesačník – február 2025

Vitajte v najnovšom vydaní mesačníka Java!

Na začiatku roka 2025 vám prinášame prehľad najnovších pokrokov vo svete technológií. Buďte v obraze vďaka kurátorskému zoznamu podujatí, ktoré sa musia uskutočniť vo februári, aby ste si mohli naplánovať ďalšie príležitosti na vzdelávanie a nadväzovanie kontaktov. Okrem toho sme nadšení, že vám môžeme predstaviť Isabel Garrido v našej sekcii Odporúčaný obsah – plnej ručne vybraných článkov, postrehov a podnetného čítania, ktoré vás bude inšpirovať. Poďme sa ponoriť a preskúmať, čo formuje technologický ekosystém!

Z audiovizuálneho obsahu sa učím veľa, oveľa viac ako z čítania. Preto sa rád zúčastňujem na konferenciách, a to ma privádza k môjmu prvému návrhu: 97 vecí, ktoré by mal vedieť každý programátor Javy. Počas tejto prednášky Trisha Gee a Kevlin Henney zábavnou formou predstavia svoju známu knihu 97 vecí, ktoré by mal vedieť každý programátor Javy. Prednášajúci vysvetlili, že do knihy zámerne zaradili protichodné pohľady, pretože vývoj softvéru je o kompromisoch. Spolu s Emily Bacheovou a Holly Cummingsovou diskutujú o kľúčových témach, ako je poznanie svojho IDE, písanie hviezdnych unit testov, testovanie schválenia, čitateľný kód a pochopenie garbage collectora.

Mojím druhým odporúčaním je ďalšia prednáška: Historické zvláštnosti a pretrvávajúce problémy. V tejto prednáške sa James Gosling zamýšľa nad niekoľkými témami jazyka Java a nad tým, ako sa jeho názor vyvíjal od počiatkov tohto jazyka až po súčasnosť. Jednou z fascinujúcich tém, ktorú rozvinul, je, prečo jazyk používa zátvorky a prečo by ich v dnešnej dobe nepoužíval pre jazyk. Ak ste zvedaví na dôvody, ktoré stoja za návrhovými rozhodnutiami jazyka Java, túto prednášku si musíte pozrieť.

Mojím posledným odporúčaním je článok o téme, ktorá už môže byť niektorým z vás známa: „Chyby spôsobené formátovaním roka na základe týždňa v Jave“. Pred niekoľkými rokmi som počas prázdnin dostal bolestnú lekciu: V poslednom týždni roka zlyhal fakturačný systém aplikácie, na ktorej som pracoval. Pri formátovaní dátumu sme používali RRRR namiesto rrrr, čo spôsobilo nesprávne hodnoty roku pre daný týždeň. V článku je vysvetlené, prečo sa to stáva. Dúfam, že vám ušetrí čas a energiu.

ByIvan BREZIANSKY

JetBrains novinky, január 2025

chceme Vám predstaviť Junie, kódovacieho agenta, ktorý je tu, aby zmenil spôsob, akým pracujete s kódom. Junie je navrhnutý tak, aby sa stal spolupracovníkom, o ktorom ste nevedeli, že ho potrebujete – od prevzatia opakujúcich sa úloh až po pomoc pri riešení zložitejších úloh.
Program Early Access Program (EAP) pre Junie je už v prevádzke. Prihláste sa na čakaciu listinu ešte dnes a buďte medzi prvými, ktorí si ju vyskúšajú v IDE JetBrains, ako sú IntelliJ IDEA Ultimate a PyCharm Professional. Ste pripravení kódovať inteligentnejšie? Nechajte Junie, aby vám ukázal, ako na to.

Získajte skorý prístup

Údaje a trendy

  • Stav jazyka Python v roku 2024
    Objavte najnovšie poznatky o jazyku Python podložené prieskumom medzi viac ako 25 tisíc vývojármi. Transformujte svoje projekty v jazyku Python v roku 2025!
  • Najlepšie nástroje na kontinuálnu integráciu v roku 2025 – výsledky prieskumu
    Zorientujte sa v zložitom svete vývojárskych nástrojov s poznatkami odhalenými v správe State of Developer Ecosystem 2024. Náš nový príspevok na blogu upozorňuje na najpopulárnejšie nástroje CI, ktoré vám pomôžu nájsť najvhodnejší nástroj pre váš tím.
  • Trendy vo vzdelávaní v oblasti informatiky v roku 2024
    Uskutočnili sme prieskum medzi viac ako 23-tisíc študentmi na celom svete, aby sme odhalili najnovšie trendy vo vzdelávaní v oblasti informatiky. Prečítajte si správu a zistite, aké sú motivácie, výzvy a ako ich prekonávajú ostatní študenti ako vy.
ByIvan BREZIANSKY

Mesačník PHP – január 2025

Vitajte v januárovom vydaní mesačníka PHP! Tento prehľad je starostlivo spracovaný a prináša najzaujímavejšie udalosti v komunite PHP za posledných pár mesiacov, takže sa nemusíte prehrabávať hlukom, urobili sme to za vás.

Najdôležitejšie udalosti
PHP 8.4 bolo oficiálne vydané 21. novembra 2024 a v súčasnosti je už k dispozícii verzia 8.4.3.
Táto významná aktualizácia jazyka prináša mnoho nových funkcií, ako sú háčiky vlastností, asymetrická viditeľnosť, aktualizované rozhranie DOM API, vylepšenia výkonu, opravy chýb a všeobecné vyčistenie kódu.

Ak sa chcete dozvedieť viac o všetkých novinkách vo vydaní, navštívte stránky php.watch a stitcher.io. K dispozícii sú aj niektoré menej známe vylepšenia, o ktorých sa môžete dozvedieť viac z blogu Tideways:
– PHP 8.4 zlepšuje pomenovanie uzáverov pre zjednodušené ladenie.
– Čo je nové v PHP 8.4 z hľadiska výkonu, ladenia a operácií.

Inštalácia alebo aktualizácia na PHP 8.4
– Windows: skompilované binárne súbory sú k dispozícii na adrese windows.php.net.
– Fedora/RHEL/CentOS: K dispozícii ako kolekcia softvéru (php84) z repozitára Remi.
– MacOS: PHP 8.4 možno nainštalovať prostredníctvom Homebrew pomocou odbočky shivammathur/homebrew-php.
– Docker: PHP 8.4 sú teraz k dispozícii na Docker Hub s označením 8.4.
– Herd tiež prichádza s podporou PHP 8.4.

PHP 8.2 prechádza do fázy len bezpečnostných opráv
Od tohto roka sa verzie PHP teraz riadia štvorročným harmonogramom podpory: dva roky aktívnej podpory, po ktorých nasledujú dva roky bezpečnostných opráv.
Pre PHP 8.1 budú bezpečnostné opravy poskytované do 31. decembra 2025, zatiaľ čo PHP 8.2 bude udržiavané do 31. decembra 2026. Nedávne vydanie PHP 8.2.27 znamenalo koniec fázy aktívnej podpory.

Bol vydaný PHPStan 2.0
Táto aktualizácia zavádza analýzu kódu úrovne 10 s prísnejším spracovaním zmiešaných typov a pridáva podporu pre typ List. Môžete tiež očakávať zníženú spotrebu pamäte a zvýšený výkon.
Markus Staab sa podelí o zaujímavé technické postrehy týkajúce sa zlepšovania programu PHPStan: A mixed type PHPStan journey, PHPStan performance on different hardware, My new PHPStan focus: multi-phpversion support.

ByIvan BREZIANSKY

JetBrains DotInsights január 2025

Vedeli ste, že? Chyba Y2K alebo „chyba tisícročia“ bola programátorským problémom spôsobeným ukladaním rokov len s dvoma číslicami (napr. „1999“ ako „99“) s cieľom ušetriť pamäť. S blížiacim sa rokom 2000 hrozilo, že systémy budú interpretovať „00“ ako 1900, čo viedlo k možným chybám pri výpočtoch a spracovaní údajov.
Obavy z porúch v kritických systémoch, ako je bankovníctvo a verejné služby, podnietili celosvetové úsilie o aktualizáciu softvéru. Opravy nakoniec fungovali a podarilo sa vyhnúť závažným problémom.

Odporúčaný obsah
Zástancovia .NET sa zamýšľali nad tým, či umelá inteligencia dokáže presne predpovedať trendy v oblasti výpočtovej techniky, keďže AI je stále horúcou technológiou. Tento mesiac vám preto prinášame odporúčaný obsah od spoločnosti JetBrains AI!
Tu je to, na čo sme sa pýtali: „Ako vidíte vývoj sietí .NET a jazyka C# v roku 2025? Povedzte mi nejaké predpovede. Nech je to v rozsahu 400 – 500 slov a uveďte dôvody, prečo.“
? Predpovedanie vývoja .NET a C# do roku 2025 zahŕňa preskúmanie súčasných trendov, stratégie spoločnosti Microsoft a širšieho prostredia vývoja softvéru. Toto je to, čo môžeme očakávať:

1. Pokračujúce rozširovanie jednotnej platformy .NET 7/8
Do roku 2025 by sa mala jednotná povaha platformy .NET zavedená počnúc platformou .NET 5 stať robustnejšou a expanzívnejšou. Spoločnosť Microsoft konsoliduje rámce ako .NET Core, Xamarin a tradičný .NET Framework do jednotnej platformy. To znamená, že vývojári budú mať k dispozícii plynulejšie zážitky z webových, mobilných, desktopových a cloudových aplikácií. Očakávajte prepracovanejšie multiplatformové vývojové nástroje, väčšiu optimalizáciu výkonu a hlbšiu integráciu s jazykmi, ako je napríklad C#.
Dôvod: Vzhľadom na heterogénne prostredie zariadení a operačných systémov je snaha o medziplatformovú kompatibilitu naďalej silná. Úspech frameworkov, ako je Flutter, a inovácie v Ruste by mohli spoločnosť Microsoft postrčiť, aby zdvojnásobila úsilie o jednotný framework, ktorý zostane konkurencieschopný.

2. Významné vylepšenia jazyka C# a vývoj založený na umelej inteligencii
Jazyk C# je už uznávaný pre svoje funkcie, ktoré zahŕňajú produktivitu vývojárov, ako sú anotácie nulovateľnosti, porovnávanie vzorov a asynchrónne programovanie. Do roku 2025 môžeme očakávať, že jazyk C# bude integrovať viac funkcií systémového programovania bez toho, aby sa znížila jednoduchosť používania. Okrem toho samotný jazyk pravdepodobne ovplyvnia nástroje poháňané umelou inteligenciou, ktoré sú poháňané systémom GitHub Copilot alebo Azure AI, a budú obsahovať funkcie prispôsobené na prediktívne generovanie kódu a zabezpečenie proti chybám.
Dôvod: Rozvoj nástrojov AI zásadne mení spôsob, akým vývojári píšu kód. Investície spoločnosti Microsoft do nástrojov OpenAI, GitHub Copilot a Visual Studio naznačujú, že pokročilé modely AI sa budú úzko integrovať, čím sa jazyk C# stane „smart-first“ jazykom pre podnikové aplikácie.

3. Zameranie sa na cloudovo natívne a mikroslužby s .NET
Cloud computing dominuje softvérovej infraštruktúre a .NET spolu s technológiami ako Docker a Kubernetes zlepšuje svoju podporu pre cloud-native vývoj. Do roku 2025 by sme mali vidieť zefektívnené funkcie a nástroje na vývoj mikroslužieb zapracované do .NET na zvýšenie škálovateľnosti vrátane natívnej podpory pre architektúry s viacerými cloudmi.
Dôvod: Podniky naďalej masovo využívajú cloud a platformy sa musia prispôsobiť tak, aby podporovali distribuované systémy a kontajnerizáciu. Ekosystém Azure spoločnosti Microsoft bude pravdepodobne hnacou silou týchto inovácií v oblasti .NET.

4. Väčší dôraz na Blazor a WebAssembly
Blazor, ktorý umožňuje vývojárom písať full-stack webové aplikácie pomocou jazyka C#, bude pravdepodobne do roku 2025 ďalej dozrievať. S rastúcou popularitou WebAssembly (Wasm) by sa Blazor mohol stať ústredným nástrojom na vytváranie ľahkých a vysoko výkonných webových aplikácií.
Dôvod: WebAssembly sa rozširuje vďaka svojej schopnosti priniesť do webových aplikácií takmer natívny výkon. .NET bude potrebovať Blazor, aby mohol priamo konkurovať frameworkom založeným na JavaScripte, ako sú React alebo Vue, a zároveň získavať pôdu pod nohami vďaka znalostiam jazyka C#.

5. Vývoj hier a nové prípady použitia v ekosystéme
Akvizícia spoločnosti Activision Blizzard zdôrazňuje záujem spoločnosti Microsoft o hry. Do roku 2025 môžu .NET a C# rozšíriť svoje postavenie v oblasti vývoja hier a potenciálne vyzvať Unity (ktoré sa spolieha na C#). Zároveň by sa .NET mohol čoraz viac využívať v oblasti internetu vecí, VR/AR a edge computingu.
Dôvod: Hranie hier a pohlcujúce aplikácie predstavujú úrodnú pôdu pre jazyk C#. Priame investície do tejto oblasti sú v súlade so širšími cieľmi spoločnosti Microsoft diverzifikovať používanie .NET.

Záver
Do roku 2025 sa .NET a C# budú pravdepodobne vyvíjať tak, aby sa stali cloudovo orientovanými, inteligentnejšími a lepšie optimalizovanými na výkon naprieč platformami. Tento vývoj odráža širšie ambície spoločnosti Microsoft v oblasti cloud computingu, umelej inteligencie, hier a produktivity vývojárov. Vďaka silnej komunite a zameraniu na podniky sú tieto technológie pripravené zostať silou v modernom vývoji softvéru.