Yet another visual language? :)
Aug 18th, 2015 | By Dumitru
How useful can be a visual language to #learning/#teaching #Git? pic.twitter.com/dpStcEK08V — Dumitru Ciorbă (@diciorba) August 15, 2015
How useful can be a visual language to #learning/#teaching #Git? pic.twitter.com/dpStcEK08V — Dumitru Ciorbă (@diciorba) August 15, 2015
Un bun programator trebuie să fie înzestrat cu tehnică, experienţă, capacitate de abstractizare, logică, inteligenţă, creativitate şi talent (Timoty Budd).
Clasificarea prezentată de Steven Metsker în Design patterns: Java WorkBook (2002) este realizată în scopul organizării şabloanelor de proiectare GoF (cel puţin aşa susţine autorul).
Şi deoarece anume „intenţia” stabileşte potenţialul de aplicare al şablonului într-un context determinat, nu-mi pare de loc straniu că drept criteriu de clasificare a servit chiar ea.
Intenţia, după Metsker, exprimă necesităţi ce nu pot fi realizate utilizînd doar instrumente de limbaj. Astfel analizînd intenţiile şabloanelor din această perspectivă autorul obţine următoarele categorii de şabloane…
Autorii cărţii Design Patterns Explained (Alan Shalloway şi James R. Trott, 2000) au considerat important de a reevalua clasificarea GoF prin prisma decuplării obiectelor din sistem. Practic ei reconfigurează categoriile adăugând un nou grup, cel al şabloanelor de decuplare. Deşi majoritatea şabloanelor din acest grup fac parte din categoria şabloanelor comportamentale, autorii nu au recurs la localizarea şabloanelor într-o subcategorie, motivînd decuplarea ca trăsătură primară a acestora.
Una din primele încercări de a clasifica şabloanele au realizat-o chiar autorii cărţii Design Patterns: Elements of Reusable Object-Oriented Software (Gamma, Helm, Johnson şi Vlissides, 1995). Desigur clasificarea aici este, mai degrabă, ca suport al organizării redării. Şi totuşi autorii oferă două criterii pentru completitudinea analizei: intenţie/scop(purpose) şi domeniu aplicare (scope) pentru organizarea catalogului de şabloane
Ce face ca şabloanele să fie atât de diferite? Care este relaţia dintre ele? Ce factori caracterizează fiecare şablon? Căutarea răspunsurilor ne va duce într-un mod sau altul la necesitatea clasificării şabloanelor.
În primul rînd, clasificarea ne va oferi o înţelegere mai bună a entităţilor analizate. În cel de-al doilea rînd ne va permite o organizare mai bună, care implicit facilitează înţelegera lor. Savantul rus Voevodin V. V. în cartea sa Параллельные вычисления (Calcul paralel: BHV-Peterburg, 2004) menţiona importanţa clasificării invocând o analogie cu legea periodicităţii apărută în 1869, care a permis ordonarea elementelor chimice şi a indicat spre existenţa unor „pete albe”.
Este incontestabil că utilizarea ontologiilor aduce beneficii în procesele de analiză a domeniului. Cel mai important este de menționat că permite formalizarea relațiilor dintre concepte, iar acest fapt la rândul său poate facilita automatizarea unor procese de dezvoltare. Articolul „Ontology Development 101: A Guide to Creating Your First Ontology” este un bun început pentru înțelegerea conceptului de ontologie, dar prezintă interes și pentru acei care studiază faza de analiză a unui proces obiect-orientat, căci regulele enunțate sunt perfect valabile și pentru ei…
Paradigma, conceptele, limbajele obiect-orientate au cunoscut o evoluție în timp incomparabilă cu alte abordări de dezvoltare a sistemelor informatice. Fundamentată teoretic și cu repere practice semnificative abordarea obiectuală a avut și are un impact major asupra industriei software. Metodele orientate pe obiecte exprimate prin procese, notații și instrumente își continuă perfecționarea și în prezent. Prin urmare dezvoltarea orientată pe obiecte conținând etape de analiză, proiectare și programare este o disciplină-pilon în formarea inginerului IT.
În acest post este prezentată sinteza lucrărilor de laborator la disciplina „Protocoale de Comunicație” (UTM), care acoperă sub-domeniul de „Programare în Rețea”. Slide-urile conțin indicații metodice generale necesare pentru realizarea unor aplicații simple care ar implementa protocoale gen HTTP, SMTP, POP3 și FTP.
O arhitectură concurentă presupune definirea modelului comportamental specific problemei, iar pentru aceasta este necesar de identificat semantica interacțiunilor și de potrivit mecanismele pentru sincronizare/coordonare…