Slides from Oracle's ADF Architecture TV series covering the Development phase of ADF projects, a discussion on naming and project layout conventions for your ADF projects.
Like to know more? Check out:
- Subscribe to the YouTube channel - http://bit.ly/adftvsub
- Development Playlist - http://www.youtube.com/playlist?list=PLJz3HAsCPVaQfFop-QTJUE6LtjkyP_SOp
- Read the episode index on the ADF Architecture Square - http://bit.ly/adfarchsquare
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Â
Oracle ADF Architecture TV - Development - Naming Conventions & Project Layouts
1. 1 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
2. 2 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Real World ADF Design & Architecture Principles
Naming Conventions & Project Layouts
15th Feb 2013 v1.0
3. 3 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Learning Objectives
â˘âŻ At the end of this module you should be able to:
â⯠Recognize the needs for naming and project layout conventions
â⯠Identify some of the challenges the conventions attempt to avoid
â⯠Appreciate the conventions aren't the law, you can define your own
Image: imagerymajestic/ FreeDigitalPhotos.net
4. 4 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Program Agenda
â˘âŻ The Need for Guidelines
â˘âŻ General Guidelines
â˘âŻ JDeveloper Workspaces & Projects
â⯠Workspaces
â⯠Projects
â˘âŻ ADF Structures
5. 5 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Code Naming and Project Layout Guidelines
â˘âŻ Such guidelines for code can assist:
â⯠Readability
â⯠Maintainability
â⯠Avoid namespace collisions
â⯠Show a well disciplined development team
Image: Bernie Condon / FreeDigitalPhotos.net
6. 6 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Guidelines for Following Naming Conventions
â˘âŻ Naming Conventions are just âconventionsâ, they are not the law
â˘âŻ Violations donât result in jail time!
â˘âŻ Different people and projects have different preferences
â˘âŻ Oracle breaks their own conventions all the time (shhhh!)
â˘âŻ If you do break them:
â⯠Document why
â⯠Be consistent
â⯠Be consistent
â⯠Be consistent
Image: David Castillo Dominici / FreeDigitalPhotos.net
7. 7 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.7 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
You may be building one monolithic
but simple application today, but
tomorrow you may have dozens of
workspaces containing reusable
templates, task flows, skins, business
logic.
Keep an eye on the future.
Without good naming conventions
and project structures, things are
going to get messy quickly.
Image: Ambro / FreeDigitalPhotos.net
8. 8 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Code Naming and Project Layout Guidelines
â˘âŻ Oracle will now introduce itâs
233 guidelines
â˘âŻ Guideline #1 of 233âŚâŚ
â˘âŻ Understandably reading all of
these can be rather tedious
work
Image: David Castillo Dominici / FreeDigitalPhotos.net
9. 9 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Further Reading
â˘âŻ Rather than discuss all 233 points
â˘âŻ Youâre referred to a paper that covers
these in detail
â⯠ADF Naming and Project Layout Guidelines
â⯠http://bit.ly/adfarchsquare
â⯠The conventions are suggestions from
Oracle
â⯠With the goal of shortcutting writing your own
â⯠But you can go with your own
â˘âŻ Here weâll discuss the salient points
â˘âŻ And base it on a known architectural
pattern
10. 10 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Program Agenda
â˘âŻ The Need for Guidelines
â˘âŻ General Guidelines
â˘âŻ JDeveloper Workspaces & Projects
â⯠Workspaces
â⯠Projects
â˘âŻ ADF Structures
â˘âŻ Deployment Artifacts
11. 11 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
General Naming Conventions for ADF
â˘âŻ Follow the Java SE naming conventions
â˘âŻ http://bit.ly/javasecodeconvsect9
â˘âŻ Conventions should extend to ADF objects too
Image: David Castillo Dominici / FreeDigitalPhotos.net
12. 12 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Hungarian Notation
â˘âŻ Hungarian Notation is a code convention of
adding prefix/suffixes to objects to designate
their type
â⯠eg. TBL_EMPLOYEES for a database table
â˘âŻ Can lead to inconsistent names when objects
change type and refactoring isnât possible
â˘âŻ Use only when objects canât change type or
thatâs the known general convention
â⯠eg. EmployeesView for ADF BC view objects
13. 13 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Use Meaningful Names, Acronyms & Abbreviations
â˘âŻ Names should be meaningful when taken out of context
â⯠eg. Csp400.jspx means little, EnrolStudent.jspx is meaningful
â˘âŻ Avoid using abbreviations and conventions from legacy systems
â˘âŻ Avoid unnecessary acronyms/abbreviations
â⯠eg. Dob for DateOfBirth
â˘âŻ Use acronyms/abbreviations when the acronym is used more
commonly than the complete word/phrase
â⯠eg. Html rather than HyperText Markup Language
â˘âŻ If a name contains an acronym, only capitalize the first letter of the
acronym
â⯠eg. RegisteredTfn for Registered Tax File Number
14. 14 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Java Classes, Abstract Classes & Interfaces
â˘âŻ Use nouns â cat, dog, house, queue, shopping cart
â˘âŻ Mixed case, 1st letter of each word capitalized, no special characters
â˘âŻ Keep class names simple as possible
â˘âŻ Use whole words, avoid acronyms and abbreviations
â⯠Unless the abbreviation is more widely used than word e.g. HTML
â˘âŻ e.g. Raster, EmployeeEntitlements, Departments
â˘âŻ Treat ADF objects the same as Java Classes for naming purposes
15. 15 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Program Agenda
â˘âŻ The Need for Guidelines
â˘âŻ General Guidelines
â˘âŻ JDeveloper Workspaces & Projects
â⯠Workspaces
â⯠Projects
â˘âŻ ADF Structures
16. 16 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.16 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Describes guidelines based
around an ADF Architectural
Pattern out of the âAngels in the
Architectureâ presentation from
Oracle Open World 2013
http://youtu.be/toEuQvp73h8
17. 17 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.17 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
1Master Workspace
ViewController
The Sum-of-the-Parts Architecture
Common Workspace
Model
Entity Objects
View Objects
AppModule
Framework
Extensions
Task Flow Templates
Unbounded Task Flow
Pages
BTF Workspace
ViewController
Bounded Task Flow
Fragments
Bounded Task Flow
Fragments
Page Templates
Declarative Components
Skins
ViewController
Extensions
BTF Workspace
ViewController
Bounded Task Flow
Fragments
Bounded Task Flow
Fragments
ADF Libraries
ADFLibraries
EAR
For
 purposes
 of
 the
 following
 discussion
 letâs
 assume
