Sunday, October 8, 2017

Takeaways from OOW'17

Let's summarise important points from OOW'17 conference. This year conference was a breakthrough for Oracle JET - most of Oracle Cloud UI's were implemented with Oracle JET. Oracle ADF is used for Oracle SaaS (Fusion Middleware) back office applications, same as before. There is often misunderstanding in JET vs. ADF comparison. Keep in mind - JET is only UI layer and it can be compared with ADF Faces only. While ADF is much more than UI - ADF BC Model, ADF Task Flows and ADF Bindings.

1. Use JET for front-end apps, with relatively simple complexity but strong requirement for performance and scalability. Back-end can be implemented with ADF BC REST. Typically it would take longer to implement JET UI comparing to ADF Faces (no drag and drop support, unless using Visual Cloud Builder Service for JET)

2. Use ADF Faces for complex and large back-office applications. Some degree of mix between ADF Faces and JET is possible. Back-end should be done in ADF BC

ADF is stable technology and Oracle is focusing to advertise new things on OOW. Recommended focus for ADF developers was around JCS, DevCS, JET and VBCS:


There was one session about how to move existing ADF app into the cloud with JCS. And session about ADF BC REST, no new features - mainly showing customer system implementation with current features.

JET open source contribution was announced, along with new JET offline support - persistence toolkit (will be available through NPM in next couple of weeks):


Oracle explained why handling offline use case in JET is important:


Persistence toolkit will run on JET hybrid, web and desktop apps (yes you can run JET as desktop app, with 3-rd party Electron plugin):


Here you can read more detail info about persistent toolkit design principles:


JET supports Fetch API (used by persistence toolkit):


Architecture explanation for JET persistence toolkit:


Another hot topic related to JET - Web components. Slots are supported, this allows to build advanced Web components with dedicated facets (ADF Faces terminology):


OOW'17 was packed with chatbot demos. Unfortunately there is no trial access for chatbot cloud yet. There was good session about chatbots from Lyudmil Pelov - he explained how Oracle chatbot service and language processing works:


I was impressed with Oracle Visual Cloud Builder Service progress this year. I really liked this service and I think it will become JET IDE development tool. Is not focused for business users only, but is targeted for JET developers too. It comes with embedded DB or you can call external services too. Next versions will allow direct JET code development, combined with drag and drop:


Develop JET in VBCS using drag and drop where possible and code additional logic in JS/HTML:


VBCS is not targeted for business users anymore, they target it for coders (us) too - thats news I like:



RDK UI is available now for ADF, JET and MAF. ADF RDK was updated to newer version. ADF and JET RDK UI look is identical.

New ADF RDK UI:


JET RDK UI:


Machine Learning was another big thing on OOW and JavaOne. Nice to hear things I was studying in university about neural networks are becoming hype now:


JVM garbage collection tuning. Is better to have objects to be dead young. This means in ADF is better to use Backing Bean Scope where possible, because short scope bean is destroyed after request and this allows VM to clean memory:

3 comments:

Karthik Nag S said...

Thanks for this blog Andrejus. This is the first brief, yet informative and detailed highlights of OOW17. The information you share is so unbiased, no wonder why I always keep checking your blogs frequently. I wish there was some mechanism that alerts my inbox whenever there is a new blog from you :)

Regards,
Karthik Nag S

Andrejus Baranovskis said...

Thanks for feedback !

You can use my blog feed URL: http://feeds.feedburner.com/AndrejusBaranovskissBlog and register it with feed aggregator online, it will deliver message to your inbox, each time when there is new post.

Andrejus

Karthik Nag S said...

Done :)

Thanks,
Karthik Nag S