Якщо прийняти за істину те, що «Відкритість ~ Visibility» і «Відстежуваність ~ Controllability», то можна посилатися на статтю Bret Pettichord «Design for Testability» ( goo.gl/ESfBRD ), а якій показано, як ці властивості коду корелюють з тим, наскільки він придатний до тестування.
Экстремальное Программирование назвали так не от того, что его практикующие ведут себя как ужаленные (aka «ковбойский багфикс на продакшне»), а потому, что техники из которых эта практика состоит в известном смысле доведены до крайности:
— программирование в паре может быть полезным — давайте делать это постоянно (Pair programming);
— модульное тестирование доказало свою эффективность — давайте писать тесты до кода и в больших кол-вах (TDD);
— частые релизы нравятся клиентам и способствуют выявлению проблем интеграции — давайте интегрироваться постоянно (CI).
Думаю, поиск ответа на вопрос далее должен вестись в контексте DDT ( en.m.wikipedia.org/wiki/Data-driven_testing ).
Вроде как нужен: jobs.dou.ua/.../samsung/vacancies/17478
Когда же надо обработать кучу данных один- два раза- обычно пишется код без оглядки на качество- гдавное получить результат в кратчайшие сроки.Не узагальнюйте, а натомість вказуйте, що то є особисто ваш підхід. Буде гарна репутація.
Мой опыт показывает, что ретрограды есть везде, в т.ч. и в IT.
Их критика методологий и авторитетов зачастую происходит из незнания и лени. Реже — из болезненной склонности искать серебряные пули.
Любой инструмент можно использовать неправильно, но правильное его использование практически всегда во благо.
а зачем слепо верить авторитетам?Мой опыт показывает, что как раз такой ход мыслей зачастую приводит к плачевным последствиям, а сами представители этим ещё и свою безграмотность оправдывают.
Чем отличается от Boost.Log?
Kinnarps
Так-то оно то так, но важно понимать, что жизненный опыт разных людей может сильно отличаться, как и их жизненные принципы, и приоритеты.
Если не синхронизироваться с окружением, рано или поздно оказываешься в изоляции. Эффект можно наблюдать каждый день: общество фрагментировано и разрознено.
Нежелание доносить свои мысли до оппонента может (!) являться проявлением безразличия или же защитной реакцией типичного представителя нашего фрагментированного общества.
Давайте не будем забивать друг на друга.
Согласен.
Причина в том, что концепция заголовочных файлов и файлов реализации в С++ провоцирует программиста делать приватные данные частью интерфейса класса, разместив их объявления в заголовочном файле.
Часто этого хочется избежать ради сокрытия деталей реализации и/или ускорения перекомпиляции. Тут-то PIMPL и приходит на помощь.
В случае с шаблонами классов (когда код не разносят по заголовочным файлам и файлам реализации) придумали аналогичный подход, в котором подробности реализации скрывают не физически (в компилируемой единице), а логически (в другом заголовочном файле и специальном пространстве имён detail).
Насколько мне известно, в Java для этих целей используются пакеты и механизм разграничения доступа к ним.
Та как-то не зависит от языкаТут пишут, что зависит: c2.com/cgi/wiki?PimplIdiom
Очередное подтверждение тезиса об одном из лейтсотивов ДОУ: dou.ua/...gn=digest-comments#695696
В С++ piml — крайне удобная и полезная вещь.
Речь не только библиотеках, но и о любом другом коде, который собираются развивать и поддерживать.
общаться как образованные интеллигентные люди, поэтому отвечать не будуА как же воспитательный процесс? Если мысли подобного рода не доносить до оппонента, то ВОЗ останется там, где застрял ещё очень надолго.
Вам никто ничего не должен.Это — один из лейтмотивов ДОУ. До тех пор, пока «цвет нации» будет исходить из подобных принципов, общество вцелом лучше жить не станет.
В таком случае «архитектура» задаст тестам тон.
Поддерживаю.
«[Пост-]советсткая модель образования», будучи социальным сервисом, заточена под работу с теми, кто выбирается живым из общей мясорубки, в то время как «западная модель», будучи бизнесом от и до, работает на обеспечение опимального качества образования для большинства обучающихся.