Категория: Программирование

Что такое API? Объяснение интерфейсов прикладного программирования

API означает интерфейс прикладного программирования, концепция, которая применяется везде, от инструментов командной строки до корпоративного кода Java и веб-приложений Ruby on Rails. API - это способ программного взаимодействия с отдельным программным компонентом или ресурсом. Если вы не напишете каждую строчку кода с

Подробнее

Когда использовать абстрактный класс по сравнению с интерфейсом в C #

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

Подробнее

Что такое CI / CD? Объяснение непрерывной интеграции и непрерывной доставки

Непрерывная интеграция (CI) и непрерывная доставка (CD) воплощают в себе культуру, набор принципов работы и набор практик, которые позволяют командам разработчиков приложений более часто и надежно вносить изменения в код. Реализация также известна как конвейер CI / CD .  CI / CD - одна из лучших практик для реализации командами DevOps. Это также лучшая практика гибкой методологии, поскольку он

Подробнее

Что такое гибкая методология? Объяснение современной разработки программного обеспечения

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

Подробнее

Adobe Flash подошел к концу

Когда-то вездесущий Adobe Flash Player, среда выполнения на основе браузера для отображения мультимедийного контента в Интернете, подошла к концу, и компания выполнила окончательный запланированный выпуск технологии для всех регионов за пределами материкового Китая. Финальный выпуск был выпущен 8 декабря. Adobe больше не будет поддерживать Flash Player после этого месяца; Запуск Flash-контента в Flash Player будет заблокирован с 12 января 2021 г.  Adobe рекомендует вс

Подробнее

Что такое PaaS? Объяснение платформы как услуги

Платформа как услуга (PaaS) - это тип предложения облачных вычислений, в котором поставщик услуг предоставляет платформу клиентам, позволяя им разрабатывать, запускать и управлять бизнес-приложениями без необходимости создавать и поддерживать инфраструктуру, такую ​​как программное обеспечение процессы разработки обычно требуют. Поскольку архитектура PaaS скрывает базовую инфраструктуру из поля зрения разработчиков и других пользователей, модель аналогична концепциям бессерверных вычислений и функции как услуга (FaaS), в которых поставщик облачных услуг предоставляет и запускает сервер и управл

Подробнее

Что такое облачные вычисления? Все, что вам нужно знать сейчас

Облачные вычисления имеют два значения. Чаще всего речь идет об удаленном выполнении рабочих нагрузок через Интернет в центре обработки данных коммерческого поставщика, также известном как модель «общедоступного облака». Популярные предложения общедоступных облаков, такие как Amazon Web Services (AWS), CRM-система Salesforce и Microsoft Azure, все являются примерами этого знакомого понятия облачных вычислен

Подробнее

Что такое SaaS? Определение программного обеспечения как услуги

Одна из самых популярных форм облачных вычислений - это программное обеспечение как услуга (SaaS). Вот простое определение SaaS: модель распространения программного обеспечения, в которой поставщик услуг размещает приложения для клиентов и делает их доступными для этих клиентов через Интернет. SaaS - одна из трех основных категорий облачных сервисов, наряду с инфраструктурой как услугой (IaaS) и платформой как услугой (PaaS). Примеры SaaS Благодаря простоте доступа модель доставки программного обеспечения SaaS стала общей для

Подробнее

Что такое SQL? Lingua franca анализа данных

Сегодня язык структурированных запросов - это стандартное средство обработки и запроса данных в реляционных базах данных, хотя и с собственными расширениями среди продуктов. Простота и повсеместность SQL даже побудили создателей многих «NoSQL» или нереляционных хранилищ данных, таких как Hadoop, принять подмножества SQL

Подробнее

Выбор Java IDE

Обновлено: Декабрь 2018 . Каждому Java-разработчику нужен программный редактор или IDE, которые могут помочь в более грубых частях написания Java и использовании библиотек классов и фреймворков. Решение о том, какой редактор или IDE подойдет вам лучше всего, зависит от нескольких вещей, включая характер разрабатываемых проектов, вашу роль в

Подробнее

Что такое JSON? Лучший формат для обмена данными

Нотация объектов JavaScript - это текстовое представление структурированных данных без схемы, основанное на парах ключ-значение и упорядоченных списках. Хотя JSON является производным от JavaScript, он поддерживается либо изначально, либо через библиотеки на большинстве основных языков программирования. JSON обычно, но не исключительно, используется для обмена информацией между веб-клиентами и веб-серверами.  За последние 15 лет JSON стал повсеместным в Интернете. Сегодня это формат выбора почти для каждой общедоступной веб-службы

Подробнее

Обзор: 6 лучших IDE для JavaScript

Сегодня JavaScript используется для множества различных приложений. Чаще всего JavaScript работает с HTML5 и CSS для создания веб-интерфейсов. Но JavaScript также помогает создавать мобильные приложения, и он нашел важное место в серверной части в виде серверов Node.js. К счастью, инструменты разработки JavaScript - как редакторы, так и IDE - становятся все более актуальными для решения новых задач. Зачем использовать IDE вместо редактора? Основн

Подробнее

Обзор: 10 лучших редакторов JavaScript

Программисты на JavaScript могут выбирать из множества хороших инструментов - их слишком много, чтобы их отслеживать. В этой статье я обсуждаю 10 текстовых редакторов с хорошей поддержкой для разработки с использованием JavaScript, HTML5 и CSS, а также для документирования с помощью Markdown. Зачем использовать редактор для программирования на JavaScript вместо IDE? Одним словом: скорость. Существенное различие между редакторами и IDE заключается в том, что IDE могут отлаживать и иногда профилир

