*programming

analizer 05.10.2011 10:39

плюсач, продолжаю тему пимплов и прочего ускорения компиляции за счёт forward declarations. если функция-фабрика создаёт объект, то должна ли она возвращать умный указатель, или же достаточно простого пойнтера? как велит твоё чуйство прекрасного?

analizer 04.10.2011 03:54

forward декларации, иерархия наследования и ортогональность делают мои хидеры выглядеть как в джаве, это делает меня печальным Гвидо ван Россумом

analizer 03.10.2011 16:06

реквестую книгу Алана Карра «Как перестать хуярить ортогональность и начать писать хидеры длиннее десяти строк?»

analizer 29.09.2011 14:01

плюсоэстеты, каково ваше мнение о forward декларациях структур и классов? используете ли вы только в крайнем случае, или пихаете куда только можно, если это позволяет уменьшить количество #include'ов в заголовочных файлах? кто-нибудь сравнивал скорость компиляции толстых проектов для этих двух подходов?

analizer 28.09.2011 16:33

задумался сегодня днём над преимуществами регистрируемой фабрики над обычным указателем на создающую объект функцию, за 3 секунды не нашёл, сделал указатели на функцию. сейчас стал расширять функционал — осознал что не могу при регистрации забиндить разные доп. параметры к этому указателю.

analizer 25.09.2011 19:13

std::string value = std::string(another.c_str() + pos, n); vs std::string value = std::string(another, pos, n);?

analizer 24.09.2011 08:02

пстащ, вот тут https://github.com/analizer/ubermock/blo... в строках 12-15 сделан адовый хак — грузиться символ мембер-функции из либы, а затем вызывается с ручной передачей this. как это можно сделать работать более человечески?

analizer 24.09.2011 06:38

ещё никогда mock-объекты не были столь простыми и охуенными: https://github.com/analizer/ubermock
действующие лица:
launch — тестируемая либа
main — бинарь эту либу использующий
test — бинарь тестирующий тестируюему либу. т.к. я ленив, то состоит из того же исходника что и main
mock — либа, при линковке которой к ... more →

analizer 23.09.2011 16:43

