Pull to refresh
51
0.1
Дмитрий @bogolt

User

Send message
ага а потом пули станут самообучающимися, создадут свою цивилизацию, интернет, хабрахабр, и будут долго думать в чем их предназначение в этом мире.
кроме того такой стиль кодирования уменьшает вложенность и код выглядит проще
сравните

void f()
{
if(ok1)
{
do1();
if(ok2)
{
// а вот тут собственно код вашей фукнции - уже третий уровень вложенности
}
else
return -2;
}
else
return -1;
}

void f()
{
// проверим все условия
if(!ok1)
return -1;
do1();
if(!ok2)
return -2;
// теперь все гарантированно хорошо, можно сделать то что мы намеревались
// и никаких лишних {} и отступов
}

для себя вывел простое правило. Нельзя подсадить человека на систему если ты с пеной у рта доказываешь какая она хорошая и свободная. А вот после того как для себя сформулировал нечто вроде «ну линукс тоже не без недостатков, но для меня подходит больше...» — то вполне можно вести логичные с людьми беседы.
а если в папке меньше трех символов?
Couldn't find any package whose name or description matched "zbot"
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.


дяденька вы меня обманываете =((
согласен с вами. Основное значение имеет та группа людей с которыми вы непосредственно работаете. И все-же…
И всеже я сторонник малых компаний.

Работал в компании где было более ста человек. Работал в компании из десяти человек включая директора — владельца компании.

Разница разительная. В малых компаниях работа движется быстрее. Изменения вносяться легко. Вчера вы писали одну программу, сегодня начальник пообщался с клиентами и решили немного изменить курс. Еще неделя — и вы уже забыли про старую программу и полным ходом пишите новую.

Никаких левых людей. В маленьких фирмах они долго не задерживаются. На течении шести месяцев после создания фирмы — из нее ушли все те люди, у которых было мало работы, или которые чувствовали что их работа не особо нужна. Через год — у нас был собранный коллектив из 5ти программистов, девушки бухгалтера-секретарши занимавшейся всей бумажной волокитой, девушки-веб-опитмизатора+ генератра идей + занимавшейся поиском клиентов и директора фирмы, собственно двигавшего все дело вперед. Он писал код, настраивал сервера, мотался на встречи с клиентами, оценивал нашу работу — словом был везде и во всем.

Привыкнув к такому темпу работы, к полной прозрачности, к дружескому отношению ( а как по-другому сидя в крохотном офисе, где все друг друга видят? ) я уже не смог работать в крупной фирме. Стало скучно. Понял что тут меня уже не любят и не ценят. Понял что тут мне легко найдут замену, и что лично я всем до фени. Понял что тут хороший код не нужен — тут важны уже наработанные клиенты. Понял что тут ценней бумажки а не люди.
если вы еще дополните это фукнциями исправления читателями текста ( бывают же ошибки у авторов ) — то цены бы сервису не было. Вики для книг =)
естественно люди читающие ту же книгу — получают пропатченные варианты
воин побеждает не единым усилем но постоянным движением к цели. (с) К. Кастанеда. Такчто не рвите себе когти. Постепенно спокойно. Разрешите себе побездельничать а потом плавно начинайте раскручивать ритм все быстрее и быстрее
2.1 No good stable standardized API for developing GUI applications (like Win32 API). Both GTK and Qt are very unstable and often break backwards compatibility.
13. A very bad backwards and forward compatibility.
13.1 Old applications rarely work in new Linux distros…

бред полнейший. Во-первых назвать WinAPI хорошим АПИ. Во-вторых говорить про обратную совместимость. В линуксе не нужна бинарная обратная совместимость, потому что доступны исходники софта. Библиотеки часто оставлют старые фукнции для обратной совместимости. И наконец если программа кому-то нужна, то найдется тот кто приведет ее код в соотвествие с последними интерфейсами библиотек.
в си++ такие баги обычно вызваны проблемами с памятью которые могут проявиться а могут и не проявиться.
к примеру
bool b; в большистве случаев будет true но в одном из 255 будет false;
добавили в код новую переменную. Компилятор по-другому расположил данные, и тут ваша b становится false.
жить в стране где не бывает осени… я бы не выдержал.
а еще можно делать так

class A
{
void f(int);
};

void A::f(const int);

так как параметр передается по значению то такой код корректен. В результате мы получаем простую и легкочитаемую запись в заголовке — а в теле функции страхуем себя от случайного изменения значения переменной.

Далее.
Если вы хотите объявить const поле класса, то инициализировать его обязательно списком инициализации ( так же как и ссылки )

class B
{
const int constValue;
public:
B(int&);
};

B::B()
:constValue(33)
{}

в противном случае если вы попробете сделать это в теле конструктора — получите ошибку.
В данном случае случше лучше всего руководствоваться следующим примером

аналог инициализации в теле конструктора ( между {} )
int x;
x=5;

аналог инициализации списоком инициализации ( после :)
int x = 5;

именно поэтому для инициализации констант и ссылок в качестве полей класса подходит только список инициализации
у компа нет свободы выбора — у людей она есть
зато есть boost.asio который вроде как их использует
то что написали молодец. Уважаю. Хочу показать вам еще несколько недостатков вашей программы ( и то как ее можно улучшить ).

класс Answer
1. передача параметра по указателю — так как вам на самом деле нужна простая копия — проще передавать по констатной ссылке
Answer(const QString& s)

Далее. Внутри класс QString — умный указатель. Это значит что расходы на копирование объектов малы. Так-что в принципе можно передавать его по значению.

Вы создали три конструктора, когда хватило бы одного.
Answer(const QString& a="", bool c=false);
Answer::Answer(const QString& a, bool c)
:correct©, text(a){}

методы isCorrect() и getText() не меняют состояние объекта а значит могут быть сделаны константными
bool isCorrect() const;

так как поля correct и text после конструктора нигде не меняются — их тоже можно объявить константыми в объявлении класса: const boo correct;

в целом это все недостаточное знание языка, что надеюсь у вас ненадолго =)
кхе-кхе — вы попались в ловушку описанную автором поста — отвлечение внимания.
блин, чайник!!!
хм а почему бы ему временно не перевести дату компа? =))
именно так я и сказал начальству когда меня спрашивали далеко ли хочу идти. Тим-лид мой потолок. Потому что мне интересны проекты, программы и мои коллеги, а не сроки и клиенты.
спасибо, попробую

Information

Rating
2,638-th
Registered
Activity