Что учить java или python
Как стать Java-разработчиком? А может быть, выбрать Python?
Недавно нашел хорошую статью про то, как стать Java-разработчиком «How to Become A Successful Java Developer?» автора AakashSingh_17. И вот хочу поделиться с вами переводом. Однако я вижу, сколько молодых разработчиков выбирают Python как первый язык — по причине объективных преимуществ и связанных с этим языком мифов. Поэтому я добавил анализ этого языка, чтобы новички могли сравнить и сориентироваться — а что лучше выбрать в 2019 году (на самом деле, уже в 2020).
А может быть и Java?
Java-разработчик
Согласно индексу TIOBE (индекс, оценивающий популярность языков программирования, на основе подсчёта результатов поисковых запросов, содержащих название языка) в 2019 году Java является языком программирования номер один. На самом деле, Java используется практически в каждой компании, будь то небольшие компании или крупные технологические гиганты, такие как Google, Amazon и т. д. Таким образом, став Java-разработчиком в современном мире, вы можете очень хорошо построить свою карьеру! И именно поэтому я собираюсь поделиться своими соображениями о том, как стать успешным Java-разработчиком:
1. Освойте ядро Java SE
Во-первых, начните с ядра Java( Java SE ) и освойте его как можно глубже. Вы должны знать и понимать основные понятия, такие как циклы, массивы, операторы и многое другое. Кроме того, Java SE имеет ряд API общего назначения, таких как java.lang, java.io, java.math и т.д. и вы должны иметь, по крайней мере, базовые знания о них. Вы также должны будете изучить концепции ООП.
2. Продолжайте практиковать Java
Что бы вы ни узнали в Core Java, просто продолжайте практиковать его, чтобы писать без каких-либо основных ошибок, например ошибок синтаксиса. Обычно легко найти решение проблемы в теории, но в практической реализации подхода могут возникнуть проблемы, поскольку могут возникнуть языковые ограничения. Так что продолжайте кодировать и практиковать Java, а также попытайтесь сделать мини-проекты по любой, интересующей вас теме.
3. Изучите Java EE
Начните изучать Java EE (Enterprise Edition), который также известен как Advanced Java. Когда начинаете изучать Java EE, вы сможете работать над веб-разработкой, поскольку Java EE имеет спецификации для дополнительных функций, таких как распределенные вычисления и веб-службы. Это включает в себя такие технологии, как сервлет, WebSocket, Java Server Faces и т.д.
4. Создавайте проекты с сервлетами и JSP
Все, что вы узнали в Java EE просто объедините с интерфейсными технологиями, такими как HTML, CSS, Javascript и попытайтесь сделать мини-проекты на конкретные темы. Кроме того, важно, что вы делаете по крайней мере два проекта, один с сервлетом и второй с JSP.
5. Изучите фреймворки Hibernate и Spring
Когда завершите изучать Java SE и Java EE, то познакомьтесь с Java Framework, который включают в себя Hibernate Framework и Spring Framework. Это самые популярные фреймворки Java. На самом деле, большинство компаний-разработчиков Java используют Spring Framework, такие как Spring Boot, Spring MVC и Spring Cloud для разработки веб-приложения и т. д. Hibernate framework также очень популярен для сопоставления объектно-ориентированной модели домена с реляционной базой данных, а также языком запросов Hibernate. Таким образом, если вы знаете эти фреймворки и можете создавать на них проекты, то у вас будет отличный шанс быть выбранным на роль разработчика Java в любой компании.
Программист Java — одна из высокооплачиваемых и востребованных профессий в IT. Высокая конкуренция вынуждает учеников впитывать всё больше информации, демонстрировать профессионализм с первого дня работы. Сегодняшние 5 советов помогут вам чуть быстрее пройти путь от новичка до интересной и высокооплачиваемой работы.
А может и Python?
Python — высокоуровневый язык программирования общего назначения, ориентированный на повышение производительности разработчика и читаемости кода. Синтаксис ядра Python минималистичен. В то же время стандартная библиотека включает большой объём полезных функций.
Python поддерживает структурное, объектно-ориентированное, функциональное, императивное и аспектно-ориентированное программирование.
Python прост в освоении, чтении и использовании. И это также одна из самых горячих технологий на рынке труда. Но это всего лишь Питон в двух словах – есть еще много чего. Читайте дальше, чтобы увидеть наши главные причины, почему Python идеально подходит для начинающих.
Легко учиться, читать и использовать
В отличие от C# и других языков, синтаксис Python удобочитаем и лаконичен. Новичку, это позволит быстро подобрать основы, с меньшим умственным напряжением. Взглянув на код Python, можно сразу понять, что он делает. В то время как большинство языков программирования требуют больше синтаксического (письменного) кода для выполнения аналогичных задач.
Можно заметить, что количество кода, которое мы пишем даже для простого приложения (7 строк в C# против 1 строки в Python). Даже по мере того, как мы продолжаем масштабирование, Python поддерживает основную функциональность читаемости и остается легким и удобным.
Меньше запоминания синтаксиса
Учитывая простоту синтаксиса Python, вам не нужно будет запоминать много разделов кода. Это позволит развивать ваши истинные навыки программирования, а не только способность запоминать синтаксис.
С меньшим количеством кода для запоминания, уменьшается количество ошибок, сделанных разработчиком. На протяжении многих лет Python развивался, включая в себя новые идеи, отвечающих новым требованиям; однако структура языка совсем не изменилась. Т. е. методы и функции почти идентичны тем, которые использовались 10 лет назад. Это позволяет читать код через несколько лет без корректировки
Python — это объектно-ориентированный язык
Каждый разработчик знает об объектно-ориентированном программировании, и оно встроено в язык Python. Это практика создания объектов и данных для решения проблем.
Использование классов, понимание наследования и создание экземпляров — это ключ к продвижению себя как молодого разработчика. В дополнение к уже создаваемому объектно-ориентированному языку Python поставляется с множеством библиотек и модулей, которые еще больше расширяют его возможности. Эти инструменты позволят вам ускорить свой цикл разработки, позволяя создавать лучшие проекты, быстрее, чем другие языки.
Отладка
Одним из самых сложных навыков для новичка является отладка. Именно здесь вы по-настоящему узнаёте язык и то, как он работает изнутри. Иногда у вас будут простые ошибки типа синтаксических, в других случаях они будут проявляться в 1 из 100 запусков вашей программы. Тут вам придётся ближе познакомиться со своим отладчиком и основными ошибками в языке. К счастью, Python располагает хорошей системой обработки и отчётов об ошибках, чего нет у многих других языков.
Краткий вывод
Python — это объектно-ориентированный язык; прост в освоении, отладке, чтении.
Python широко используется в веб-приложениях, разработке игр и т. д. Такие компании, как Google, Facebook, IBM, EA используют Python. Он может решить практически любую задачу.
Благодаря своей простоте и широте области применения, он идеально подходит начинающим программистам.
Выбирать вам. Выбирайте взвешенно!
Кстати, а что бы выбрали или уже выбрали вы?
Java vs Python — сравнение языков программирования
Супермен или Бэтмен. Звездные войны или Звездный путь. Кока-кола или Пепси. Выбор между Java и Python никогда не был подобным соперничеством. У этих двух языков довольно разные области применения и поддерживающие их сообщества. Java и Python настолько не похожи, что в Instagram появилась техническая метафора романтической несовместимости:
«Я не думаю, что мы подходим друг другу. Похоже, наши мысли работают по-разному.
Будто ты написана на Python, а он — на Java»
Но, поскольку они входят в группу самых популярных языков программирования, стоит обратить внимание на сходства, различия, преимущества, недостатки и идеальные варианты использования для каждого из них.
Во-первых, Java и Python имеют некоторые общие характеристики, как и ключевые различия. Оба являются мощными языками программирования с большими преданными сообществами и огромным набором библиотек, поддерживаемых легионами разработчиков. Если вы затрудняетесь что-то сделать, используя нативные возможности языка, вы, вероятно, легко найдете библиотеку, реализующую необходимый функционал.
Но Java и Python также сильно отличаются, с какой стороны ни посмотреть. Некоторые из этих различий объективны и не подлежат обсуждению. В то время как другие связаны с взглядами и предпочтениями разработчика или продиктованы средой программирования.
Например, Java — это компилируемый язык, а Python — интерпретируемый. Это различие дает каждому языку определенные преимущества и недостатки. Довольно часто бушуют споры о том, выполняется ли скомпилированный код быстрее, чем, интерпретируемый. При этом реальное положение вещей имеет тенденцию меняться от случая к случаю. Будет ли один язык выполняться быстрее другого, зависит, помимо прочего, от окружения, в котором они используются. Например, Python более приспособлен к работе в массово распараллеленном режиме на графических процессорах.
Два языка также имеют значительные синтаксические различия. Например, при написании кода на Java для определения его структуры используются фигурные скобки. В Python для выполнения тех же задач применяются отступы.
FreeCodeCamp называет код на Python: «аккуратным, читаемым и хорошо структурированным. Здесь корректная расстановка отступов нужна не только для красоты — она оказывает прямое влияние на порядок выполнения программы».
Такие структурные различия могут повлиять на то, как разработчики смотрят на языки и на скорость, с которой они программируют. Теоретически это также влияет на уровень навыков, необходимых для изучения языка. Однако в большинстве случаев проблема действительно сводится к личным предпочтениям. Более того, многие разработчики привыкли использовать IDE, среды программирования и шаблоны. Это делает проблему гораздо менее значимой.
Программисты бесконечно спорят и о других качествах этих языков. Например, некоторые утверждают, что разработчик может быть до десяти раз более продуктивным в Python. Потому что он поддерживает, среди прочего, динамическую типизацию. Другие придерживаются противоположных взглядов на проблему производительности. Большинство приводимых сторонами аргументов сводятся к не слишком полезному сравнению квадратного с круглым.
Какой язык в конечном итоге будет более продуктивным, обычно зависит от накопленного программистом опыта, стиля кодирования и требований к разработке.
Не стоит забывать, что языковые инструменты в конечном итоге превращают все, что создают программисты, в машинный код. Таким образом, выбор языка — это не вопрос того, какой код понравится машине больше. Это вопрос удовлетворения требований разработчика по удобному описанию задач машине в терминах, понятных прежде всего самому разработчику.
Тенденции в Java и Python
Хотя Java сейчас не на пике популярности, он по-прежнему один из самых используемых языков программирования. С другой стороны, Python показал астрономический рост, особенно в развитых странах с высоким уровнем дохода. Согласно некоторым источникам, Python в конечном итоге превзойдет Java по популярности.
Причины такого удивительного подъема заключаются в повышенной продуктивности разработки, языковой гибкости, разнообразии поддерживаемых библиотек, огромном сообществе и простоте обучения. Python также широко используется в таких горячих областях, как data science и искусственный интеллект. А также при создании веб-приложений, настольных приложений, сетевых серверов и медиа-инструментов.
Между тем популярность Java, возможно, снизилась из-за ее невысокой репутации в области безопасности. Сайты технических новостей, такие как The Register, с наслаждением критикуют Java. The Hill утверждает, что 88% приложений на Java имеют проблемы с безопасностью. Конечно, плохая репутация языка во многом объясняется недостатками Java-плагина для браузера. В остальном потенциальные уязвимости в Java не намного хуже, чем у других языков.
В любом случае безопасность Python тоже далека от идеала, но она пользуется большим вниманием и поддержкой со стороны специалистов в этой области. А простота использования языка может облегчить менее опытным разработчикам написание надежного кода.
Однако было бы неразумно думать о Java как о языке «из далекого прошлого». Разработчики Java продолжают добавлять новые функции. Они делают язык меньше, быстрее и гибче при использовании в крупномасштабной разработке. Мощная виртуальная машина Java (JVM) упрощает создание кроссплатформенных приложений. Java продолжает процветать в создании большого традиционного ПО, чем сегодня занимается большинство предприятий.
Более того, язык используется в 90% компаний из Fortune 500! Как ни крути, огромное количество установленных Java-приложений (как и вакансий на должность Java-разработчика) в ближайшее время точно никуда не исчезнут.
Java и Python также используют очень разные модели потоков. Python GIL или глобальная блокировка интерпретатора означает, что, в отличие от Java, Python фактически является однопоточным. Он может работать только на одном CPU-ядре одновременно. С другой стороны, использовать GPU с Python относительно легко по сравнению с аналогичным процессом в Java.
Таким образом, приложение на Python, работающее в параллельном режиме на 5120-ядерном графическом процессоре, скорее всего, оставит далеко позади полностью оптимизированное приложение на Java, запущенное на 8-ядерном CPU.
Возможно, из-за широкого диапазона позиций Java-разработчиков, было замечено, что Python-программисты обычно зарабатывают больше денег, чем Java-разработчики: 116000 долларов против 102000 долларов на Indeed и 99000 долларов против 96000 долларов на StackOverflow.
Проблема «грамотного программирования»
Кривая обучения языку программирования во многом зависит от ваших текущих знаний. От того, как вы планируете его использовать, и среды обучения. Например, если вы знакомы с программированием на C, C ++ или JavaScript и намерены писать код для стандартного приложения, процесс изучения Java будет относительно простым.
Однако, если вы никогда раньше не программировали и собираетесь использовать язык, например, для обработки каких-то научных данных, тогда вам лучше подойдет Python. В школах обучают именно этому языку. Он помогает людям очень быстро нарабатывать основные принципы написания качественного кода и имеет широкий спектр применений.
Представление кода также становится все более важным отличием между двумя языками. В прошлом разработчики использовали код в основном для создания приложений. Написанные программы обычно читались только другими разработчиками (и машинами). Долгое время лаконичный синтаксис Java имел преимущество.
Однако теперь, когда люди с разными взглядами и навыками используют языки программирования для достижения самых разных целей. Не обязательно для разработки приложений.. Python лидирует в этом качестве, потому что он полностью поддерживает грамотный подход к программированию. Literate programming — основанный Стэнфордским ученым-программистом Дональдом Кнутом.
При использовании методов грамотного программирования в одном документе содержится код, пояснительный текст, графики, изображения и всевозможные другие материалы, но при этом код остается полностью исполняемым в соответствующей среде разработки. Это позволяет докладчику или непрограммисту использовать среду способом, который немногие разработчики распознают как «написание кода».
Грамотное программирование часто применяется для:
Python напрямую поддерживает такой подход через IDE, такие как Leo и Jupyter Notebook. Вы также можете добавить эту поддержку в другие редакторы, такие как Atom, используя специальные инструкции. Напротив, аналогичный функционал в среде с использованием Java может казаться принудительно склеенным. И кривая обучения для него, как правило, выше.
Сравнение производительности
Некоторые разработчики считают, что «интерпретируемый» всегда означает «медленный». Пользователи Java часто говорят:
«Конечно, пишите код на Python или на чем-то еще, но, когда вам нужно будет масштабировать приложение, его придется переписать на Java».
Довольно сложно проводить сравнение языков по скорости, так как производительность сильно зависит от окружения. Вы можете провесит ряд тестов, которые отдадут предпочтение одному из языков. Но результаты, имеющие решающее значение, — это полученные вами в реальных проектах.
Кроме того, вы должны учитывать такие моменты, как необходимые приложению библиотеки и стиль программирования, используемый при разработке (по крайней мере, с Python). Данный вопрос более актуален для Python, так как он поддерживает несколько парадигм программирования.
Сравнивая производительность написанных на нем приложений с использованием функционального программирования и объектно-ориентированного, результаты, вероятно, будут отличаться труднопредсказуемым образом.
Также важно учитывать, как разные версии языка влияют на производительность. В реальном мире не всегда имеет смысл сравнивать только последние их выпуски. Если мы говорим о Java, то большинство приложений отстают от текущей версии на 2-3 обновления. Что касается Python, Python 3.x обычно работает быстрее, чем 2.x.
Поэтому, хотя это может показаться контрпродуктивным, некоторые программисты (и другие пользователи), занимающиеся data science, по-прежнему предпочитают использовать Python 2.x вместо 3.x из-за определенных библиотек. Обратите внимание, что сообщество Python изо всех сил пытается перейти 3 версию и в настоящее время отказалась от поддержки 2х.
В конце концов, производительность — невероятно сложный показатель. Какой язык работает быстрее всего, обычно зависит от окружения. От того, как код был написан, как он используется и запускается. Не говоря о влиянии библиотек и других внешних факторов.
Доля рынка и сообщество
Также довольно сложно сравнивать относительную популярность различных языков программирования. Но в большинстве попыток такого ранжирования — либо здесь, либо на сайтах рейтингов, Java обычно выходит на первое место. Python не отстает и находится где-то в первой пятерке.
Важно отметить, что оба языка поддерживаются большими и активными сообществами пользователей. Группы пользователей Java (JUG) существуют по всему миру. (Это геолокационное приложение позволяет вам найти ближайший к вам JUG.) Java-программисты также могут посещать крупные мероприятия, такие как JavaOne.
Сообщество Python не уступает по размаху: 1637 пользовательских Python-групп в 191 городе и 37 странах. В них участвуют более 860000 человек. События Python варьируются от встреч PyLadies, где женщины могут встречаться и программировать вместе, до PyCon и многих других.
Однако, как отмечалось ранее, истинная цель языка программирования — служить потребностям разработчика в передаче конкретной задачи машине наиболее простым и понятным способом. Для некоторых разработчиков простота означает наименьшее количество строк кода или максимальную скорость приложения.
Но проблема выходит далеко за рамки любого из этих соображений. Например, если вы специалист по данным, работающий над проектом машинного обучения, Python будет лучшим выбором. Java занимает третье место в этой группе.
Гибкость также имеет значение. При работе с Python у вас есть доступ к нескольким парадигмам программирования, которые вы можете смешивать и сопоставлять по мере необходимости в одном приложении.
Java поддерживает только один стиль: объектно-ориентированное программирование. Обратите внимание, Python поддерживает применение разных подходов в одном приложении. Это означает, вы можете использовать тот, который лучше всего решает конкретную подзадачу. И не будите полагаться на одну парадигму, независимо от того, насколько она отвечает вашим текущим потребностям.
Мультиязычность путь к победе
Дело в том, что не существует единственного лучшего языка программирования. Но каждый из них может удовлетворять некоторым требованиям, имеющим значение в данный момент времени, для конкретного проекта.
В идеале разработчики должны знать несколько языков, чтобы им не приходилось использовать язык, который плохо подходит для обозначенных целей. Такой подход облегчает адаптацию к большому числу ситуаций. Например, присоединение к команде, занимающейся обновлением приложения, написанного на языке, который вы бы не выбрали при создании данного проекта с нуля.
Тем не менее, можно сделать некоторые обобщения относительно языков программирования:
Независимо от того, близки ли вам эти предпочтения, надеюсь, что представленное сравнение поможет вам сделать собственный выбор, какой из языков программирования подходит лучше именно вам.
Почему программисты продолжают использовать многословный Java, хотя есть лаконичный Python
От переводчика: эта статья — попытка автора показать преимущества (не недостатки) языков программирования Python и Java, а также продемонстрировать двойственность любых сравнений. Что-то, что кажется преимуществом, может оказаться недостатком, и наоборот. Возможно, какие-то моменты могут показаться спорными, но это и к лучшему — в комментариях можно все обсудить, грамотно обосновав свою точку зрения. Статья подходит как для новичков, так и для программистов с опытом.
Java и Python — одинаково популярные языки программирования. Однако Python более продуктивен: в нем меньше объем кода, нужного для решения задачи. Почему же программисты до сих пор работают с Java там, где можно применить Python? Давайте разбираться.
Напоминаем: для всех читателей «Хабра» — скидка 10 000 рублей при записи на любой курс Skillbox по промокоду «Хабр».
Сравнение эффективности
Сначала давайте обсудим, почему Python более эффективен и позволяет сэкономить время при разработке веб-приложения.
Одна из основных причин того, что Python — более продуктивный язык, — динамическая типизация. Это значит, что нам не нужно ничего объявлять — мы просто задаем переменной имя и присваиваем значение. Python самостоятельно определяет ее тип согласно присвоенному значению.
А вот Java — статически типизированный язык. Все типы переменных здесь должны быть объявлены. Если допустить ошибку, то программа работать не будет или будет, но с проблемами.
Python — очень лаконичный язык: в нескольких строках может быть использовано лишь небольшое число слов. А вот Java многословен, в нем многое используется без прямой необходимости. Приведем пример — программу “Hello, World”, написанную на обоих языках.
Более того, в Python есть и другие функции, которые позволяют делать код небольшим по объему. Вот еще несколько примеров.
Меньше Boilerplate code, чем в Java
Python содержит гораздо меньше Boilerplate code, чем Java, что упрощает разработку. Java, где много Boilerplate code из-за многословности языка, иногда ставит в тупик новичков (да и не только их), поскольку для решения простой проблемы требуется приложить значительное количество усилий.
Немного существует языков программирования, которые были бы проще в изучении, чем Python. Динамически типизированная природа языка и его лаконичность, рациональность делают язык доступным для многих. Java же является более сложным языком для изучения.
Зачем использовать Java?
Ну а теперь давайте посмотрим, почему же Java все еще широко применяется, несмотря на то что работа с ним требует больших усилий, чем с Python.
У статически типизированных языков есть недостатки, большая часть которых была описана выше. Но у них есть и достоинства, которых тоже немало. Так, например, Java обеспечивает безопасность типов, которая улавливает все потенциальные ошибки во время компиляции, а не в процессе выполнения, как Python. Таким образом, вероятность появления ошибок уменьшается. В конечном итоге все это упрощает управление большими приложениями. Ошибки во время выполнения (которые появляются при разработке веб-приложений, например, на Python) сложнее идентифицировать и исправлять, чем ошибки во время компиляции.
Кроме того, анализировать Java-код гораздо легче, чем код Python, что полезно в ситуациях, когда над одним проектом работает команда программистов. Java-программисты быстро поймут код друг друга, поскольку все объявлено явно, а вот Python-программисты могут столкнуться с несколькими проблемами при чтении кода веб-приложения. Дело в том, что все определяется или отображается в ходе выполнения приложения, когда становятся известны переменные или сигнатуры.
Производительность и скорость
Собственно, ни Java, ни Python не являются лучшим вариантом для создания высоконагруженных приложений, но у первого языка есть солидные преимущества по сравнению со вторым. Все это благодаря JIT (Just-in-Time Compiler), преобразующему обычный код в машинный язык. В итоге производительность Java-приложений примерно равна производительности того, что написано на С/С++.
Python-разработчики могут использовать Cython и Jython для написания модулей С/С++ и Java-кода под Python. Но это не сильно улучшает общую скорость работы приложений. Python куда медленнее Java.
Портирование и кроссплатформенность
Оба языка являются платформонезависимыми. Однако у Java несколько лучше реализована кроссплатформенная поддержка.
Поскольку Python медленнее Java, разработчики Python часто нуждаются в делегировании некоторых задач библиотекам, написанным на других языках, вроде С++ или Fortran. Следовательно, компаниям, которые используют Python, могут понадобиться персонал, инструменты и инфраструктура для разработки модулей, например, на C или использования существующих библиотек C/C++. Таким образом, вы можете потерять независимость от платформы, которую обещает чистый Python. А вот в случае Java ничего такого не нужно — разработчики работают лишь с Java.
Concurrency vs. Parallelism
Java предоставляет полную поддержку для concurrency с самого начала. Кроме того, есть несколько отличных функций для обеспечения параллелизма и многопоточности. Java также поддерживает параллельное программирование лучше, чем Python. Из-за GIL (Global Interpreter Lock), который ограничивает работу Python одним процессором, этот язык не может предложить того же.
И в Python, и в Java много отличных библиотек и фреймворков. Но Java предпочтительнее для разработки корпоративных приложений благодаря многообразию библиотек и сред, ориентированных на создание высоконагруженных приложений в этой сфере. Они поддерживаются обширным сообществом разработчиков из крупных компаний. Следовательно, программирование корпоративных приложений становится намного проще. Мощная и развернутая экосистема является причиной того, что так много языков ориентированы на JVM: Scala, Kotlin, Clojure, Groovy и т.д. Кроме того, в Java есть мощные инструменты управления зависимостями, такие как Gradle и Maven.
Оба языка используются практически во всех направлениях IT, включая десктопные системы, веб, искусственный интеллект, научные вычисления и аналитику. Да, Python имеет больше преимуществ в такой сфере, как аналитика. Но вот мобильные устройства — это ниша, где доминирует Java.
Примечательно, что Java является одним из официальных языков программирования под Android, конкурируя только с Kotlin. Большая часть приложений, работающих на устройствах Android, включая смартфоны или планшеты, разрабатывается на Java. Язык с успехом используется и во встраиваемых системах.
Хотя мы можем разрабатывать мобильные приложения на Python, используя библиотеку Kiwi, это не лучший способ.
У Java здесь явное преимущество благодаря JDBC (Java DataBase Connectivity). Это платформонезависимый промышленный стандарт взаимодействия Java-приложений с различными СУБД, реализованный в виде пакета java.sql, входящего в состав Java SE. JDBC основан на концепции так называемых драйверов, позволяющих получать соединение с базой данных по специально описанному URL.
В качестве заключения
Java и Python — отличные, мощные языки. У каждого своя собственная ниша, и, как мы видим, оба имеют явные преимущества в той либо иной сфере, так что смысла спорить о том, какой из них лучше, нет. У них просто разная философия. В то время как Java создавалась для того, чтобы снизить вероятность появления ошибки, Python был разработан для того, чтобы программист мог быстрее достичь поставленной цели.