Kolekcie (Pokročilá JAVA epizóda 1)

V tomto úvodnom článku do série pokročilá java sa pozrieme na zúbok kolekciám. Kolekcie sú akoby kontajnery, ktoré v sebe držia ďalšie objekty. Inak môžeme kolekcie chápať aj ako zoznamy. Zoznam telefónnych čísiel. Zoznam osôb. Zoznam áut. Zoznam súborov. Zoznam čísiel .... Pri kolekciách...

Pýt(hr)ame sa s Pythonom (1)

Aký programovací jazyk pribaliť deťom do školy? V akom jazyku robiť data science? Ako rýchlo vyrobiť nástroj s AI? Ako byť produktívny a nestratiť sa v kóde, zátvorkách, alokovaní typov?Python je najdynamickejšie rastúci programovací jazyk.Zdroj: https://stackoverflow.blog/2017/09/06/incredible-growth-python/...

Princípy objektovo orientovaného programovania SOLID

Single Responsibility Principle
SOLID princípy objektovo orientovaného programovania vedú ku kódu, ktorý sa ľahko upravuje a udržiava v čase. SOLID nie je povinnosť, ale mali by sme ich dodržiavať. Postupom času sa ti tieto princípy dostanú pod kožu – treba trpezlivosť a prax. Ani ja...

Stať sa Java programátorom nebolo nikdy jednoduchšie

Stať sa Java programátorom nebolo nikdy jednoduchšie
Nikdy nebolo jednoduchšie stať sa java programátorom. Prečo? Z jednoduchých dôvodov. Ak sa chceš stať programátorom, musíš sa začať učiť a musíš začať kódiť. Takže máme nastolené dve podmienky – učiť sa a kódiť. Mám pre teba výzvu: Staň sa...

Najpoužívanejšie návrhové vzory v Jave – jednoducho

article image Návrhové vzory jednoducho
V tomto článku si jednoducho vysvetlíme najpoužívanejšie návrhové vzory v jave. Ak ťa baví video forma, tak pod každou sekciou budeš mať možnosť pozrieť si aj video. Poďme na to a pustime sa do spolu do článku najpoužívanejšie...

Spring MVC – základy

Na konci článku nájdeš videonávod ako na Spring MVC. MVC pattern - Model-View-Controller Vysvetlime si v jednoduchosti, čo je to MVC pattern. Používateľ dáva request (žiadosť) na server. Request obdrží Controller – ten vie kam má request posunúť a...

Vieš, čo sú to Lambda výrazy?

Čo sa naučíš?porozumieť lambda výrazom použiť lambda výrazy funkcionálne rozhrania (functional intefaces) referencie metód (method references) vylepšenia na kolekciáchhttps://www.youtube.com/watch?v=Sk5I3lEb3Xc&t=16s&list=PLJ9z8M9rKWgJ0Ur5ZUTX9KWNoZFcerJEu&index=2 Prečo Lambda výrazy? Prečo použiť lambda výrazy? Povieme si pár odrážok, prečo ich používať.povoľuje použiť takzvané funkcionálne programovanie, čo je doteraz niečo, povedal by som...

Domain-Driven Design – používanie repositories

Repository je v rámci Domain-Driven Designu (DDD) jeden zo základných stavebných prvkov.Ide o rozhranie (interface), ktoré obsahuje metódy pre prístup k úložisku objektov – čiže typicky k databáze. Príkladom môže byť rozhranie CustomerRepository, ktoré na prístup k objektu Customer poskytuje metódy: Customer read( long customerId...

UML – dobrý sluha, ale zlý pán

Unified Modeling Language je v programátorskom svete vnímaný rôzne. Jedna skupina programátorov využíva UML ako vhodný nástroj na vizualizáciu softvéru, druhá skupina programátorov ho zaznáva ako zbytočný formalizmus.A obe skupiny majú pravdu: UML je dobrý sluha, ale zlý pán. Vizualizácia zložitého systémuVo všetkých komplexných oblastiach...

Princípy objektovo orientovaného programovania v praxi

Na jednoduchom príklade demonštrujem spôsob využitia objektovo orientovaných princípov. Ukážem, že v porovnaní s priamočiarym prístupom je objektový zápis prehľadnejší. Využijem aj hlavný princíp techniky „domain driven design“ (DDD), ktorým je „všadeprítomný jazyk“. A ukážem aj spôsob využitia niektorých SOLID princípov. Zadanie Vstupom je súbor o...

Svet podľa Idomaster: „Na každý problém existuje riešenie.“

Idomaster
Svet informačných technológií je svetom plným inovácie, daných pravidiel a z veľkej časti aj disciplíny. Každý, ľudovo povedané, IT-čkár nám však dá za pravdu, že s týmto poslaním neraz vznikajú otázky a pokrok sprevádzajú malé i veľké problémy.Pohybovať sa neustále v numeráliách, kódoch a...

Vzdelávacia platforma Butterfly Effect predstavuje prvých absolventov

Prvých 22 účastníkov si v Butterfly Effecte za 5 mesiacov prešlo celý proces tvorby mobilných aplikácií a hier od nápadu až po samotné uvedenie na trh. Spoločnú iniciatívu s cieľom vzdelávať mladých ľudí ako uspieť na globálnom trhu predstavili v septembri minulého roka nezisková organizácia...

[Edited] Kto vyhrá TP CUP 2018? Vyber najlepší projekt študentov FIITky a vyhraj aj ty

 Celoročná práca študentských tímov bratislavskej FIITky smeruje do finále a 7. júna spozná TP Cup 2018 svojho víťaza. Zo siedmich tohtoročných semifinálových prezentácií porota vyberie projekt, ktorý je technicky zaujímavý a dobre zrealizovaný. Podpor študentov a pomôž nám vybrať najlepšiu prezentáciu semifinálových projektov TP CUP 2018. Lajkuj na Facebooku a YouTube,...

Vývoj softvéru ako stavba babylonskej veže

Podľa príbehu z Biblie babylonskú vežu ľudia nedostavali preto, lebo sa nemohli dohovoriť. Keď stavitelia hovoria rôznymi jazykmi, akýkoľvek komplikovaný projekt skončí nezdarom. Tento článok ukazuje, ako je možné postupovať pri implementácii domény tak, aby bola zachovaná hlavná myšlienka Domain Driven Designu: spoločný jazyk. Hoci...

CQRS – pre veľa komplikovaných dát

Command and Query Responsibility Segregation (CQRS) je návrhový vzor, ktorý odporúča implementovať dva rôzne modely pre ten istý pojem v závislosti od účelu: jeden model pre zápis dát („command“) a druhý model pre čítanie dát („query“). Špecializované modely umožňujú architektom naplno využiť silu objektového prístupu aj...

Zlo zvané obojsmerná závislosť

Používanie obojsmerných závislostí v objektovom modeli je jednou z príčin vzniku ťažko udržiavateľného softvéru. Tento článok sa zaoberá tým, kedy obojsmerné závislosti vznikajú, prečo sa im treba vyhýbať a ako.Kedy vzniká obojsmerná závislosť Typickým predstaviteľom obojsmernej závislosti medzi dvoma objektami je obojsmerná asociácia: Uvedený model vychádza z týchto používateľských požiadaviek:...

Vzťahy v objektovom svete

Tento článok obsahuje popis vzťahov medzi triedami v objektovo-orientovanom modeli s dopadmi na závislosti medzi nimi. Typy vzťahov sú demonštrované na nasledujúcom diagrame tried: Diagram modeluje doménu evidencie zmlúv a faktúr pre zákazníka. Faktúra sa skladá z položiek faktúr, ktoré držia informácie o fakturovanom tovare, množstve...

Mutable vs. Immutable

S nástupom funkcionálnych jazykov sa častokrát objavuje požiadavka na nemeniteľnosť atribútov objektu – immutability. Tento článok upozorňuje na to, kde sú hranice využitia nemeniteľných objektov pri objektovo-orientovanom programovaní. Pre potreby zmien v softvéri je kľúčová schopnosť postaviť softvér na modeli, ktorý čo najvernejšie odráža realitu....

Nábor záujemcov do Full-Stack Academy 2018 spustený

 Spoločnosť PosAm opäť spúšťa vzdelávaciu akadémiu pre študentov ale aj neštudentov, ktorí sa chcú teoreticky a prakticky zlepšiť a nabrať skúsenosti so softvérovým vývojom na reálnych projektoch. Ak máš drive, chuť učiť sa a máš aspoň základy programovania (napr. JAVA), poď sa posúvať dopredu s PosAm Full-Stack...

Používate dedičnosť v objektovom svete správne?

Dedičnosť v objektovom svete býva častokrát používaná nevhodne. Keďže návodov na správne použitie dedičnosti je veľa, tento článok uvádza návody na nesprávne použitie dedičnosti (antipatterny). Zároveň vysvetlí, prečo je použitie dedičnosti nesprávne a ako by sa v danom prípade malo postupovať. Dedičnosť do istej miery porušuje základnú...