Рубрика «Программирование» - 929

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

Решил написать статью, о том, как сделать выгрузку данных в Excel файл по шаблону и считывать данные из Excel.
Началось всё с того, что на работе, дали указание, уйти от MS Office, на бесплатные аналоги.
У нас уже была система выгрузки, основанная на библиотеке “Microsoft.Office. Interop.Excel” и много готовых шаблонов, для выгрузки тех или иных отчётов.
Поэтому надо было найти бесплатную библиотеку, работающую с офисом. И сделать так, чтоб выгрузка работала по той же системе, что и раньше. Ибо переделывать все шаблоны и структуру, не хотелось.
Вот я и наткнулся на OpenXML. И думал, сейчас по быстрому найду решение в интернете и всё готово (т.к. на это было выделено мало времени). Но подходящего решения так и не нашёл, поэтому и решил написать эту статью, для тех у кого будет, такая же проблема.
Саму библиотеку, можно скачать бесплатно с сайта Micrisoft (я использовал в проекте OpenXML sdk 2.5 “ OpenXMLSDKV25.msi ”)
здесь.
После скачивания “OpenXMLSDKV25.msi ”, устанавливаем и заходим в папку
“C:Program FilesOpen XML SDKV2.5lib” там лежит библиотека, которая нам понадобится, мы её подключим к проекту (ниже будет описано, как).
Проект был написан на Visual Studio 2010 (Framework 4.0).
Ниже пример шаблона (сделан для теста) “C:Templatestemplate.xlsx”.
Читать полностью »

Java Junior за 30 часов. Интенсив

Здравствуйте. Меня зовут Кислин Григорий, в начале ноября в Санкт-Петербурге был первый выпуск разработанного мной обучающего семинара Java. Базовый курс который сейчас планируется переименовать в «Java Junior. Интенсив» для более точного позиционирования. Хочу поделиться с вами полученным опытом на тему обучения Java и трудоустройства на позицию Java разработчика.

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

Именно таким вопросом я задался сегодня утром, придя на работу. Вроде бы все признаки программиста есть: код пишу уже не первый год, за плечами не один проект (как провальные так и успешные), разбираюсь в структурах данных, алгоритмах и их оценке, знаю, как работают сети и сам компьютер вплоть до железного уровня, знаю и использовал скрам, канбан и иже с ними. Честно ходил на конференции послушать, а так же честно выступить. С огоньком в глазах читал лекции студентам и рассказывал какого это быть программистом. Многие из них пошли на работу программистами, самых толковых я забирал себе в команду. Читал тренинги по паттернам, JavaScript и .NET, проводил хакатон, участвовал в хакатоне, и радовался как ребенок от этих самых хакатонов.
Читать полностью »

Много раз уже просили написать статью о том, как в приложении реализовать платное отключение рекламы. По In-app уже были статьи на хабре. Правда, они старую версию API рассматривали. В принципе, новая версия не особо то и отличается от старой. Была похожая статья, но там больше именно про отображение рекламы рассказывалось, а второй части статьи мы так и не увидели. Как оказалось, многим до сих пор интересен этот вопрос, решил написать как это реализовать в своём приложении.
Читать полностью »

Введение

Уже долгое время не пишу статьи о разработке, хотя сам процесс написания мне очень нравится и позволяет привести мысли в порядок.

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

В этот раз речь пойдет о создании кроссплатформенных приложений с плагинами на C++ с использованием библиотеки wxWidgets. Рассматриваться будут операционные системы Windows, Linux и OS X, как наиболее популярные.

Как обычно, первая часть будет обзорной, для того, чтобы снизить порог входа для читателей. Кому-то информация из первой части покажется очевидной (особенно то, что касается инструментария), но, все же, я считаю ее необходимой, ибо для новичков информация из первой части позволит с минимальными усилиями организовать процесс разработки.
Дальше — поэтапный разбор кода тестового приложения с пояснениями.
Читать полностью »

В ходе работы я часто пользуюсь Pastebin, чтобы делиться отрывками кода или целыми скриптами. И поскольку от сервиса всегда нужно было лишь одно — получить ссылку на код, возникла идея создать более простой и минималистичный аналог Pastebin. В результате появился Codeo.

codeo

Достаточно ввести или вставить код в текстовое поле, как ссылка на него тут же появится прямо в адресной строке. А подсветка синтаксиса применяется сразу же после выбора языка программирования.

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

Разработка кроссплатформенных мобильных приложений в DelphiЧасть #1
Часть #2
Часть #3
Часть #4

В предыдущей части цикла мы более детально познакомились с принципами работы механизма связывания объектов LiveBinding на основе выражений. Благодаря возможностям подсистемы Visual LiveBinding разработчик избавлен от необходимости программировать эти выражения вручную. Сегодня мы продолжим разработку нашего приложения и познакомимся с новыми приемами работы с базами данных в FireMonkey с использованием FireDAC и LiveBinding.

В модуле данных (DataModule) создадим еще один набор данных с помощью компонента TFDTable. Свяжем его с таблицей tblIngredientes. Назовем его FDTIngredientes. По аналогии с предыдущими наборами данных, создадим список полей. Внесем изменения в процедуру ConnectToDB.

function TDM.ConnectToDB: Boolean;
begin
  try
    FDConnection1.Connected := True; // Устанавливаем соединение
    FDTRecipe.Open; // Открываем таблицу рецептов
    FDTUnits.Open; // Открываем единиц измерения
    FDTFoodstuff.Open; // Открываем продуктов
    FDTIngredientes.Open; // Открываем ингредиентов
  except
// Обработчик исключений....
  end;
  Result := FDConnection1.Connected;
end;

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

Что такое IT в крупном инвестиционном банке

Поиграем в ассоциации. IT в громадном инвестиционном банке – что приходит на ум? Строгий контроль над процессом разработки? Куча умных людей, знающих чем фьючерсы отличаются от форвардов? Команды, с легкостью пишущие многопоточный и защищённый код? Или, может быть, месье – пессимист и думает, что «там все как у всех»?

Я последние четыре года проработал на банки. Один год на Credit Suisse, офшорно из России с командировками в Лондонский офис, и 3 года – на Citigroup, живя в Нью-Йорке. И вот что я вам скажу: IT в банках – это интеллектуальное гетто, со всеми своими минусами и…минусами. Там встречаются очень умные ребята, крутые команды, но их значительно меньше чем в среднем по индустрии, а основная же масса работников – это зомби, производящие очень плохой код и затем костыли и припарки к нему.

Как же так получилось? Давайте разбираться. План простой: начнем с очевидных вещей, которые так сильно выделяют финансовую индустрию от всех других, и посмотрим, к чему это привело в итоге.

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

Покопался я ещё в своих старых и не очень проектах и нашёл одну интересную программку. Она ищет RSS ссылки новостных сайтов. Задача которая стояла — это найти как можно больше новостных RSS лент и собрать их всех в одну базу.

Когда встал вопрос о том как искать новостные сайты, пришла мысль о использовании сервиса new.google.com. От туда можно выдёргивать ссылки на новостные сайты, к тому же они постоянно добавляются и отсортированы по регионам, темам и т.д. Осталось пройтись по всем разделам news.google.com, выдернуть ссылки новостных сайтов, а затем найти все RSS каждого из них.
Читать полностью »


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