Upload
kodelokus
View
1.404
Download
2
Embed Size (px)
Citation preview
GOOD PROGRAMMER
HABITSIt’s about doing the right things
Kodelokus
BE LAZYWoot??
I’m not sure I’m doing something useful
Class FindUniqueWord {
def alphabets = [‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f’, ‘g’, ‘h’, ‘i’, ‘j’, ‘k’, ‘l’, ‘m’, ‘n’, ‘o’, ‘p’, ‘q’, ‘r’, ‘s’, ‘t’, ‘u’, ‘v’, ‘w’, ‘x’, ‘y’, ‘z’]
function getWeight(String word) {
int weight = 0;
for (i=0; i<word.length(); i++) {
for (j=0; j<alphabets.length(); j++) {
if (word.chartAt(i) == alphabets[j])
weight += j;
}
}
return weight;
}
function getUniqueWords(String[] words) {
List<int> unique = new ArrayList<int>();
for (i=0; i<words.length; i++) {
int weight = this.getWeight(words[i]);
if (!unique.contains(weight)) {
unique.add(weight);
}
}
return unique.count();
}
}
Class FindUniqueWord {
function getUniqueWords(String[] words) {
List<String> unique = new ArrayList<String>();
for (i=0; i<words.length; i++) {
char[] c1 = words[i].toCharArray();
Arrays.sort(c1);
if (!unique.contains(new String(c1)) {
unique.add(new String(c1));
}
}
return unique.count();
}
}
Find the number of unique word by letter combination
(`aab`, `aba`, `bba`, `baa`) = 2 unique words
simpler, more efficient, need less time
What I Imagine When I’m Coding
The Reality…
The Point of being lazy is, you stop doing anything but think, to find an easy way to solve.More simple means less bug.
the greatest enemy of lazy!
So prepare before he come…
Gather all mighty equipment and weapon while you can
I hope can win with just one click
CONCEPTUAL
Imagine if I’m an Architect
Software Architecture
Object-Oriented
Functional
Imperative
Logic Programming
Encapsulation
PolymorphismInheritance
Abstraction
Programming Paradigm
Design Pattern
MVC
Observer
SingletonBuilder
Abstract Factory
Adapter
Decorator
Strategy
Programming Technique
Anonymous Function
Inner Class
Dependency Injection
Multi threading
Software Development
Event Driven Development
Domain Driven Development
Service Oriented Architecture..?
WTF?
The invisible one is impossible to noticed
Unless we understand our coding in design perspective
PASSION
That’s Interesting ….
And to improve, simply you need to enjoying the process…..