Подробнее

Как объединить данные в R с помощью R merge, dplyr или data.table

В R есть несколько быстрых и элегантных способов объединения фреймов данных по общему столбцу. Я хочу показать вам три из них: базовая merge()функция R , присоединиться к семейству функций dplyr и Синтаксис скобок data.table. Получить и импортировать данные В этом примере я буду использовать один из моих любимых демонстрационных наборов данных - время задержки рейсов от Бюро т

Подробнее

Передает ли Java по ссылке или по значению?

Многие языки программирования позволяют передавать параметры по ссылке или по значению . В Java мы можем передавать параметры только по значению . Это накладывает некоторые ограничения, а также вызывает вопросы. Например, если в методе изменяется значение параметра, что происходит со значением после выполнения метода? Вы также можете задаться вопросом, как Java управляет значениями

Подробнее

Что такое JPA? Введение в Java Persistence API

В качестве спецификации Java Persistence API касается персистентности , что в широком смысле означает любой механизм, с помощью которого объекты Java переживают процесс приложения, который их создал. Не все объекты Java необходимо сохранять, но большинство приложений сохраняют ключевые бизнес-объекты. Спецификация JPA позволяет вам определять,

Подробнее

Что такое JVM? Знакомство с виртуальной машиной Java

Виртуальная машина Java - это программа, предназначенная для выполнения других программ. Это простая идея, которая также является одним из лучших примеров кодирования кунг-фу . JVM нарушила статус-кво своего времени и сегодня продолжает поддерживать инновации в программировании. Для чего используется JVM JVM выполня

Подробнее

Что такое CUDA? Параллельное программирование для графических процессоров

CUDA - это платформа параллельных вычислений и модель программирования, разработанная Nvidia для общих вычислений на собственных графических процессорах (графических процессорах). CUDA позволяет разработчикам ускорять приложения с интенсивными вычислениями, используя мощность графических процессоров для параллелизируемой ч

Подробнее

Что такое JSP? Введение в JavaServer Pages

JavaServer Pages (JSP) - это стандартная технология Java, которая позволяет вам писать динамические, управляемые данными страницы для ваших веб-приложений Java. JSP построен на основе спецификации Java Servlet. Эти две технологии обычно работают вместе, особенно в старых веб-приложениях Java. С точки зрения кодирования наиболее очевидное различ

Подробнее

Что такое Дженкинс? CI-сервер объяснил

Jenkins предлагает простой способ настроить среду непрерывной интеграции или непрерывной доставки (CI / CD) практически для любой комбинации языков и репозиториев исходного кода с помощью конвейеров, а также автоматизировать другие рутинные задачи разработки. Хотя Jenkins не устраняет необходимости создавать сценарии для отдельных шагов, он дает вам более быстрый и надежный способ интеграции всей цепочки инструментов сборки, тестирования и развертывания, чем вы може

Подробнее

Серия руководств: Android Studio для начинающих

Полное руководство по Android Studio для новичков , от установки Android Studio до кодирования и отладки вашего первого приложения для Android. Включает советы по устранению неполадок для эмулятора устройства Android и исходный код для примера приложения Android. Васабии / Getty Images ЧАСТЬ 1:Установка + настройка Получите системные требования и инструкции по установке Android Studio 3.x и запуску вашего первого проекта Android. Вы

Подробнее

Android Studio для начинающих, Часть 1: Установка и настройка

Обновлено: январь 2020 г. Уже несколько лет становится ясно, что Android - это сила, с которой нужно считаться в сфере мобильных ОС. Эта технология на основе Java вызвала новую «золотую лихорадку», когда программисты соревнуются за деньги на своих мобильных приложениях. Вакансий на Android тоже много, о чем свидетельствует быстрый поиск работы с помощью Indeed.com. Чтобы добиться успеха, разработчикам Android необходимо хорошо разбираться в языке Java (или Kotlin), API And

Подробнее

Сервер приложений, веб-сервер: в чем разница?

23 августа 2002 г. В: В чем разница между сервером приложений и веб-сервером? А: Веб-сервер обрабатывает исключительно HTTP-запросы, тогда как сервер приложений обслуживает бизнес-логику для прикладных программ через любое количество протоколов. Разберем каждую подробнее. Веб-сервер Веб-сервер обрабатывает протокол HTTP. Когда веб-сервер получает HTTP-запрос, он отвечает HTTP-ответом, например, отправляя обратно HTML-страницу. Для о

Подробнее

Что такое JDBC? Введение в подключение к базе данных Java

JDBC (Java Database Connectivity) - это Java API, который управляет подключением к базе данных, выдачей запросов и команд и обработкой наборов результатов, полученных из базы данных. Выпущенный как часть JDK 1.1 в 1997 году, JDBC был одним из первых компонентов, разработанных для уровня сохраняемости Java. JDBC изначально задумывался как кл

Подробнее

Что такое Python? Мощное, интуитивно понятное программирование

Начиная с 1991 года, язык программирования Python считался средством заполнения пробелов, способом написания сценариев, которые «автоматизируют скучные вещи» (как сказано в одной популярной книге по изучению Python) или быстрого создания прототипов приложений, которые будут реализованы на других языках. . Однако за последние несколько лет Python стал первоклассным гражданином в области современной разработки программного обеспечения, управления инфраструктурой и анализа данных. Это больше не служебный язык для служебных помещений, а основная

Подробнее

Интерфейсы в Java

