Печально, что отсутствует упоминание инструмента openssl, а там, кстати говоря, есть целый блок команд для работы с x509. IMHO, это было бы лучше, чем пример на .net.
Морзе был наблюдательный. Однажды, сидя в бане:
-Два длинных, три коротких. Один длинный, еще один длинный, два коротких…
Так и изобрел азбуку. Морзе был очень наблюдательный.
Есть еще замечательный IntelliJ IDEA от того же самого JetBrains (есть и бесплатная версия, но не уверен, что оно там есть), для Java — тоже аннотации, которые спасают от ряда ситуаций, описанных в статье, хотя, конечно, не панацея. Плюс к этому можно обработать исходники в post-compile, добавив assert-подобные конструкции — всяко лучше, чем отхватить NPE.
В целом да, спасибо. Но, опять же повторюсь, я это поддерживаю отчасти — например, перестать щемить юзеров контента и провайдеров. Это в целом будет способствовать увеличению продаж, с этим я полностью солидарен хотя бы по собственной практике. Почти весь софт, который я купил, я до этого использовал нелегально. Мне нравится схема продаж вроде thankyou.ru, когда можно выплачивать любое вознаграждение автору, альбом скачивается бесплатно, это практически единственная музыка, за которую я заплатил. Но это работает только для годного контента. 70 лет — тоже, конечно, перебор. Но законодательство по факту должно быть — никакой анархии быть не может.
Ну с музыкой и фильмами вроде ясно, в какой-то момент они должны стать достоянием общественности. А софт, по-вашему, тоже?
Уточните, пожалуйста, В10.
Разве может быть крайний байт для адреса хоста быть нулем (в примере 10.0.1.0)? Мне всегда казалось, что это только для масок сетей.
1. Проблема Date не в deprecated-методах, а в том, что он mutable и дает соблазн изменить объект, передаваемый в аргументе. Здесь, как правильно заметил автор, пригодится joda. Если посмотреть исходники конструктора Date(), то там всего лишь вызов currentTimeMillis(). Если хотите оптимизировать такой код и вызовов действительно много — вынесите за скобки вызов currentTimeMillis (он по какой-то неведомой причине не такой уж и быстрый), сравнивайте long'и.
2. Про Not Null — сам по себе метод весьма странный, так вообще не стоит писать. А еще есть паттерны immutable и null object (не путать с null).
3. В блоке про Regexp, по всей видимости, после правки стоит убрать упоминание ThreadLocal'а.
4. Пример про truncateToHours по неясной причине просто дату заменяют на дату UTC. А вообще это делается проще: new Date(date.getMillis() / 3600000 * 3600000) (если есть уверенность, что мы работаем в часовом поясе, кратном одному часу, что характерно для большинства задач).
5. Про хеш-коды тоже не согласен. Опять же есть паттерн immutable, особенно важный для объектов, которые кладутся в Set (Map), там в качестве оптимизации можно сделать кеширование hashCode, как это сделано, например, в классе String. А использование HashCodeBuilder — личный выбор разработчика, лишь бы equals->hashCode контракт был сохранен.
P.S. Мне не хватает кармы, но, простите, я бы за статью влепил бы минус.
Рискую быть заминусованным, но все же.
Объясните мне популярно проблему с копирайтом.
Лично я считаю, что бороться нужно с патентными троллями и с теми, кто нарушая чужие авторские права, пытается на этом получить коммерческую выгоду. Интернет-провайдеров и юзеров контента (только частных лиц!), по-хорошему, прессовать не стоит.
Также, конечно, нужно не доводить до абсурда патентное законодательство вроде патентования скругленного прямоугольника.
Но если владелец контента хочет продавать его за деньги, а не раздавать бесплатно, его право должно быть защищено законом, в том числе международным правом. Иначе это очень сильно подрывает бизнес, основанный на технологиях и интеллектуальной собственности, как software, киноиндустрия, музыкальный бизнес и прочее.
Никогда не понимал людей, которые недовольны ценами на контент или наличием рекламы в телеэфире. Как правило так рассуждают люди, которые ничего ценного не сделали, даже банальной статьи в википедии, не говоря уже о более сложных вещах. Те же телевизионные проекты требуют колоссальных инвестиций и много мифических человеко-часов и сделаны с единственной целью — получение коммерческой выгоды.
Всегда есть альтернатива. Бесплатный софт, реклама и пр.
-Два длинных, три коротких. Один длинный, еще один длинный, два коротких…
Так и изобрел азбуку. Морзе был очень наблюдательный.
(с) Городок
Transformer revengeOfTheFallen;
и аннотация @Workaround
Ну с музыкой и фильмами вроде ясно, в какой-то момент они должны стать достоянием общественности. А софт, по-вашему, тоже?
Разве может быть крайний байт для адреса хоста быть нулем (в примере 10.0.1.0)? Мне всегда казалось, что это только для масок сетей.
2. Про Not Null — сам по себе метод весьма странный, так вообще не стоит писать. А еще есть паттерны immutable и null object (не путать с null).
3. В блоке про Regexp, по всей видимости, после правки стоит убрать упоминание ThreadLocal'а.
4. Пример про truncateToHours по неясной причине просто дату заменяют на дату UTC. А вообще это делается проще: new Date(date.getMillis() / 3600000 * 3600000) (если есть уверенность, что мы работаем в часовом поясе, кратном одному часу, что характерно для большинства задач).
5. Про хеш-коды тоже не согласен. Опять же есть паттерн immutable, особенно важный для объектов, которые кладутся в Set (Map), там в качестве оптимизации можно сделать кеширование hashCode, как это сделано, например, в классе String. А использование HashCodeBuilder — личный выбор разработчика, лишь бы equals->hashCode контракт был сохранен.
P.S. Мне не хватает кармы, но, простите, я бы за статью влепил бы минус.
2. Подключается профилировщик
3. ??????
4. PROFIT
Объясните мне популярно проблему с копирайтом.
Лично я считаю, что бороться нужно с патентными троллями и с теми, кто нарушая чужие авторские права, пытается на этом получить коммерческую выгоду. Интернет-провайдеров и юзеров контента (только частных лиц!), по-хорошему, прессовать не стоит.
Также, конечно, нужно не доводить до абсурда патентное законодательство вроде патентования скругленного прямоугольника.
Но если владелец контента хочет продавать его за деньги, а не раздавать бесплатно, его право должно быть защищено законом, в том числе международным правом. Иначе это очень сильно подрывает бизнес, основанный на технологиях и интеллектуальной собственности, как software, киноиндустрия, музыкальный бизнес и прочее.
Никогда не понимал людей, которые недовольны ценами на контент или наличием рекламы в телеэфире. Как правило так рассуждают люди, которые ничего ценного не сделали, даже банальной статьи в википедии, не говоря уже о более сложных вещах. Те же телевизионные проекты требуют колоссальных инвестиций и много мифических человеко-часов и сделаны с единственной целью — получение коммерческой выгоды.
Всегда есть альтернатива. Бесплатный софт, реклама и пр.