-
Уменьшение размеров JavaScript и CSS файлов.
В данном случае идет речь о минификации, т.е. например удалении лишних пробельных символов и комментариев. Часто используется при подготовки и развертывании систем готовых к промышленной эксплуатации. Конечно, также с целью экономии трафика имеет смысл включать GZIP compression в настройках сервер, но данная статья не об этом. Минификация – операция довольно рутинная и по-хорошему должна быть автоматизирована и встроена в процесс автоматической сборки. Тем не менее, иногда возникает необходимость сделать подобную минификацию кода в полевых условиях на сервере заказчика из командной строки.
-
Java. Примеры копирования файлов. Эволюция и революция.
Задачка копирование файлов в свое время была хорошим тестом для программистов. 1. Streams. До появления пакета NIO (New I/O, версия Java 1.4) многие использовали обычные потоки. public static void copy(File source, File dest) throws IOException { FileInputStream is = new FileInputStream(source); try { FileOutputStream os = new FileOutputStream(dest); try { byte[] buffer = new byte[4096]; int length; while ((length = is.read(buffer)) > 0) { os.write(buffer, 0, length); } } finally { os.close(); } } finally { is.close(); } } 2. New I/O В 2000-ном году появился пакет java.nio. Акроним NIO означает New I/O (новый ввод/ввывод). Отчасти я согласен с мнением,…
-
Сколько стоит талант программиста
Давно уже ничего не писал на общие темы — о выборе профессии, жизненном пути или поиске предназначения. Последний раз подобных тем касался почти три года назад. Прежде чем начать изложение, хотел сообщить, что я осознаю всю нестрогость моих расчетов и надеюсь никто не станет воспринимать приведенные ниже доводы буквально! Теперь можно приступать. Думаю многие знают о происхождении слова талант. Если кто не знает и есть желание подробно изучить этот вопрос, то привожу ссылку на соответствующую статью в википедии. В кратком изложении вся история с талантом выглядит следующим образом. Талант, в современном понимании, это определённые способности, которые раскрываются с приобретением навыка…
android (11) blog (2) coworking (3) database (5) dce vm (1) design (2) design pattern (2) excel (1) gradle (1) groovy (1) gwt (3) gwt-ext (2) hibernate (2) image (3) Jar (1) Java (79) JavaScript (4) json (1) lambda (1) linux (6) maven (6) multimedia (2) mustache (1) mysql (4) netbeans (10) pdf (1) rdf (2) rmi (1) Scala (17) security (1) svg (1) svn (4) template system (1) Tomcat (4) tv (1) uml (9) web (1) xml (1) архитектор (3) дизайн (1) комикс (1) компьютер (1) места (2) программирование (59) работа (7)