Testing Blog

Code Health: To Comment or Not to Comment?

понеділок, липня 17, 2017
Share on Twitter Share on Facebook
Google
Мітки: Code Health , Dori Reuveni , Kevin Bourrillion , TotT

10 коментарів :

  1. Jay17 липня 2017 р. о 15:26:00 GMT-7

    Same as the `widthInPixels` example really, but my pet peeve is always around units of time. Don't comment that `timeout` variable, just rename it `timeoutMillis`, `timeoutSecs`, or whatever it is.

    ВідповістиВидалити
    Відповіді
    1. Unknown19 липня 2017 р. о 08:01:00 GMT-7

      And using the correct type. Why using an int for timeout if you could use a TimeSpan? It exposes the unit of time directly at the moment you use it.

      Видалити
      Відповіді
        Відповісти
    2. Відповісти
  2. renoX19 липня 2017 р. о 06:44:00 GMT-7

    If possible in your language, I'd say that you should also replace name by types:
    using the name widthInPixels won't help you if you do widthInPixels = widthInMilimeter, but a strong type would prevent this.

    ВідповістиВидалити
    Відповіді
    1. Дмитрий26 липня 2017 р. о 11:14:00 GMT-7

      A good point, but I'd like to add that the bigger the visibility scope of a variable, the more relevant this advice is. In method scope you will be perfectly fine with a primitive type and a descriptive name. In a bigger scope you might consider hiding the type as the implementation detail.

      Видалити
      Відповіді
        Відповісти
    2. Відповісти
  3. Unknown19 липня 2017 р. о 06:46:00 GMT-7

    Amen, Jay. Timeouts should be described in their units and this should extend all the way to the user interface/command line.

    All real-world physical quantities should be described or typed with their units.

    ВідповістиВидалити
    Відповіді
    1. Admin24 липня 2017 р. о 08:46:00 GMT-7

      Even better if you are using something like F#, which has the concept of units built into the language, so you can't mistakenly add feet and centimeters together without converting first.

      Видалити
      Відповіді
        Відповісти
    2. Відповісти
  4. Mykaelos25 липня 2017 р. о 08:19:00 GMT-7

    Great advice! It's all about explaining the why, because code can often hide that.
    Thanks for the excellent blog post.

    Also, could you add the Code Health label to this? So it shows up with the other Code Health posts? Seriously loving this series.

    ВідповістиВидалити
    Відповіді
      Відповісти
  5. Google Testing Bloggers25 липня 2017 р. о 12:59:00 GMT-7

    Done! Thanks for the heads up!

    ВідповістиВидалити
    Відповіді
      Відповісти
  6. Succcess12 жовтня 2017 р. о 07:14:00 GMT-7

    i think the timeoutMillis`will be more perfect .

    ВідповістиВидалити
    Відповіді
      Відповісти
  7. DIMPY2 березня 2018 р. о 08:46:00 GMT-8

    This is really helpful and awesome practice to comment only when it is really required.

    ВідповістиВидалити
    Відповіді
      Відповісти
Додати коментар
Завантажити більше...

Нові коментарі наразі не дозволено.

  

Labels


  • TotT 114
  • GTAC 61
  • James Whittaker 42
  • Misko Hevery 32
  • Code Health 31
  • Anthony Vallone 27
  • Patrick Copeland 23
  • Jobs 18
  • Andrew Trenk 13
  • C++ 11
  • Patrik Höglund 8
  • JavaScript 7
  • Allen Hutchison 6
  • George Pirocanac 6
  • Zhanyong Wan 6
  • Harry Robinson 5
  • Java 5
  • Julian Harty 5
  • Adam Bender 4
  • Alberto Savoia 4
  • Ben Yu 4
  • Erik Kuefler 4
  • Philip Zembrod 4
  • Shyam Seshadri 4
  • Chrome 3
  • Dillon Bly 3
  • John Thomas 3
  • Lesley Katzen 3
  • Marc Kaplan 3
  • Markus Clermont 3
  • Max Kanat-Alexander 3
  • Sonal Shah 3
  • APIs 2
  • Abhishek Arya 2
  • Alan Myrvold 2
  • Alek Icev 2
  • Android 2
  • April Fools 2
  • Chaitali Narla 2
  • Chris Lewis 2
  • Chrome OS 2
  • Diego Salas 2
  • Dori Reuveni 2
  • Jason Arbon 2
  • Jochen Wuttke 2
  • Kostya Serebryany 2
  • Marc Eaddy 2
  • Marko Ivanković 2
  • Mobile 2
  • Oliver Chang 2
  • Simon Stewart 2
  • Stefan Kennedy 2
  • Test Flakiness 2
  • Titus Winters 2
  • Tony Voellm 2
  • WebRTC 2
  • Yiming Sun 2
  • Yvette Nameth 2
  • Zuri Kemp 2
  • Aaron Jacobs 1
  • Adam Porter 1
  • Adam Raider 1
  • Adel Saoud 1
  • Alan Faulkner 1
  • Alex Eagle 1
  • Amy Fu 1
  • Anantha Keesara 1
  • Antoine Picard 1
  • App Engine 1
  • Arham Jain 1
  • Ari Shamash 1
  • Arif Sukoco 1
  • Bartosz Papis 1
  • Benjamin Pick 1
  • Bob Nystrom 1
  • Bruce Leban 1
  • Carlos Arguelles 1
  • Carlos Israel Ortiz García 1
  • Cathal Weakliam 1
  • Chris Kennelly 1
  • Christopher Semturs 1
  • Clay Murphy 1
  • Dagang Wei 1
  • Dan Maksimovich 1
  • Dan Shi 1
  • Dan Willemsen 1
  • Dave Chen 1
  • Dave Gladfelter 1
  • David Bendory 1
  • David Mandelberg 1
  • Derek Snyder 1
  • Diego Cavalcanti 1
  • Dmitry Vyukov 1
  • Eduardo Bravo Ortiz 1
  • Ekaterina Kamenskaya 1
  • Elliott Karpilovsky 1
  • Elliotte Rusty Harold 1
  • Espresso 1
  • Felipe Sodré 1
  • Francois Aube 1
  • Gene Volovich 1
  • Google+ 1
  • Goran Petrovic 1
  • Goranka Bjedov 1
  • Hank Duan 1
  • Havard Rast Blok 1
  • Hongfei Ding 1
  • Jason Elbaum 1
  • Jason Huggins 1
  • Jay Han 1
  • Jeff Hoy 1
  • Jeff Listfield 1
  • Jessica Tomechak 1
  • Jim Reardon 1
  • Joe Allan Muharsky 1
  • Joel Hynoski 1
  • John Micco 1
  • John Penix 1
  • Jonathan Rockway 1
  • Jonathan Velasquez 1
  • Josh Armour 1
  • Julie Ralph 1
  • Kai Kent 1
  • Kanu Tewary 1
  • Karin Lundberg 1
  • Kaue Silveira 1
  • Kevin Bourrillion 1
  • Kevin Graney 1
  • Kirkland 1
  • Kurt Alfred Kluever 1
  • Kyle Freeman 1
  • Manjusha Parvathaneni 1
  • Marek Kiszkis 1
  • Marius Latinis 1
  • Mark Ivey 1
  • Mark Manley 1
  • Mark Striebeck 1
  • Matt Lowrie 1
  • Meredith Whittaker 1
  • Michael Bachman 1
  • Michael Klepikov 1
  • Mike Aizatsky 1
  • Mike Wacker 1
  • Mona El Mahdy 1
  • Nimit Khandelwal 1
  • Noel Yap 1
  • Palak Bansal 1
  • Patricia Legaspi 1
  • Per Jacobsson 1
  • Peter Arrenbrecht 1
  • Peter Spragins 1
  • Phil Norman 1
  • Phil Rollet 1
  • Pooja Gupta 1
  • Project Showcase 1
  • Radion Khait 1
  • Radoslav Vasilev 1
  • Rahul Singal 1
  • Rajat Dewan 1
  • Rajat Jain 1
  • Rich Martin 1
  • Richard Bustamante 1
  • Roman Govsheev 1
  • Roshan Sembacuttiaratchy 1
  • Ruslan Khamitov 1
  • Saicharan Nimmala 1
  • Sam Lee 1
  • Sean Jordan 1
  • Sebastian Dörner 1
  • Shahar Roth 1
  • Sharon Zhou 1
  • Shiva Garg 1
  • Siddartha Janga 1
  • Simran Basi 1
  • Stan Chan 1
  • Stephen Ng 1
  • Tejas Shah 1
  • Test Analytics 1
  • Test Engineer 1
  • Tim Lyakhovetskiy 1
  • Tom O'Neill 1
  • Vojta Jína 1
  • Zhe Lu 1
  • automation 1
  • dead code 1
  • iOS 1
  • mutation testing 1


Archive


  • ►  2026 (8)
    • ►  жовт. (1)
    • ►  лип. (1)
    • ►  черв. (1)
    • ►  трав. (2)
    • ►  квіт. (1)
    • ►  бер. (2)
  • ►  2025 (3)
    • ►  жовт. (1)
    • ►  вер. (1)
    • ►  січ. (1)
  • ►  2024 (13)
    • ►  груд. (1)
    • ►  жовт. (1)
    • ►  вер. (1)
    • ►  серп. (1)
    • ►  лип. (1)
    • ►  трав. (3)
    • ►  квіт. (3)
    • ►  бер. (1)
    • ►  лют. (1)
  • ►  2023 (14)
    • ►  груд. (2)
    • ►  лист. (2)
    • ►  жовт. (5)
    • ►  вер. (3)
    • ►  серп. (1)
    • ►  квіт. (1)
  • ►  2022 (2)
    • ►  лют. (2)
  • ►  2021 (3)
    • ►  черв. (1)
    • ►  квіт. (1)
    • ►  бер. (1)
  • ►  2020 (8)
    • ►  груд. (2)
    • ►  лист. (1)
    • ►  жовт. (1)
    • ►  серп. (2)
    • ►  лип. (1)
    • ►  трав. (1)
  • ►  2019 (4)
    • ►  груд. (1)
    • ►  лист. (1)
    • ►  лип. (1)
    • ►  січ. (1)
  • ►  2018 (7)
    • ►  лист. (1)
    • ►  вер. (1)
    • ►  лип. (1)
    • ►  черв. (2)
    • ►  трав. (1)
    • ►  лют. (1)
  • ▼  2017 (17)
    • ►  груд. (1)
    • ►  лист. (1)
    • ►  жовт. (1)
    • ►  вер. (1)
    • ►  серп. (1)
    • ▼  лип. (2)
      • Code Health: To Comment or Not to Comment?
      • Evolution of GTAC and Engineering Productivity
    • ►  черв. (2)
    • ►  трав. (3)
    • ►  квіт. (2)
    • ►  лют. (1)
    • ►  січ. (2)
  • ►  2016 (15)
    • ►  груд. (1)
    • ►  лист. (2)
    • ►  жовт. (1)
    • ►  вер. (2)
    • ►  серп. (1)
    • ►  черв. (2)
    • ►  трав. (3)
    • ►  квіт. (1)
    • ►  бер. (1)
    • ►  лют. (1)
  • ►  2015 (14)
    • ►  груд. (1)
    • ►  лист. (1)
    • ►  жовт. (2)
    • ►  серп. (1)
    • ►  черв. (1)
    • ►  трав. (2)
    • ►  квіт. (2)
    • ►  бер. (1)
    • ►  лют. (1)
    • ►  січ. (2)
  • ►  2014 (24)
    • ►  груд. (2)
    • ►  лист. (1)
    • ►  жовт. (2)
    • ►  вер. (2)
    • ►  серп. (2)
    • ►  лип. (3)
    • ►  черв. (3)
    • ►  трав. (2)
    • ►  квіт. (2)
    • ►  бер. (2)
    • ►  лют. (1)
    • ►  січ. (2)
  • ►  2013 (16)
    • ►  груд. (1)
    • ►  лист. (1)
    • ►  жовт. (1)
    • ►  серп. (2)
    • ►  лип. (1)
    • ►  черв. (2)
    • ►  трав. (2)
    • ►  квіт. (2)
    • ►  бер. (2)
    • ►  січ. (2)
  • ►  2012 (11)
    • ►  груд. (1)
    • ►  лист. (2)
    • ►  жовт. (3)
    • ►  вер. (1)
    • ►  серп. (4)
  • ►  2011 (39)
    • ►  лист. (2)
    • ►  жовт. (5)
    • ►  вер. (2)
    • ►  серп. (4)
    • ►  лип. (2)
    • ►  черв. (5)
    • ►  трав. (4)
    • ►  квіт. (3)
    • ►  бер. (4)
    • ►  лют. (5)
    • ►  січ. (3)
  • ►  2010 (37)
    • ►  груд. (3)
    • ►  лист. (3)
    • ►  жовт. (4)
    • ►  вер. (8)
    • ►  серп. (3)
    • ►  лип. (3)
    • ►  черв. (2)
    • ►  трав. (2)
    • ►  квіт. (3)
    • ►  бер. (3)
    • ►  лют. (2)
    • ►  січ. (1)
  • ►  2009 (54)
    • ►  груд. (3)
    • ►  лист. (2)
    • ►  жовт. (3)
    • ►  вер. (5)
    • ►  серп. (4)
    • ►  лип. (15)
    • ►  черв. (8)
    • ►  трав. (3)
    • ►  квіт. (2)
    • ►  лют. (5)
    • ►  січ. (4)
  • ►  2008 (75)
    • ►  груд. (6)
    • ►  лист. (8)
    • ►  жовт. (9)
    • ►  вер. (8)
    • ►  серп. (9)
    • ►  лип. (9)
    • ►  черв. (6)
    • ►  трав. (6)
    • ►  квіт. (4)
    • ►  бер. (4)
    • ►  лют. (4)
    • ►  січ. (2)
  • ►  2007 (41)
    • ►  жовт. (6)
    • ►  вер. (5)
    • ►  серп. (3)
    • ►  лип. (2)
    • ►  черв. (2)
    • ►  трав. (2)
    • ►  квіт. (7)
    • ►  бер. (5)
    • ►  лют. (5)
    • ►  січ. (4)

Feed

  • Google
  • Privacy
  • Terms