Apr 10

C# – Repository Pattern, AutoMapper, MVC и SOLID principles

Три изречения, които обясняват толкова много неща:

1) The repository transforms database entities into business models.
2) The controller transforms business model into view models.
3) The view transforms view models into html.

Допълнително за Repository Pattern:
http://blog.gauffin.org/2013/01/repository-pattern-done-right/

Добър пример за организация на проект:
https://github.com/fmichellonet/MVCArch

Интересна имплементация на Repository Pattern, която има Filtering, OrderBy и Paging

И не на последно място –SOLID principles with real world examples

Jan 03

Delphi PAServer | Debugger fatal error: device not responding. The debug process will be terminated

This may happen if you try to Debug your program (F9) via PAServer on *nux based systems. In this case the IDE may hang. You may also receive: “Unable to create process: Connection device timeout”

Resolution: ensure files in PAServer’s directory have EXECUTE flag (especially linuxgdb). It’s that simple 🙂

Found with the help of: https://github.com/a2o/snoopy

May 16

Официално: Arduino/Genuino MKR1000 вече е на пазара!

Почти половин година, след официалното му обявяване, Arduino/Genuino MKR1000 вече се продава официално. Очаквам този продукт да се появи скоро и в България.

Continue reading

May 14

Комбиниране на Struct и Volatile в C/C++

Покрай един проект с Ардуино възникнаха няколко въпроса:

  1. Volatile ли са елементите на дадена структура, ако самата тя е декларирана като Volatile?
  2. Може ли в структура да има както обикновени елементи, така и Volatile елементи?
  3. Как се дефинира указател към Volatile структура, която не е маркирана като Volatile в нейната дефиниция?

Continue reading

May 14

Служебната дума Volatile в C/C++

Компилаторите имат редица опции, влияещи върху оптимизацията на кода. Включвайки една или повече от тях, Вие разрешавате на Компилатора да прави “подобрения” на вашата програма, при превеждането й на Асемблер/машинен код. Обикновено оптимизациите не са проблем, но започват да създават главоболия при многонишковите приложения (Multithreading), Interrupt Service Routines (ISR), работа на ниско ниво с регистри на крайни устройства  и т.н.

Главният симптом е: програмата Ви работи добре, докато не включите оптимизациите. След това започват да се случват “странни неща”.

Continue reading

Apr 13

Първи стъпки с Arduino (SoftUni) – Проектът

Петте седмици от курса отлетяха толкова бързо! И дойде време за проект и защита 🙂

В последния момент и много на бързо (така се стекоха обстоятелствата) успях да сътворя нещо семпло:

Continue reading

Apr 13

Reverse Package Search for ASP.NET 5 / ASP.NET Core

Разучавайки ASP.NET 5 / ASP.NET Core неминуемо ще попаднете на функцията ConfigureServices(). В нея се конфигурират услугите в DI контейнера:

Continue reading

Jan 03

Introducing JsonToDelphiClass

JSON format spread over the years and became preferred lightweight protocol for data exchange. Delphi natively supports JSON via the classes in the System.JSON unit. But dealing with TJsonObject requires an intermediate layer for mapping JSON values to our business logic.
Recent Delphi releases make it easier to load JSON data to a specific BL class with the help of TJson.JsonToObject. But in all cases the developer should manually create these BL classes which can be time consuming operation. The missing part is the JSON Data binding wizard.

Continue reading

Dec 14

Set-ADUser : Insufficient access rights to perform the operation when setting the Title attribute in Active Directory

Представете си, че имате обикновен потребител в Active Directory домейн, примерно Updater@pkg.lab. Искате той да има право да променя полето Title на определен списък с потребители.

Атрибутът Title отразява длъжността (т.е. Job Title) на потребителя в организацията.

За тази цел сте делегирали права Read/Write за атрибута Title в определени организационни единици:

Continue reading