Как? Как оно определяет когда нужно юзать глибцшный, а когда мою реализацию fopen?
user@host $ cat main.c
#include <stdio.h>
int main() {
printf("%p\n", fopen("",""));
return 0;
}
user@host $ gcc main.c
user@host $ ./a.out
(nil)
user@host $ cat fopen.c
#include <stdio.h>
FILE* fopen(const char* path, const char* ... more →

analizer 23.09.2011 03:47

АААРРГХ! Я осознал наконец, что же меня так тревожило всё это время!
Вот пишешь ты программы, проекты, с новыми модулями и функциями ты приобретаешь новый опыт, с чтением профессиональной литературы, общением с коллегами, собственными изысканиями, ты приобретаешь новые техники, инструменты в работе, меняется твой ... more →

analizer 22.09.2011 18:33

Знаешь, псач, я не умею достигать поставленной цели.
Сегодняшний вечер хотел посвятить продумыванию идеального окружения для тестирования (a.k.a. ubermock), а вместо этого страдал хуйнёй, жрал, ковырялся в gcov, запилил https://github.com/analizer/backtrace (удобный доступ к бэктрейсу) и малость допилил ... more →

analizer 22.09.2011 17:28

други, а все системы автоматической сборки в профайл-режиме -O3 выставляют или только bjam? я несколько заебался полчаса выискивать почему в дебаге 100% code coverage, а в profile — ≈72%

analizer 22.09.2011 14:16

а gcov умеет работать в инкрементальном режиме? т.е. один цппшник линкуется двумя бинарями. я запускаю оба, а затем смотрю суммарное его покрытие этими бинарями

analizer 22.09.2011 06:38

и ещё по теме вопрос. mock форсирует наличие vtbl, есть ли техники, которые позволят в релизном билде от этой vtbl избавиться? просто тянуть виртуальные вызовы в высоконагруженный класс только ради тестирования — перебор.

analizer 22.09.2011 06:32

почитал в педивикии про mock. получается что самый нижний уровень API им всё равно не протестировать? или есть возможность заmockить (через LD_PRELOAD скажем) определённые вызовы к glibc

analizer 22.09.2011 04:02

стрёмно, очень стрёмно осознавать, что, написав стройную и элегантную систему, нужно провести скальпелем по этой идиллии, чтобы иметь возможность покрыть её юнит-тестами.

analizer 20.09.2011 21:22

парсинг шестнадцатеричного числа из строки ещё никогда не был так удобен! не упустите свой шанс увеличить свой парсинг на 50 строк всего за один приём! копипастьте http://ideone.com/e4DyA !

analizer 20.09.2011 03:14

оказалось что в гцц нельзя вызвать препроцессорную директиву #line с аргументом большим 32767

analizer 19.09.2011 15:09

внезапно, похоже я отыскал что-то вкусненькое пожамкать^W почитать: http://www.ibm.com/developerworks/linux/...

analizer 15.09.2011 09:16

ящитаю, что у каждого STL-ного контейнера и вообще любого сложного объекта должна быть шаблонная policy, задающая реакцию на неправильное использование объекта, как-то: выход за границы вектора, обращение к front и back пустого контейнера, чтение из файла уже вернувшего EOF или просто неоткрытого. тогда можно будет ... more →

analizer 04.09.2011 09:21

пстач, твоё мнение, стоит UML времени потраченного на его изучение?

analizer 03.09.2011 21:29

Прочитал цикл статей «RValue References: Moving Forward» by Dave Abrahams. Осознал что я тупой хуй, говно, не_нужен™ и вообще вон-из-профессии.
Хорошей новостью является то что первая статья: http://cpp-next.com/archive/2009/08/want... касается исключительно C++03 и является настолько мощным ... more →

analizer 30.08.2011 15:55

есть прога, в какой то момент делает что-то вроде «fork() > 0 && exit(0);». вопрос: как поставить бряк на строчку следующую сразу после этой? так чтобы дебажить чайлда

analizer 08.07.2011 21:35

критерий годности программы: собрать на 64битной линухе, проверить. собрать на 32битной винде, скачать на линуху, проверить под вайном. именно так и постигается благодатность

analizer 09.06.2011 12:01

СТАВЬ inline @ ПОМОГАЙ КОМПИЛЯТОРУ

Do you really want to delete ?

*programming is used by:

Hirthwork McGillah

hirthwork

0xd34df00d

0xd34df00d

analizer

analizer

4DA

4da

Minoru

Minoru

gelraen

gelraen

kb

kb

lexszero

lexszero

Cthulhu

Cthulhu

RainerGomes

RainerGomes

dorfe

dorfe

beardog

beardog

16+

238328

Darth Bricktop

Like-all

Monah Tuk

hatred

jabber

jabber

lovesan

lovesan

Ky6uk

Ky6uk

Apepe Devil

Apepe

Octocat

octocat

Sectoid

Sectoid

asmer

asmer

chemikadze

chemikadze

Crazy_Owl

Crazy_Owl

Rejjin

Rejjin

Myp

Myp

der_FeniX

der_FeniX

ClanMax

ClanMax

ʎǝuoɥǝʞɐus

snakehoney

SetazeR

setazer

mva

mva

Michael Pogoda

MPogoda

K900

K900

anonymous_owl

anonymous_owl

Johan

johan

oberon86

oberon86

nstm0

nstm0

Softovick

Softovick

Amberize

Amberize

Kakadu

Kakadu

13oz

13oz

svtk

svtk

Marisa Waller

Marisa

Хотеть!

xotetb

sayafag

skyw00lf

skyw00lf

Amparo Dios

AmparoDios

Ствол

Dulo_T-34

Kirsche

Kirsche

DOMr

DOMr

nexeuse

nexeuse

Артс

arts

psymatic

psymatic

няша

generatorglukoff

Maxim Kirenenko

part1zano

taras

taras

ascrazy

ascrazy