Чашечка Java
Открыть в Telegram
Лучшие материалы по Java на русском и английском Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels
Больше8 539
Подписчики
Нет данных24 часа
-137 дней
-2930 день
Архив постов
8 538
6 Essential Data Structures Java Programmer should Learn in 2021
Hello guys, Data Structure is a building block of programs. It's even said that "Data Structure + Algorithms= Program". That's why a good knowledge of data structure is very...
Read: http://www.java67.com/2013/08/ata-structures-in-java-programming-array-linked-list-map-set-stack-queue.html
8 538
Уроки абстракции: чему FP может научить ООП
Одним из наиболее распространенных «лучших практик» в программировании является принцип DRY: не повторяйся. Для реализации этого принципа можно использовать множество методов: инкапсуляция, параметризация, инверсия управления и многое другое. Одним из этих методов является абстракция, и одно из основных различий между функциональным программированием (FP) и объектно-ориентированным программированием (ООП) заключается в способе применения абстракции. Обычной практикой в ООП является ограничение абстракции до строгого полезного минимума для рассматриваемой проблемы. В ООП преждевременное абстрагирование часто считается ошибкой, как и преждевременная оптимизация.
В FP, с другой стороны, абстракция, как правило, продвигается настолько далеко, насколько это возможно. Каждая проблема разбита на серию простейших возможных функций, которые затем комбинируются для построения решения проблемы. Выявление этих абстракций обычно является наиболее важной частью решения проблемы. Фактически, программисты FP часто тратят больше времени на то, чтобы найти, какую проблему им следует решить, чем на их решение. И, конечно же, обычно кажется, что эти функции одинаковы от одной проблемы к другой. Только способ их комбинирования отличается. Это причина, по которой абстракция является одним из наиболее ценных методов, используемых программистами FP.
В этой статье мы сравним, как ООП и ФП будут обрабатывать абстракцию в конкретной простой задаче: вычислении суммы целых чисел от 1 до произвольного значения n. Проблема настолько проста для решения с помощью императивного программирования, что кажется, что в этом нет ничего интересного. Вот как это можно сделать в Java:
Читать: https://habr.com/ru/post/587440/?utm_campaign=587440
8 538
Top 5 Next.js and React.js Framework Courses to learn in 2021 - Best of Lot
If you are using JavaScript and React or follow web development news then you may know about Next.js, a popular React framework that helps in server-side rendering which improves the user experience...
Read: http://www.java67.com/2020/07/top-5-courses-to-learn-nextjs-in-2020.html
8 538
Top 5 Free Android Development Courses for Beginners in 2021 - Best of Lot
Hello guys, If you are passionate about creating mobile games and applications and want to learn how to develop Android apps or become an Android application developer, you have come to the right...
Read: http://www.java67.com/2019/01/top-5-free-android-app-development-courses-for-programmers.html
8 538
How to format source code in Visual Studio Code (VSCode)
This article shows how to format source code in Visual Studio Code (VSCode).
Tables of contents
* 1. VSCode – Code Formatting Shortcuts
* 2. VSCode – Code Formatting Shortcut #2
* 3. Formatter is not installed.
* 4. References
1. VSCode – Code Formatting Shortcuts
The code formatting is available in Visual Studio Code (VSCode) through the following shortcuts or key combinations:
* On Windows
Shift + Alt + F
* On macOS Shift + Option + F
* On Linux Ctrl + Shift + I
Note
It works for all source codes like HTML, Java, Python, JavaScript ad, etc., it is working the same way.
2. VSCode – Code Formatting Shortcut #2
Alternatively, click on the source code editor, right clicks and select the Format Documentoption.
3. Formatter is not installed.
If we press the code formatting shortcuts and VSCode can’t find any formatter for the specified source code, and VSCode will pop out a dialog at the right-bottom and ask you to install the suggested formatter for the source code;
3.1 Below example shows the VSCode request to install the Python formatter autopep8.
3.2 Clicks Yes button, and VSCode will install the autopep8formatter automatically.
3.3 Try to format the source code again; now, the VSCode will auto-format the Python source code using the installed Python formatter.
4. References
* Basic Editing in Visual Studio Code
* Pyhton formatter autopep8
Read: How to format source code in Visual Studio Code (VSCode) on Mkyong.com.8 538
Top 5 Courses to Learn Responsive Web Design in 2021 - Best of Lot
Hello folks, Responsive web design is one of the essential skills to become a frontend web developer, a web designer, and even a full stack developer. If you are interested in learning Responsive web...
Read: http://www.java67.com/2020/08/top-5-courses-to-learn-responsive-web-design-best.html
8 538
Top 5 Data Visualization Tools Every Data Analyst and Data Scientist should Learn in 2021 - Best of Lot
Hello guys, If you are learning Data Science and Data Analysis then you may have come across Data Visualization, a technique to visualize data and derive insights. As a data scientist or data...
Read: http://www.java67.com/2020/07/top-5-data-visualization-tools-every.html
8 538
5 Things You Can Gift to Programmers, Software Developers, and Tech Geeks
Hello guys, it's that time of the year again when you start thinking about gifts for your programmer boyfriend, husband, colleagues, or your near dear ones. Even if selecting presents or gifts...
Read: http://www.java67.com/2017/10/5-best-gifts-for-programmers-and-software-developers-geeks.html
8 538
Top 5 Spring Boot Courses for Beginners in 2021 [UPDATED] - Best of Lot
Hello guys, if one of your goals is to learn Spring Boot in 2021, and I have started working towards it. As I have talked about my 3 point action plan to learn new technology, the first step is to...
Read: http://www.java67.com/2018/06/5-best-courses-to-learn-spring-boot-in.html
8 538
Top 5 Free Python Courses for Beginners to Learn Online in 2021 [UPDATED]
Hello guys, If you are a beginner looking for Free Python resources to start your programming journey, like books and online courses then you have come to the right place. Earlier, I have shared a...
Read: http://www.java67.com/2018/02/5-free-python-online-courses-for-beginners.html
8 538
Чаты на вебсокетах. Теперь про бэкенд
Продолжаем рассказывать про чаты на вебсокетах, но уже со стороны бэкенда. Когда-то использовали сторонний сервис, но было важно решить ряд моментов, которые он не мог покрыть. Выбирать особо не пришлось, и мы принялись разрабатывать собственное решение.
Ниже подробности о том, что было до написания кастомных чатов и какие стояли требования к реализации, из каких компонентов они состоят, как вписываются в нашу инфраструктуру и что получилось в итоге. А в конце статьи — ссылки про особенности разработки наших чатов на вебсокетах для iOS и Android.
Читать: https://habr.com/ru/post/584414/?utm_campaign=584414
8 538
Сломать объект с помощью финализации
Вчера перевели в статус Candidate новый JEP 421: Deprecate Finalization for Removal. Путь к удалению механизма финализации из Java начался в Java 9, когда метод
Object.finalize()был впервые объявлен deprecated. Рано или поздно механизм исчезнет из Java, поэтому если вы его используете, самое время задуматься об альтернативах. Однако статья не об этом.
Я думал, что довольно хорошо представляю себе все минусы механизма финализации. Многие из них перечислены, например, в этой статье. Однако, прочитав JEP, я узнал об уязвимости, о которой раньше и не думал. Оказывается, с помощью финализации можно создать объект со сломанными инвариантами.
Читать: https://habr.com/ru/post/586994/?utm_campaign=5869948 538
Нужна система с низкими задержками? Выбираем Java вместо C++
Все разработчики знают, что есть два способа сделать дело: первый — вручную, медленно, нервно, сложно, либо второй – автоматизировано, быстро и еще сложнее.
Например, я мог бы продолжить писать эту статью о том, почему стоит использовать Java вместо C++ при программировании систем с низкой задержкой. Либо мог бы обучить ИИ, чтобы он сделал это за меня. Второй подход, в конце концов, сэкономил бы мне массу времени – искусственный интеллект генерировал бы за меня тысячи статей в секунду – но редактор вряд ли обрадовался бы услышать, что на подготовку первой статьи мне нужно два года.
Аналогичная ситуация возникает при необходимости разработать систему с низкой задержкой.
Читать: https://habr.com/ru/post/586870/?utm_campaign=586870
8 538
Продажная многопоточность
Данный цикл статей рассматривает сложнейший мир многопоточного программирования через достаточно щекотливую тему, читатель должен быть готов к тому, что некоторые образы и примеры могут негативно повлиять на его психологическое состояние, некоторые — вызвать отвращение. Следует учитывать, что все описанные ситуации являются вымышленными и совпадения с реальностью случайны.
Повествование будет разбито на две части, от простого к сложному.
В первой части будут рассмотрены базовые понятия, стандартные подходы и проблемы. Будут приведены примеры использования нескольких, довольно известных примитивов синхронизации.
Во второй части, мы углубимся в более сложные концепты и так же, на простых и понятных примерах, разберем нетривиальные концепции, которые существуют в современных языках программирования.
Читать первую часть
Читать: https://habr.com/ru/post/586920/?utm_campaign=586920
8 538
3 Books and Courses to Learn RESTful Web Services using Spring and Java in 2021
Hello guys, if you know the Spring framework, then there is a good chance that you have heard about the classic Spring in Action book by Craig Walls. It's one of the best books to learn Spring,...
Read: http://www.java67.com/2018/02/3-books-and-courses-to-learn-restful-web-services-with-spring.html
8 538
Ребята из RN Labs ищут Java-разработчиков уровня от middle до lead с зарплатной вилкой 150 000 – 450 000 ₽
Оформление будет по ТК РФ, а работать можно удаленно или из офиса в центре Москвы.
От вас требуется:
— Опыт промышленной разработки на Java от двух лет;
— Уверенное знание Spring Framework (Spring Boot), JPA (Hibernate);
— Умение работать с SQL-запросами;
— Уверенная работа с Git;
— Знание английского языка на уровне чтения документации.
Ещё для вас будет плюсом:
— Разработка высокопроизводительных систем;
— Работа с большими таблицами данных;
— Работа с брокерами сообщений, шинами данных и интеграциями в целом;
— Настройка пайплайнов разработки в Gitlab или аналогичных системах.
Работать придётся с:
— Java 11
— Spring Boot
— Spring Cloud
— PostgreSQL, Redis
— Kafka
— Jira, Confluence
— Gitlab, Grafana, Kibana, Splunk, Docker, Kubernetes, Dynatrace.
Узнавайте подробности по вакансии и откликайтесь: @re3ilo
#вакансия
8 538
Java News Roundup: Hibernate Reactive 1.0, Spring Updates, OpenJDK, Red Hat Introduces Cryostat 2.0
This week's Java roundup for October 18th, 2021 features news from OpenJDK, JDK 18, numerous updates on Spring projects, MicroStream 6.0, Quarkus 2.4.0, Hibernate Reactive 1.0, Open Liberty 21.0.0.11, Eclipse Vert.x 4.2.0, Red Hat introduces Cryostat 2.0, GraalVM Native Build Tools 0.9.7.1, Liberica Native Image Kit 21.3 and JDKMon 17.0.7.
By Michael Redlich
Read: https://www.infoq.com/news/2021/11/java-news-roundup-oct25-2021/
