![]() |
Java Best Practices For Efficient, Scalable, And Secure Code - Printable Version +- Softwarez.Info - Software's World! (https://softwarez.info) +-- Forum: Library Zone (https://softwarez.info/Forum-Library-Zone) +--- Forum: Video Tutorials (https://softwarez.info/Forum-Video-Tutorials) +--- Thread: Java Best Practices For Efficient, Scalable, And Secure Code (/Thread-Java-Best-Practices-For-Efficient-Scalable-And-Secure-Code) |
Java Best Practices For Efficient, Scalable, And Secure Code - AD-TEAM - 06-29-2024 ![]() Java Best Practices For Efficient, Scalable, And Secure Code Published 3/2024 MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz Language: English | Size: 20.86 GB | Duration: 33h 10m Tips and Tricks from OOP Foundations to Advanced Architecture Design Concepts - Guide for Developers, Architects, QAs
[b]What you'll learn[/b] Java Best Practices Solid Foundation in OOP Principles Application of SOLID Principles Effective OOP Interview Preparation Hands-On Exam on Object-Oriented Programming Understanding Java Platform Module System (JPMS) Comprehensive Testing Techniques for Java Platform Adoption of TDD, BDD & ATDD Methodologies Object-Oriented Architecture Design The Best Clean Code Practices Application of GoF Design Patterns Preparation for Design Patterns Interviews Stay Updated with Java New Versions Effective Logging Practices in Java Java Secure Coding Practices Designing RESTful Architectures Understanding Software Development Metrics and KPIs Web Application Design Patterns [b]Requirements[/b] Basic Java Knowledge: A fundamental understanding of Java programming is essential. Students should be familiar with Java syntax, data types, control structures, and basic concepts. Programming Experience: Participants should have prior experience in writing Java code. Familiarity with coding practices and basic software development concepts is advantageous. Development Environment Setup: Students should have a working Java development environment set up on their machines. This includes the Java Development Kit (JDK), Integrated Development Environment (IDE) like IntelliJ or Eclipse, and a version control system (e.g., Git). Familiarity with Version Control: Some familiarity with version control systems, particularly Git, is recommended. This knowledge will aid in collaborative coding practices and project management. Motivation for Best Practices: An eagerness to learn and apply best practices in Java development is crucial. The course emphasizes industry-standard approaches to writing efficient, maintainable, and secure code. [b]Description[/b] Unlock the full potential of Java development with my comprehensive course on best practices. Whether you're a Java developer looking to elevate your coding skills, a Development Lead, an Architect, or a QA professional aiming to enhance testing efficiency. This course is your gateway to a higher level of Java expertise. It provides a deep dive into industry-proven techniques.Key Learning Points:Solid Foundation in OOP Principles:Master the fundamental concepts of OOP and discover their direct applications in Java development.Application of SOLID Principles:Learn how to apply SOLID principles systematically, ensuring the creation of Java code that is robust, scalable, and easily maintainable.Object-Oriented Architecture Design ![]() ![]() Overview Section 1: Introduction Lecture 1 Communication plan Lecture 2 Unlimited access to Learn-IT application for students Lecture 3 Tips to Improve Your Course Taking Experience Section 2: OOP Basics Lecture 4 Object-oriented programming: Basics Lecture 5 Classes & Objects Lecture 6 Different types of Classes, Abstract keyword and Abstract classes Lecture 7 Interfaces Section 3: OOP Core Principles - Inheritance, Polymorphism, Encapsulation and Abstraction Lecture 8 Inheritance Lecture 9 Polymorphism and 'final' keyword Lecture 10 'static' keyword Lecture 11 Encapsulation Lecture 12 Object, JNI and Object class overview Section 4: SOLID Principles Lecture 13 SOLID principles overview & Single Responsibility Principle Lecture 14 Open / Closed Principle Lecture 15 Liskov Substitution Principle Lecture 16 Interface Segregation Principle Lecture 17 Dependency Inversion Principle Section 5: ===== OOP: Interview Preparation ===== Lecture 18 How to be prepared for the interview? Lecture 19 Part 1: OOP Interview - Questions and Answers Lecture 20 Part 2: OOP Interview - Questions and Answers Section 6: Practice: EXAM OOP & Object-Oriented e-Commerce console applications Lecture 21 Exam and homework for OOP topic Section 7: Object-oriented Architecture, Clean Code Design (Advanced) Lecture 22 Clean Code Architecture, Coupling & Cohesion Lecture 23 Tell, Don't Ask Pricniple & Data Structures Lecture 24 Law of Demeter Lecture 25 Packaging Pricniples p.1: Cohesion Principles Lecture 26 Packaging Pricniples p.2: Coupling Principles and Others Section 8: GoF Design Patterns of Software Architecture in OOP Lecture 27 GoF Patterns: Overview Lecture 28 Creational Patterns Lecture 29 Structural Patterns, p.1 Lecture 30 Structural Patterns, p.2 Lecture 31 Behevioral Patterns, p.1 Lecture 32 Behevioral Patterns, p.2 Lecture 33 Behevioral Patterns, p.3 Section 9: ===== Design Patterns: Interview Questions ===== Lecture 34 Part 1: OOP & Design Patterns Interview - Questions and Answers Section 10: Java Platform Module System: Modules in Java & Migration of Java Apps Lecture 35 Modules in Java: Modular Application Example Lecture 36 Migration of Java Apps: Example of migration to a modular application Section 11: Testing for Software Engineers Lecture 37 Testing for software engineers: Overview Section 12: Unit Testing & JUnit 5 Lecture 38 Unit Testing & JUnit Overview Lecture 39 JUnit 5 examples VS JUnit 4 + Equivalence class partitioning Lecture 40 JUnit 5 API (Advanced) & Test Code Coverage Lecture 41 JUnit 5 API (Advanced p. 2) & Hamcrest Library Section 13: Integration testing & Mockito Lecture 42 Integration Testing in Java Lecture 43 Mockito: Part 1 Lecture 44 Mockito: Part 2 Section 14: PowerMockito Lecture 45 PowerMock Section 15: TDD, BDD & ATTD Lecture 46 Test-driven development: Theory Lecture 47 BDD & ATTD Lecture 48 TDD, BDD & ATTD - Practice Section 16: Java: New Versions Lecture 49 Java 8 Features (Lambda, Stream API, Optional, Effectively Final, etc.) Lecture 50 java.util.Optional - Optional in Java Lecture 51 Java 9: Stream API Updates, Multi-Resolution Image, Stack-Walking API, etc. Lecture 52 Java 9: Process API & CompletableFuture API updates, Interface Private Methods Lecture 53 Java 9: jlink & jshell Lecture 54 Java 9: Multi-Release JAR Files & Compact Strings Lecture 55 Java 9: Deprecated & Removed Features Lecture 56 Reactive Programming in Java: Flow API, Reactive Streams Lecture 57 Java 10: 'var' variables (Type inference), Docker support, Flex Heap Size, etc. Lecture 58 Java 10: Other improvements, Removals, Deprecations, Release Versioning Lecture 59 Java 11: LTS Concept, New HTTP Client, String & Files API Updates Lecture 60 Java 11: Collection & Predicate API Updates, Nest-Based Access Control & more Lecture 61 Java 12: CompactNumberFormat, Teeing Collector, String.indent(), transform() Lecture 62 Java 13: Socket API, newFileSystem() method, ZGC Uncommit Unused Memory & others Lecture 63 Java 14: Switch expressions, Currency Format, Helpful NullPointerExceptions Lecture 64 Java 15: Text Blocks, Hidden Classes, new String methods Lecture 65 Java 16: JEP 395 - Records Lecture 66 Java 16: instanceof, Day Period Support, Stream.toList() & others Lecture 67 Java 17: Sealed Classes & other improvements Section 17: Web Application Design Patterns - Best Practices Lecture 68 DAO (Data Access Object) Design Pattern Lecture 69 MVC Design Pattern Lecture 70 Layered Architecture Section 18: ===== Exam: MVC & Layered Architecture ===== Lecture 71 Task Overview Lecture 72 Solution Overview: Part 1 Lecture 73 Solution Overview: Part 2 Lecture 74 Solution Overview: Part 3 Section 19: Best Practices on Using Resources - Connection Pooling Lecture 75 Connection Pooling: DBCP, C3P0, HikariCP & Tomcat Connection Pool with JNDI Section 20: Best Practices of Secure Coding in Java Lecture 76 OWASP Top 10: Overview Lecture 77 Broken Access Control Lecture 78 Cryptography Failures (Theory, Sensitive Data, Data Breach, Types of Failures) Lecture 79 Cryptography Failures (Practical Examples, SQL Injections, TLS/SSL, HTTPS) Lecture 80 Cryptography Failures (Examples, Password Encryption, Hashing, Salting) Lecture 81 Injection (Overview, Fuzzing, CWEs, Impact, Injection Types, Command Injection) Lecture 82 Injection (Cross Site Scripting, Types of XSS, SQL, JPA, NoSQL Injections) Lecture 83 Injection (XPath Injection, Log Injection, Input Validation) Lecture 84 Insecure Design (Overivew, CWEs, Shift Left Security, Threat Modeling Manifesto) Lecture 85 Insecure Design (Secure Design Process, Security Controls, Metrics, Examples) Lecture 86 Security Misconfiguration (Overview, CWEs, Types, Real-life attacks) Lecture 87 Security Misconfiguration (Hardening, Zero Trust, Defense in Depth, Practice) Lecture 88 Vulnerable & Outdated Components Lecture 89 Identification & Authentication Failures Lecture 90 Software & Data Integrity Failures Lecture 91 Security Logging & Monitoring Failures Lecture 92 Server-Side Request Forgery (SSRF) Section 21: Logging in Java Lecture 93 Logging in Java: Part 1 (Logging theory, Logging Levels, Java Logging Framework) Lecture 94 Logging in Java: Part 2 (Log4J, Logback, SLF4J) Section 22: ===== EXAM TASK: OWASP Top 10, Secure Coding & Logging ===== Lecture 95 Exam Task: Description and Solution (with reference to the source code) Section 23: Best Practices of Creation of REST Architecture in Java Applications Lecture 96 REST Architecture: Overview and Key Principles Lecture 97 Naming Convention for RESTful Services Lecture 98 RESTful Service Implementation with Spring MVC Lecture 99 Review of tools for API testing & Postman Installation Lecture 100 API Testing with Postman Section 24: Best Practices of Tracking Software Development Perforamnce, Clean Code & others Lecture 101 Why this section is in this course and why it is important? Lecture 102 Metric, KPI & OKR Lecture 103 RAG Status to Present KPI Lecture 104 Introduction to Engineering Excellence Metrics & KPIs Lecture 105 Development Metrics & KPIs: Tech Debt Ratio & Index, Cyclomatic Complexity Lecture 106 Development Metrics & KPIs: Unit Test Related Metrics - Part 1 Lecture 107 Development Metrics & KPIs: Unit Test Related Metrics - Part 2 Lecture 108 Development Metrics & KPIs: Duplicate Code & Commented Code Index Lecture 109 Development Metrics & KPIs: Code Review Feedback Loop Time & Code Reviews Section 25: Bonus section Lecture 110 Bonus lesson Java Developers: Intermediate and experienced Java developers looking to enhance their skills and adopt industry best practices in Java programming.,Java Enthusiasts and Students: Students and enthusiasts who want to build a strong foundation in Java programming and gain insights into industry-standard practices.,Technical Leads and Architects: Technical leads and architects aiming to reinforce their understanding of Java best practices for designing scalable and maintainable software architectures.,QA Engineers: QA professionals aiming to understand Java best practices to enhance the quality and efficiency of their testing efforts.,QA Automation Engineers: Individuals involved in QA automation who want to improve their Java programming skills and incorporate best practices into their automated testing frameworks.,QA Leads and Managers: QA leads and managers seeking insights into Java best practices to guide their teams in implementing effective and maintainable testing strategies. ![]() |