Skip to content

Instantly share code, notes, and snippets.

View GrigoriiVakhmistrov's full-sized avatar
🙃

Grigorii Vakhmistrov GrigoriiVakhmistrov

🙃
View GitHub Profile
@theothertomelliott
theothertomelliott / AsyncTestingPrimer.m
Created September 8, 2015 16:25
A primer for testing asynchronous calls with XCTest in Objective-C
#import <XCTest/XCTest.h>
@interface AsyncTestingPrimer : XCTestCase
@end
@implementation AsyncTestingPrimer
/*
* This is how not to test async calls
@ChunMinChang
ChunMinChang / remove_c_style_comments.py
Last active March 12, 2024 16:42
Python: Remove C/C++ style comments #parser
#!/usr/bin/python
import re
import sys
def removeComments(text):
""" remove c-style comments.
text: blob of text with comments (can include newlines)
returns: text with comments removed
"""
pattern = r"""
@maestrow
maestrow / repository.md
Last active May 1, 2024 06:26
Паттерн репозиторий

Паттерн репозиторий

Репозиторий - это слой абстракции, инкапсулирующий в себе всё, что относится к способу хранения данных. Назначение: Разделение бизнес-логики от деталей реализации слоя доступа к данным.

Паттерн Репозиторий стал популярным благодаря DDD (Domain Driven Design). В противоположность к Database Driven Design в DDD разработка начинается с проектирования бизнес логики, принимая во внимание только особенности предметной области и игнорируя все, что связано с особенностями базы данных или других способов хранения данных. Способ хранения бизнес объектов реализуется во вторую очередь.

Применение данного паттерна не предполагает создание только одного объекта репозитория во всем приложении. Хорошей практикой считается создание отдельных репозиториев для каждого бизнес-объекта или контекста, например: OrdersRepository, UsersRepository, AdminRepository.

Пример