Dear Seasiders,
I made few measurements of code from three main Smalltalk web frameworks and results are now available at Google Docs: https://spreadsheets.google.com/ccc?key=0Atnb1W9vuq9ndG4wbUpxNXpKQnFZRlFyQXpHclhZa2c&hl=en#gid=1 Here you'll find graphs of three distributions: - number of methods in classes - class inheritance depth - number of lines in methods And also the following measurements: Code stats Aida Seaside Iliad ---------------------------------------------- Nr of packages 1 74 9 Nr of categories 14 123 26 Nr of classes 145 943 265 Nr of methods 4.465 8.758 2.368 Lines of code 33.578 66.337 9.794 Avg methods/class 31 9 9 Avg lines/method 7,5 7,6 4,1 Nr of test methods 67 914 412 Avg tests/class 0,5 1 1,6 % of commented methods 45% 23% 5% % of commented classes 32% 39% 13% Code is loaded in Pharo with by Metacello configurations, tests are included, all code included except Grease, Sport, Swazoo, Magritte. Let me say few words about the reason I started those measurements: mostly to find things to improve in Aida but I think results are interesting more broadly. Specially, because they seems to reveal two schools of thought about how to code in Smalltalk. Just compare the number of packages, classes and methods per class, then first two graphs about number of methods per class, and class inheritance depth. Quite interesting results and quite some food for discussion! Best regards Janko -- Janko Mivšek AIDA/Web Smalltalk Web Application Server http://www.aidaweb.si _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
.. and here is the code used for those measurements:
http://www.squeaksource.com/WebCodeStats.html Best regards Janko On 15. 11. 2010 13:11, Janko Mivšek wrote: > Dear Seasiders, > > I made few measurements of code from three main Smalltalk web frameworks > and results are now available at Google > Docs: > https://spreadsheets.google.com/ccc?key=0Atnb1W9vuq9ndG4wbUpxNXpKQnFZRlFyQXpHclhZa2c&hl=en#gid=1 > > Here you'll find graphs of three distributions: > > - number of methods in classes > - class inheritance depth > - number of lines in methods > > And also the following measurements: > > Code stats Aida Seaside Iliad > ---------------------------------------------- > Nr of packages 1 74 9 > Nr of categories 14 123 26 > Nr of classes 145 943 265 > Nr of methods 4.465 8.758 2.368 > Lines of code 33.578 66.337 9.794 > Avg methods/class 31 9 9 > Avg lines/method 7,5 7,6 4,1 > > Nr of test methods 67 914 412 > Avg tests/class 0,5 1 1,6 > > % of commented methods 45% 23% 5% > % of commented classes 32% 39% 13% > > > Code is loaded in Pharo with by Metacello configurations, tests are > included, all code included except Grease, Sport, Swazoo, Magritte. > > Let me say few words about the reason I started those measurements: > mostly to find things to improve in Aida but I think results are > interesting more broadly. Specially, because they seems to reveal two > schools of thought about how to code in Smalltalk. Just compare the > number of packages, classes and methods per class, then first two graphs > about number of methods per class, and class inheritance depth. > > Quite interesting results and quite some food for discussion! > > Best regards > Janko > -- Janko Mivšek AIDA/Web Smalltalk Web Application Server http://www.aidaweb.si _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
In reply to this post by Janko Mivšek
2010/11/15 Janko Mivšek <[hidden email]>:
> Dear Seasiders, > > I made few measurements of code from three main Smalltalk web frameworks > and results are now available at Google > Docs: > https://spreadsheets.google.com/ccc?key=0Atnb1W9vuq9ndG4wbUpxNXpKQnFZRlFyQXpHclhZa2c&hl=en#gid=1 > > Here you'll find graphs of three distributions: > > - number of methods in classes > - class inheritance depth > - number of lines in methods > > And also the following measurements: > > Code stats Aida Seaside Iliad > ---------------------------------------------- > Nr of packages 1 74 9 > Nr of categories 14 123 26 > Nr of classes 145 943 265 > Nr of methods 4.465 8.758 2.368 > Lines of code 33.578 66.337 9.794 > Avg methods/class 31 9 9 > Avg lines/method 7,5 7,6 4,1 > > Nr of test methods 67 914 412 > Avg tests/class 0,5 1 1,6 > > % of commented methods 45% 23% 5% > % of commented classes 32% 39% 13% > > > Code is loaded in Pharo with by Metacello configurations, tests are > included, all code included except Grease, Sport, Swazoo, Magritte. > > Let me say few words about the reason I started those measurements: > mostly to find things to improve in Aida but I think results are > interesting more broadly. Specially, because they seems to reveal two > schools of thought about how to code in Smalltalk. Just compare the > number of packages, classes and methods per class, then first two graphs > about number of methods per class, and class inheritance depth. > > Quite interesting results and quite some food for discussion! More or less what I would have expected. I think it would make sense to not include tests in 'Nr of classes ' and friends but put then in different categories. Also stuff like number of undeclareds would be interesting. Without some context these are just numbers and don't really mean much. Cheers Philippe _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
Free forum by Nabble | Edit this page |