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 id=70773992&doc=gitlabworkflow-170107164022]

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 stiind ca intr-un final lucrurile se vor imbina armonios.

Atunci cand lucram in echipa fiecare membru va da nastere unui asa zis context, context care va conduce la lucrul in paralel cu un alt coleg in remedierea unor probleme.

Ganditi-va cum ar trebui sa fie organizate task-urile astfel incat cei doi coechipieri sa nu se calce pe picioare.

Prezentarea ce urmeaza prezinta niste metode ce sper sa va vina in ajutor in negocierea mult mai buna a unei astfel de situatii.

Branching can change your life

[slideshare id=70718305&doc=banchingcanchangeyourlife-170105180624]

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 a better way, add vs commit and the mighty staging area),
  • inspecting a repository (git status, git log),
  • viewing old commits (the better checkout command),
  • undoing changes (revert vs reset vs clean),
  • rewriting history (amend a commit or rebase the branch)

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 so good as I expected. So I’ve designed two styles, one for each kind of theme. Continue…

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 altor clase avem de facut fie Singleton::getInstance() sau folosind tehnica de Dependency Injection. Continue…

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. Continue…

Singleton Pattern

Singleton sau “instanta unica” este un design pattern creational. Acesta constrange numarul obiectelor pe care o clasa le defineste. Singleton-ul este frecvent intalnit la definirea accesului la resurse “unice” in sistem precum:

  • baze de date
  • resurse hardware (registri, componente harware: modem, gps, gprs …)

Continue…