Чашечка Java
10.2K subscribers
3.15K photos
6 videos
50 files
4.48K links
Лучшие материалы по Java на русском и английском

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels
Download Telegram
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
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
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
Уроки абстракции: чему FP может научить ООП

Одним из наиболее распространенных «лучших практик» в программировании является принцип DRY: не повторяйся. Для реализации этого принципа можно использовать множество методов: инкапсуляция, параметризация, инверсия управления и многое другое. Одним из этих методов является абстракция, и одно из основных различий между функциональным программированием (FP) и объектно-ориентированным программированием (ООП) заключается в способе применения абстракции. Обычной практикой в ООП является ограничение абстракции до строгого полезного минимума для рассматриваемой проблемы. В ООП преждевременное абстрагирование часто считается ошибкой, как и преждевременная оптимизация.

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

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


Читать: https://habr.com/ru/post/587440/?utm_campaign=587440
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
10 Essential Spring MVC and REST Annotations with Examples for Java Programmers

Hello guys, welcome to my third article on exploring essential annotations from the Spring framework, the most popular framework for Java development. In the first article, I have shared some of the...

Read: http://www.java67.com/2019/04/top-10-spring-mvc-and-rest-annotations-examples-java.html
Golang для Embedded Linux

При разработке очередной платформы перед командой АТОЛ встал вопрос выбора языка программирования/стека технологий/железа/фреймворка для создания решений. Железо было выбрано на базе относительно недорогой Linux-платформы STM32MP153/512MB DDR3/8GB eMMC. Эта платформа имеет на несколько порядков больше ресурсов, чем используемые в нашей основной массе решений LPC1768/LPC1778/LPC4078/STM32F207. 100% наработок кода компании для устройств были написаны на C/C++, однако прогресс не стоит на месте, и периодически необходимо актуализировать инструменты и технологии разработки, особенно с учетом новых аппаратных возможностей. Из статьи станет ясно, как мы дошли до жизни такой и почему выбрали Golang для создания очередного набора решений.

Выбор стека технологий важен для всех компаний, которые занимаются разработкой железа и перерастают крошечные embedded контроллеры на Cortex M0/M3/M4/M7. Обычно команды при переходе на новую платформу выбирают одно из двух решений: стараются сделать новую версию системы на новом железе/технологиях/архитектуре, превращая решение в нестабильный долгострой, или наоборот — вносят минимальное количество изменений, но иногда вместо совокупности положительных черт разных подходов получают совокупность отрицательных.

В статье исследованы особенности различных языков программирования/технологий (Java, Python, C/C++, Rust, Golang), их плюсы и минусы, сформулированы критерии выбора и представлен выбор команды АТОЛ.

Для анализа использован метод SWOT-анализа. В качестве источников данных — информация сайтов фреймворков. Помимо этого, косвенная информация о боли и страданиях разработчиков получена на Stackoverflow, и часть субъективных выводов сделана на основе моего экспертного мнения за более чем 30-летний опыт программирования.


Читать: https://habr.com/ru/post/587524/?utm_campaign=587524
How to use Stream allMatch() and anyMatch() function in Java? Example Tutorial

Hello friends, we all know how streams are super important for our day-to-day needs in programming and coding nowadays. But, do we know all the stream functionalities? Of course not. ...

Read: http://www.java67.com/2021/11/how-to-use-stream-allmatch-and-anymatch.html
Top 5 Spring Security Online Training Courses for Java Developers in 2021

Security is one of the most important aspects of a modern web application, be it a Java web application, .NET, or writing using any other web technology. In the Java world, Spring Security rule the...

Read: http://www.java67.com/2017/12/top-5-spring-security-online-training-courses.html
5 Free Linux Courses for Programmers and IT Professionals to Learn Online [2021]

Linux is one of the most popular operating systems to run server-side applications. I have seen almost all Java applications running on Linux, barring a couple of them, which run on Windows as a...

Read: http://www.java67.com/2018/02/5-free-linux-unix-courses-for-programmers-learn-online.html
Top 5 Free R Programming Courses for Beginners in 2022 - Best of Lot

More and more people are learning the R programming language to become Data scientists, one of the hottest and high-paying technical jobs on the planet. Though I am from Python camp when it comes to...

Read: http://www.java67.com/2018/09/top-5-free-R-programming-courses-for-Data-Science-Machine-Learning-Programmers.html
Top Java Blogs Weekly: Best of 46/2021

Best of Top Java Blogs, year 2021, week 46

Read: https://www.topjavablogs.com/news/best-of-46-2021
Top 21 Websites to Learn Coding for FREE in 2021 - Best of Lot

Hello folks, if you want to learn coding from scratch and looking for some free online training websites or you are someone who is learning programming and coding by yourself and looking for some...

Read: http://www.java67.com/2018/06/21-websites-to-learn-how-to-code-for.html
Top 5 Free Courses to Learn C Programming for Beginners in 2021 - Best of Lot

Hello guys, if you want to learn the C Programming language and looking for a free online course then you have come to the right place. In the past, I have shared the best C programming courses and...

Read: http://www.java67.com/2020/07/5-free-courses-to-learn-c-programming.html
How to use Spliterator in Java 8 - Example Tutorial

Hello friends, we are here today again on the journey of Java. And today, we are gonna learn about SplitIterator class from Stream package that may not be used in your day-to-day life but can...

Read: http://www.java67.com/2021/11/how-to-use-spliterator-in-java-8.html
Red Hat Releases Language Support for Java Plugin 1.0 for VSCode

Red Hat has released version 1.0 of Language support for Java on VSCode that supports Java 17, displaying type hierarchies and improved performance. The source lookup feature has been improved and now supports unmanaged projects and is able to display sources of any library available on Maven central. This release also contains new code actions and support for Gradle files written in Kotlin.
By Johan Janssen

Read: https://www.infoq.com/news/2021/11/java-plugin-version-1-vscode/
GraalVM 21.3 Supports Java 17

Oracle Labs released GraalVM 21.3, featuring support for Java 17 and JDK Flight Recorder (JFR) for low-overhead production profiling of native Java executables. Compared to version 21.1 from April 2021, this release creates 14% smaller native executables for Spring PetClinic JDBC with 20% less build time. The release runs applications faster and begins to support the Java Platform Module System.
By Karsten Silz

Read: https://www.infoq.com/news/2021/11/graalvm-21-3-java-17/
Top 5 Free Docker Courses for Beginners to Learn Online in 2021 - Best of Lot

If you are an application developer working in Java, Python, JavaScript, C#, or any other language and want to become a DevOps engineer or someone who wants to learn Docker, then you have come to the...

Read: http://www.java67.com/2018/02/5-free-docker-courses-for-java-and-DevOps-engineers.html
Top 10 Cloud Certification (AWS, Azure, and GCP) You can Aim in 2022 - Best of Lot

Hello guys, if you are aiming for cloud certifications in 2022 but are not sure which cloud certification should you go for then you have come to the right place. Earlier, I have shared a list of...

Read: http://www.java67.com/2020/09/top-10-cloud-certification-you-can-aim.html
Соревнование BCS Coding Days

BCS Coding Days — это задачи для системных аналитиков, Android и Java-разработчиков с призовым фондом 1 500 000 рублей.

Читать: «Соревнование BCS Coding Days»