Vignesh Ramesh gives an overview of Java modules in Java 9. Modules allow for strong encapsulation by only exporting certain packages. This addresses issues in Java 8 where all packages were effectively public. The module system solves problems like weak encapsulation and jar hell. Key aspects include module descriptors, exports, requires, and the new jlink tool for creating custom runtime images.
The document provides an overview of new features in Java 9, including:
- The introduction of a module system that divides the JDK into smaller modules, allowing applications to only use necessary modules.
- Private methods can now be defined in interfaces to avoid redundant code.
- Multi-release JAR files allow libraries to support multiple Java versions.
- Various commands are described to work with the new module system, such as listing modules, describing modules, compiling modular code, and creating a custom JRE with only required modules.
Dispense del corso IN530 "Sistemi per l'elaborazione delle informazioni" presso il Corso di Laurea in Matematica dell'Università degli Studi Roma Tre.
[http://www.mat.uniroma3.it/users/liverani/IN530/]
The document discusses object-relational mapping and Hibernate. It describes common object-relational mismatches including problems of granularity, subtypes, associations, and data navigation. It then provides an overview of Hibernate and JPA, how to start a Hibernate project, POJOs, Hibernate APIs, configuration, annotations, identifier generators, dynamic SQL generation, immutable entities, property access strategies, generated property values, default property values, entities vs value types, and mapping of collection properties.
This file contains the Spring Framework introduction.
Mainly about what is Spring Framework and its components, feature, advantages with a simple program example.
Maven is a project management and comprehension tool that can be used for building, reporting and managing Java projects. It provides capabilities for compiling code, running tests, managing dependencies and performing other build tasks. Maven uses a project object model (POM) file to store build configuration which includes project details, dependencies, plugins and other metadata. It standardizes project layout and builds projects using a lifecycle made up of phases that execute plugin goals.
Java 10 contains several new features including local variable type inference using the var keyword, time-based release versioning, improved support for Docker containers, and various library enhancements. It focuses on improving performance and usability. Some notable changes include local variable type inference for concise code, parallel full GC for the G1 collector to reduce latency, and application data sharing to improve startup times.
The java persistence API provides a specification for persisting, reading, and managing data from your java object to your relational tables in the database. JPA specifies the set of rules and guidelines for developing interfaces that follow standards.
Children belong to life itself, not their parents. While parents can give their children love and care for their physical needs, children have their own souls and thoughts that parents cannot fully know or control. Parents should accept their children as individuals rather than trying to make them copies of themselves.
The document provides an overview of new features in Java 9, including:
- The introduction of a module system that divides the JDK into smaller modules, allowing applications to only use necessary modules.
- Private methods can now be defined in interfaces to avoid redundant code.
- Multi-release JAR files allow libraries to support multiple Java versions.
- Various commands are described to work with the new module system, such as listing modules, describing modules, compiling modular code, and creating a custom JRE with only required modules.
Dispense del corso IN530 "Sistemi per l'elaborazione delle informazioni" presso il Corso di Laurea in Matematica dell'Università degli Studi Roma Tre.
[http://www.mat.uniroma3.it/users/liverani/IN530/]
The document discusses object-relational mapping and Hibernate. It describes common object-relational mismatches including problems of granularity, subtypes, associations, and data navigation. It then provides an overview of Hibernate and JPA, how to start a Hibernate project, POJOs, Hibernate APIs, configuration, annotations, identifier generators, dynamic SQL generation, immutable entities, property access strategies, generated property values, default property values, entities vs value types, and mapping of collection properties.
This file contains the Spring Framework introduction.
Mainly about what is Spring Framework and its components, feature, advantages with a simple program example.
Maven is a project management and comprehension tool that can be used for building, reporting and managing Java projects. It provides capabilities for compiling code, running tests, managing dependencies and performing other build tasks. Maven uses a project object model (POM) file to store build configuration which includes project details, dependencies, plugins and other metadata. It standardizes project layout and builds projects using a lifecycle made up of phases that execute plugin goals.
Java 10 contains several new features including local variable type inference using the var keyword, time-based release versioning, improved support for Docker containers, and various library enhancements. It focuses on improving performance and usability. Some notable changes include local variable type inference for concise code, parallel full GC for the G1 collector to reduce latency, and application data sharing to improve startup times.
The java persistence API provides a specification for persisting, reading, and managing data from your java object to your relational tables in the database. JPA specifies the set of rules and guidelines for developing interfaces that follow standards.
Children belong to life itself, not their parents. While parents can give their children love and care for their physical needs, children have their own souls and thoughts that parents cannot fully know or control. Parents should accept their children as individuals rather than trying to make them copies of themselves.
The monk who sold his ferrari. summarySandeep Bhat
The document summarizes the self-help book "The Monk Who Sold His Ferrari" by Robin Sharma. It discusses the author, characters in the book, synopsis of the story, and the 7 virtues that are explored in the book: master your mind, follow your purpose, practice kaizen, live with discipline, respect your time, selflessly serve others, and embrace the present. The book tells the story of Julian Mantle, a successful lawyer who has a heart attack and decides to quit his job and possessions to travel to India in search of a new life and understanding.
The document discusses how using "ifs and buts" in our thinking can act as barriers to success. It presents examples of replacing "ifs" with "whens" to adopt a more optimistic mindset, and adding "then again" to "buts" to consider alternative perspectives. By removing doubts and conditional thinking, and instead approaching opportunities and challenges wholeheartedly without unnecessary hesitation, we can find greater success and happiness in life.
Hibernate is an object-relational mapping tool that allows developers to interact with a relational database (such as MySQL) using object-oriented programming. It provides functionality for persisting Java objects to tables in a database and querying those objects using HQL or SQL. Hibernate utilizes XML mapping files or annotations to define how Java classes map to database tables. A typical Hibernate application includes entity classes, mapping files, configuration files, and a controller class to manage persistence operations.
"Building with Gradle" by Laurynas Tretjakovas.
A short introduction to Gradle. How to start using Gradle for Java projects and how does it compare to Maven and Ant.
The document discusses the contributor's vision of success and scope of contribution. It states that contributors have a deeper definition of success beyond just external rewards or material gains. They find deep inner fulfillment and focus on both external success as well as internal success. Contributors also think about how they can contribute to their organization and society, not just themselves. Non-contributors only think about personal benefits. The moral is we should enjoy challenges and increase capabilities while working as a team, and always try to contribute to others to gain self-satisfaction.
This document provides an overview of the Spring Framework core module topics to be covered in a 2-week training, including introduction to Spring, basic beans, the IoC container, bean lifecycle, and annotations. The instructor team is listed and the topics are broken down into dependency injection, Spring modules, and a lab on basic DI setup.
PPT FOR GTU STUDENT IN CPDP.
To Identify how people (contributors) have found solutions to challenges they have faced, and how
they practiced “Designing solutions”.
Spring is an open source Java application framework that uses dependency injection and inversion of control to reduce coupling between application layers. It includes modules for core functions, aspects, data access, web MVC, and other services. Spring promotes loose coupling, testability, and separation of concerns through its lightweight container that manages lifecycles and dependencies of application components.
Inspirational Stories About Life - "The Story About The Boulder"Michelle Grigsby
One of My Favorite Inspirational Stories About Life - The Story About The Boulder.
Please visit my blog to get more inspirational stories!
http://onlinewithmichelle.com/category/inspiration/
Connect with me on Facebook: https://Facebook.com/OnlineWithMichelle
The document discusses how nothing is impossible through the example of a snail. It states that while a snail may be slow, ugly, and funny looking, it does not desist in its efforts. The document encourages the reader to try things rather than saying they are impossible, as success is found through trying. It concludes by saying that speaking English is achievable if one puts in the effort to try.
In this session you will learn:
Understand Spring framework overview & its salient features
Spring concepts (IoC container / DI)
Spring-AOP basics
Spring ORM / Spring DAO overview
Spring Web / MVC overview
For more information, visit: https://www.mindsmapped.com/courses/software-development/java-developer-training-for-beginners/
Python RESTful webservices with Python: Flask and Django solutionsSolution4Future
Slides contain RESTful solutions based on Python frameworks like Flask and Django. The presentation introduce in REST concept, presents benchmarks and research for best solutions, analyzes performance problems and shows how to simple get better results. Finally presents soruce code in Flask and Django how to make your own RESTful API in 15 minutes.
JasperReports Library is an open source reporting engine, written entirely in Java. JasperReports Library is able to use data coming from any kind of data source and produce documents that can viewed, printed, or exported in a variety of document formats, including HTML, PDF, Excel, OpenOffice and Word.
This document compares and contrasts Java EE and Spring frameworks. It provides examples of implementing common functionality like dependency injection, transactions, scheduling and messaging using annotations and configuration files in both platforms. The document aims to demonstrate that Spring and Java EE can be used side-by-side and have similar patterns for common tasks but different implementations. It also discusses how each integrates with the other for certain features.
The document provides an overview of Java Virtual Machine (JVM) memory management and garbage collection strategies. It discusses the basic architecture of the JVM and how memory is divided into generations (young and old). The young generation uses strategies like mark-and-sweep and mark-and-copy for fast garbage collection of short-lived objects. The old generation uses mark-and-compact for longer-lived objects, which has higher overhead. It also describes different garbage collector implementations and considerations for selecting and tuning collectors based on application needs.
Hibernate is an object/relational mapping tool that maps objects to a relational database. The document provides an overview of key Hibernate concepts like the SessionFactory, Session, persistent and transient objects, and transactions. It also discusses Hibernate tools for mapping files, schema generation, code generation, and configuration via properties files. An example mapping of music tracks, artists, and comments is presented to demonstrate basic Hibernate functionality.
The document discusses Spring framework concepts including inversion of control (IOC), dependency injection, Spring modules, the IOC container, and configuring beans through XML. It provides examples of injecting properties, constructor arguments, inner beans, and aliases in the Spring XML configuration file. The examples demonstrate how Spring's IOC container instantiates, configures and wires Java objects defined as beans in the configuration.
Java 9 ships in July, are you ready for Java 9 modules? Java 9 modules (aka Project Jigsaw) is the biggest fundamental change to the Java runtime. Code that use Oracle/Sun private APIs will break. This session will cover the basics of Java 9 modules and also the current state of tooling. The ramifications to existing and legacy applications will be covered along with the steps you’ll need to take to harness the power of modules and write more maintainable systems.
An introduction to Java 9 Module System.
Presented at Software Craftsmansip Turkey Community (https://www.meetup.com/Software-Craftsmanship-Turkey/) (08.Nov.2017)
The monk who sold his ferrari. summarySandeep Bhat
The document summarizes the self-help book "The Monk Who Sold His Ferrari" by Robin Sharma. It discusses the author, characters in the book, synopsis of the story, and the 7 virtues that are explored in the book: master your mind, follow your purpose, practice kaizen, live with discipline, respect your time, selflessly serve others, and embrace the present. The book tells the story of Julian Mantle, a successful lawyer who has a heart attack and decides to quit his job and possessions to travel to India in search of a new life and understanding.
The document discusses how using "ifs and buts" in our thinking can act as barriers to success. It presents examples of replacing "ifs" with "whens" to adopt a more optimistic mindset, and adding "then again" to "buts" to consider alternative perspectives. By removing doubts and conditional thinking, and instead approaching opportunities and challenges wholeheartedly without unnecessary hesitation, we can find greater success and happiness in life.
Hibernate is an object-relational mapping tool that allows developers to interact with a relational database (such as MySQL) using object-oriented programming. It provides functionality for persisting Java objects to tables in a database and querying those objects using HQL or SQL. Hibernate utilizes XML mapping files or annotations to define how Java classes map to database tables. A typical Hibernate application includes entity classes, mapping files, configuration files, and a controller class to manage persistence operations.
"Building with Gradle" by Laurynas Tretjakovas.
A short introduction to Gradle. How to start using Gradle for Java projects and how does it compare to Maven and Ant.
The document discusses the contributor's vision of success and scope of contribution. It states that contributors have a deeper definition of success beyond just external rewards or material gains. They find deep inner fulfillment and focus on both external success as well as internal success. Contributors also think about how they can contribute to their organization and society, not just themselves. Non-contributors only think about personal benefits. The moral is we should enjoy challenges and increase capabilities while working as a team, and always try to contribute to others to gain self-satisfaction.
This document provides an overview of the Spring Framework core module topics to be covered in a 2-week training, including introduction to Spring, basic beans, the IoC container, bean lifecycle, and annotations. The instructor team is listed and the topics are broken down into dependency injection, Spring modules, and a lab on basic DI setup.
PPT FOR GTU STUDENT IN CPDP.
To Identify how people (contributors) have found solutions to challenges they have faced, and how
they practiced “Designing solutions”.
Spring is an open source Java application framework that uses dependency injection and inversion of control to reduce coupling between application layers. It includes modules for core functions, aspects, data access, web MVC, and other services. Spring promotes loose coupling, testability, and separation of concerns through its lightweight container that manages lifecycles and dependencies of application components.
Inspirational Stories About Life - "The Story About The Boulder"Michelle Grigsby
One of My Favorite Inspirational Stories About Life - The Story About The Boulder.
Please visit my blog to get more inspirational stories!
http://onlinewithmichelle.com/category/inspiration/
Connect with me on Facebook: https://Facebook.com/OnlineWithMichelle
The document discusses how nothing is impossible through the example of a snail. It states that while a snail may be slow, ugly, and funny looking, it does not desist in its efforts. The document encourages the reader to try things rather than saying they are impossible, as success is found through trying. It concludes by saying that speaking English is achievable if one puts in the effort to try.
In this session you will learn:
Understand Spring framework overview & its salient features
Spring concepts (IoC container / DI)
Spring-AOP basics
Spring ORM / Spring DAO overview
Spring Web / MVC overview
For more information, visit: https://www.mindsmapped.com/courses/software-development/java-developer-training-for-beginners/
Python RESTful webservices with Python: Flask and Django solutionsSolution4Future
Slides contain RESTful solutions based on Python frameworks like Flask and Django. The presentation introduce in REST concept, presents benchmarks and research for best solutions, analyzes performance problems and shows how to simple get better results. Finally presents soruce code in Flask and Django how to make your own RESTful API in 15 minutes.
JasperReports Library is an open source reporting engine, written entirely in Java. JasperReports Library is able to use data coming from any kind of data source and produce documents that can viewed, printed, or exported in a variety of document formats, including HTML, PDF, Excel, OpenOffice and Word.
This document compares and contrasts Java EE and Spring frameworks. It provides examples of implementing common functionality like dependency injection, transactions, scheduling and messaging using annotations and configuration files in both platforms. The document aims to demonstrate that Spring and Java EE can be used side-by-side and have similar patterns for common tasks but different implementations. It also discusses how each integrates with the other for certain features.
The document provides an overview of Java Virtual Machine (JVM) memory management and garbage collection strategies. It discusses the basic architecture of the JVM and how memory is divided into generations (young and old). The young generation uses strategies like mark-and-sweep and mark-and-copy for fast garbage collection of short-lived objects. The old generation uses mark-and-compact for longer-lived objects, which has higher overhead. It also describes different garbage collector implementations and considerations for selecting and tuning collectors based on application needs.
Hibernate is an object/relational mapping tool that maps objects to a relational database. The document provides an overview of key Hibernate concepts like the SessionFactory, Session, persistent and transient objects, and transactions. It also discusses Hibernate tools for mapping files, schema generation, code generation, and configuration via properties files. An example mapping of music tracks, artists, and comments is presented to demonstrate basic Hibernate functionality.
The document discusses Spring framework concepts including inversion of control (IOC), dependency injection, Spring modules, the IOC container, and configuring beans through XML. It provides examples of injecting properties, constructor arguments, inner beans, and aliases in the Spring XML configuration file. The examples demonstrate how Spring's IOC container instantiates, configures and wires Java objects defined as beans in the configuration.
Java 9 ships in July, are you ready for Java 9 modules? Java 9 modules (aka Project Jigsaw) is the biggest fundamental change to the Java runtime. Code that use Oracle/Sun private APIs will break. This session will cover the basics of Java 9 modules and also the current state of tooling. The ramifications to existing and legacy applications will be covered along with the steps you’ll need to take to harness the power of modules and write more maintainable systems.
An introduction to Java 9 Module System.
Presented at Software Craftsmansip Turkey Community (https://www.meetup.com/Software-Craftsmanship-Turkey/) (08.Nov.2017)
This document provides an agenda and information for a Java 9/Jigsaw hack day event hosted by the Atlanta Java Users Group. The agenda includes sessions on Java 9 modularization, JLink, migrating non-modular apps to Java 9, and feedback. Presenters will discuss what modularization means in Java 9, including splitting the JDK into named modules that declare dependencies. Attendees will have hands-on exercises and are encouraged to provide live feedback.
Huge JRE images were a huge problem for packaging and deploying small and lightweight tools based on Java. Have you tried to reduce Java runtime images? You will be surprised how well that works. From JDK 9 a minimal image targeting desktops can be as small as 18MB!This is a huge improvement but how does this black-magic work? I will be wowing you with an overview of Java’s custom runtime image tooling and present a interactive demo on how to create a mini Java runtime image file. We bust the myths around Java cloud computing and show you how to embraced Cloud Orientated development with Java. See how the new Java module system works with general patterns for developing a modular Java Cloud application.
This document summarizes changes to the Java programming language from JDK 9 to JDK 16, including new features and modules. Some key points:
- Java has moved to a six-month release cycle, delivering more features faster than before.
- Modules were introduced in JDK 9 to improve modularity. Modules group related code and dependencies.
- Incubator modules and preview features allow testing of non-final APIs before inclusion in the Java SE platform.
- Local variable type inference using 'var' was added in JDK 10 for simpler declaration of local variables when types can be inferred.
- Modules, the module system, and tools like jlink and jdeps help manage dependencies
This document discusses JBoss Modules, which provides a module system for loading and running modules in Application Server 7. It describes modules as collections of code and resources that implement specific domain requirements. JBoss Modules defines each module as having its own classloader, allowing isolation and preventing conflicts between modules. It manages module dependencies by only loading required imports and exporting specified APIs. The presentation demonstrates how JBoss Modules loads and executes modules quickly and efficiently to serve as the core of Application Server 7.
OSGi Community Event 2018 Presentation by BJ Hargrave (IBM)
Abstract: Java 9 introduced the Java Platform Module System (JPMS) as a way to modularize the Java platform and it can be also be used by developers to modularize their own applications, although JPMS lack a number of important features for software running on the Java platform.
As people look to support the latest versions of the Java platform, changes introduced in Java 9 related to JPMS led to the needs for some features in the OSGi Core specification. OSGi framework implementations like Eclipse Equinox and Apache Felix and tools like Bnd were updated to support these new features.
This session will explore the Java 9+ support added to OSGi Core R7 and Bnd and help you learn how to navigate the world of Java 9+ and OSGi.
Java 9 introduced the Java Platform Module System (JPMS) as a way to modularize the Java platform and it can be also be used by developers to modularize their own applications, although JPMS lack a number of important features for software running on the Java platform.
As people look to support the latest versions of the Java platform, changes introduced in Java 9 related to JPMS led to the needs for some features in the OSGi Core specification. OSGi framework implementations like Eclipse Equinox and Apache Felix and tools like Bnd were updated to support these new features.
Java 9: Deep Dive into Modularity and Dealing with Migration IssuesGlobalLogic Ukraine
The speaker gave an overview of Project Jigsaw, explained benefits of modularity, told about module-info.java contents, dwelt upon potential migration issues and suggested their resolution; also, he revealed to the audience how to reduce the deployment size by using jlink.
This presentation by Oleh Krupenia (Senior Software Engineer, Consultant at GlobalLogic) was delivered at GlobalLogic Kharkiv Java Conference 2018 on June 10, 2018.
Modules in Java? Finally! (OpenJDK 9 Jigsaw, JSR376)Mihail Stoynov
This talk is for a very important new feature in Java SE 9. Code named Jigsaw, this feature modularizes the Java SE platform.
The coolest thing we do here is to create a custom JRE
Code: https://bitbucket.org/stybz/jigsaw.sty/
PPT: https://www.slideshare.net/mihailstoynov/modules-in-java-finally-openjdk-jigsaw
Video: https://www.youtube.com/watch?v=W5LeNPtPrqw
Java Core | Java 8 and OSGi Modularisation | Tim Ellison & Neil BartlettJAX London
The talk will cover a bit of background first to set things up: what is a module, why do we need a module system, summary of Java's existing support for modularity. Then it will move on to give a comparison of OSGi's and Jigsaw's dependency models. Pros and cons of each model in different environments will be discussed. Finally, opportunities and challenges for interoperability: from the perspective of both application developers (who may need to integrate modules from both kinds) and from library module developers (who may need to target both module systems)
The document discusses modularization in Java 8 and OSGi. It describes what modules are and why they are needed, including for managing dependencies and versioning. It outlines the characteristics of a good module system and compares how Java 8's Project Jigsaw and OSGi handle modularization. Key points include how both aim to address issues like class loading performance and dependency management, but OSGi has existing tools and does not require language changes.
This document discusses Java 9 and its new module system. The main features of Java 9 include the Java Platform Module System (JPMS) which provides strong encapsulation and improves security and reliability. It also introduces a new modular structure for the Java SE platform. The document provides an overview of modules, automatic modules, and how to migrate existing applications to use the new module system.
Modules all the way down: OSGi and the Java Platform Module SystemTim Ellison
A talk about the Java Platform Module System defined in JSR 376, and OSGi modularity. Originally delivered at the OSGi Community Event held in conjunction with the EclipseCon Europe 2015 conference in Ludwigsburg, Germany.
Java 9 introduces a new release schedule with new versions every 6 months, with long term support versions every 3 years starting with Java 8. It features modules that allow encapsulation at the component/jar level by explicitly stating public packages and dependencies. Modules replace the classpath and allow easier selection of parts of the JRE. Services loaders allow modules to provide and consume interfaces.
Modularity of the Java Platform (OSGi, Jigsaw and Penrose)Martin Toshev
Seminar "Modularity of the Java Platform" of the Bulgarian Java User Group.
Topics of the seminar:
Modularity 101
Modularity on top of the platform: OSGi
Modularity of the platform: Jigsaw
OSGi and Jigsaw interoperability: Penrose
This document summarizes new features in Java 9 including Jshell for interactive coding, private methods in interfaces, factory methods for immutable collections, enhancements to try-with-resources, the Java Platform Module System (JPMS), Jlink for creating custom runtime images, and updates to the HTTP client and Process APIs. Key areas covered include modularization of the JDK, creating custom runtimes, improved resource management, and support for HTTP/2.
What we can expect from Java 9 by Ivan KrylovJ On The Beach
Java 9 is currently scheduled to become generally available in less then 1 year. Perhaps now is a good time to have a closer look at language proposals and API changes in Java 9. There are over 70 proposals targeted to Java 9, we will have a looks at some key ones, starting with java modularity. We will look at some breaking changes and ways to develop both short and long term solutions for adoption of new upcoming version of Java.
Batteries -Introduction – Types of Batteries – discharging and charging of battery - characteristics of battery –battery rating- various tests on battery- – Primary battery: silver button cell- Secondary battery :Ni-Cd battery-modern battery: lithium ion battery-maintenance of batteries-choices of batteries for electric vehicle applications.
Fuel Cells: Introduction- importance and classification of fuel cells - description, principle, components, applications of fuel cells: H2-O2 fuel cell, alkaline fuel cell, molten carbonate fuel cell and direct methanol fuel cells.
Discover the latest insights on Data Driven Maintenance with our comprehensive webinar presentation. Learn about traditional maintenance challenges, the right approach to utilizing data, and the benefits of adopting a Data Driven Maintenance strategy. Explore real-world examples, industry best practices, and innovative solutions like FMECA and the D3M model. This presentation, led by expert Jules Oudmans, is essential for asset owners looking to optimize their maintenance processes and leverage digital technologies for improved efficiency and performance. Download now to stay ahead in the evolving maintenance landscape.
artificial intelligence and data science contents.pptxGauravCar
What is artificial intelligence? Artificial intelligence is the ability of a computer or computer-controlled robot to perform tasks that are commonly associated with the intellectual processes characteristic of humans, such as the ability to reason.
› ...
Artificial intelligence (AI) | Definitio
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...IJECEIAES
Medical image analysis has witnessed significant advancements with deep learning techniques. In the domain of brain tumor segmentation, the ability to
precisely delineate tumor boundaries from magnetic resonance imaging (MRI)
scans holds profound implications for diagnosis. This study presents an ensemble convolutional neural network (CNN) with transfer learning, integrating
the state-of-the-art Deeplabv3+ architecture with the ResNet18 backbone. The
model is rigorously trained and evaluated, exhibiting remarkable performance
metrics, including an impressive global accuracy of 99.286%, a high-class accuracy of 82.191%, a mean intersection over union (IoU) of 79.900%, a weighted
IoU of 98.620%, and a Boundary F1 (BF) score of 83.303%. Notably, a detailed comparative analysis with existing methods showcases the superiority of
our proposed model. These findings underscore the model’s competence in precise brain tumor localization, underscoring its potential to revolutionize medical
image analysis and enhance healthcare outcomes. This research paves the way
for future exploration and optimization of advanced CNN models in medical
imaging, emphasizing addressing false positives and resource efficiency.
Introduction- e - waste – definition - sources of e-waste– hazardous substances in e-waste - effects of e-waste on environment and human health- need for e-waste management– e-waste handling rules - waste minimization techniques for managing e-waste – recycling of e-waste - disposal treatment methods of e- waste – mechanism of extraction of precious metal from leaching solution-global Scenario of E-waste – E-waste in India- case studies.
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsVictor Morales
K8sGPT is a tool that analyzes and diagnoses Kubernetes clusters. This presentation was used to share the requirements and dependencies to deploy K8sGPT in a local environment.
Embedded machine learning-based road conditions and driving behavior monitoringIJECEIAES
Car accident rates have increased in recent years, resulting in losses in human lives, properties, and other financial costs. An embedded machine learning-based system is developed to address this critical issue. The system can monitor road conditions, detect driving patterns, and identify aggressive driving behaviors. The system is based on neural networks trained on a comprehensive dataset of driving events, driving styles, and road conditions. The system effectively detects potential risks and helps mitigate the frequency and impact of accidents. The primary goal is to ensure the safety of drivers and vehicles. Collecting data involved gathering information on three key road events: normal street and normal drive, speed bumps, circular yellow speed bumps, and three aggressive driving actions: sudden start, sudden stop, and sudden entry. The gathered data is processed and analyzed using a machine learning system designed for limited power and memory devices. The developed system resulted in 91.9% accuracy, 93.6% precision, and 92% recall. The achieved inference time on an Arduino Nano 33 BLE Sense with a 32-bit CPU running at 64 MHz is 34 ms and requires 2.6 kB peak RAM and 139.9 kB program flash memory, making it suitable for resource-constrained embedded systems.
2. About Me
• I am Vignesh . Insanely passionate full stack developer with high
proficiency in Java, Scala, Node.js, JavaScript.
Github : https://github.com/vickii
Linkedin : https://www.linkedin.com/in/vickyramesh/
StackOverFlow :
3. What is a Module ?
• Module is a collection of packages designed for reuse.
• Modular JAR is a regular JAR with a module descriptor[a module-
info.class] in its root folder.
• A key motivation of the module system is strong encapsulation
4. Why Modules?
Whenever a new JVM is started the bootstrap classloader is
responsible to load key Java classes (from java.lang package) and other
runtime classes to the memory first.
rt.jar is about 64mb in jdk-8. Do we need all the classes runtime
classes?
Depends on the Application right?
5. Why modules?
There is no way to reuse a behavior defined inside a package in another
package unless and until it is public . But public is too open .
[Developers started using JDK internals which was not supposed to be
used ex: sun.misc.Unsafe Using it, you can create an instance of a class
without invoking it’s constructor code, initialization code, various JVM
security checks and all other low level things. Even if class has private
constructor, then also you can use this method to create new
instance.].
JDk8 contains about 218 packages. This weakens encapsulation. This
was one of the main reason why JDK itself was modularized.
6. Maven modules vs JPMS
MAVEN MODULES JPMS
Build Time only. Everything is on
classpath during runtime where no
boundaries are available
Compile time, Run Time
Sub-project Packages
7. Module vs JAR
• A module can decide which classes and interfaces to export to other
modules that require it. A Jar has no such encapsulation mechanism.
• The name is of a JAR can be changed. As long as the JVM classloader
finds the needed class on the classpath (which can be composed of a
single JAR, multiple JARs, or a mix between directories or JARs), the
name of the JAR file can be anything. However, the name of a module
can be explicitly referenced in the declaration of other modules, and
such the name defines it and cannot be changed freely.
9. Accessibility
Accessibility prior to JAVA 9 Accessibility on java9
public but only to specific modules
public only within a modules
public public to everyone
protected protected
<package> private <package> private
10. Public is no more an golden switch
• Public no longer means accessible if the package is not exported by
the parent module[module which has that class]
• This is the point of controversy in Java9 due to which many libraries
like Glassfish was failing on JDK-9 because they were using jdk
internals which are no longer exported.
Temporary access : ‘--illegal-access=permit’
Proposal: Allow illegal reflective access by default in JDK 9
http://mail.openjdk.java.net/pipermail/jigsaw-dev/2017-
May/012673.html
11.
12. JDEPS : Dependency Analyzer
• JDeps is a "Java [static] class dependency analyzer" that is useful
for quickly identifying "static dependencies of applications and
libraries.
• The input can be a path name to a .class file or a JAR File.
• Example : jdeps dependency list for junit-jar. –s option is for summary
13. Types of Modules In Java
• Named Modules
• Unnamed Module
• Automatic Modules
14. Named Module
• Contain a module-info.java
• Loaded from the module path.
• Only their exported packages are accessible and they can only require
and thus read other named modules (which excludes the unnamed
module).
15. Automatic Modules
• Does not contain a module-info.java.
• Loaded from the module path.
• There name is derived from the jar file name by default.
• Explicit naming is recommended by setting the Automatic-Module-
Name variable in MANIFEST.MF.
• They export all packages and requires all modules, including
automatic one’s.
• Automatic, or automatically named, modules are JARs without a
module-info.java that were loaded from the module path. Their name
is derived from the JAR file name, they export every package and read
any module, including other automatic ones.
16. Un-Named Modules
• Does not contain a module-info.java
• Loaded from classpath.
• Requires all named modules
• All classes within the unnamed module can read all other module
(named or unnamed) without any explicit declaration of any kind.
That also means that older classes (written prior to Java 9) can read
all modules defined by the new Module system
• Exports all packages
• The packages exported by unnamed module can only be read by
another unnamed module. It is not possible that a named module can
read (requires) the unnamed module
17. Creating an Module
• In Java 9, you need to have a specific file name by convention in order
to define modules with a specific filename. That filename should be
called module-info.java.
Example:
module modulename{}
• Don’t worry module is not a keyword in java
• If your module name is com.example.myapp then the module.info
should be placed at src/com.example.myapp/module-info.java path
18. Module-info.java
Module com.example.myapp{
exports com.example.myapp.utils;
requires java.base;
}
• This module[com.example.myapp] only needs types from the base
module 'java.base’ because every Java module needs 'java.base', it is
not necessary to explicitly require it.
• This module[com.example.myapp] only exports the package
com.example.myapp.utils for public use to other modules. Classes in
other packages cannot be accessed by other modules.
21. Implied Readability
• Let’s look at the java.sql module. It exposes the interface Driver,
which returns a Logger via its public
method getParentLogger(). Logger belongs to java.logging. Because
of that, java.sql requires transitive java.logging, so any module using
Java’s SQL features can also access the logging API.
JDK Example:
module java.sql {
requires transitive java.logging;
requires java.xml;
}
22. JLINK : The Java Linker
• Jlink is Java’s new command line tool through which we can create
our own customized JRE. It is an best illustration of the concept just
enough runtime.
• Usually, we run our program using the default JRE, but in case if you
want to create your own small customized JRE, then you can go
with the jlink concept.
• This feature is very useful in the era of microservices and
containerization
• jlink takes into account transitive dependencies from the top modules
and generates a custom Java image.
23. JLINK : Uses
class App {
public static void main(String[]args) {
System.out.prinltn("Hello World");
}
}
To execute this small “hello world” application, we require the
following .class files:
• App.class
• String.class
• System.class
• Object.class
24. JLINK : USES
• The default JRE contains 4000+ predefined Java .class files.
• If I execute my “hello world” application with the default JRE, then all
the predefined .class files will be executed. But if I only need 3-4 .class
files to execute my “hello world” application, then why I need to
maintain the outer .class files?
• The default JRE's size in jdk-8 is 203 MB. For executing my simple 1 KB
of code, I have to maintain 203 MB of JRE in my machine. It is a
complete waste of memory.
25. JLINK Commands :
jlink --module-path <modulepath> --add-modules <modules> --limit-
modules <modules> --output <path>
• –module-path specifies where to find the modules for the JDK. These
can be jar files, jmod files (a new file format with JDK 9 which is
similar to the jar format.
• –add-modules adds the modules we need (in this example our app)
• –limit-modules limits to just the modules that we know our
application needs (sometimes when modules are added, further
modules can be added via transitive dependencies. Here we can
specify that we only want certain modules)
• –output is this directory where the run-time image will be generated.
26. OSGI vs JPMS
OSGI JPMS
Framework Platform Feature. Was used to
modularize the java platform itself
Complex steep learning curve Simple when compared to OSGI
Solves many problems like JAR
Hell(Using classloaders),Circular
Dependency
Not solved/Not supported
27. Q & A
Links to code : https://github.com/vickii
Links to slide : https://www.slideshare.net/VigneshRamesh8
Linked in : https://www.linkedin.com/in/vickyramesh/
Twitter : https://twitter.com/vickiramesh