Интерфейсы Java отличаются от классов, и важно знать, как использовать их особые свойства в ваших программах Java. В этом руководстве представлены различия между классами и интерфейсами, а затем представлены примеры, демонстрирующие, как объявлять, реализовывать и расширять интерфейсы Java. Вы также узнаете, как интерфейс эволюционировал в Java 8 с добавлением стандартных и статических методов и в Java 9 с новыми частными методами. Эти дополнения делают интерфейсы более полезными для опытных разработчиков. К сожалению,

Подробнее

Что такое TensorFlow? Библиотека машинного обучения объяснила

Машинное обучение - сложная дисциплина. Но реализация моделей машинного обучения намного менее сложна и сложна, чем раньше, благодаря фреймворкам машинного обучения, таким как Google TensorFlow, которые упрощают процесс сбора данных, обучения моделей, обслуживания прогнозов и уточнения будущих результатов. TensorFlow - это библиотека с открытым исходным кодом для численных вычислений и крупномасштабного машинного обучения, созданная командой Google Brain. TensorFlow объединяет множество моделей и алгоритмов машинного обучения и глубокого обучени

Подробнее

Сортировка с помощью Comparable и Comparator в Java

Программистам часто требуется отсортировать элементы из базы данных в коллекцию, массив или карту. В Java мы можем реализовать любой алгоритм сортировки любого типа. Используя Comparableинтерфейс и compareTo()метод, мы можем сортировать, используя алфавитный порядок, Stringдлину, обратный алфавитный

Подробнее

Node.js против PHP: эпическая битва за мысли разработчиков

Это классический голливудский сюжет: битва двух старых друзей, которые разошлись. Часто трение начинается, когда один приятель вызывает интерес к тому, что всегда было невысказанной областью другого приятеля. В версии этого фильма, написанной на языке программирования, именно введение Node.js превращает дружеский щелчок в противостояние: PHP и JavaScript, два партнера, которые когд

Подробнее

Что такое Apache Spark? Платформа больших данных, сокрушившая Hadoop

Определение Apache Spark Apache Spark - это среда обработки данных, которая может быстро выполнять задачи обработки для очень больших наборов данных, а также может распределять задачи обработки данных между несколькими компьютерами, самостоятельно или в тандеме с другими инструментами распределенных вычислений. Эти два качества являются ключевыми в мирах больших данных и машинного обучения, которые требуют сосредоточения огромных вычислительных мощностей для обработки больших хранилищ данных. Spark также берет на себя часть бремени программирования, св

Подробнее

Что такое Котлин? Объяснение альтернативы Java

Kotlin - это универсальный бесплатный «прагматический» язык программирования с открытым исходным кодом, статически типизированный, изначально разработанный для JVM (виртуальная машина Java) и Android, который сочетает в себе функции объектно-ориентированного и функционального программирования. Он ориентирован на совместимость, безопасность, ясность и поддержку инструментов. Версии Kotlin, ориентированные на JavaScript ES5.1 и собственный код (с использованием LLVM) для ряда процессоров, также находятся в разработке. Kotlin

Подробнее

Что такое сервис-ориентированная архитектура?

Сервис-ориентированная архитектура (SOA) возникла в начале этого века как эволюция распределенных вычислений. До SOA сервисы понимались как конечный результат процесса разработки приложений. В SOA само приложение состоит из сервисов. Услуги могут быть предоставлены индивидуально или объединены как компоненты в более крупную, составную услугу. Сл

Подробнее

Что такое докер? Искра контейнерной революции

Docker - это программная платформа для создания приложений на основе контейнеров - небольших и легких сред выполнения, которые совместно используют ядро ​​операционной системы, но в остальном работают изолированно друг от друга. Хотя концепция контейнеров существует уже некоторое время, Docker, проект с открытым исходным кодом, запущенный в 2013 году, помог популяризировать эту технологию и способствовал  раз

Подробнее

Что такое JDK? Введение в Java Development Kit

Java Development Kit (JDK) является одним из трех основных технологических пакетов, используемых в программировании на Java, наряду с JVM (виртуальная машина Java) и JRE (среда выполнения Java). Важно различать эти три технологии, а также понимать, как они связаны: JVM - это компонент платформы Java, который в

Подробнее

Структуры данных и алгоритмы в Java, часть 1: Обзор

Программисты на Java используют структуры данных для хранения и организации данных, а мы используем алгоритмы для управления данными в этих структурах. Чем больше вы понимаете структуры данных и алгоритмы, а также то, как они работают вместе, тем эффективнее будут ваши программы Java. Это руководство запускает небольшую серию статей, посвященных структурам данных и алгоритмам. В части 1 вы узнаете, что такое структура данных и как классифицируются структуры данных. Вы также узнаете, что такое алгоритм, как пр

Подробнее

Что я узнал, играя жертву мошенников с Windows

«Я звоню тебе из Windows». Так начинается известная телефонная афера, когда человек звонит, якобы работающий техником службы поддержки, и пытается решить проблемы с вашим компьютером. Эти мошенники Windows подпитывают обеспокоенность людей по поводу утечки данных и кражи личных данных, чтобы заставить их установить вредоносное П

Подробнее

Программирование сокетов на Java: учебное пособие

Это руководство представляет собой введение в программирование сокетов на Java, начиная с простого примера клиент-сервер, демонстрирующего основные функции ввода-вывода Java. Вы познакомитесь как с исходным  java.io пакетом, так и с NIO, неблокирующими java.nioAPI-интерфейсами ввода- вывода ( ), предста

