Search Results

Search found 31421 results on 1257 pages for 'software performance'.

Page 230/1257 | < Previous Page | 226 227 228 229 230 231 232 233 234 235 236 237  | Next Page >

  • What are the most useful software development metrics?

    - by kchad
    I would like to track metrics that can be used to improve my team’s software development process, improve time estimates, and detect special case variations that need to be addressed during the project execution. Please limit each answer to a single metric, describe how to use it, and vote up the good answers.

    Read the article

  • Null-free "maps": Is a callback solution slower than tryGet()?

    - by David Moles
    In comments to "How to implement List, Set, and Map in null free design?", Steven Sudit and I got into a discussion about using a callback, with handlers for "found" and "not found" situations, vs. a tryGet() method, taking an out parameter and returning a boolean indicating whether the out parameter had been populated. Steven maintained that the callback approach was more complex and almost certain to be slower; I maintained that the complexity was no greater and the performance at worst the same. But code speaks louder than words, so I thought I'd implement both and see what I got. The original question was fairly theoretical with regard to language ("And for argument sake, let's say this language don't even have null") -- I've used Java here because that's what I've got handy. Java doesn't have out parameters, but it doesn't have first-class functions either, so style-wise, it should suck equally for both approaches. (Digression: As far as complexity goes: I like the callback design because it inherently forces the user of the API to handle both cases, whereas the tryGet() design requires callers to perform their own boilerplate conditional check, which they could forget or get wrong. But having now implemented both, I can see why the tryGet() design looks simpler, at least in the short term.) First, the callback example: class CallbackMap<K, V> { private final Map<K, V> backingMap; public CallbackMap(Map<K, V> backingMap) { this.backingMap = backingMap; } void lookup(K key, Callback<K, V> handler) { V val = backingMap.get(key); if (val == null) { handler.handleMissing(key); } else { handler.handleFound(key, val); } } } interface Callback<K, V> { void handleFound(K key, V value); void handleMissing(K key); } class CallbackExample { private final Map<String, String> map; private final List<String> found; private final List<String> missing; private Callback<String, String> handler; public CallbackExample(Map<String, String> map) { this.map = map; found = new ArrayList<String>(map.size()); missing = new ArrayList<String>(map.size()); handler = new Callback<String, String>() { public void handleFound(String key, String value) { found.add(key + ": " + value); } public void handleMissing(String key) { missing.add(key); } }; } void test() { CallbackMap<String, String> cbMap = new CallbackMap<String, String>(map); for (int i = 0, count = map.size(); i < count; i++) { String key = "key" + i; cbMap.lookup(key, handler); } System.out.println(found.size() + " found"); System.out.println(missing.size() + " missing"); } } Now, the tryGet() example -- as best I understand the pattern (and I might well be wrong): class TryGetMap<K, V> { private final Map<K, V> backingMap; public TryGetMap(Map<K, V> backingMap) { this.backingMap = backingMap; } boolean tryGet(K key, OutParameter<V> valueParam) { V val = backingMap.get(key); if (val == null) { return false; } valueParam.value = val; return true; } } class OutParameter<V> { V value; } class TryGetExample { private final Map<String, String> map; private final List<String> found; private final List<String> missing; public TryGetExample(Map<String, String> map) { this.map = map; found = new ArrayList<String>(map.size()); missing = new ArrayList<String>(map.size()); } void test() { TryGetMap<String, String> tgMap = new TryGetMap<String, String>(map); for (int i = 0, count = map.size(); i < count; i++) { String key = "key" + i; OutParameter<String> out = new OutParameter<String>(); if (tgMap.tryGet(key, out)) { found.add(key + ": " + out.value); } else { missing.add(key); } } System.out.println(found.size() + " found"); System.out.println(missing.size() + " missing"); } } And finally, the performance test code: public static void main(String[] args) { int size = 200000; Map<String, String> map = new HashMap<String, String>(); for (int i = 0; i < size; i++) { String val = (i % 5 == 0) ? null : "value" + i; map.put("key" + i, val); } long totalCallback = 0; long totalTryGet = 0; int iterations = 20; for (int i = 0; i < iterations; i++) { { TryGetExample tryGet = new TryGetExample(map); long tryGetStart = System.currentTimeMillis(); tryGet.test(); totalTryGet += (System.currentTimeMillis() - tryGetStart); } System.gc(); { CallbackExample callback = new CallbackExample(map); long callbackStart = System.currentTimeMillis(); callback.test(); totalCallback += (System.currentTimeMillis() - callbackStart); } System.gc(); } System.out.println("Avg. callback: " + (totalCallback / iterations)); System.out.println("Avg. tryGet(): " + (totalTryGet / iterations)); } On my first attempt, I got 50% worse performance for callback than for tryGet(), which really surprised me. But, on a hunch, I added some garbage collection, and the performance penalty vanished. This fits with my instinct, which is that we're basically talking about taking the same number of method calls, conditional checks, etc. and rearranging them. But then, I wrote the code, so I might well have written a suboptimal or subconsicously penalized tryGet() implementation. Thoughts?

    Read the article

  • Documents needed for software development process

    - by Jibu P C
    Hii, I am new to architectural designing of the applications, and our company is not following any procedures and we are not documenting any thing regarding the software development. So can anybody help me to understand regarding the above context. If you find any useful articles links please forward me.

    Read the article

  • Generate key for a software developed using vb.net

    - by Pandiya Chendur
    Hai guys, I ve developed a salary calculating software using vb.net.... Its working fine and i ve converted it to an exe file... My drawback is it can be copied and pasted in another system very easily... I want to generate a key for the exe file and while installing the key should be used and when installation is completed ,the key should not be used again... Is this ya secured one or give me some ideas how it can be done....

    Read the article

  • Best Format for a Software Engineer's Resume

    - by Adam Haile
    I am looking for good, objective ideas and examples of a resume for a Software Engineer. By all means, post a link to your own resume if you are comfortable with doing so. Mostly I am looking at how it should be formatted and what kind of information should be included (and in what order on the resume.)

    Read the article

  • [MacOS] Visio-like design software? [closed]

    - by OverTheRainbow
    Hello It's a software-related question but not development-related :-/ A friend of mine is looking for an equivalent on Macintosh to Visio or SmarDraw to draw plans for home improvements. I don't know anything about Macintosh, so would appreciate any feedback on good softwares for this type of applications. Thank you.

    Read the article

  • Lightweight version control software on Linux

    - by I'm Dario
    I'm working with a shell account in a shared system and I would like to use some version control software for my bash scripts and config files. It must works on Linux with no dependencies, just unpack it in my home dir. I don't need remote checkout, branching or other fancy tricks. I want to be able to commit my changes and restore them if needed.

    Read the article

  • Is software testing has a future?

    - by Firas
    Hello every body. My current career is software testing, but I feel that iam wasting my time, may be because I dont know the future path of this carrer, and to where will I arrive in the future if I continue in this carrer. And I dont know how can I develop my self in this career. And can I have my own job in this field? Please give me good suggestions and openion. Many thanks

    Read the article

  • Good Software development courses?

    - by user296970
    I'm a software developer with a BS in Computer Science. I've been working in the field for 5 years, and I'm looking to develop my project leadership skills (I'm currently not a lead). Does anyone have any suggestions as to which schools / programs I can do? A masters is probably out of the question, due to the time required (and my not so good verbal score on my GRE). A shorter course would be preferable.

    Read the article

  • Open-Source Q&A Site Software Implementations?

    - by JakiT
    I really like how 37signals created a simplified Q&A site (i.e. simplified StackExchange) http://answers.37signals.com/basecamp Does anyone know of a free, self-hosted, open-source software implementation that is similar to simplified functionality of 37signals implementation of a Q&A site?

    Read the article

  • Which software is best for browser compatibility testing?

    - by Camran
    Which software is recommended? I know of Adobe Browser Lab only, and it seems pretty new... Is there any better SW out there? Thanks PS: I have a classifieds website (PHP, MySql, Solr, js) developed on local computer using virtual server etc... Now I need to test it on different browsers. It is developed only with Firefox, so it works fine in FF.

    Read the article

< Previous Page | 226 227 228 229 230 231 232 233 234 235 236 237  | Next Page >