{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,2,21]],"date-time":"2025-02-21T07:50:33Z","timestamp":1740124233133,"version":"3.37.3"},"reference-count":57,"publisher":"Springer Science and Business Media LLC","issue":"3","license":[{"start":{"date-parts":[[2018,11,16]],"date-time":"2018-11-16T00:00:00Z","timestamp":1542326400000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Software Qual J"],"published-print":{"date-parts":[[2019,9]]},"DOI":"10.1007\/s11219-018-9426-6","type":"journal-article","created":{"date-parts":[[2018,11,15]],"date-time":"2018-11-15T22:16:30Z","timestamp":1542320190000},"page":"1175-1207","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":1,"title":["To var or not to var: how do C# developers use and misuse implicit and explicit typing?"],"prefix":"10.1007","volume":"27","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-3390-2855","authenticated-orcid":false,"given":"Pierre A.","family":"Akiki","sequence":"first","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2018,11,16]]},"reference":[{"issue":"1","key":"9426_CR1","doi-asserted-by":"publisher","first-page":"44","DOI":"10.1109\/TSE.2017.2658573","volume":"44","author":"J Dallal Al","year":"2018","unstructured":"Al Dallal, J., & Abdin, A. (2018). Empirical evaluation of the impact of object-oriented code refactoring on quality attributes: a systematic literature review. IEEE Transactions on Software Engineering, 44(1), 44\u201369.","journal-title":"IEEE Transactions on Software Engineering"},{"key":"9426_CR2","unstructured":"Albahari, J., & Albahari, B. (2016). C# 6.0 in a nutshell. Oreilly."},{"key":"9426_CR3","unstructured":"Binkley, D. (2007). Source code analysis: a road map. in: Future of software engineering, 2007. FOSE\u201907. IEEE, pp. 104\u2013119."},{"key":"9426_CR4","doi-asserted-by":"crossref","unstructured":"Butler, S., Wermelinger, M., Yu, Y., & Sharp, H. (2010). Exploring the influence of identifier names on code quality: an empirical study. In Software maintenance and reengineering (CSMR), 2010 14th European Conference On. IEEE, pp. 156\u2013165.","DOI":"10.1109\/CSMR.2010.27"},{"key":"9426_CR5","doi-asserted-by":"crossref","unstructured":"Butler, S., Wermelinger, M., & Yu, Y. (2015). Investigating naming convention adherence in Java references. In Software maintenance and evolution (ICSME), 2015 IEEE International Conference On. IEEE, pp. 41\u201350.","DOI":"10.1109\/ICSM.2015.7332450"},{"key":"9426_CR6","doi-asserted-by":"publisher","unstructured":"Cabral, B., & Marques, P. (2007). Exception handling: a field study in Java and NET. In: E. Ernst, (Ed.), ECOOP 2007\u2014object-oriented programming: 21st European conference, Berlin, Germany, July 30\u2013august 3, 2007. Proceedings. Springer: Berlin, pp. 151\u2013175. \n                    https:\/\/doi.org\/10.1007\/978-3-540-73589-2_8\n                    \n                  .","DOI":"10.1007\/978-3-540-73589-2_8"},{"key":"9426_CR7","doi-asserted-by":"crossref","unstructured":"Cacho, N., Barbosa, E. A., Araujo, J., Pranto, F., Garcia, A., Cesar, T., Soares, E., Cassio, A., Filipe, T., & Garcia, I. (2014a). How does exception handling behavior evolve? An exploratory study in Java and C# applications, in: Software maintenance and evolution (ICSME), 2014 IEEE International Conference On. IEEE, pp. 31\u201340.","DOI":"10.1109\/ICSME.2014.25"},{"key":"9426_CR8","doi-asserted-by":"publisher","unstructured":"Cacho, N., C\u00e9sar, T., Filipe, T., Soares, E., Cassio, A., Souza, R., Garcia, I., Barbosa, E. A., & Garcia, A. (2014b). Trading robustness for maintainability: an empirical study of evolving C# programs, in: Proceedings of the 36th International Conference on Software Engineering, ICSE 2014. ACM: New York, pp. 584\u2013595. \n                    https:\/\/doi.org\/10.1145\/2568225.2568308\n                    \n                  .","DOI":"10.1145\/2568225.2568308"},{"issue":"6","key":"9426_CR9","doi-asserted-by":"publisher","first-page":"1156","DOI":"10.1007\/s10664-012-9203-2","volume":"18","author":"O Calla\u00fa","year":"2013","unstructured":"Calla\u00fa, O., Robbes, R., Tanter, \u00c9., & R\u00f6thlisberger, D. (2013). How (and why) developers use the dynamic features of programming languages: the case of small talk. Empirical Software Engineering, 18(6), 1156\u20131194. \n                    https:\/\/doi.org\/10.1007\/s10664-012-9203-2\n                    \n                  .","journal-title":"Empirical Software Engineering"},{"key":"9426_CR10","unstructured":"Capek, P., Kr\u00e1l, E., & Senkerik, R. (2015). Towards an empirical analysis of .NET framework and C# language features\u2019 adoption. In Computational science and computational intelligence (CSCI), 2015 international conference on. IEEE, pp. 865\u2013866."},{"key":"9426_CR11","unstructured":"Channel9. (2010). How much do you use \u201cvar\u201d in C#? [WWW document]. URL \n                    https:\/\/channel9.msdn.com\/Forums\/Coffeehouse\/How-much-do-you-use-var-in-C\n                    \n                  . Accessed 1.12.17."},{"issue":"8","key":"9426_CR12","doi-asserted-by":"publisher","first-page":"44","DOI":"10.1109\/2.303623","volume":"27","author":"D Coleman","year":"1994","unstructured":"Coleman, D., Ash, D., Lowther, B., & Oman, P. (1994). Using metrics to evaluate software system maintainability. IEEE Comput, 27(8), 44\u201349.","journal-title":"IEEE Comput"},{"issue":"3","key":"9426_CR13","doi-asserted-by":"publisher","first-page":"261","DOI":"10.1007\/s11219-006-9219-1","volume":"14","author":"F Deissenboeck","year":"2006","unstructured":"Deissenboeck, F., & Pizka, M. (2006). Concise and consistent naming. Software Quality Journal, 14(3), 261\u2013282.","journal-title":"Software Quality Journal"},{"key":"9426_CR14","unstructured":"Deitel, P., & Deitel, H. (2018). Visual C# how to program (6th ed.). Pearson."},{"key":"9426_CR15","unstructured":"Fowler, M. (1999). Refactoring: improving the design of existing code. Addison-Wesley."},{"key":"9426_CR16","doi-asserted-by":"crossref","unstructured":"Ge, X., DuBose, Q. L., & Murphy-Hill, E. (2012). Reconciling manual and automatic refactoring. In Proceedings of the 34th international conference on software engineering. IEEE Press, pp. 211\u2013221.","DOI":"10.1109\/ICSE.2012.6227192"},{"key":"9426_CR17","first-page":"3763","volume":"3","author":"S Ghosh","year":"2011","unstructured":"Ghosh, S., & Rana, A. K. (2011). Comparative study of the factors that affect maintainability. International Journal on Computer Science and Engineering, 3, 3763.","journal-title":"International Journal on Computer Science and Engineering"},{"key":"9426_CR18","unstructured":"Griswold, W. G. (1991). Program restructuring as an aid to software maintenance. University of Washington."},{"issue":"3","key":"9426_CR19","doi-asserted-by":"publisher","first-page":"228","DOI":"10.1145\/152388.152389","volume":"2","author":"WG Griswold","year":"1993","unstructured":"Griswold, W. G., & Notkin, D. (1993). Automated assistance for program restructuring. ACM Transactions on Software Engineering and Methodology, 2(3), 228\u2013269. \n                    https:\/\/doi.org\/10.1145\/152388.152389\n                    \n                  .","journal-title":"ACM Transactions on Software Engineering and Methodology"},{"key":"9426_CR20","first-page":"92","volume":"9","author":"K Hashim","year":"1996","unstructured":"Hashim, K. (1996). A software maintainability attributes model. Malaysian Journal of Computer Science, 9, 92\u201397.","journal-title":"Malaysian Journal of Computer Science"},{"key":"9426_CR21","unstructured":"Hejlsberg, A. (2008). Anders Hejlsberg talks about the C# Language [WWW Document]. URL https:\/\/www.youtube.com\/watch?v=dc-YDS4JVA8. Accessed 11.12.17."},{"key":"9426_CR22","unstructured":"IC#Code. (2016). SharpDevelop [WWW document]. URL \n                    http:\/\/www.icsharpcode.net\/OpenSource\/SD\/Default.aspx\n                    \n                  . Accessed 10.23.17."},{"key":"9426_CR23","unstructured":"JetBrains. (2018a). ReSharper [WWW document]. URL \n                    https:\/\/www.jetbrains.com\/resharper\n                    \n                  . Accessed 1.3.08."},{"key":"9426_CR24","unstructured":"JetBrains. (2018b). ReSharper \u201cvar\u201d keyword [WWW document]. URL \n                    https:\/\/www.jetbrains.com\/help\/resharper\/Using_var_Keyword_in_Declarations.html#preferences\n                    \n                  . Accessed 1.3.18."},{"key":"9426_CR25","doi-asserted-by":"publisher","first-page":"1","DOI":"10.5381\/jot.2013.12.4.a1","volume":"12","author":"D Kim","year":"2013","unstructured":"Kim, D., Murphy-Hill, E. R., Parnin, C., Bird, C., & Garcia, R. (2013). The reaction of open-source projects to new language features: an empirical study of C# generics. Journal of Object Technology, 12, 1\u20131.","journal-title":"Journal of Object Technology"},{"issue":"4","key":"9426_CR26","doi-asserted-by":"publisher","first-page":"359","DOI":"10.1007\/s10664-006-9032-2","volume":"12","author":"D Lawrie","year":"2007","unstructured":"Lawrie, D., Feild, H., & Binkley, D. (2007). Quantifying identifier quality: an analysis of trends. Empirical Software Engineering, 12(4), 359\u2013388.","journal-title":"Empirical Software Engineering"},{"key":"9426_CR27","unstructured":"Lientz, B. P., & Swanson, E. B. (1980). Software maintenance management: a study of the maintenance of computer application software in 487 data processing organizations. Addison-Wesley."},{"key":"9426_CR28","unstructured":"Lippert, E. (2011). Uses and misuses of implicit typing [WWW Document]. URL \n                    https:\/\/blogs.msdn.microsoft.com\/ericlippert\/2011\/04\/20\/uses-and-misuses-of-implicit-typing\n                    \n                  . Accessed 4.20.11."},{"issue":"3","key":"9426_CR29","doi-asserted-by":"publisher","first-page":"951","DOI":"10.1007\/s11219-016-9340-8","volume":"25","author":"L Ma","year":"2017","unstructured":"Ma, L., Zhang, C., Yu, B., & Sato, H. (2017). An empirical study on the effects of code visibility on program testability. Software Quality Journal, 25(3), 951\u2013978. \n                    https:\/\/doi.org\/10.1007\/s11219-016-9340-8\n                    \n                  .","journal-title":"Software Quality Journal"},{"key":"9426_CR30","unstructured":"Marcus, A., & Maletic, J. I. (2001). Identification of high-level concept clones in source code, in: Automated software engineering, 2001.(ASE 2001). Proceedings. 16th annual international conference on. IEEE, pp. 107\u2013114."},{"key":"9426_CR31","unstructured":"Martin, R. C. (2009). Clean code: a handbook of agile software craftsmanship. Pearson Education."},{"issue":"2","key":"9426_CR32","doi-asserted-by":"publisher","first-page":"126","DOI":"10.1109\/TSE.2004.1265817","volume":"30","author":"T Mens","year":"2004","unstructured":"Mens, T., et al. (2004). A survey of software refactoring. IEEE Transactions on Software Engineering, 30(2), 126\u2013139.","journal-title":"IEEE Transactions on Software Engineering"},{"key":"9426_CR33","unstructured":"Microsoft. (2015a). C# coding conventions (C# programming guide) [WWW document]. URL \n                    https:\/\/docs.microsoft.com\/en-us\/dotnet\/csharp\/programming-guide\/inside-a-program\/coding-conventions\n                    \n                  . Accessed 11.30.17."},{"key":"9426_CR34","unstructured":"Microsoft. (2015b). Var (C# reference) [WWW document]. URL \n                    https:\/\/docs.microsoft.com\/en-us\/dotnet\/csharp\/language-reference\/keywords\/var\n                    \n                  . Accessed 11.30.17."},{"key":"9426_CR35","unstructured":"Microsoft. (2015c). Implicitly typed local variables (C# programming guide) [WWW document]. URL \n                    https:\/\/docs.microsoft.com\/en-us\/dotnet\/csharp\/programming-guide\/classes-and-structs\/implicitly-typed-local-variables\n                    \n                  . Accessed 11.30.17."},{"key":"9426_CR36","unstructured":"Microsoft. (2017a). Net core [WWW Document]. URL \n                    https:\/\/www.microsoft.com\/net\/core\n                    \n                  . Accessed 10.23.17."},{"key":"9426_CR37","unstructured":"Microsoft. (2017b). Roslyn [WWW document]. URL \n                    https:\/\/roslyn.codeplex.com\n                    \n                  . Accessed 10.23.17."},{"key":"9426_CR38","unstructured":"MixERP Inc. (2015). MixERP [WWW Document]. URL \n                    https:\/\/mixerp.org\n                    \n                  . Accessed 10.23.17."},{"key":"9426_CR39","unstructured":"MonoDevelop Project. (2017). MonoDevelop [WWW Document]. URL \n                    www.monodevelop.com\n                    \n                  . Accessed 10.23.17."},{"issue":"5","key":"9426_CR40","doi-asserted-by":"publisher","first-page":"38","DOI":"10.1109\/MS.2008.123","volume":"25","author":"E Murphy-Hill","year":"2008","unstructured":"Murphy-Hill, E., & Black, A. P. (2008). Refactoring tools: fitness for purpose. IEEE Software, 25(5), 38\u201344.","journal-title":"IEEE Software"},{"key":"9426_CR41","unstructured":"NHibernate Community. (2017). NHibernate [WWW Document]. URL \n                    http:\/\/nhibernate.info\n                    \n                  . Accessed 10.23.17."},{"key":"9426_CR42","doi-asserted-by":"publisher","unstructured":"Okur, S., & Dig, D. (2012). How do developers use parallel libraries? In Proceedings of the ACM SIGSOFT 20th international symposium on the foundations of software engineering, FSE \u201812. ACM, New York, NY, USA, pp. 54:1\u201354:11. \n                    https:\/\/doi.org\/10.1145\/2393596.2393660\n                    \n                  .","DOI":"10.1145\/2393596.2393660"},{"key":"9426_CR43","doi-asserted-by":"crossref","unstructured":"Okur, S., Hartveld, D. L., Dig, D., van Deursen, A. (2014). A study and toolkit for asynchronous programming in C#. In Proceedings of the 36th international conference on software engineering. ACM, pp. 1117\u20131127.","DOI":"10.1145\/2568225.2568309"},{"key":"9426_CR44","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1016\/j.jss.2017.10.032","volume":"136","author":"J Oliveira","year":"2018","unstructured":"Oliveira, J., Borges, D., Silva, T., Cacho, N., & Castor, F. (2018). Do android developers neglect error handling? A maintenance-centric study on the relationship between android abstractions and uncaught exceptions. Journal of Systems and Software, 136, 1\u201318.","journal-title":"Journal of Systems and Software"},{"key":"9426_CR45","unstructured":"Opdyke, W. F. (1992). Refactoring: a program restructuring aid in designing object-oriented application frameworks. University of Illinois at Urbana-Champaign."},{"key":"9426_CR46","unstructured":"OpenRA. (2017). [WWW Document]. URL \n                    http:\/\/www.openra.net\n                    \n                  . Accessed 10.23.17."},{"key":"9426_CR47","unstructured":"Parr, T. (2018). ANTLR [WWW Document]. URL \n                    http:\/\/www.antlr.org\n                    \n                  . Accessed 4.1.18."},{"issue":"4","key":"9426_CR48","doi-asserted-by":"publisher","first-page":"343","DOI":"10.1109\/TSE.1981.234534","volume":"SE-7","author":"DE Peercy","year":"1981","unstructured":"Peercy, D. E. (1981). A software maintainability evaluation methodology. IEEE Transactions on Software Engineering, SE-7(4), 343\u2013351.","journal-title":"IEEE Transactions on Software Engineering"},{"key":"9426_CR49","unstructured":"Poole, C., Prouse, R., Busoli, S., & Colvin, N. (2017). NUnit [WWW Document]. URL \n                    http:\/\/nunit.org\n                    \n                  . Accessed 10.23.17."},{"key":"9426_CR50","unstructured":"Shadowsocks Community. (2017). Shadowsocks [WWW Document]. URL \n                    https:\/\/shadowsocks.org\n                    \n                  . Accessed 10.23.17."},{"key":"9426_CR51","unstructured":"ShareX Team. (2017). ShareX [WWW Document]. URL \n                    https:\/\/getsharex.com\n                    \n                  . Accessed 10.23.17."},{"key":"9426_CR52","unstructured":"Shore J. (2004). Design debt. Software Profitability."},{"issue":"4","key":"9426_CR53","doi-asserted-by":"publisher","first-page":"52","DOI":"10.1109\/MS.2010.63","volume":"27","author":"G Soares","year":"2010","unstructured":"Soares, G., Gheyi, R., Serey, D., & Massoni, T. (2010). Making program refactoring safer. IEEE Software, 27(4), 52\u201357.","journal-title":"IEEE Software"},{"key":"9426_CR54","unstructured":"Szoke, G., Nagy, C., F\u00fcl\u00f6p, L. J., Ferenc, R., & Gyim\u00f3thy, T. (2015). FaultBuster: an automatic code smell refactoring toolset, in: Source code analysis and manipulation (SCAM), 2015 IEEE 15th international working conference on. IEEE, pp. 253\u2013258."},{"key":"9426_CR55","unstructured":"TIOBE. (2017). TIOBE programming community index [WWW document]. URL \n                    https:\/\/www.tiobe.com\/tiobe-index\n                    \n                  . Accessed 12.26.17."},{"key":"9426_CR56","unstructured":"Various. (2014). Debate on typing: unity forum [WWW document]. URL \n                    https:\/\/forum.unity.com\/threads\/c-microsoft-suggests-using-var-instead-of-a-type.232732\/\n                    \n                  . Accessed 11.30.17."},{"issue":"3","key":"9426_CR57","doi-asserted-by":"publisher","first-page":"501","DOI":"10.1007\/s10515-014-0175-x","volume":"23","author":"SA Vidal","year":"2016","unstructured":"Vidal, S. A., Marcos, C., & D\u00edaz-Pace, J. A. (2016). An approach to prioritize code smells for refactoring. Automated Software Engineering, 23(3), 501\u2013532.","journal-title":"Automated Software Engineering"}],"container-title":["Software Quality Journal"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s11219-018-9426-6.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s11219-018-9426-6\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s11219-018-9426-6.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,11,15]],"date-time":"2019-11-15T19:56:06Z","timestamp":1573847766000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s11219-018-9426-6"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,11,16]]},"references-count":57,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2019,9]]}},"alternative-id":["9426"],"URL":"https:\/\/doi.org\/10.1007\/s11219-018-9426-6","relation":{},"ISSN":["0963-9314","1573-1367"],"issn-type":[{"type":"print","value":"0963-9314"},{"type":"electronic","value":"1573-1367"}],"subject":[],"published":{"date-parts":[[2018,11,16]]},"assertion":[{"value":"16 November 2018","order":1,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}]}}