Blog Posts

Inheritance in C++

The question: I looked and couldn’t find a good explanation of the difference between public, private, and protected inheritance in C++. All of the questions I’ve found deal with specific cases. What is the difference in general? The answer: There are three accessors that I’m aware of: public, protected and private. Lets take the following example: class Base { public: int publicMember; protected: int protectedMember; private: int privateMember; }; Everything that is aware of Base is also aware that Base ...

Mai mult

GITLab workflow

Gitlab Asa cum va povesteam in postarea anterioara anul trecut am avut placuta sansa ca alaturi de colegii de serviciu sa dezbatem subiectul sistemelor de versionare. Folosind zilnic platformele opensource github, gitlab, bitbucket si cunoscand destul de bine subiectul am creat niste prezentari pentru git. Cand vine vorba de utilitare ce vin in ajutorul programatorului pentru dezvoltarea software si decuplarea contextelor, gitlab este un utilitar foarte puternic. Am pregatit o scurta prezentare a acestuia. Bafta la vizionat! GITLab workflow [slideshare ...

Mai mult

Branching can change your (programming) life

Branch,context Asa cum va povesteam in postarea anterioara anul trecut am avut placuta sansa ca alaturi de colegii de serviciu sa dezbatem subiectul sistemelor de versionare. Folosind zilnic platformele opensource github, gitlab, bitbucket si cunoscand destul de bine subiectul am creat niste prezentari pentru git. Nu stiu cati dintre voi v-ati pus problema lucrului in echipa, ce inseamna ce presupune si cum ati putea sa va organizati mai bine astfel incat fiecare sa poata sa lucreze linistit la partea lui ...

Mai mult

Getting started with Git

git, colegi, prezentare Anul trecut am avut placuta sansa ca alaturi de colegii de serviciu sa dezbatem subiectul sistemelor de versionare. Folosind zilnic platformele opensource github, gitlab, bitbucket si cunoscand destul de bine subiectul am creat niste prezentari pentru git. Acestea sunt: Getting started with git Branching can change your life GitLab workflow Getting started with git [slideshare id=70616784&doc=gettingstarted-170103074410] Rezumat Principalele subiecte discutate au fost: setting up a repository (comenzi, mod de lucru), saving changes (how to do it in ...

Mai mult

QT Creator Material Styles

[RO]: De ceva vreme folosesc ca si IDE pentru development Qt Creator. Fie ca vine vorba de o tema (template) de culoare inchisa sau deschisa tot timpul m-am lovit de problema style-ului ce este oferit pentru tema respectiva. Astfel am creat doua style-uri pentru fiecare din cele doua tipuri de teme. [EN]: For some time I started working with Qt Creator IDE. Even if I used the Light or the Dark theme, the style used to display the code was not ...

Mai mult

Testarea unui singleton folosind Mock Object

Problema De multe ori testarea singleton-urilor este una foarte anevoioasa. Folosirea acestui pattern pe langa ca aduce multa simplitate in ceea ce priveste accesul la variabilele protejate de singleton ingreuneaza testarea codului. Urmatorul cod prezinta solutia clasica, si nu neaparat cea mai buna, de implementare a unui singleton: class Singleton { public: static Singleton* getInstance() { if (!instance) { instance = new Singleton; } return instance; } private: Singleton(){} static Singleton* instance; }; Pentru a utiliza acest singleton in cadrul ...

Mai mult

Factory Method Design Pattern

Dupa singleton, un alt pattern destul de des folosit in crearea obiectelor este cel denumit “factory method”. Pe scurt acesta izoleaza partea de creare si parametrizare a unui obiect intr-o metoda statica ce are rolul, initial, de a crea obiectul iar mai apoi de a-l parametriza facandu-l gata pentru a fi utilizat.