Skip to content

Instantly share code, notes, and snippets.

@hay
Last active December 4, 2024 08:11
Show Gist options
  • Save hay/1351230 to your computer and use it in GitHub Desktop.
Save hay/1351230 to your computer and use it in GitHub Desktop.
Enterprisify your Java Class Names!
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Enterprisify your Java Class Names! (by Hay Kranen)</title>
<style>
body {
background: white;
text-align: center;
padding: 20px;
font-family: Georgia, serif;
font-weight: bold;
font-style: italic;
color: #999;
}
a {
color: #99f;
}
h1 {
font-size: 16px;
}
h2 {
font-size: 12px;
}
#word {
font-size: 36px;
color: black;
}
button {
font-size: 24px;
padding: 10px;
}
</style>
</head>
<body>
<h1>Enterprisify your Java Class Names!</h1>
<h2>By <a href="http://www.haykranen.nl">Hay Kranen</a></h2>
<p id="word"></p>
<button id="enterprise">Enterprisify!</button>
<button id="again">Again</button>
<br /><br /><br />
<small><a href="https://gist.github.com/1351230">Fork this gist on Github to add your own words ;)</a></small>
<script>
var words = [
"Factory", "Bean", "Wrapper", "Visitor", "Model", "Singleton",
"Method", "Configuration", "Exception", "Error", "Property", "Value",
"Identifier", "Attribute", "Authentication", "Policy", "Container",
"Order", "Info", "Parameter", "Request", "Adapter", "Bridge",
"Decorator", "Facade", "Proxy", "Worker",
"Interpreter", "Iterator", "Observer",
"State", "Strategy", "Template", "Comparator", "Clone", "Task",
"Resolver", "Candidate", "Expression", "Predicate",
"Thread", "Pool", "Descriptor", "Interceptor", "Definition",
"Getter", "Setter", "Listener", "Proccesor", "Printer",
"Prototype", "Composer", "Event", "Helper", "Utils",
"Invocation", "Exporter", "Importer", "Serializer", "Callback",
"Tag", "Context", "Mapping", "Advisor", "Filter", "Field", "Test",
"Tests", "Connection", "Annotation", "Service", "Repository",
"Stub", "Mock", "Instance", "Dispatcher", "Client", "Server",
"Message", "Map", "List", "Collection", "Queue", "Manager",
"Database", "Reponse", "Broadcaster",
"Watcher", "Schema", "Mapper", "Publisher", "Consumer", "Producer"
],
inWords = [
"Composite", "Invalid", "Supported", "Focus", "Traversal", "Abstract",
"Transformer", "Common", "Concrete", "Autowire", "Simple", "Aware",
"Aspect", "Principal", "Driven", "Interruptible", "Batch",
"Prepared", "Statement", "Remote", "Stateless", "Session",
"Transaction", "Transactional", "Based", "Meta", "Data", "Jms",
"Readable", "Literal", "Reflective", "Scope", "Multipart", "Xml",
"Generic", "Interface", "Advisable", "Observable", "Identifiable",
"Iterable", "Distributed", "Notification", "Failure", "Type",
"Http", "Jdbc"
];
function $(id) {
return document.getElementById(id);
}
function rand(min, max) {
return Math.round(Math.random() * (max - min)) + min;
}
function generate(min, max) {
var allWords = words.concat( inWords ),
word = '';
for (var i = 0, l = rand(min, max) - 1; i < l; i++) {
do {
var w = allWords[ rand(0, allWords.length - 1) ];
} while (word.indexOf(w) !== -1);
word += `&shy;${w}`;
}
word += '&shy;' + words[ rand(0, words.length) ];
return word;
}
$("again").addEventListener('click', (e) => {
$("word").innerHTML = generate(2, 3);
$("enterprise").innerHTML = "Enterprisify!";
});
$("enterprise").addEventListener('click', (e) => {
var word = $("word").innerHTML;
$("word").innerHTML = generate(1, 1) + word;
$("enterprise").innerHTML = "Enterprisify even more!";
});
$("word").innerHTML = generate(2, 3);
</script>
</body>
</html>
@gebes
Copy link

gebes commented Jan 3, 2021

This improved the code in all my recent projects by a lot

@abermea
Copy link

abermea commented Feb 4, 2021

This is great but the words should be added at the end, not the beginning

@khilkevichigor
Copy link

nice!)))

@OptimusPi
Copy link

Just want to say I have showed this to many people over the years and have forked it in the past to make our own specific version as an inside joke at work, thanks for making this :P Amazed it's still up!

@hay
Copy link
Author

hay commented Mar 29, 2024

Updated the code from this 2011 classic: removed Google Analytics and Twitter tracking crap and finally made it mobile friendly / responsive!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment