Рубрика «разработка» - 369

в 13:11, , рубрики: netbeans, php, разработка, метки:

NetBeans tips & tricks
Собрался духом и таки описал свой почти 3-х летний опыт использования NetBeans для web-разработки. Статья получилось обширной, и, надеюсь полезной.

Большинство разработчиков проводят львиную часть своего времени в среде разработки. Но далеко не все используют хотя бы половину возможностей, которые есть в IDE, тем самым делая свою работу местами скучной, монотонной, медленной… Не, это не наш путь! Свой основной рабочий инструмент нужно использовать на полную, выжимать из него максимум, и всё самое неинтересное, все часто повторяющиеся действия перекидывать на плечи программы.

Читать полностью »

Здравствуйте дорогие читатели и программисты!

Должен предупредить, что мой сегодняшний пост будет больше похожим на вопрос, чем на статью. Целью поста является поиск единомышленников, увлеченных азартом людей, желающих создавать качественные и конкурентоспособные приложения. Начну я из далека, налью немого воды, чтобы пост был похожим на что-то, что не сразу удаляют с хабра.

Многие годы я мечтал и продолжаю мечтать до сих пор создавать качественные приложения. Каждый раз, когда я начинал писать свою новую программу, я был на 100% убежден, что это будет самая лучшая программа в своем роде. Начало любого приложения было воодушевляющим, восхитительным и внушающим надежды на большие перспективы. В такие дни я был погружен в работу с головой, забывая обо всем на свете. Каждый день появлялись новые функции, применялись и новые удачные решения, всё сулило небывалый прогресс и золотые горы, если бы все продолжалось в том же темпе. Хотелось мысленно продлить этот график роста, и казалось, ничего не могло ему помешать. Думаю у каждого из нас такое бывало. Читать полностью »

image

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

Задача

Первичные требования были такими:
В сложном стилизованном документе doc или docx вывести нужную информацию в помеченных местах.

В дальнейшем они были уточнены и расширены:

  • В сложном стилизованном документе docx вывести данные в помеченных местах.
  • Разметка вывода данных должна быть похожа на скриптлеты: ${}, <%%>, <%=%>.
  • Данными для вывода могут быть объект. Нужна возможность обращения к полям.
  • Для вывода использовать один из скриптовых языков: Groovy, JavaScript.
  • Нужно иметь возможность выводить списки объектов в таблицы, в каждой ячейке отображая поля.

Имеющиеся решения

Оказалось, что имеющиеся в области продукты (я говорю про платформу Java), не решают поставленную задачу. Ниже краткий обзор продуктов:

Jasper reports

В качестве шаблона использует файл xml-разметки *.jrxml. Файл разметки документа + данные (как из БД, так и Map параметров) отдаются процессору, который формирует любой из следующих форматов: PDF, XML, HTML, CSV, XLS, RTF, TXT.
Не устроило:

  • Это не WYSIWYG, даже при наличии iReport — визуального средства формирования jrxml-файлов.
  • Надо хорошо изучить JasperReports API, чтобы создать и стилизовать сложный шаблон.
  • Не выводит в нужном формате. Можно и PDF, но хотелось бы иметь возможность потом поредактировать выходной документ.

Читать полностью »

В ответ на недавний пост про BusyIndicator решил поделиться своим опытом/виденьем данной проблемы. В статье представлена, на мой взгляд, более простая реализация индикатора занятости контрола. Сейчас любой может воспользоваться готовыми продуктами от маститых девелоперских контор, но проблема «Дырявой Абстракции» при этом становится весьма актуальной. Использование готовых индикаторов противоестественным для них образом неминуемо приводит к плачевным результатам. Поэтому очень важно представлять «как это работает».
Читать полностью »

Разработчики поисковиков типа Google/Яндекс и разработчики инструментов статического анализа кода решают в каком-то смысле очень похожую задачу. И те, и другие должны предоставить пользователю некоторую выборку с ресурсами, которые «отвечают» желаниям пользователя. Нет, конечно, в идеале разработчики поисковиков хотели бы ограничиться кнопкой «Мне повезет!» (I'm Feeling Lucky). А разработчики инструментов анализа кода хотят выдавать только список реальных ошибок в коде. Но реальность как всегда накладывает ограничения. Хотите узнать, как мы сражаемся с жестокой реальностью при разработке PVS-Studio?

Читать полностью »

Unity — выбираем, какой массив использоватьДля тех, кто сталкивался с Unity, — не секрет, что эта платформа предоставляет большое количество разнообразных массивов — аж 5 штук (для JS и того больше — 6!). Так что же выбрать и как не запутаться в этом многообразии?

Начну — с конца. Сразу же приведу данные собранные в табличку.

Нетипизованный Типизованный
Доступ по индексу,
фиксированная длина
- встроенный массив
(built-in array)
Доступ по индексу,
динамический размер
ArrayList
или Javascript Array
List
Доступ по ключу Hashtable Dictionary

А теперь — давайте поговорим о каждом в отдельности…
Читать полностью »

Знаете, я ж могу нажать её.
Не просто нажать, я могу нажать в самый неподходящий момент. Я могу нажать её в середине процесса копирования большого файла, сразу после того, как запустится второй поток.
Читать полностью »

Сегодня я хочу поделиться с уважаемым читателим своей небольшой коллекцией ссылок, по которым можно перейти на сайты, предлагающих скидки на популярный софт, книги, видео-уроки итд. Если у вас есть чем его дополнить — присылайте информацию и я постараюсь максимально оперативно опубликовать ее.
Читать полностью »

Данная статья является продолжением статьи Автоматический BusyIndicator для асинхронных операций и не только.

Читать полностью »

Использование такого компонента как BusyIndicator привнесит в наше приложение приятные (индикация процесса) и полезные (блокировка элемента управления) качества. Однако до последнего времени я редко использовал его, т.к. при асинхронном получении источника данных приходилось постоянно писать дополнительный код для включения/выключения. При синхронной работе ситуация вроде как упрощается, но использование MVVM-модели всё-равно требует дополнительных телодвижений. Особенно, если BusyIndicator добавляется в самом конце разработки формы.

Поэтому, я решил максимально автоматизировать этот процесс, чтобы мне не приходилось писать ни строчки кода. Итак:
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js