Подробнее

Сравнение объектов Java с помощью equals () и hashcode ()

В этом Java Challenger вы узнаете, как equals()и hashcode()комбинировать, чтобы сделать сравнение объектов эффективным и простым в ваших программах Java. Проще говоря, эти методы работают вместе, чтобы проверить, имеют ли два объекта одинаковые значения.   Без "" equals()и hashcode()нам пришлось бы создавать очень большие ifсравнения, сравнивая каждое поле объекта. Это сделало бы код действительно запутанным и трудным для

Подробнее

Java 101: Общие сведения о потоках Java, часть 1: Введение в потоки и исполняемые файлы

Эта статья - первая из четырех частей серии статей о Java 101, посвященных потокам Java. Хотя вы можете подумать, что многопоточность в Java будет сложной для понимания, я хочу показать вам, что потоки просты для понимания. В этой статье я познакомлю вас с потоками и исполняемыми файлами Java. В следующих статьях мы рассмотрим синхронизацию (с помощью блокировок), проблемы синхронизации

Подробнее

Лучший язык программирования для изучения сейчас

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

Подробнее

12 питонов на любой вкус

Выбирая Python для разработки программного обеспечения, вы выбираете большую языковую экосистему с множеством пакетов, охватывающих все виды программирования. Но в дополнение к библиотекам для всего, от разработки графического интерфейса до машинного обучения, вы также можете выбрать одну из нескольких сред выполнения Python - и некоторые из этих сред выполнения могут лучше подходить для вашего случая использования, чем другие. Вот краткий обзор дистрибутивов Python, от стандартной реализации (CPython) до версий, оптимизированных для скорости (PyPy), для особых случаев использования (Anaconda,

Подробнее

Visual Studio Code против Visual Studio: как выбрать

В течение десятилетий, когда я приходил на работу по утрам, я запускал Microsoft Visual Studio (или одну из ее предшественниц, например Visual C ++ или Visual InterDev), затем заваривал чай и, возможно, присутствовал на утреннем собрании, пока он проходил трудоемкий запуск. . Я бы держал IDE открытой весь день, пока проходил циклы разработки / тестирования / отладки, чтобы избежать очередной задержки запуска. Когда я работал над проектом C ++ с ~ 2 м

Подробнее

Как правильно установить Python

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

Подробнее

Как очистить личные данные с сайтов поиска людей

Неважно, чем вы занимаетесь в Интернете: Интернет знает о вас очень много, и эта информация находится на расстоянии одного щелчка мыши. Поищите на любом сайте поиска людей - Spokeo, PeekYou, Whitepages и т. Д. - и, скорее всего, вы найдете страницу со своим полным именем, датой рождения, именами членов семьи, текущим адресом и номером телефона. В

Подробнее

Что такое JSF? Представляем JavaServer Faces

JavaServer Faces (JSF) - это стандартная технология Java для создания компонентно-ориентированных веб-интерфейсов. Подобно JavaServer Pages (JSP), JSF обеспечивает доступ к данным и логике на стороне сервера. В отличие от JSP, который по сути представляет собой HTML-страницу, наделенную серверными возможностями, JSF - это XML-документ,

Подробнее

Что такое JRE? Введение в среду выполнения Java

Вместе Java Development Kit (JDK), виртуальная машина Java (JVM) и Java Runtime Environment (JRE) образуют мощную тройку компонентов платформы Java для разработки и выполнения приложений Java. Ранее я представил JDK и JVM. В этом кратком руководстве вы узнаете о JRE, среде выполнения для Java. С практической точки зрения среда выполне

Подробнее

Исключения в Java, часть 1: основы обработки исключений

Исключения Java - это типы библиотек и языковые функции, используемые для представления и устранения сбоев программы. Если вы хотели понять, как сбой представлен в исходном коде, вы попали в нужное место. В дополнение к обзору исключений Java, я познакомлю вас с функциями языка Java для создания объектов, проверки кода, который может дать сбой, обнаружения выброшенн

Подробнее

Машинное обучение для разработчиков Java, часть 1. Алгоритмы машинного обучения

Беспилотные автомобили, программное обеспечение для распознавания лиц и динамики с голосовым управлением - все это построено на технологиях и фреймворках машинного обучения - и это только первая волна. В течение следующего десятилетия новое поколение продуктов изменит наш мир, положив начало новым подходам к разработке программного обеспечения, а также к приложениям и

Подробнее

Что такое Tomcat? Исходный контейнер сервлетов Java

Apache Tomcat - это долговечный контейнер Java-сервлетов с открытым исходным кодом, который реализует несколько основных корпоративных спецификаций Java, а именно Java Servlet, JavaServer Pages (JSP) и API WebSockets. Tomcat, проект Apache Software Foundation, был впервые выпущен в 1998 году, всего через четыре года после появления са

Подробнее

Полиморфизм и наследование в Java

Согласно легенде Венкату Субраманиаму, полиморфизм - наиболее важное понятие в объектно-ориентированном программировании. Полиморфизм - или способность объекта выполнять специализированные действия в зависимости от его типа - это то, что делает код Java гибким. Такие шаблоны проектирования, как Command, Observer, Decorator, Strategy и многие другие, созданные Gang Of Four, используют ту или иную форму полиморфизма. Освоение этой концепции значительно улучшит вашу способност

Подробнее

Node.js против Java: эпическая битва за мысли разработчиков

1995 год был сумасшедшим временем в истории вычислительной техники. Сначала появилась Java, затем за ней последовал JavaScript. Имена делали их похожими на сиамских близнецов, только что отделившихся, но они не могли быть более разными. Один из них скомпилирован и статически типизирован; другой интерпретируется и динамически типизируется. Это только начало технических различий между этими двумя совершенно разным

Подробнее

Что такое LLVM? Сила Swift, Rust, Clang и др.

Новые языки и улучшения существующих быстро растут по всему ландшафту разработки. Rust от Mozilla, Swift от Apple, Kotlin от Jetbrains и многие другие языки предоставляют разработчикам новые возможности выбора скорости, безопасности, удобства, портативности и мощности. Почему сейчас? Одна из главных причин - новые инструменты для создания языков, в частности компиляторы. И главным из них является LLVM, проект с открытым исходным кодом, первоначально разраб

Подробнее

Наследование против состава: как выбрать

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

Подробнее

Изучение виртуальных и абстрактных методов в C #

Язык программирования C # обеспечивает поддержку как виртуальных, так и абстрактных методов, каждый из которых имеет определенные преимущества. Вы используете виртуальные методы для реализации позднего связывания, тогда как абстрактные методы позволяют вам заставить подклассы типа явно переопределять метод. В этом посте я расскажу о виртуальных и абстрактных методах и о том, когда их следует использовать. Виртуальный метод - это метод, который объявлен как виртуальный в базовом классе. Метод объявляется виртуальным путем указания ключевого слова virtual в сигнатуре

Подробнее

Что такое NoSQL? Базы данных для облачного будущего

Один из наиболее важных вариантов, который следует сделать при разработке приложения, - использовать ли базу данных SQL или NoSQL для хранения данных. Обычные базы данных SQL (т. Е. Реляционные) являются продуктом десятилетий развития технологий, передовой практики и реальных стресс-тестов. Они разработаны для н

Подробнее

Сохранение Java с JPA и Hibernate, Часть 1: Сущности и отношения

Java Persistence API (JPA) - это спецификация Java, которая устраняет разрыв между реляционными базами данных и объектно-ориентированным программированием. Это руководство из двух частей представляет JPA и объясняет, как объекты Java моделируются как сущности JPA, как определяются отношения между сущностями и как использовать JPA EntityManagerс шаблоном репозитория в ваших приложениях Java. Обратите внимание, что в этом руководстве в качестве поставщика JPA используется Hibernate. Большинство концепций можно распространить на другие структуры сохраняемости Java. Что такое JPA? См. «Что такое

Подробнее

Начните работу с лямбда-выражениями в Java

До Java SE 8 анонимные классы обычно использовались для передачи функций методу. Эта практика запутывала исходный код, что усложняло его понимание. Java 8 устранила эту проблему, добавив лямбды. В этом руководстве сначала представлена ​​функция языка лямбда, а затем приводится более подробное введение в функциональное программирование с испол

Подробнее

Go pro: руководство по PowerShell для опытных пользователей

Если вы боролись с Windows 10, вы, несомненно, слышали о PowerShell. Если вы недавно пытались сделать что-то необычное с Win7 / 8.1, возможно, вам подойдет и PowerShell. После многих лет использования командной строки Windows и смешанных пакетных файлов пришло время обратить ваше внимание на что-то более мощное, более адаптивное - лучшее. PowerShell - огромное дополнение к набору инструментов Windows, и, учитывая его масштабы, он может вызвать некоторый страх. Это язык сценариев, командная оболочка, воск для пола? Вам нужно связать командлет с созданным экземпляром к

Подробнее

Linux: Lubuntu лучше Xubuntu?

Lubuntu против Xubuntu Ubuntu имеет несколько разновидностей, включая Lubuntu и Xubuntu. Обе версии Ubuntu предлагают легкие рабочие столы, но какая из них лучше? Писатель из Linux и Ubuntu недавно взвесил плюсы и минусы Lubuntu и Xubuntu: На протяжении многих лет Lubuntu и Xubuntu были двумя популярными разновидностями, которые предоставили альтернативу многим людям, которые предпочли что-то отличное от ванильного Ubuntu с рабочим столом Unity. Lubuntu и Xubuntu были выбором энтузиастов и пользователей Linux, которые предпочли бы компактный или легкий дистрибутив Linux или тот, который обесп

Подробнее

Веб-сервисы в Java SE, часть 2: Создание веб-сервисов SOAP

JAX-WS поддерживает веб-службы на основе SOAP. В части 2 этой серии из четырех частей, посвященной веб-службам Java SE, определяется веб-служба преобразования единиц на основе SOAP, создается и затем проверяется эта веб-служба локально через упрощенный HTTP-сервер по умолчанию (обсуждается в части 1), интерпретируется документ WSDL службы. , и получает доступ к сервису из простого клиента. Определение веб-службы преобразования единиц измерения Веб-служба преобразования единиц измерения, которую я назвал UC, состоит из четырех функций для преобразования между сантиметрами и дюймами и меж

Подробнее

Почему Redis превосходит Memcached для кеширования

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

Подробнее

Как установить Siri на Android-устройство

Хотя я доволен своим телефоном Samsung Galaxy S II Android, у меня также есть плохой случай зависти Siri. Мне тоже нужен «личный помощник», который будет отвечать на запросы естественного языка, такие как «Перенести мою встречу с 3 на 4». И я уверен, что я не одинок, о чем свидетельствуют миллионы результатов поиска Google по запросу "Siri для Android". Можете ли вы создать впечатление, подобное Siri

Подробнее

Функциональное программирование для Java-разработчиков, часть 1

Java 8 познакомила разработчиков Java с функциональным программированием с помощью лямбда-выражений. Этот выпуск Java эффективно уведомил разработчиков о том, что уже недостаточно думать о программировании на Java только с императивной объектно-ориентированной точки зрения. Разработчик Java также должен уметь мыслить и кодировать, используя декларативную функциональную парадигму. В этом руководстве представлены основы функционального программирования. Я начну с терминологии, а затем углуб

Подробнее

Объяснение ассоциации, агрегирования и композиции в ООП

Унифицированный язык моделирования (UML) де-факто является стандартом для моделирования объектно-ориентированных систем. В UML существует пять различных типов отношений: ассоциация, агрегирование, композиция, зависимость и наследование. В этой статье мы обсудим первые три из этих концепций, оставив остальные в отдельном сообщении в блоге. Ассоциация в объектно-ориентированном программировании Ассоциация - это семантически слаба

Подробнее

Установка Oracle Java SE 11 в Ubuntu 18.04

Эта статья представляет собой краткое руководство для пользователей Ubuntu Linux, устанавливающих Java 11, текущую версию Java с долгосрочной поддержкой (LTS). Я кратко изложу аргументы в пользу переноса вашей кодовой базы на Java 11, а затем расскажу вам, как установить Oracle JDK 11 с помощью командной строки Ubuntu. Обратите внимание, что это краткое руководство для пользователей Ubuntu, устанавливающих Java 11. Я не буду слишком углубляться в особенности Java 11 или проблемы миграции, которые подробно описаны в другом месте. Пр

Подробнее

Джулия против Python: что лучше для науки о данных?

Среди множества вариантов использования Python, аналитика данных стала, пожалуй, самой большой и важной. Экосистема Python загружена библиотеками, инструментами и приложениями, которые делают научные вычисления и анализ данных быстрой и удобной. Но для разработчиков, стоящих за языком Julia, специально предназначенным для «научных вычислений, машинного обучения, интеллектуального анализа данных, крупномасштабной линейной алгебры, распред

Подробнее

Что такое машинное обучение? Разведка, полученная из данных

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

Подробнее

Изучите Java с нуля

Итак, вы хотите программировать на Java? Это здорово, и вы попали в нужное место. Серия Java 101 представляет собой самостоятельное введение в программирование на Java, начиная с основ и охватывая все основные концепции, которые вам нужно знать, чтобы стать продуктивным разработчиком Java. Эта серия является технической, с множеством примеров кода, которые помогут вам понять концепции по мере продвижения. Я предполагаю, что у вас уже есть некоторый опыт программирования, только не на Java. Эта первая стать

Подробнее

Обзор: VirtualBox 5.0 против VMware Workstation 11

Oracle VirtualBox и VMware Workstation борются за это уже несколько лет. VirtualBox занимает часть «бесплатного и открытого исходного кода», в то время как VMware Workstation является проприетарным коммерческим приложением. По цене Workstation, как правило, лидирует по функциям и производительности, а также обеспечивает тесную интеграцию с остальной час

Подробнее

Java 9 уже здесь: все, что вам нужно знать

Java 9 - формально Java Platform Standard Edition версии 9 - наконец-то здесь, и ее Java Development Kit (JDK) доступен для загрузки разработчиками. В нем есть несколько важных, но спорных новых функций, но он также является последним в линейке старого стиля доставки Java. Где скачать Java 9 JDK Oracle опубликовала Java SE 9 JDK и документацию для загрузки разработчиками. Ключевые новые функции в Java 9 Дебютировав почти через т

Подробнее

Как считать по группе в R

Подсчет по нескольким группам - иногда называемый отчетами с перекрестными таблицами - может быть полезным способом просмотра данных, начиная от опросов общественного мнения до медицинских тестов. Например, как люди голосовали по полу и возрасту? Сколько мужчин и женщин среди разработчиков программного обеспечения, использующих как R, так и Python? Есть много

Подробнее

Что расстраивает веб-разработчиков? Веб-браузеры

Разработчики, опрошенные Mozilla во второй половине 2019 года по поводу своего опыта работы с веб-платформой, инструментами и возможностями, были в основном удовлетворены, но они указали на некоторые недостатки, в частности проблемы с поддержкой браузера. В целом 59,8% респондентов сообщили, что удовлетворены работой в Интернете, а 16,3% - очень довольны. Только 6,8% были недовольны и 2,2% - очень недовольны. Эти результаты стали частью отчета MDN Web DN

Подробнее

Используйте постоянные типы для более безопасного и чистого кода

В этом руководстве мы расширяем идею нумерованных констант, описанную в книге Эрика Армстронга «Создание нумерованных констант в Java». Я настоятельно рекомендую прочитать эту статью, прежде чем вы погрузитесь в эту, поскольку я предполагаю, что вы знакомы с концепциями, связанными с перечисляемыми константами, и я подробно остановлюсь на некоторых примерах кода, которые представил Эрик. Понятие констант Имея дело с пронумерованными константами, я собираюсь обсудить нумерованную часть концепции в конце статьи. А пока мы просто сосредоточимся на постоянном аспекте. Константы - это в основном пе

Подробнее

Использование JavaScript и форм

У Javascript много шляп. Вы можете использовать JavaScript для создания специальных эффектов. Вы можете использовать JavaScript, чтобы сделать свои HTML-страницы «умнее», используя его возможности принятия решений. И вы можете использовать JavaScript для улучшения HTML-форм. Последнее приложение имеет особое значение. Из всего, что может носить JavaScript, его

Подробнее

Почему методы получения и установки - зло

Я не собирался начинать серию статей «Это зло», но несколько читателей попросили меня объяснить, почему я упомянул, что вам следует избегать методов get / set в прошлой колонке «Почему extends Is Evil». Хотя методы получения и установки являются обычным явлением в Java, они не особо объектно-ориентированы (OO). Фактически, они могут повредить рем

Подробнее

StringBuffer против String

Java предоставляет StringBufferи Stringклассы, и Stringкласс используется для манипулирования символьных строк , которые не могут быть изменены. Проще говоря, объекты типа Stringдоступны только для чтения и неизменны. StringBufferКласс используется для представления символов , которые могут быть изменены. Существенная разница в производительности между этими двумя к

Подробнее

Как использовать утверждения в Java

Написание программ, которые правильно работают во время выполнения, может оказаться сложной задачей. Это потому, что наши предположения о том, как будет вести себя наш код при выполнении, часто ошибочны. Использование функции утверждений Java - это один из способов проверить правильность логики программирования. В этом руководстве представлены утверждения Java. Сначал

Подробнее

Что такое EJB? Эволюция Enterprise JavaBeans

Enterprise JavaBeans (EJB) - это спецификация для разработки крупномасштабных распределенных бизнес-приложений на платформе Java. EJB 1.0 был выпущен в 1998 году. Самый последний выпуск, EJB 3.2.3, был принят для включения в Jakarta EE, где он будет переименован в Jakarta Enterprise Beans. EJB архитектура Архи

Подробнее

Инициализация классов и объектов в Java

Перед использованием классы и объекты в Java должны быть инициализированы. Ранее вы узнали, что поля класса инициализируются значениями по умолчанию при загрузке классов и что объекты инициализируются с помощью конструкторов, но это еще не все. В этой статье представлены все возможности Java для инициализации классов и объектов.загрузить Получить код Загрузите исходный код для примеров приложений из этого руководства. Создано Джеффом Фризеном

Подробнее

Эффективная обработка исключений Java NullPointerException

Не требуется большого опыта разработки на Java, чтобы из первых рук узнать, что такое исключение NullPointerException. Фактически, один человек подчеркнул, что это ошибка номер один, которую делают разработчики Java. Ранее я писал об использовании String.value (Object) для уменьшения нежелательных исключений NullPointerExceptions. Есть несколько других простых методо

Подробнее

Что такое Kubernetes? Ваша следующая платформа приложений

Kubernetes - популярная платформа с открытым исходным кодом для оркестровки контейнеров, то есть для управления приложениями, построенными из нескольких, в основном автономных сред выполнения, называемых контейнерами. Контейнеры становятся все более популярными с момента запуска проекта контейнеризации Docker в 2013 году, но большие распределенные контейнерные приложения становится все труд

Подробнее

Полиморфизм Java и его типы

Полиморфизм относится к способности некоторых сущностей появляться в разных формах. Обычно это бабочка, которая превращается из личинки в куколку и в имаго. Полиморфизм также существует в языках программирования как метод моделирования, позволяющий создать единый интерфейс для различных операндов, аргументов и объектов. Полиморфизм Java приводит к тому, что код становится более кратким и легким в поддержке. Хотя в этом руководстве основное внимание уделяется полиморфизму подтипов, есть несколько других типов, о которых вам следует знать. Мы начнем с обзора всех четырех типов полиморфизма.

Подробнее

Как откатить обновление до Windows 10

Сотни миллионов пользователей Windows 10 не могут ошибаться - или могут? Я каждый день слышу от людей, которые пробовали обновить Win10, и по разным причинам - сломанные драйверы, несовместимые программы, незнание, боязнь подглядывания, сомнения в будущем Win10 - хотят вернуться к своей старой доброй Windows 7 или 8.1 . Если вы выполнили обновление с помощью инструментов и специальных методов Microsoft, откат должен быть простым. Оперативный термин: «следует». К сожалению, многие люди считают, что Win10 - это путешествие в один конец - иногда

Подробнее

Структуры данных и алгоритмы в Java, Часть 4: Односвязные списки

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

Подробнее

Почему вам стоит использовать Docker и контейнеры

В книге под названием « Прибивая желе к дереву» , опубликованной в 1981 году,  программное обеспечение описывается как «туманное и сложное для понимания». Так было в 1981 году, и не менее верно почти четыре десятилетия спустя. Программное обеспечение, будь то приложение, которое вы купили или созданное вами, по-прежнему сложно развертывать, трудно управлять и трудно запускать. Контейнеры Docker позв

Подробнее

Основы байт-кода

Добро пожаловать в очередной выпуск «Под капотом». Этот столбец дает разработчикам Java представление о том, что происходит под их работающими программами Java. В статье этого месяца дается первый взгляд на набор инструкций байт-кода виртуальной машины Java (JVM). В статье рассматриваются примитивные типы, оперируемые байт-кодами, байт-кодами, которые преобразуют типы, и байт-кодами, которые работают в стеке. В следующих статьях будут обсуждаться другие члены семейс

Подробнее

Что такое Maven? Управление сборкой и зависимостями для Java

Apache Maven - это краеугольный камень разработки Java и наиболее часто используемый инструмент управления сборкой для Java. Оптимизированная модель конфигурации Maven на основе XML позволяет разработчикам быстро описывать или понимать основные принципы любого проекта на основе Java, что упрощает запуск и совместное использование новых проектов. Maven также поддерживает разработку через тестирование, долгосрочное сопровождение проекта, а его декларативная конфигурация и широкий спектр плагинов делают его популярным вариантом для CI / CD. Эта статья представляет собой краткое введение в Maven, вк

Подробнее

Наследование в Java, часть 1: ключевое слово extends

Java поддерживает повторное использование классов посредством наследования и композиции. Это руководство, состоящее из двух частей, научит вас использовать наследование в ваших программах на Java. В части 1 вы узнаете, как использовать extendsключевое слово для создания дочернего класса из родительского класса, вызывать конструкторы и методы родительского

Подробнее

GitHub делает частные репозитории бесплатными для команд

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

Подробнее

Обзор: 6 Python IDE идут вразрез

Из всех показателей, которые вы можете использовать для оценки популярности и успеха языка, одним безошибочным фактором является количество доступных для него сред разработки. Рост популярности Python за последние несколько лет принес с собой сильную волну поддержки IDE с инструментами, предназначенными как для обычных прог

Подробнее

Swift vs. Objective-C: 10 причин, по которым будущее в пользу Swift

Языки программирования нелегко умирают, но магазины разработчиков, цепляющиеся за исчезающие парадигмы, умирают. Если вы разрабатываете приложения для мобильных устройств и не исследовали Swift, обратите внимание: Swift не только вытеснит Objective-C, когда дело доходит до разработки приложений для Mac, iPhone, iPad, Apple Watch и других устройств, но он также заменит C для встроенного программирования на платформах Apple. Благодаря нескольким ключевым функциям Swift может стать де-факто языком программирования для создания иммерсивных, отзывчивых и ориентированных на потребителя приложений на

Подробнее

Что нового в Angular 10.1

Angular 10.1.0, следующий за Angular 10 релиз, был выпущен 2 сентября, улучшив производительность компилятора и маршрутизатора вместе с новым инструментом извлечения сообщений.  Angular 10 стал общедоступным в качестве производственной версии 24 июня. Основное обновление разработанной Google фрейм

Подробнее

Что такое облачное? Современный способ разработки программного обеспечения

Термин «облачный» часто используется, особенно поставщиками облачных услуг. Более того, у него даже есть собственная основа: Cloud Native Computing Foundation (CNCF), созданная в 2015 году Linux Foundation. Определение "родной для облака" Обычно «облачный» - это подход к созданию и запуску приложений, использующий преимущ

Подробнее

Что такое бессерверное? Объяснение бессерверных вычислений

Разработчики тратят бесчисленные часы на решение бизнес-задач с помощью кода. Затем настала очередь оперативной группы тратить бесчисленные часы, во-первых, выясняя, как получить код, который разработчики пишут и запускать на любых доступных компьютерах, а во-вторых, чтобы убедиться, что эти компьютеры работают без сбоев. Вторая часть действительно нескончаемая задача. Почему бы не оставить эту часть кому-нибудь другому? Многие инновации в ИТ за последние два десятилетия - виртуальные машины, облачные вычисления, контейнеры - были сосредоточены на том, чтобы вам не приходилось много ду

Подробнее

24 библиотеки Python для каждого разработчика Python

Хотите вескую причину огромного успеха языка программирования Python? Не ищите ничего, кроме огромной коллекции библиотек, доступных для Python, как собственных, так и сторонних. Однако при таком большом количестве библиотек Python неудивительно, что некоторые из них не получают должного внимания. Кроме того, прогр

Подробнее

Обзор: Visual Studio 2017 - лучшая из всех

Два года назад, когда я рассматривал Visual Studio 2015, я подумал, что IDE Microsoft стала самым сложным продуктом в истории, и Microsoft придется упростить его в будущем. Я был неправ в одном отношении: хотя Microsoft исключила несколько функций из Visual Studio 2017, она добавила гораздо больше. Но, конечно же, Microsoft удалось создать более простую и гибкую среду IDE в Visual Studio 2017, несмотря на расширение ее возможностей. В отличие от некоторых прошлых версий Visual

Подробнее

10 важных советов по производительности MySQL

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

Подробнее

Что такое Node.js? Объяснение среды выполнения JavaScript

Масштабируемость, время ожидания и пропускная способность - ключевые показатели производительности веб-серверов. Поддерживать низкую задержку и высокую пропускную способность при увеличении и уменьшении масштабов непросто. Node.js - это среда выполнения JavaScript, которая обеспечивает низкую задержку и высокую пропускную способность за счет «неблокирующего» подхода к обслуживанию запросов. Другими словами, Node.

Подробнее

Как ориентироваться в обманчиво простом шаблоне Singleton

Паттерн Singleton обманчиво прост, особенно для разработчиков Java. В этой классической статье JavaWorld Дэвид Гири демонстрирует, как разработчики Java реализуют синглтоны, с примерами кода для многопоточности, загрузчиков классов и сериализации с использованием шаблона синглтона. В заключение он рассмотрит реализацию одноэлементных реестров для определения синглтонов во время выполнения. Иногда уместно иметь только один экземпляр класса: оконные менеджеры, диспетчеры очереди печати и файловы

Подробнее

7 разработчиков low-code платформ, которые следует знать

Некоторые разработчики съеживаются при мысли об использовании платформ с низким кодом, которые выводят их за пределы их сред Java, .NET и JavaScript или отделяют их от их IDE, автоматизированных сред тестирования и платформ DevOps. Другие приняли платформы с низким уровнем кода в качестве инструментов, которые обеспечивают быструю разработку приложений, поддерживают сложные интеграции и обеспечи

Подробнее