- One mobilszolgáltatások
- Magisk
- iPhone topik
- Poco M3 - felújított állomás
- Honor Magic V2 - origami
- Xiaomi 12T Pro - kétszínű, mint a kétszázas
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Kikapcsolhatja az AirDropot az Apple az EU-ban
- 45 wattos vezeték nélküli töltés jön az új iPhone-ba
- Google Pixel topik
-
Mobilarena
Új hozzászólás Aktív témák
-
Ez butasag. A komplex koddal akkor van baj, ha komplexebb, mint amire szukseg van. Komplex problemara komplex lesz a megoldas is, jo esellyel.
Eleve ugy kene review-zni, hogy az atnezendo kodrol el lehessen donteni, hogy valojaban megoldja-e a problemat, vagy sem. Ennel fogva atlagos/normalis esetben 1 user story-hoz 1 review tartozik, ahol az atnezendo kod tartalmazza 1) az implementaciot 2) a teszteket, amik bizonyitjak, hogy az implementacio tenyleg megvalositja az user story-t. A review meg ugy megy, hogy
- atnezed, h milyen tesztek vannak, azok megfelelnek-e az user story-nak
- ha a tesztek nem fedik le az user story-t, akkor veget is er a review
- utana megnezzuk, hogy a design megfelelo-e (skalazodik-e, stb.)
- vegul coding style, stb.Szerintem ez egy jol mukodo megkozelites.
> Amennyire látom, a fejlődés pont abba az irányba megy, hogy minél kevésbé legyen komplex a kód.
Nem. Ez csak egy inga, ami ide-oda leng.
Valojaban az van, hogy a komplexitast csokkenteni kell, de ez alapvetoen az architekturanal erdekes, hiszen egy elbonyolitott 100 soros fuggvenyt kb. barki ki tud takaritani, az nem kihivas. Nem szeretjuk a tulbonyolitott fuggvenyeket, de ha szembejon egy, akkor max. refaktoraljuk. Architekturat refaktoralni sajnos legtobbszor lehetetlen (mert az uzleti oldal nem viseli el a koltseget).
Szoval az van, hogy ha egy problema komplex megoldast igenyel, akkor az a komplexitas valahol meglesz. Vagy a fuggvenyek lesznek komplexek (C++/Haskell/Clojure hackerek, szevasztok!), vagy a kepernyodon levo kod trivialisan olvashato, de 3000 osztaly, amik ugy vannak osszehuzalozva, hogy azon kell atragnod magad (Enterprise Java/Spring hekkerek, szevasztok!).
Ergo a lenyeg sose az, szerintem, hogy szep fasza fuggvenyeink legyenek, hanem hogy a szoftver koncepcionalisan a leheto legelegansabban legyen kitalalva.
Mondok par peldat: peldaul az LMAX elegans. Kitalaltak, h hogy lehet nagy sebesseggel streaming adatokat feldolgozni, szep. Tokmindegy, hogy vannak a fuggvenyek lekodolva, onnan, hogy erted a nagy kepet, mar ki lehet silabizalni. A Datomic elegans. Rich Hickey ravilagitott, hogy az objektumorientalt vilag oriasi tevedese, hogy osszemossa az identitast az ertekkel, es tervezett egy adatbazist, ahol ez szetvalik -- gyonyoru.
> szerintem a programozás lényege a legegyszerűbb működő megoldás
Ebben majdnem igazad van.
1) fontos, hogy a legegyszerubb nem egyenlo azzal, amit az adott pillanatban legkonnyebb osszetakolni -- nagyon ajanlom: https://github.com/matthiasn/talk-transcripts/blob/master/Hickey_Rich/SimpleMadeEasy.md
2) sokszor az elvarasoknak resze, hogy reagalni tudjunk a jovobeli valtoztatasokra is -- szoval valami egyensuly kell a YAGNI meg az overengineering kozott
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Thinkpad T480s 24GB RAM 1TB SSD (erős, könnyű, vékony gép) Windows 11
- NJOY Aster 3K 3000VA/2700W Rack Szünetmentes Táp
- Új! Targus - USB-C Dual HDMI 4K HUB - 2 HDMI-vel. Saját töltő nélkül 2 monitorral (120Hz)
- 120 - Lenovo Legion Pro 5 (16ARX8) - AMD Ryzen 7 7745HX, RTX 4070 (48 hónap garancia!)
- BESZÁMÍTÁS! ASUS ROG STRIX Z270G GAMING WiFi alaplap 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