Â
1)⯠There
 is
 a
 single
 database
 schema
 âhumanresâ
Â
2)⯠The
 BTF
 workspaces
 separately
 deal
 with
Â
Departments
 and
 Employees
 funcBons
 within
 our
Â
applicaBon
Â
3)⯠The
 overall
 applicaBon
 being
 built
 is
 for
 HR
Â
18. 18 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.18 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
1Master Workspace
ViewController
The Sum-of-the-Parts Architecture
Common Workspace
Model
Entity Objects
View Objects
AppModule
Framework
Extensions
Task Flow Templates
Unbounded Task Flow
Pages
BTF Workspace
ViewController
Bounded Task Flow
Fragments
Bounded Task Flow
Fragments
Page Templates
Declarative Components
Skins
ViewController
Extensions
BTF Workspace
ViewController
Bounded Task Flow
Fragments
Bounded Task Flow
Fragments
ADF Libraries
ADFLibraries
EAR
19. 19 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.19 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
1Master Workspace
The Sum-of-the-Parts Architecture
Common WorkspaceBTF Workspace BTF Workspace
ADF Libraries
ADFLibraries
EAR
20. 20 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.20 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Master Workspace
The Sum-of-the-Parts Architecture
Common WorkspaceBTF Workspace BTF Workspace
21. 21 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.21 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Hr Workspace
The Sum-of-the-Parts Architecture
Common WorkspaceEmp Workspace Dept Workspace
22. 22 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Challenges
â˘âŻ At least 4 workspaces (if not many more)
â˘âŻ Workspaces contain multiple projects
â˘âŻ Require their own package structures
â˘âŻ 1 to many bounded task flows requiring unique namespaces
â˘âŻ Generate numerous ADF Libraries to be consumed
â˘âŻ We must not have naming collisions
â˘âŻ Programmers should not get confused where code is coming from
â˘âŻ Thereâs potential for more applications in the future
23. 23 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Program Agenda
â˘âŻ The Need for Guidelines
â˘âŻ General Guidelines
â˘âŻ JDeveloper Workspaces & Projects
â⯠Workspaces
â⯠Projects
â˘âŻ ADF Structures
24. 24 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.24 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
25. 25 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.25 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
26. 26 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.26 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
27. 27 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.27 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
â˘âŻ The location of code across developerâs PC can be different
â˘âŻ However it helps to standardize this
â˘âŻ In case the developer is run over by a bus
â˘âŻ Build scripts need to assume a standard location
â˘âŻ Exemptions need to be put in place for virus scanners
28. 28 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.28 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
â˘âŻ All workspaces regardless of their purpose should prefix
the default package with your organizationâs URL (in
reverse)
â˘âŻ This helps differentiate your organizationâs code from
others, both if youâre importing or exporting code
29. 29 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.29 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
â˘âŻ Ensure workspace names are unique amongst
all workspaces
â˘âŻ A good choice of workspace names helps differentiate many
workspace artifacts from other workspace artifacts
30. 30 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.30 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
â˘âŻ Ensure workspace names are unique amongst
all workspaces
â˘âŻ A good choice of workspace names helps differentiate many
workspace artifacts from other workspace artifacts
Common
31. 31 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.31 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
â˘âŻ Ensure workspace names are unique amongst
all workspaces
â˘âŻ A good choice of workspace names helps differentiate many
workspace artifacts from other workspace artifacts
Common
Emp
32. 32 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.32 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
â˘âŻ Ensure workspace names are unique amongst
all workspaces
â˘âŻ A good choice of workspace names helps differentiate many
workspace artifacts from other workspace artifacts
Common
Emp
Dept
33. 33 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.33 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
â˘âŻ Ensure workspace names are unique amongst
all workspaces
â˘âŻ A good choice of workspace names helps differentiate many
workspace artifacts from other workspace artifacts
Common
Emp
Dept
Hr
34. 34 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.34 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
â˘âŻ Also use meaningful names
â˘âŻ e.g. VehicleLicensingSystem or Procurement
â˘âŻ But use acronyms or abbreviations if possible: Vls, Proc
â˘âŻ The workspace name becomes basis for default package
â˘âŻ Long names can make the package structure unwieldy
Common
Emp
Dept
Hr
35. 35 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.35 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
â˘âŻ For common artifacts place in a workspace with
a âCommonâ prefix
â˘âŻ In this example there is only 1 Common workspace which
will contain many projects
â˘âŻ Alternatively you may break this into 1 workspace per
project, so the following naming scheme could be used
â˘âŻ eg. CommonModel or CommonViewController
Common
Emp
Dept
Hr
36. 36 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.36 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
â˘âŻ For task flows workspaces use a suffix like
âModulesâ or âFlowsâ
â˘âŻ Suffix might depend on how many task flows are
contained in the workspace
â˘âŻ eg. HrModule or ProcureLodgingsFlow
Common
Emp
Dept
Hr
37. 37 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.37 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
â˘âŻ For the main application use just the application
name
Common
Emp
Dept
Hr
38. 38 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.38 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Common
Emp
Dept
Hr
â˘âŻ You eventually may have 10s/100s of workspaces
â˘âŻ Use subdirectories to your advantage to
categorize types of workspaces.
â˘âŻ e.g. Common, Flow, Applications
â˘âŻ Categories can assist division of source control
directory structures
39. 39 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.39 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Common
Emp
Dept
Hr
â˘âŻ The same rule applies to your package names
â˘âŻ Ensure categorizations comes before name to
assist sorting
40. 40 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.40 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Common
Emp
Dept
Hr
â˘âŻ The workspace name and case should be consistent as the base directory for
the workspace and the .jws file
â˘âŻ Avoids confusion and errors
â˘âŻ In discussing source code
â˘âŻ When copying files
â˘âŻ Comparing source code to SVN
â˘âŻ Working with build tools
41. 41 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Program Agenda
â˘âŻ The Need for Guidelines
â˘âŻ General Guidelines
â˘âŻ JDeveloper Workspaces & Projects
â⯠Workspaces
â⯠Projects
â˘âŻ ADF Structures
42. 42 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Projects
â˘âŻ The project name and case should be consistent as the base directory for
the project and the .jpr file
â˘âŻ Project names should attempt to follow defaults proposed by the JDev
wizards
â˘âŻ e.g. Model and ViewController
â˘âŻ These are familiar to programmers and new team members with ADF experience
â˘âŻ There are some exceptions (see next slide)
â˘âŻ Ensure unique projects names per workspace (enforced anyway)
â˘âŻ But they donât need to be unique across workspaces
43. 43 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
ADF Business Component Projects
â˘âŻ ADF BC projects at design time are limited to a single database
connection defined in the Project Properties
â˘âŻ However some applications/architectures must support multiple
database schemas, each served by a different Model project
â˘âŻ In this case break the previous convention to include a prefix of the
schema name in the Model project name
â⯠e.g. HrModel
44. 44 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Project Default Packages
â˘âŻ On multi workspace applications, itâs important to ensure unique
packages across workspaces
â˘âŻ Regardless or your architecture use this for future proofing
â˘âŻ The default package for a project should take the form:
<org>.<workspace-type>.<workspace-name>.<project-name>
â˘âŻ eg. com.acme.common.hrmodel
com.acme.flow.createemployee.view
com.acme.app.procurement.model
45. 45 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Program Agenda
â˘âŻ The Need for Guidelines
â˘âŻ General Guidelines
â˘âŻ JDeveloper Workspaces & Projects
â⯠Workspaces
â⯠Projects
â˘âŻ ADF Structures
46. 46 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.46 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Hr Workspace
Reminder: Example Package Structures
Common Workspace
Emp Workspace Dept Workspace
com.acme.common.model
com.acme.flow.emp.view
com.acme.flow.dept.view
com.acme.app.hr.view
47. 47 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.47 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Object Package Example
Model.jpx file Resides in base package for project com.acme.common.model.adfbc.Model.jpx
Framework extensions .base com.acme.common.model.adfbc.base.HrAppModuleImpl.java
Application modules .services com.acme.common.model.adfbc.services.HrAppModule
Domains .domains com.acme.common.model.adfbc.domains.EmailDomain
Entity objects .entities com.acme.common.model.adfbc.entities.Employees
Entity associations .entities.associations com.acme.common.model.adfbc.entities.associations.EmpDeptFkAssoc
Property sets .properties com.acme.common.model.adfbc.properties.ReadOnlyPropertySet
Validation rules .validations com.acme.common.model.adfbc.validations.EmailValidationRuleImpl.java
Updateable view objects .views com.acme.common.model.adfbc.views.EmployeesView
Read only view objects .views.readonly com.acme.common.model.adfbc.views.readonly.PostcodesView
Programmatic view objects .views.programmatic com.acme.common.model.adfbc.views.programmatic.SocialSecurityView
View links .views.links com.acme.common.model.adfbc.views.links.EmpDeptFkLink
ADF BC Package Structures
48. 48 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
ADF ViewController BTF Structure Challenge
â˘âŻ Base BTF workspace package examples:
â⯠com.acme.flow.dept.view or com.acme.flow.dept.view
â˘âŻ JDeveloper by default places
â⯠BTFs under ViewController/public_html/WEB-INF
â⯠Page/fragments under ViewController/public_html
â˘âŻ But
â⯠PageDefs under ViewController/adfmsrc/com/acme/flow/dept/view
â⯠Beans under ViewController/src/com/acme/flow/dept/view
â˘âŻ By the structures alone this makes it hard to relate the code artifacts
49. 49 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
ADF ViewController BTF Structure Solution
â˘âŻ Use the same directory structure for all artifacts. e.g.:
â⯠BTFs:
â˘âŻ ViewController/public_html/WEB-INF/
com/acme/flow/dept/view/depttaskflow/depttaskflow.xml
â⯠Page/Fragments
â˘âŻ ViewController/public_html/
com/acme/flow/dept/view/depttaskflow/ViewDept.jspx
â⯠PageDefs
â˘âŻ ViewController/adfmsrc/
com/acme/flow/dept/view/depttaskflow/PageDef/ViewDeptPageDef.xml
â⯠Beans
â˘âŻ ViewController/src/
com/acme/flow/dept/view/depttaskflow/DeptBean.java
50. 50 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
ADF ViewController UTF Structure Challenge
â˘âŻ Base UTF workspace package example:
â⯠com.acme.app.hr.view
â˘âŻ adfc-config.xml file(s) must reside under
â⯠ViewController/public_html/WEB-INF
â˘âŻ JDeveloper will still place
â⯠Page/Fragments under ViewController/public_html
â˘âŻ But
â⯠PageDefs under ViewController/adfmsrc/com/acme/flow/dept/view/PageDef
â⯠Beans under ViewController/src/com/acme/flow/dept/view
â˘âŻ Argh! We cannot apply our BTF directory solution here
51. 51 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
ADF ViewController UTF Structure Challenge
â˘âŻ Base UTF workspace View Controller package example:
â⯠com.acme.app.hr.view
â˘âŻ adfc-config.xml file(s) must reside under
â⯠ViewController/public_html/WEB-INF
â˘âŻ JDeveloper will still place
â⯠Pages under ViewController/public_html
â˘âŻ But
â⯠PageDefs under ViewController/adfmsrc/com/acme/app/hr/view/PageDef
â⯠Beans under ViewController/src/com/acme/app/hr/view
â˘âŻ Argh! We cannot apply our BTF directory solution here
52. 52 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
ADF ViewController UTF Structure Solution
â˘âŻ Instead assume that:
â⯠ViewController/public_html/WEB-INF
â⯠ViewController/public_html
â⯠ViewController/adfmsrc/com/acme/app/hr/view/
â⯠ViewController/src/com/acme/app/hr/view/
â˘âŻ Are all logical âbaseâ structures for all your different UTF artifacts
â˘âŻ This is where you expect to find your UTF artifacts
â˘âŻ So you donât need to move anything around
â˘âŻ You just assume that any code artifact at these levels are related
53. 53 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Options to Avoid BTF Namespace Solutions
â˘âŻ Use path with project package name preceding BTF name
â⯠e.g. /WEB-INF/com/acme/flows/emp/viewcontroller/view/
CreateEmployees.xml#CreateEmployees
â⯠Can be long and unwieldy in the IDE
â˘âŻ Use path with workspaces name preceding BTF name
â⯠e.g. /WEB-INF/EmpFlows/CreateEmployees.xml#CreateEmployees
â⯠Relies on assumption workspace names are unique
54. 54 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Program Agenda
â˘âŻ The Need for Guidelines
â˘âŻ General Guidelines
â˘âŻ JDeveloper Workspaces & Projects
â⯠Workspaces
â⯠Projects
â˘âŻ ADF Structures
55. 55 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.55 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
But Oracleâs hasnât covered
every type of component â
what about static VOs?!!
What do we do?
Exercise
Image: imagerymajestic/ FreeDigitalPhotos.net
56. 56 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.56 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
But Oracleâs conventions are
completely different from ours!
What do we do?
Exercise
Image: imagerymajestic/ FreeDigitalPhotos.net
57. 57 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.57 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
One of Oracle's guidelines is
different from ours!
What do we do?
Exercise
Image: imagerymajestic/ FreeDigitalPhotos.net
58. 58 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.58 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
But we don't like one of
Oracle's guidelines!
What do we do?
Exercise
Image: imagerymajestic/ FreeDigitalPhotos.net
59. 59 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Conclusion
â˘âŻ Conventions show a well disciplined development team
â˘âŻ They are necessary to avoid namespace collisions in large scale application
development
â˘âŻ However conventions aren't the law, you can bend the rules and write your
own
â˘âŻ Document, document, document.....
60. 60 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.
Further Reading
â˘âŻ ADF Naming & Project Layout Guidelines
â⯠http://bit.ly/adfarchsquare
â˘âŻ Sten Vesterliâs Oracle ADF Enterprise Application Development Made Simple
61. 61 Copyright Š 2013, Oracle and/or its affiliates. All rights reserved.