Как писать? private final или просто private? Многие среды разработки называют private final – избыточной конструкцией, но код при этом остается компилируемым. Почему? Что вводит в заблуждение? Что же вводит в заблуждение тех, кто применяет конструкцию private final? Во первых – отсутствие синтаксической ошибки! Компилятор понимает эту конструкцию. Во-вторых знание – того, что final сокращает ..

Read more

Любимые задачки по SQL, связь многие ко многим между таблицами и JOIN запрос на три таблицы Довольно распространенной задачкой на знание SQL, встречающейся на собеседованиях(на вакансии любых программистов), является задачка на создание связи типа Многие-ко-Многим. (Задачку на связь один-ко-многим и теоретическую основу я раскрыл в предыдущей статье) Условие примерно такое: есть две таблицы, например, таблица ..

Read more

Соединения таблиц(JOINы) и любимая задачка на собеседовании Соединения бывают: естественные и уточненные, а также внутренние, внешние и полные. Уточненное соединение В таком соединении таблиц используется либо фраза ON, либо фраза USING. Синтаксис уточненного соединения.

Естественное соединение Осуществляется по равенству всех одноименных пар таблиц Перекрестное соединение(CROSS JOIN) TableName CROSS JOIN Table2Name – перекрестное соединение, результат ..

Read more

Задачка по реализации связи один-ко-многим между таблицами.(Тема: один-ко-многим.) Часто на собеседовании просят нарисовать пару таблиц к базе данных, с простейшей связью между ними. И написать соответствующие запросы. Однако, не всегда у тех, для кого SQL не является основным направлением, остаются в голове некоторые существенные знания. Попробуем же освежить в голове эти тривиальные вещи. Есть две ..

Read more

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

однако, ОПА!!! получим ошибку,

потому что, генерация уникального ..

Read more

источник RIGHT и FULL OUTER JOIN: LEFT OUTER JOIN реализован, но не RIGHT OUTER JOIN или FULL OUTER JOIN. Не полностью реализована поддержка ALTER TABLE: Только RENAME TABLE и ADD COLUMN варианты команды ALTER TABLE поддерживаются. Другие виды операций ALTER TABLE такие как DROP COLUMN, ALTER COLUMN, ADD CONSTRAINT, и так далее не реализованы. Не ..

Read more

Проблема то делать, если на один объект GUI(например View) нужно повесить несколько слушателей(Listener)? В Обычных, десктопных java-приложениях со стандартными пакетами, проблем с этим не возникает. Но, в Android, к сожалению, прикрепить к одной View больше одного слушателя – невозможно. Вернее, это возможно, но перехватывать события, будет лишь последний из прикрепленных к View слушателей. Так что ..

Read more

“[…]Почти каждому программисту, который только начинает разбираться с Gradle, говорят, что это всего-то “DSL на базе Groovy для сборки проектов[…]” “[…]Gradle пытается объединить в себе все плюсы Ant, Maven и Ivy. И представить то, что получилось, с помощью Groovy. Теперь вместо того, чтобы скрещивать Batch-скрипты, java и xml-файлы конфигурации, можно просто написать несколько строчек кода ..

Read more

оригинал Система сборки Android собирает ресурсы приложения и исходный код, упаковывает их в APK файлы, которые вы можете тестировать, разворачивать, подписывать и распространять. Android Studio использует Gradle, продвинутый инструмент сборки, для автоматизации и управления процессом сборки, тем самым позволяя определить гибкие настройки конфигурации под разные проекты. Каждая конфигурация сборки может определять собственный набор кода и ..

Read more

Эвристические правила и требования к именам, функциям, комментариям Имена Имена должны быть содержательными, не стоит боятся длинных имен Имена не должны быть слишком абстрактными Имена не должны быть похожи на служебные слова или имена классов, если они не имеют никаких связей(например не стоит называть класс CustomersList если он не является коллекцией) Имена должны быть точными, ..

Read more