What to review spell doing Code review
Code Review as well as Unit testing is ane of best evolution exercise I e'er recommend, strive for as well as enforce as much as possible. Even simply yesteryear doing code review as well as Junit assay out instance e'er offering positive resultant it tin sack hold upwardly improved a lot yesteryear constantly learning alongside our mistakes , others mistakes as well as yesteryear observing how others are doing it. I e'er elbow grease to acquire my code review yesteryear approximately ane alongside to a greater extent than sense as well as thus that I tin sack capture whatsoever domain specific scenario which has been missed during intend through procedure as well as approximately alongside less sense as well as thus that he tin sack improve his code readability, receive got a 4 midpoint banking concern fit as well as most importantly I institute that when i explicate my code to approximately ane as component subdivision of code review I myself discovery many things which tin sack hold upwardly improved or left out.Overall it e'er add together something as well as improve code character as well as bring down bug.
Code Review as well as Unit testing is ane of best evolution exercise I e'er recommend, strive for as well as enforce as much as possible. Even simply yesteryear doing code review as well as Junit assay out instance e'er offering positive resultant it tin sack hold upwardly improved a lot yesteryear constantly learning alongside our mistakes , others mistakes as well as yesteryear observing how others are doing it. I e'er elbow grease to acquire my code review yesteryear approximately ane alongside to a greater extent than sense as well as thus that I tin sack capture whatsoever domain specific scenario which has been missed during intend through procedure as well as approximately alongside less sense as well as thus that he tin sack improve his code readability, receive got a 4 midpoint banking concern fit as well as most importantly I institute that when i explicate my code to approximately ane as component subdivision of code review I myself discovery many things which tin sack hold upwardly improved or left out.Overall it e'er add together something as well as improve code character as well as bring down bug.
I also review approximately ane else code as well as voluntarily accept component subdivision to improve my code agreement powerfulness as well as offering aid to others, In this article I volition listing things which I await spell doing code review. These are the things which I receive got been accumulated over the years but I also await forwards to y'all guys to contribute your experience, best practices for code review as well as advise how y'all guys do code review. These tips are independent of linguistic communication as well as equally, apply to Java, NET or C++ code.
10 points checklist on Code Review
1) Does Code run into the functional requirement: offset as well as firstly does code meets all requirements which it should meet, betoken out if anything has been left out.
2) Is at that topographic point whatsoever Side outcome of this change: Sometimes ane alter inwards your organization may displace a põrnikas inwards other upstream as well as downstream organization as well as it’s quite possible that novel developer or anyone who is writing code mightiness non hold upwardly available of that dependency. This oftentimes straight related to sense inwards projection as well as I institute that the to a greater extent than y'all know virtually the organization as well as its surround amend y'all able to figure this out.
3) Concurrency: does code is thread-safe? Does it receive got properly synchronized if using shared resource? Does it gratuitous of whatsoever sort of deadlock or live-lock? Concurrency bugs are difficult to honor as well as oftentimes surfaces inwards production. Code review is ane house where y'all tin sack honor this yesteryear carefully empathise blueprint as well as its implementation.
4) Readability as well as maintenance: do code is readable? Or is it likewise complicate for some-one consummate new? Always give value to readability as code is non simply for this fourth dimension it volition rest at that topographic point for long fourth dimension as well as y'all involve to read it many times. Another of import facial expression is maintenance as most of software spends 90% fourth dimension on maintenance as well as alone 10% fourth dimension on evolution it should hold upwardly maintainable as well as flexible inwards offset place. You tin sack verify that whether code is configurable or not, await for whatsoever difficult coding, discovery out what is going to hold upwardly changed inwards close futurity etc.
5) Consistency: This is component subdivision of betoken 4 but I receive got made it approximately other split betoken because of its importance. This is the best affair y'all tin sack receive got inwards your code which automatically achieves readability. Since many developer as well as programmer accept component subdivision inwards projection as well as they receive got at that topographic point ain agency of coding, it’s inwards best involvement of everybody to cast a coding criterion as well as follow it inwards missive of the alphabet as well as spirit. For representative it’s non practiced mortal using role initialize() as well as other is using init() for same sort of operation, travel yesteryear away along y'all code consistent as well as it volition await better, read better.
6) Performance: Another of import facial expression most of import if y'all are writing high book depression latency electronic trading platform for high-frequency trading which strives for micro minute latency. Carefully monitor which code is going to execute at start-up as well as which is going to hold upwardly executed inwards a loop or multiple times optimize the code which is going to execute to a greater extent than often.
7) Exception handling: Ask does code handles bad input as well as exception? It should as well as that likewise alongside predefined as well as criterion agency which must hold upwardly available as well as documented for back upwardly purpose. I pose this betoken good higher upwardly on my nautical chart spell doing a review because failing on this betoken tin sack atomic number 82 your application crash as well as non able to recover from fault on other organization or approximately other component subdivision of the same application.
8) Simplicity: Always consider if at that topographic point is whatsoever uncomplicated as well as elegant choice available at-least give a thought as well as try. Many times offset solution comes inwards heed is non best solution as well as thus giving approximately other thought is simply worth it.
9) Reuse of existing code: See if the functionality tin sack hold upwardly achieved yesteryear using existing code, the wages of doing this is that y'all are using tried as well as tested code which reduces your QA fourth dimension as well as also gives y'all to a greater extent than confidence. Introducing novel libraries innovate a novel dependency. I prefer non to elbow grease anything fancy until it’s absolutely necessary.
10) Unit test: Check whether plenty JUnit assay out cases receive got been written as well as encompass sufficient percent of novel code. never permit y'all travel yesteryear the code without Junit assay out because developer oftentimes makes excuse of fourth dimension but believe me its worth to write it.
Not final but to the lowest degree that pose a comment on your coffee file that yesteryear whom it has been reviewed, what number finds are out as well as condition of those. This volition brand the whole procedure official as well as ensures that due diligence would hold upwardly applied during code review. Its also practiced to hold your ain code review checklist or a projection wise code review checklist as well as occupation it every fourth dimension spell doing review. There are as well as thus many best practices but I receive got alone included those which I follow as well as institute interesting but as I had said before this is the expanse which e'er needs improvement as well as no torso is perfect on that. So delight contribute your ideas to code review as well as effective development.
Enjoy
Further Learning
How to improve speed as well as productivity inwards Unix